a(2)1=f(V(1)11x1+V(1)12x2+V(1)13x3+b(1)1)a(2)2=f(V(1)21x1+V(1)22x2+V(1)23x3+b(1)2)a(2)3=f(V(1)31x1+V(1)32x2+V(1)33x3+b(1)3)hV,b(x)=a(3)1=f(V(2)11a(2)1+V(2)12a(2)2+V(2)13a(2)3+b(2)1)
Davomida biz ham ruxsat beramizz(l)ibirlikka kirishlarning umumiy og'irlikdagi yig'indisini bildiringiqatlamdal, shu jumladan, noto'g'ri atama (masalan,z(2)i=∑nj=1V(1)ijxj+b(1)i), Shuning uchun; ... uchun; ... natijasidaa(l)i=f(z(l)i).
Shuni esda tutingki, bu osonlik bilan yanada ixcham notatsiyaga yordam beradi. Xususan, agar faollashtirish funksiyasini kengaytirsakf(⋅)vektorlarga elementli tarzda qo'llash (ya'ni,f([z1,z2,z3])=[f(z1),f(z2),f(z3)]), u holda yuqoridagi tenglamalarni quyidagicha ixchamroq yozishimiz mumkin:
z(2)=V(1)x+b(1)a(2)=f(z(2))z(3)=V(2)a(2)+b(2)hV,b(x)=a(3)=f(z(3))
Biz bu qadamni oldinga ko'chirish deb ataymiz. Umuman olganda, biz ham foydalanamiz a(1)=x kirish qatlamidagi qiymatlarni, keyin esa berilgan qatlamni belgilash uchun l ning faollashuvi a(l), biz qatlamni hisoblashimiz mumkin l+1 ning faollashuvi a(l+1) kabi:
z(l+1)=V(l)a(l)+b(l)a(l+1)=f(z(l+1))
Parametrlarimizni matritsalarda tartibga solish va matritsa-vektor
operatsiyalarini qo'llash orqali biz tarmog'imizda hisob-kitoblarni tez bajarish uchun tezkor chiziqli algebra tartiblaridan foydalanishimiz mumkin.
Biz hozirgacha bir misol neyron tarmog'iga e'tibor qaratdik, ammo boshqa arxitekturalar (neyronlar o'rtasidagi ulanish naqshlarini anglatadi), shu jumladan bir nechta yashirin qatlamli neyron tarmoqlarni ham qurish mumkin. Eng keng tarqalgan tanlov anl-qatlamli tarmoq qaerda qatlam1kirish qatlami, qatlam hisoblanadinlchiqish qatlami va har bir qatlam l qatlam bilan chambarchas bog'langan l+1. Ushbu parametrda tarmoqning chiqishini hisoblash uchun biz qatlamdagi barcha faollashtirishlarni ketma-ket hisoblashimiz mumkin L2, keyin qatlam L3, va hokazo, qatlamgacha Lnl, oldinga tarqalish bosqichini tavsiflovchi yuqoridagi tenglamalar yordamida. Bu oldinga uzatiladigan neyron tarmog'ining bir misolidir , chunki ulanish grafigida yo'naltirilgan halqalar yoki tsikllar yo'q.
Neyron tarmoqlarda bir nechta chiqish birliklari ham bo'lishi mumkin. Masalan, bu erda ikkita yashirin qatlamli tarmoq mavjudL2vaL3va qatlamdagi ikkita chiqish birligiL4:
Ushbu tarmoqni o'rgatish uchun bizga o'qitish misollari kerak bo'ladi (x(i),y(i)) qayerda (i)∈ℜ2. Agar siz bashorat qilmoqchi bo'lgan bir nechta chiqishlar mavjud bo'lsa, bunday tarmoq foydali bo'ladi. (Masalan, tibbiy diagnostika dasturida vektorxbemorning kirish xususiyatlarini va turli xil natijalarni berishi mumkinyi's turli kasalliklar mavjudligi yoki yo'qligini ko'rsatishi mumkin.)
Orqaga tarqalish algoritmi
Aytaylik, bizda qat'iy o'quv majmuasi bor{(x(1),y(1)),…,(x(m),y(m))}ning m ta'lim misollari. Biz neyron tarmog'imizni ommaviy gradient tushishi yordamida o'rgatishimiz mumkin. Batafsil, bitta ta'lim misoli uchun(x,y), biz bitta misolga nisbatan xarajat funktsiyasini quyidagicha aniqlaymiz:
J(V,b;x,y)=12‖hV,b(x)−y‖2.
Bu (bir yarim) kvadrat xatolik xarajat funksiyasi. Trening to'plami berilgan Misollar, biz umumiy xarajatlar funktsiyasini quyidagicha aniqlaymiz:
Do'stlaringiz bilan baham: |