機(jī)器學(xué)習(xí)的最入門(mén)算法--感知機(jī)

感知機(jī)(perceptron) 算法由美國(guó)學(xué)者Frank Rosenblatt在1957年提出。感知機(jī)是神經(jīng)網(wǎng)絡(luò)的起源算法,因此,要想學(xué)習(xí)機(jī)器學(xué)習(xí),了解感知機(jī)的重要思想是非常必要的。

1.感知機(jī)是什么

感知機(jī)就是接收多個(gè)輸入信號(hào),給出一個(gè)輸出信號(hào)的模型。
如圖,是一個(gè)有兩個(gè)輸入,一個(gè)輸出的最基本的感知機(jī)。圖中圓圈為神經(jīng)元,當(dāng)兩個(gè)輸入乘以對(duì)應(yīng)的權(quán)重并加和進(jìn)入該神經(jīng)元后,如果值大于設(shè)定的閾值 \theta ,則該神經(jīng)云被激活,輸出1,否則輸出0,閾值用 \theta 表示。

<img src="https://raw.githubusercontent.com/lizhuoranget/pictures/master/7901577959743_.jpg" width="130" height="130" />

<center>圖1 有兩個(gè)輸入的感知機(jī)</center>數(shù)學(xué)式表示如下:
公式1

y=\left\{ \begin{aligned} 0 \quad(\omega_1x_1 + \omega_2x_2 \leq \theta) \\ 1 \quad(\omega_1x_1 + \omega_2x_2 > \theta) \\ \end{aligned} \right.

2.簡(jiǎn)單邏輯電路

感知機(jī)可以表示基本電路如與門(mén)電路表如下:

<center>表1 與門(mén)真值表</center>

x1 x2 y
0 0 0
1 0 0
0 1 0
1 1 1

如何用感知機(jī)表示呢?很簡(jiǎn)單,只需要人工設(shè)定好一定的權(quán)值,即可得到,如權(quán)值 \omega 設(shè)為:(0.5,0.5,0.7),(1.0,1.0,1.0)等都可滿足。

同樣的,或門(mén)與非門(mén)也可以通過(guò)設(shè)定不同的參數(shù),使用感知機(jī)進(jìn)行表示。
這里參數(shù)是通過(guò)人工設(shè)定的,而機(jī)器學(xué)習(xí)的目的就是通過(guò)訓(xùn)練數(shù)據(jù)讓計(jì)算機(jī)找到正確的參數(shù),該過(guò)程就叫做學(xué)習(xí)。

3.感知機(jī)的實(shí)現(xiàn)

為了更加數(shù)學(xué)化的表示以上實(shí)現(xiàn)過(guò)程,作如下改變:
公式2

y=\left\{ \begin{aligned} 0 \quad(b + \omega_1x_1 + \omega_2x_2 \leq 0) \\ 1 \quad(b + \omega_1x_1 + \omega_2x_2 > 0) \\ \end{aligned} \right.

此處,b為偏置, \omega? 為權(quán)重。權(quán)重表示了控制輸入信號(hào)的重要性,偏置則是激活神經(jīng)元的容易程度。
實(shí)現(xiàn)形式如下:

def AND(x1, x2):
    x = np.array([x1, x2])
    w = np.array([0.5, 0.5])
    b = -0.7
    tmp = np.sum(w*x) + b
    if tmp <= 0:
        return 0
    else:
        return 1

4.感知機(jī)的局限

如下,異或邏輯電路的真值表如下

<center>表2 異或門(mén)真值表</center>

x1 x2 y
0 0 0
1 0 1
0 1 1
1 1 0

發(fā)現(xiàn)無(wú)論如何對(duì)感知機(jī)調(diào)參,感知機(jī)都無(wú)法實(shí)現(xiàn)異或邏輯電路的表示。
<img src="https://raw.githubusercontent.com/lizhuoranget/pictures/master/7921577959745_.jpg" width="130" height="130" />

<center>圖2 可否通過(guò)一條直線分開(kāi)圓形和三角</center>

<img src="https://raw.githubusercontent.com/lizhuoranget/pictures/master/7911577959744_.jpg" width="130" height="130"/>

<center>圖3 使用曲線可以分開(kāi)圓形和三角</center>

所以,感知機(jī)只能表示由一條直線分割的空間,即線性空間,不能表示非線性空間。

5.多層感知機(jī)

不用悲觀的是,如下圖所示,我們通過(guò)之前實(shí)現(xiàn)的多個(gè)感知機(jī),就可以實(shí)現(xiàn)異或邏輯的表示。如圖,多層感知機(jī)就是一個(gè)多層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。

<img src="https://raw.githubusercontent.com/lizhuoranget/pictures/master/7941577959747_.jpg" width="150" height="60" />

<center>圖4 通過(guò)組合與、與非、或門(mén)實(shí)現(xiàn)異或門(mén)</center>

<img src="https://raw.githubusercontent.com/lizhuoranget/pictures/master/7951577959748_.jpg" width="100" height="60" />

<center>圖5 用感知機(jī)表示異或門(mén)</center>

<center>表3 異或門(mén)真值表</center>

x1 x2 s1 s2 y
0 0 1 0 0
1 0 1 1 1
0 1 1 1 1
1 1 0 0 0

理所當(dāng)然,異或門(mén)的實(shí)現(xiàn)也相當(dāng)簡(jiǎn)單,按照組合邏輯調(diào)用之前的門(mén)函數(shù)即可:

def XOR(x1, x2):
    s1 = NAND(x1, x2)
    s2 = OR(x1, x2)
    y = AND(s1, s2)
    return y

理論證明,通過(guò)組合多層感知機(jī)可以表示任意電路,甚至可以表示計(jì)算機(jī)。其實(shí),理論上2層就夠表示計(jì)算機(jī),即現(xiàn)實(shí)現(xiàn)與門(mén)和或門(mén),然后實(shí)現(xiàn)全加器和半加器,接著實(shí)現(xiàn)算數(shù)邏輯單元ALU,最后實(shí)現(xiàn)CPU。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 我等凡夫俗子還是學(xué)學(xué)范閑吧,咸魚(yú)但有又所堅(jiān)持,努力但又無(wú)需拼盡全力,多做有益之事,也多少做做無(wú)益之事,且在這紅塵濁...
    訥言不敏閱讀 2,064評(píng)論 51 51
  • 《無(wú)常》作者:熊培云 今天是昨天的無(wú)常 明天是今天的無(wú)常 花謝是花枝的無(wú)常 花開(kāi)是花蕾的無(wú)常 一個(gè)瓶子碎一地,是完...
    雅俗兒的手帳閱讀 520評(píng)論 0 4
  • 行動(dòng)記錄 最近又晚睡晚起了hhhh,這兩天開(kāi)始調(diào)作息。 之前紀(jì)元說(shuō)過(guò)的,可以用流程圖優(yōu)化自己早起程序的流程,效果真...
    Chen10閱讀 234評(píng)論 0 0
  • 有人說(shuō)這部劇又窮又污,劇組方也自稱(chēng)此劇有毒,不過(guò)這些我都不關(guān)心,直到剛剛得知演員現(xiàn)實(shí)中都是健身狂魔的時(shí)候,頓時(shí)肅然...
    surberina閱讀 7,531評(píng)論 14 147
  • 今天臘月二十九,媽媽叫我回家吃團(tuán)圓飯,還叫了大伯,小伯。 爸爸的兄弟姐妹具體有多少個(gè)我也不是特別清楚,只是現(xiàn)在只剩...
    暖暖陽(yáng)光520閱讀 303評(píng)論 0 0

友情鏈接更多精彩內(nèi)容