這篇文章算是看了吳恩達老師的deeplearning視頻的課后筆記吧,感謝吳恩達老師致力于機器學(xué)習(xí)、深度學(xué)習(xí)的普及。coursera中可以搜到相關(guān)課程,講的真的非常簡單易懂,并且老師對于AI所抱有的那份熱情真的感染到我,希望有一日也可以在人工智能的領(lǐng)域作出一點貢獻。
第一周的視頻中提到了用sigmoid函數(shù)作為最簡單的神經(jīng)網(wǎng)絡(luò)解釋前向傳播和反向傳播的過程。
網(wǎng)絡(luò)設(shè)計如下

現(xiàn)在我們給定一組數(shù)據(jù)(3,6,9)分別表示(x1,x2,b)輸入網(wǎng)絡(luò),的到隱藏層,把他帶入sigmoid函數(shù)的到
,最后求出損失值L(a,y)。然后利用鏈式求導(dǎo)法則求w1,w2關(guān)于L的偏導(dǎo)數(shù)并且利用梯度下降法收斂函數(shù)。
上面都是吳恩達老師課程里提到的,一種由簡入深讓人醍醐灌頂。從最簡單的入手,既然明白了運作原理那就必須趕快寫一個例子實現(xiàn)一下。
于是我用上述的模型選取了一組數(shù)據(jù)看看一效果。
代碼如下:

選取學(xué)習(xí)率為0.01,數(shù)據(jù)(3,6,1),初始權(quán)重(0,0,0)
運行結(jié)果:

可以看到隨著迭代次數(shù)的增加損失越來越小了,最后返回的w1,w2,b分為為3,6,0 帶入原式中的到最后的結(jié)果(更新,沒注意輸出的變成了x1,x2,更新一次w1,w2)


小結(jié):這里網(wǎng)絡(luò)結(jié)構(gòu)很簡答而且也只用了一組數(shù)據(jù),真是的情況當(dāng)然更復(fù)雜。不過這種最簡單的形式真的很能幫助人理解神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)運行原理。最后安利一下吳恩達老師的人工智能相關(guān)課程(想要入門機器學(xué)習(xí)或者深度學(xué)習(xí)又不知道怎么辦就看這個?。?/p>