《神經網絡與深度學習》讀書筆記(不完全)

(個人感覺書寫得比較混亂,沒看完就不想看了,個人不推薦看這本書)


神經網絡與深度學習 讀書筆記

《神經網絡與深度學習》中國工信出版集團 電子工業出版社

作者:吳岸城

 

0.寫在前面:神經網絡的歷史

Turing Can Machines think?》(《機器能思考嗎?》)第一次提出機器思維的概念。

 

1 神經網絡是個什麼東西

遷移學習

 

神經網絡:是機器學習的一個分支,學名人工神經網絡,與之相對的是生物神經網絡Biological Neural NetworksBNN)。

人工神經網絡模型:簡稱人工神經網絡神經網絡,是模擬生物神經網絡的數學模型。

 

2 構造神經網絡

 

s=p1w1+p2w2+p3w3+……+pnwn

 

傳遞函數列表:書P28

 

3 深度學習是個什麼東西

機器學習

機器學習是人工智能的一個分支,是一個非常大的範圍。

什麼是機器學習?以下是兩種解釋:

機器學習算法是一類從數據中自動分析獲得規律,並利用規律對未知數據進行預測的算法。

機器學習就是通過算法,使得機器能從大量歷史數據中學習規律,從而對新的樣本做智能識別或對未來做預測。

人工神經網絡和深度學習都屬於機器學習的一種。

 

