面臨的問題
????????定義神經?絡后,我們回到?寫識別上來。我們可以把識別?寫數字問題分成兩個?問題:
- 把包含許多數字的圖像分成?系列單獨的圖像,每個包含單個數字;
? ? ? ? 也就是把圖像
?,分成6個單獨的圖像
- 分類單獨的數字
????????我們將專注于編程解決第?個問題,分類單獨的數字。這樣是因為,?旦你有分類單獨數字 的有效?法,分割問題是不難解決的。
- ?種?法是嘗試不同 的分割?式,?數字分類器對每?個切分?段打分;
- 如果數字分類器對每?個?段的置信度都 ?較?,那么這個分割?式就能得到較?的分數;
- 如果數字分類器在?或多個?段中出現問題, 那么這種分割?式就會得到較低的分數
- 這種?法的思想是,如果分類器有問題,那么很可能是 由于圖像分割出錯導致的。
- 這種思想以及它的變化形式能夠?較好地解決分割問題。
數字的分類
我們使用一個三層神經網絡來識別單個數字;
????????????????
?絡的輸?層包含給輸?像素的值進?編碼的神經元。
- 我們給?絡的 訓練數據會有很多掃描得到的28x28的?寫數字的圖像組成;
- 所有輸入層包含784 = 28 x 28個神經元;
- 輸?像素是灰度級的, 值為0.0表???,值為1.0表???,中間數值表?逐漸暗淡的灰?。
?絡的第?層是?個隱藏層;
- 我們?n來表?神經元的數量,我們將給實驗不同的數值。
?絡的輸出層包含有個神經元;
- 如果第?個神經元激活,即輸出≈1,那么表明?絡認為 數字是?個0。
- 如果第?個神經元激活,就表明?絡認為數字是?個1。
- 依此類推。
- 更確切地說, 我們把輸出神經元的輸出賦予編號0到9,并計算出那個神經元有最?的激活值;
為什么需要10個輸出神經元?
?????????個看起來更?然的?式就是使?5個輸出神經元, 把每?個當做?個?進制值,結果取決于它的輸出更靠近0還是1。
????????為什么我們反?要?個神經元呢?這樣做難道 效率不低嗎?最終的判斷是基于經驗主義的:我們可以實驗兩種不同的?絡設計,結果證明對于這個特定的問題??,10個輸出神經元的神經?絡?4個的識別效果更好.
????????為了理解為什么我們這么做,我們需要從根本原理上理解神經?絡究竟在做些什么;
- 我們?先考慮第?個輸出神經元,它告訴我們?個數字是不是0。它能那么做是因為可以權衡從隱藏層來的信息。
- 隱藏層的神經元在做什么呢?假設隱藏層的第?個神經元只是?于檢測如下圖像是否存在
- 為了達到這個?的,它通過對此圖像對應部分的像素賦予較?權重,對其它部分賦予較?的 權重
- 同理,我們可以假設隱藏層的第?,第三,第四個神經元是為檢測下列圖?是否存在
????????
- 就像你能猜到的,這四幅圖像組合在?起構成了前?顯?的??數字圖像中的0:
- 如果所有隱藏層的這四個神經元被激活那么我們就可以推斷出這個數字是0。?
????????假設神經?絡以上述?式運?,我們可以給出?個貌似合理的理由去解釋為什么?10個輸出?不是4個。如果我們有4個輸出,那么第?個輸出神經元將會盡?去判斷數字的最?有效 位是什么。把數字的最?有效位和數字的形狀聯系起來并不是?個簡單的問題。很難想象出有 什么恰當的歷史原因,?個數字的形狀要素會和?個數字的最?有效位有什么緊密聯系。
啟發性
????????上?我們說的只是?個啟發性的?法。沒有什么理由表明這個三層的神經?絡必須按照我所 描述的?式運?,即隱藏層是?來探測數字的組成形狀。可能?個聰明的學習算法將會找到? 些合適的權重能讓我們僅僅?4個輸出神經元就?。但是這個啟發性的?法通常很有效,它會 節省你?量時間去設計?個好的神經?絡結構
????????????????