硬核科普:只用一句話,告訴你被吹爆的「神經(jīng)網(wǎng)絡(luò)」到底是什么?
為了表現(xiàn)誠(chéng)意,先把這句短小精悍的真理放在這里:
神經(jīng)網(wǎng)絡(luò)是一種由大量的神經(jīng)元相互連接構(gòu)成的運(yùn)算模型。
很復(fù)雜?其實(shí)特別簡(jiǎn)單,相信看完之后,你會(huì)感嘆一句——不過如此。
神經(jīng)網(wǎng)絡(luò)是什么?運(yùn)算模型。
什么是運(yùn)算模型?描述如何根據(jù)一組輸入值計(jì)算得出一組輸出值的模型。
比如,二元一次方程z=2x+3y+5就是一種運(yùn)算模型,輸入是x和y,輸出是z。根據(jù)z=2x+3y+5,給定x和y,我們可以得到z,這就是一種運(yùn)算模型。
注意啦,輸出可以是多個(gè)值。比如,輸入是x和y,輸出可以是z1和z2兩個(gè)值,其中,z1=2x+3y+5,z2=6x+8y+8,這也算是一個(gè)運(yùn)算模型。
神經(jīng)網(wǎng)絡(luò)如何表征運(yùn)算模型?大量的神經(jīng)元,相互連接。
下圖展示了一個(gè)神經(jīng)網(wǎng)絡(luò)。最左側(cè)的一豎排神經(jīng)元(藍(lán)色節(jié)點(diǎn))被稱為輸入層,負(fù)責(zé)導(dǎo)入輸入值。最右側(cè)一豎排神經(jīng)元(綠色節(jié)點(diǎn))被稱為輸出層,負(fù)責(zé)導(dǎo)出輸出值。中間兩豎排神經(jīng)元(黑色節(jié)點(diǎn))被稱為隱藏層,這些神經(jīng)元與它們之間的連接一起,共同表征運(yùn)算模型。
比如,二元一次方程z=2x+3y+5就可以用下圖的神經(jīng)網(wǎng)絡(luò)表示。
圖中,2和3被稱為權(quán)重值,5被稱為偏置值。
一般來講,只有指向隱藏層神經(jīng)元的連接(如標(biāo)有2和3的連接)有權(quán)重值,只有隱藏層的神經(jīng)元(標(biāo)有5的神經(jīng)元)有偏置值。權(quán)重值和偏移值一般不會(huì)被標(biāo)注在神經(jīng)網(wǎng)絡(luò)中。
神經(jīng)網(wǎng)絡(luò)中,神經(jīng)元的數(shù)量可以是任意的,神經(jīng)元之間的連接也可以是多種多樣的。
神經(jīng)元及其連接與數(shù)學(xué)公式的轉(zhuǎn)換,這里就不具體介紹了。只需要記得,神經(jīng)網(wǎng)絡(luò)本質(zhì)上就是一種運(yùn)算模型,只要神經(jīng)元數(shù)量足夠多,可以表征非常復(fù)雜的運(yùn)算,也就是非常復(fù)雜的輸入與輸出之間的關(guān)系。
到這里,「神經(jīng)網(wǎng)絡(luò)是一種由大量的神經(jīng)元相互連接構(gòu)成的運(yùn)算模型」這個(gè)定義,應(yīng)該已經(jīng)很清楚了。
為什么要使用神經(jīng)網(wǎng)絡(luò)表征運(yùn)算模型?直接用數(shù)學(xué)公式不香嗎?
神經(jīng)網(wǎng)絡(luò)針對(duì)的情況,是我們只知道輸入值與輸出值,但不知道輸入值與輸出值的相互關(guān)系。比如,我們只知道x=1, y=2時(shí),z=13, 以及x=2, y=1時(shí),z=12,但我們不知道根據(jù)x和y計(jì)算z的公式。
面對(duì)簡(jiǎn)單的輸入輸出的關(guān)系,我們也許可以直接解方程。但是面對(duì)極其復(fù)雜的輸入輸出呢?比如,如果輸入是這張圖片的像素點(diǎn),輸出是圖片中所有的字母。這也是一個(gè)典型的圖像識(shí)別任務(wù)。
在這個(gè)時(shí)候,神經(jīng)網(wǎng)絡(luò)是必要的。只要神經(jīng)網(wǎng)絡(luò)足夠復(fù)雜(足夠多的神經(jīng)元,以及適當(dāng)?shù)纳窠?jīng)元連接),我們就可以相信,這個(gè)神經(jīng)網(wǎng)絡(luò)有能力表征我們希望獲得的輸入值與輸出值的相互關(guān)系。
「有能力」意味著,存在特定的權(quán)重值和偏置值,使得這個(gè)神經(jīng)網(wǎng)絡(luò)可以準(zhǔn)確的表征輸入值與輸出值之間的關(guān)系。但,我們可能并不知道這些權(quán)重值和偏置值。
假設(shè)神經(jīng)網(wǎng)絡(luò)夠有能力了,如何獲得權(quán)重值和偏置值?
這就要請(qǐng)出人工智能最重要的技術(shù)了,機(jī)器學(xué)習(xí)中監(jiān)督學(xué)習(xí)!
首先隨機(jī)猜測(cè)權(quán)重值和偏置值,之后使用迭代的方式逐步更新這些參數(shù),使得在給定輸入值下,神經(jīng)網(wǎng)絡(luò)的輸出值和實(shí)際已知的輸出值的差別逐漸減小。直到這個(gè)神經(jīng)網(wǎng)絡(luò)可以大致準(zhǔn)確地表征輸入值到輸出值的關(guān)系,也就是我們所希望獲得的運(yùn)算模型。