監督學習(Supervised Learning

監督學習是機器學習中的一種典型的學習方法。

監督式學習中,所有輸入數據稱爲“訓練數據”,每組數據由正確的訓練集和錯誤的訓練集兩部分構成,這兩部分訓練集最好在數量上相等,並且樣本數量足夠全,能覆蓋到最多的情況。

接下來,訓練這些數據並識別或預測結果,與實際的人爲標定過的“訓練數據”做比較,不斷地調整模型,直到模型的預測結果達到一個預測的準確率。

 

非監督學習(Unsupervised Learning

沒有人爲標定好的數據,沒有人告訴模型哪些數據是正確的,哪些是不正確的。在非監督式學習中,學習模型是爲了推斷出數據的一些內在結構,很常見的應用場景包括關聯規則的學習及聚類等。

非監督學習中常見算法包括Apriori算法和K-Means算法。

 

強化學習(Reinforcement Learning,RL

強化學習實際上是一個連續決策的過程。

傳統的機器學習中,有的監督學習是給定一些標註數據,學習一個好的函數,對未知數據做出很好的決策。但有時候不知道標註是什麼,也是一開始不知道什麼是“好”的結果,所以強化學習不是給定標註,而是給一個回報函數,這個回報函數決定當前狀態得到什麼樣的結果(“好”還是“壞”),其數學本質是一個馬爾科夫決策過程。最終目的是決策過程中整體地回報函數期望最優。

這個過程類似於監督學習,只是標註數據不是預先準備好的,而是通過一個過程來回地調整並給出所謂的“標註數據”。這個過程就是強化學習。

 

深度神經網絡

深度神經網絡是一種具備至少一個隱層的神經網絡。與淺層神經網絡類似,深度神經網絡也能爲也能爲複雜非線性系統提供建模,但多出的層次爲模型提供了更高的抽象層次,因而提高了模型的能力。

深度神經網絡通常都是前饋神經網絡,但也有語言建模等方面的研究將其拓展到循環(遞歸)神經網絡。

卷積深度神經網絡(Convolutional Neuron Networks,CNN)在計算機視覺領域得到了成功的應用。此後,卷積神經網絡也作爲聽覺模型被使用在自動語音識別領域。

上述三段可理解爲:

1.深度神經網絡通常是前饋型神經網絡,前饋型神經網絡是神經網絡的一種構型,特徵是至少有一個隱層。

2.多層前饋型神經網絡都是深度神經網絡,但深度神經網絡不都是前饋性神經網絡。

因爲深度神經網絡還包含了遞歸神經網絡和卷積神經網絡。

 

深度學習 人工神經網絡

深度學習別名Unsupervised Feature LearningUnsupervised的意思是非監督式。

深度學習是神經網絡的一個大分支,深度學習的基本結構是深度神經網絡。

深度學習包含監督學習,非監督學習等,但監督學習、非監督謝謝是指機器學習的學習方式,這個概念廣泛存在於機器學習中,而不只是深度學習裏有這兩個概念。

自動地學習特徵的方法,統稱爲深度學習。

深度學習首先利用無監督學習對每一層進行逐層預訓練(Layerwise Pre-Training)去學習特徵,每次單獨訓練一層,並將結果作爲更高一層的輸入;然後到最上層改用監督學習從上到下進行微調(Fine-Tune)去學習模型。

 

人的視覺系統的信息處理是分級的

1981年諾貝爾生理學或醫學獎 David HubleTorsten WieselRoger Sperry。前兩位發現了人的視覺系統的信息處理是分級的。

從視網膜(Retina)出發,經過低級的V1區提取邊緣特徵,到V2區的基本形狀或目標的局部,再到高層的整個目標(如判斷爲一張人臉),以及到更高層的RFC(前額葉皮層)進行分類判斷等。

高層的特徵是低層特徵的組合,從低層到高層的特徵表達越來越抽象化和概念化,即越來越能表現出語義或者意圖。

 

特徵

特徵是機器學習的原料。在什麼層面上抽取特徵和特徵精度決定了識別度。

 

特徵粒度

算法在什麼粒度上表示特徵才能發揮作用?以一張摩托車圖片爲例,我們將特徵提取得非常細,細到每一個像素,那麼毫無意義。而如果特徵是一個結構性的特徵,比如是否具有車輪、把手?這樣才能容易區分摩托車與非摩托車,學習算法才能發揮作用。

 

提取淺層特徵

P77

任何事物都可以劃分成粒度合適的淺層特徵,而這個淺層特徵一般就是我們的第二層輸入。

 

結構性特徵

比淺層特徵高一層的特徵

 

淺層模型

含有一個隱層的稱爲多層感知機,也叫神經網絡,這種模型叫做淺層模型。

在這種模型中,人們可以用強於人工規則的統計學方法,利用這種淺層模型實現較複雜的訓練,甚至能實現對未知事件的預測,實現基本的分類。

20世紀90年代被提出的淺層機器學習模型:支持向量機(Support Vector Machines,SVM)Boosting、最大熵方法(如Logistic Regression,LR)。這些模型都是隻有一層或連一層隱層都沒有的。提出後,它們很快被應用於數據分析挖掘領域中,在數據分析的各個行業中都有應用。

 

深度信念網絡(Deep Belief Network,DBN

2006年,Hinton,代表性論文:

·Hinton,G.E., Osindero, S. and Teh, Y., A fast learning algorithm for deep belief nets.Neural Computation.18:1527-1554,2006.

·Yoshua Bengio, Pascal Lamblin, Dan Popovivi and Hugo Larochelle, Greedy Layer-Wise Training of Deep Networks, in J.Platt et al.(Eds),Advances in Neural Information Processing Systems 19 (NIPS 2006),pp.153-160,MIT Press,2007.

· Marc’Aurelio Ranzato,Christopher Poultney,Sumit Chopra and Yann LeCun.Efficient Learning of Sparse Representations with an Energy-Based Model,in J.Platt et al.(Eds),Advances in Neural Information Processing System (NIPS 2006),MIT Press,2007.

注意這些論文中提出了以下幾個非常關鍵的原則:

(1)非監督學習被用來(預)訓練各個層。

(2)非監督學習在之前學習到的層次之上,一次只學習一個層次,每個層次學習到的結果將作爲下一個層次的輸入。

(3)除了一些專門用於預測的層次外,用監督學習來調整層與層之間的權重。

 

深度學習網絡與傳統神經網絡

相似點:都有相似的分層結構,包括輸入層、隱層、輸出層的多層網絡,其中只有相鄰層之間有連接,同一層及跨層之間沒有連接。

不同點:傳統神經網絡只有兩至三層,參數和計算單元有限。深度神經網絡具有五至十層,甚至更多,並且引入了更有限的算法。

 

PB算法

全稱Back Propagation,也稱Error Back Propagation,誤差反向傳播

在多層感知機中,多層感知機如何獲取隱層權值?在單個神經元計算中,講到了用實際輸出結果和期望輸出結果誤差來調整單個神經元的權值。

BP算法的基本想法:由信號正向傳播和誤差反向傳播。

(1)信號正向傳播:正向傳播時,輸入樣本從輸入層傳入,經各隱層逐層處理後,傳向輸出層。若輸出層的實際輸出與期望的輸出(教師信號)不符,則轉入誤差的反向傳播階段。

(2)誤差反向傳播:將輸出以某種形式通過隱層向輸入層逐層反傳,並將誤差分攤給各層的所有單元,從而獲得各層單元的誤差信號,此誤差信號即作爲修正各單元權值的依據。

 

4 深度學習的常用方法

Hadoop框架

並行處理數據,把輸入的一個任務拆分成多個小任務分別交給不同的計算機完成,將分別的結果最後在彙總成一個最終結果輸出。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章