官术网_书友最值得收藏!

第 1 章 使用神經網絡識別手寫數字

人類的視覺系統堪稱世界奇跡??纯慈鐖D 1-1 所示的手寫數字序列。

圖 1-1

大多數人能輕松認出這些數字是 504192,而這容易讓我們忽視其背后的復雜性。人的大腦半球中有一個初級視覺皮層,常稱為 V1,它包含約 1.4 億個神經元,神經元間的連接有數百億條。然而,人類的視覺系統并不只涉及 V1,還包括整個視覺皮層——V2、V3、V4 和 V5,它們進行更加復雜的圖像處理。人腦就像一臺超級計算機,歷經數億年的進化,最終能夠很好地以視覺感知世界。識別手寫數字并不簡單。盡管人類非常擅長理解眼睛接收到的信息,但幾乎所有的過程都是無意識的,所以我們通常體會不到自身視覺系統解決問題的困難程度。

如果嘗試編寫計算機程序來識別以上數字,就會發現視覺模式識別的復雜性,人類可以輕松完成的任務頓時變得困難重重。識別形狀時,對于“數字 9 的上半部分是一個圈,右下部分是一條豎線”這樣的簡單直覺,實際上很難用算法表達出來。如果試著細化識別規則以提高準確度,很快就會出現各種異常和特殊的情形,似乎毫無希望。

神經網絡以其他方式應對這個問題,其主要思路是獲取大量手寫數字——常稱作訓練樣本,如圖 1-2 所示,然后開發出一個系統,從這些訓練樣本中學習。換言之,神經網絡使用樣本來自動推斷識別手寫數字的規則。另外,通過增加訓練樣本的數量,神經網絡可以學到關于手寫數字的更多信息,這樣就能夠提升自身的準確度了。圖 1-2 展示了 100 個用作訓練樣本的手寫數字,而使用數千或者數百萬甚至數十億的訓練樣本,可以得到更好的手寫數字識別器。

圖 1-2

本章將實現一個可以識別手寫數字的神經網絡。這個程序僅有 74 行,并且不使用特別的神經網絡庫。然而,無須人類幫助,這個小型神經網絡識別數字的準確率就能達到 96%。后文會介紹能將準確率提升至 99%的技術。實際上,卓越的商業級神經網絡已經被銀行和郵局分別用于核查賬單和識別地址了。

之所以關注手寫數字識別問題,是因為它是神經網絡研究中的原型問題。作為原型,它具備一個關鍵點——頗具挑戰性。識別手寫數字并不容易,但也沒有難到需要極其復雜的解決方法,或者超大規模的計算資源。另外,由它發展出了一些高級技術,比如深度學習。因此,手寫數字識別問題會貫穿本書。本書在后面會討論如何將這些知識應用于其他計算機視覺問題以及語音識別、自然語言處理等領域。

當然,本章內容不僅僅限于編寫一個計算機程序來識別手寫數字。隨著內容推進,我們將學習關于神經網絡的很多關鍵思想,其中包括兩種重要的人工神經元——感知機和 sigmoid 神經元,以及常用的神經網絡學習算法——隨機梯度下降算法。本書會著重解釋原理,深入解析神經網絡;詳盡探討,而不只是介紹一些基本技巧;最后會介紹深度學習及其重要性。

主站蜘蛛池模板: 东兴市| 家居| 涞水县| 灵宝市| 施秉县| 岐山县| 什邡市| 息烽县| 前郭尔| 巴里| 敦煌市| 调兵山市| 孝昌县| 龙口市| 巴中市| 临湘市| 上栗县| 长丰县| 常熟市| 丰原市| 兴业县| 建湖县| 五峰| 望谟县| 大新县| 孝感市| 安吉县| 特克斯县| 城固县| 高州市| 同心县| 泉州市| 嵩明县| 三都| 嫩江县| 麻江县| 和硕县| 兴安盟| 南川市| 朝阳县| 宜州市|