第一章(1) 神經網路如何工作

2022-05-05 03:54:14 字數 3157 閱讀 4707

---恢復內容開始---

1.1 尺有所短,寸有所長

問題計算機

人類快速的對成千上萬的大數字進行計算

簡單困難

在一大群人的**中尋找面孔

困難簡單

1.2**器

1.所有有用的計算機系統都有乙個輸入和輸出,並在輸入和輸出之間進行某種型別的計算,神經網路也是如此。

2.機器接受了乙個輸入,並作出應有的**,輸出結果。我們稱之為**器。我們根據結果與已知的真實案例進行比較所得到的誤差,調整內部引數,使**更加的精確。

1.3分類器與**器並無太大差別

1.4訓練簡單的分類器

1.我們使用簡單的數學,理解了線性分類器輸出誤差值和可調節斜率引數之間的關係,也就是說我們知道了在何種程度上調節斜率,可以消除誤差值。

初始值:   y=ax                   目標值:  t=(♠+a)x  

應變化的斜率:    ♠=(t-y)/x

2.使用普通的調整方法會有乙個問題,就是改進後的模型只會與最後一次的樣本最匹..解決該問題的最好的辦法就是使用學習率,調節改進速率,這樣單一的訓練樣本就不能主導整個學習過程了.

3.來自真實世界的訓練樣本可能充滿雜訊或包含錯誤.適度的跟新有助於限制這些錯誤樣本的影響.

1.5 有時候乙個分類器不足以求解問題

1.如果資料本身不是由單一線性過程支配,那麼乙個簡單的線性分類器就不能對資料進行劃分.例如,邏輯xor運算子支配的資料說明了這一點.

2.解決方案很容易,你只需要使用多個線性分類器來劃分由單一直線無法分離的資料就可以了.

3.使用多個分類器一起工作是神經網路的核心.

1.6 神經元--大自然的計算器

1.神經元不希望傳遞微小的雜訊訊號,而是傳遞有意識的明顯的訊號, 只有輸入超過了閥值(threshold),足夠接通電路,才會產生輸入訊號.在數學上乙個簡單的s函式(階躍函式的改進版)就可以實現這一行為了.

2.雖然比起現代的計算機,生物大腦看起來儲存空間少得多,執行速度比較慢,但是生物大腦卻可以執行複雜的任務,如飛行,尋找食物,學習語言喝逃避天敵.

3.相比於傳統的計算機系統,生物大腦對損壞和不完善訊號具有難以置信的彈性

1.7 在神經網路中追蹤訊號

1.8 憑心而論,矩陣乘法大有用處

1.整體過程

x=w*i     w是權重矩陣,i是輸入矩陣,x是組合調節後的訊號.

o=sinmoid(x)        o代表輸出矩陣     sinmoid代表啟用函式

2.通過神經網路向前饋送訊號所需的大量運算可以表示為矩陣乘法.

3.不管神經網路的規模如何,將輸入輸出表達為矩陣乘法,使得我們可以更簡潔的進行書寫.

4.更重要的是,一些計算機程式語言理解矩陣計算,並認識到潛在的計算方法的相似性.這允許計算機高速高效地進行這些計算.

1.9 使用矩陣乘法的三層神經網路的示例

1.神經網路的三層 輸入層,輸出層,隱藏層

2. 過程 輸入 -> 矩陣乘法->隱藏層->啟用函式->輸出->矩陣乘法->輸出層的輸出

1.10 學習來自多個節點的權重

我們在兩件事情上使用的權重

1. 在神經網路中,我們使用權重,將訊號輸入向前傳播到輸出層

2.我們使用權重,將誤差,從輸出向後傳播到網路中,我們稱這種方法稱為反向傳播

大權重分到的誤差大,小權重分到的誤差小

1.11 多個輸出節點反向傳播誤差

1.多個輸出節點只是重複第乙個節點所做的事情

1.12 反向傳播誤差到更多層中

1.神經網路通過調整鏈結權重進行學習.這種方法由誤差引導,誤差就是訓練資料所給出正確答案和實際輸出之間的誤差.

2.簡單的說,在輸入節點處的誤差等於所需值與實際值之間的差值.

