Amalga oshirish bo'yicha eslatma: Yuqoridagi 2 va 3-bosqichlarda biz hisoblashimiz kerakf'(z(l)i)ning har bir qiymati uchuni. Taxmin qilibf(z)sigmasimon faollashtirish funktsiyasi, biz allaqachon bo'lar edika(l)itarmoq orqali oldinga o'tish joyidan uzoqda saqlanadi. Shunday qilib, biz ilgari ishlab chiqqan iboradan foydalanibf'(z), biz buni quyidagicha hisoblashimiz mumkinf'(z(l)i)=a(l)i(1−a(l)i).
Va nihoyat, biz to'liq gradient tushish algoritmini tasvirlashga tayyormiz. Quyidagi psevdo-kodda,DV(l)matritsadir (bir xil o'lchamdagiV(l)), vaDb(l)vektor (bir xil o'lchamdagib(l)). E'tibor bering, ushbu belgida "DV(l)” bu matritsa, ayniqsa, u emas”DmartaV(l)”. Biz partiya gradientining bir iteratsiyasini quyidagicha amalga oshiramiz:
OʻrnatishDV(l): =0,Db(l): =0(matritsa/nollar vektori) hamma uchunl.
Uchuni=1uchunm,
Hisoblash uchun orqaga tarqalishdan foydalaning
d∇V(l)J(V,b;x,y)va∇b(l)J(V,b;x,y).
OʻrnatishDV(l): =DV(l)+∇V(l)J(V,b;x,y).
OʻrnatishDb(l): =Db(l)+∇b(l)J(V,b;x,y).
Parametrlarni yangilang:
V(l)=V(l)−a[(1mDV(l))+lV(l)]b(l)=b(l)−a[1mDb(l)]
Neyron tarmog'imizni o'rgatish uchun biz xarajat funksiyamizni kamaytirish uchun gradient tushish qadamlarini qayta-qayta bajarishimiz mumkinJ(V,b).
Do'stlaringiz bilan baham: |