怎樣理解激活函數呢?如果你現在正在一個世界500強的大廠里敲代碼,工作壓力巨大,“996”已經成為常態,但是你思前想后,考慮這份工作的薪水(權重w1)、免費午餐和咖啡(權重w2)、你對編碼的熱愛(權重w3)、公司離家近(權重w4)、老婆對你工作的認可(權重w5)等因素,綜合衡量后你決定忍了,或者說這一切并沒有超出你忍耐的閾值,把你的忍耐“功能”看作一個函數,那么在這種場景下相當于你的函數輸出為0,目前還處于沒有被激活狀態。但是事情總是向你意想不到的方向變化的,你發現“996”正在逐步變成“007”,或者免費咖啡變成免費白水了,再或者上述因素的權重開始調整了,比如你好像不太在乎老婆對你的工作是否認可了,你終于不忍了,這時函數輸出超出了閾值,你把自己激活了,揚長而去。
1、一切的基礎:M-P神經元
深度學習網絡實質上是層數較多的神經網絡,那什么是神經網絡呢?簡單來說是一種模仿動物神經網絡行為特征,進行分布式并行處理信息的算法模型。人們總可以從萬能的大自然中學習到很多,比如通過研究鳥兒的翅膀發明飛機,在研究蝙蝠時獲得發明雷達的靈感,人們同樣也希望效仿大腦神經網絡而獲得智能。
模仿大腦神經元的最早實例,是20世紀40年代提出并且一直沿用至今的“M-P神經元模型”,這個M-P是什么意思啊?這里有一段故事。
M-P神經元模型,最早源于發表于1943年的一篇論文,論文的兩位作者分別是神經生理學家沃倫·麥克洛克(Warren McCulloch)和數學家沃爾特·皮茨(Walter Pitts),論文首次實現了用一個簡單電路(也就是未來大名鼎鼎的感知機)來模擬大腦神經元的行為。那時受《數學原理》的啟發,麥克洛克正在嘗試用戈特弗里德·萊布尼茨(微積分發明人)的邏輯演算來構建一個大腦模型,這是一件極富挑戰性的事。麥克洛克猜想神經元的工作機制很可能類似于邏輯門電路,接受多個輸入,產生單一的輸出,而通過改變神經元的激發閾值以及神經元之間的連接程度,就可以讓它執行“與、或、非”等功能。但是麥克洛克的強項是神經科學,他不擅長數學,難以形式化描述自己的想法。這時頗有數學才華的皮茨出場了,正好補其短板。當麥克洛克和皮茨完成他們的計算實驗時,實際上構造了一個操作性非常強的機械型精神模型,后人就用二人名稱的首字母稱呼這個模型“M-P神經元模型”。基于他們的研究發現,麥克洛克和皮茨寫了一篇學術文章,這篇文章就是神經網絡的天下第一文《神經活動中思想內在性的邏輯演算》(A Logical Calculus ofIdeas Immanent in Nervous Activity),發表在著名期刊《數學生物物理學通報》。
2、神經網絡被激活:激活函數
M-P神經元模型中,神經元接收來自n個其他神經元傳遞過來的輸入信號。這些信號的表達通常通過神經元之間連接的權重(Weight)大小來表示,神經元將接收到的輸入值按照某種權重疊加起來,匯集了所有其他外聯神經元的輸入,并將其作為一個結果輸出。但這種輸出并非直接輸出,而是與當前神經元的閾值(θ就是閾值)進行比較,然后通過激活函數f(Activation Function)向外表達輸出,y就是最終的輸出。
怎樣理解激活函數呢?如果你現在正在一個世界500強的大廠里敲代碼,工作壓力巨大,“996”已經成為常態,但是你思前想后,考慮這份工作的薪水(權重w1)、免費午餐和咖啡(權重w2)、你對編碼的熱愛(權重w3)、公司離家近(權重w4)、老婆對你工作的認可(權重w5)等因素,綜合衡量后你決定忍了,或者說這一切并沒有超出你忍耐的閾值,把你的忍耐“功能”看作一個函數,那么在這種場景下相當于你的函數輸出為0,目前還處于沒有被激活狀態。但是事情總是向你意想不到的方向變化的,你發現“996”正在逐步變成“007”,或者免費咖啡變成免費白水了,再或者上述因素的權重開始調整了,比如你好像不太在乎老婆對你的工作是否認可了,你終于不忍了,這時函數輸出超出了閾值,你把自己激活了,揚長而去
神經元的工作模型存在“激活-》1”和“抑制-》0”兩種狀態的跳變,理想的激活函數就應該是的階躍函數,但在實際使用中,這類函數具有不光滑、不連續等眾多不“友好”的特性, 于是Sigmoid激活函數,Tanh 激活函數,ReLU激活函數,Softmax激活函數等等加強版出現,根據不同需求各顯神通。
3、神經網絡的“Hello World”:感知機
感知機是由康奈爾航空實驗室的心理學教授弗蘭克·羅森布拉特(Frank Rosenblatt)在1957年提出的一種人工神經網絡,也被視為一種形式最簡單的前饋式人工神經網絡,是一種二元線性分類器。羅森布拉特做了一個在當時看來非常令人“驚艷”的實驗,實驗的訓練數據是50組圖片,每組兩幅,由一張標識向左和一張標識向右的圖片組成。學著,學著,這部感知機就能“感知”出最佳的連接權值。然后,對于一個全新的圖片,在沒有任何人工干預的情況下,它能“獨立”判定出圖片標識為左還是為右。
感知機是一切神經網絡學習的起點,是神經網絡學習“Hello World”。感知機也被稱為“閾值邏輯單元”,我們在上文說“激活函數”時已經講解過原理了。感知機有明確的結果導向性,比如下圖感知機的實例,目的就是區分“西瓜和香蕉”,感知機的“學習”就是,就是通過不斷的循環往復的試錯,調整神經元之間的連接權值(w參數值)和神經元閾值(θ參數值)等規則,最終只要能達到良好的分類目的就是好的規則。
4、人工智能的寒冬:感知機的問題
聰慧的你可能發現,感知機很容易實現邏輯上的“與、或、非”等原子布爾函數,但是感知機難以實現常見的“異或”邏輯操作。1972年,明斯基出版了《感知機:計算幾何簡介》一書,在書中論述了感知機模型存在的兩個關鍵問題,一是單層神經網絡無法實現“異或門電路”等功能,第二是,即使使用當時最先進的計算機,也沒有足夠的計算能力去完成神經網絡模型訓練所需的超大的計算量(比如調整網絡中的權重參數)。這篇文章把人工智能送進了長達二十年的“冬天”,由于看不到前景,人工智能研究獲得的經費大幅度減少,不少研究人員也不得不轉行。
審核編輯:郭婷
-
神經網絡
+關注
關注
42文章
4773瀏覽量
100882 -
機器學習
+關注
關注
66文章
8423瀏覽量
132761
原文標題:機器學習中的函數(1)- 激活函數和感知機
文章出處:【微信號:Hardware_10W,微信公眾號:硬件十萬個為什么】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論