1.13 使用矩陣乘法進行反向傳播誤差

1.關鍵點    errorhidden = wt  •  

erroroutput

2.這意味這向前饋送訊號和反向傳播誤差都可以使用矩陣計算而變得高效

1.14 我們實際上如何跟新權重 (難點)

1. 梯度下降法 --- 假設在乙個非常複雜,有波峰波谷的地形以及連綿群山俊嶺.在黑暗中,伸手不見5指,你知道你是在乙個山坡上,你需要到達坡底,對於整個地形,你沒有精確的地圖,只有一把手電筒

,你能做什麼呢?你可能會使用手電筒,做近距離的觀察,你不能使用手電筒看的更遠,無論如何你肯定看不到整個地形,你可以看到,某一塊土地是上坡還是下坡,於是你就小步的往這個方向走,通過這種方

式,你不需要完整的地圖,也不需要實現制定路線,你一步乙個腳印,緩慢前進,慢慢的下山.

我們將複雜困難的函式當作網路誤差,那末下山找到最小值就意味著最小化誤差,這樣我們就可以改進網路輸出,這就是我們希望做到的!

2.正梯度意味著減小x值,負梯度意味著增大x值.

3.為了避免終止於錯誤的山谷或錯誤的函式最小值.我們從山上不同點開始,多次訓練神經網路,確保並不總是終止於錯誤的山谷.不同的起點,意味這選擇不同的起始引數,在神經網路的情況下,這意味著選擇不同的起始鏈結權重.

4.誤差函式的選擇

5. 誤差的公式 

誤差權重的計算:

新權重的計算:

1.15 權重更新成功的範例

1.16 準備資料

1.如果輸入,輸出和初始權重資料的準備與網路的設計和實際求解的問題,不匹配,那麼神經網路並不能很好的工作.

2.乙個常見的問題就是飽和,在這個時候,大訊號(這有時是大權重帶來的)導致了應用在訊號上的啟用函式的斜率變得非常平緩,這降低鋁,神經網路學習到更好權重的能力

3.另乙個問題是零值訊號或零值權重,這也會使網路喪失學習更好權重的能力.

4.內部鏈結的權重應是隨機的,值較小,但要避免零值.如果節點的傳入鏈結較多,應採取其他方法,例如,減小這些權重的大小.

5.輸入應該調整到較小值,但不能為零.乙個常見的範圍為,0.01~0.99或-1.0~1.0,使用那個範圍,取決於是否匹配遇到了問題

7.輸出應該在啟用函式能夠生成的值的範圍內.邏輯s函式是不可能生成小於等於0或大於等於1的值,將訓練目標值設定在有效的範圍外,將會驅使權重越來越大,導致網路飽和,乙個合適的範圍是0.01~0.99

第一章 迴圈神經網路簡介

1 簡單介紹 我們知道在機器學習領域中,傳統的神經網路模型是從輸入層到隱藏層再到輸出層,層與層之間是全連線的,而每層之間的節點是無連線的,它的弊端我在這裡就不再贅述。我們主要介紹rnn,他為什麼稱為迴圈神經網路呢?因為它的每乙個輸出序列都與前面的輸出序列有關。具體表現在該網路會記錄前面的資訊並應用到...

脈衝神經網路原理及應用 第一章 概述

1.1 引言 講解現有神經元資訊中頻率和時間資訊目前發掘的可能是頻率資訊,想利用上時間資訊 1.2 人工神經網路及其發展 生物神經系統存在突觸的可塑性,以及神經纖維粗細,化學物質反應。總結出來猜想化學物質反應對應於電訊號,可塑性和粗細對應於生命週期,強度可能對應於頻率 幅度 需要問老師 目前主流認為...

第一章 神經網路中的名詞解釋

啟用函式 一般來講每個神經元都可以對應乙個啟用函式,簡言之,啟用函式就是模擬資訊在神經元之間傳遞的啟用或者抑制狀態。當資訊達到了啟用函式的閾值,該資訊將神經元啟用,否則神經元處於抑制狀態。這裡,啟用函式的另一作用就是將神經元的輸出 標準化 防止資訊過於膨脹。啟用函式用來表述cnn的非線性度,對多層網...