1. 程式人生 > 實用技巧 >【神經網路學習筆記】所有神經網路的關係和分類-附思維導圖

【神經網路學習筆記】所有神經網路的關係和分類-附思維導圖

本人沒有找到相關的文獻詳細介紹各個網路的關係的,就自己總結了一下,如果有不對的地方,請指出。

目錄

1 思維導圖

在這裡插入圖片描述

1 神經網路雛形–感知機

簡介: 感知機(Perceptron)由兩層神經元組成。如圖所示,輸入層接收外界輸入訊號後傳遞給輸出層,輸出層是M—P神經元,也稱為“閾值邏輯單元”。

在這裡插入圖片描述

感知機只有輸出層神經元需要啟用函式啟用,只有一層功能神經元,學習能力非常有限。感知機解決的都是線性可分的問題。要解決非線性可分問題,需要使用多層功能神經元。輸出層和輸入層之間的神經元成為隱層或者隱含層,隱含層層與輸出層神經元都是有啟用函式的功能神經元。至此引入多層前饋神經網路。

2 前饋神經網路(feedforward neural network,FNN)

在這裡插入圖片描述

2.1 單層前饋神經網

2.1.1 徑向基神經網路(Radial Basis Function,RBF)

簡介: 徑向基函式 RBF 神經網路(簡稱 RBF 網路)是一個只有一個隱藏層的三層前饋神經網路結構,它與前向網路相比最大的不同在於,隱藏層得轉換函式是區域性響應的高斯函式,而以前的前向網路、轉換函式都是全域性響應的函式。由於這樣的不同,如果要實現同一個功能,RBF 網路的神經元 個數
就可能要比前向 BP 網路的神經元個數要多。 但是,RBF 網路所需要的訓練時間卻比前向 BP 網路的要少。

使用徑向基函式作為隱層神經元啟用函式,而輸出層則是對隱層神經元輸出的線性組合。假定輸入為d維向量x。輸出為實值,則RBF網路可以表示為:
在這裡插入圖片描述

其中q為隱層神經元個數,ci和wi分別是第i個隱層神經元所對應的中心和權重, ρ \rho ρ(x,ci)設計徑向基函式,這是某種沿徑向對稱的標量函式,通常定義為樣本x到資料中心ci之間歐式距離的單調函式,常用的高斯徑向基函式形如

在這裡插入圖片描述

2.1.1.1 廣義迴歸神經網路(General Regression Neural Network,GPNN)

簡介:徑向基神經元和線性神經元可以建立廣義迴歸神經網路,它是徑RBF網路的一種變化形式,經常用於函式逼近。在某些方面比RBF網路更具優勢。GRNN與PNN一樣也是一個四層的網路結構:輸入層、模式層、求和層、輸出層。

在這裡插入圖片描述

優點:GRNN具有很強的非線性對映能力和學習速度,比RBF具有更強的優勢,網路最後普收斂於樣本量集聚較多的優化迴歸,樣本資料少時,預測效果很好, 網路還可以處理不穩定資料。廣義迴歸神經網路對x的迴歸定義不同於徑向基函式的對高斯權值的最小二乘法疊加,他是利用密度函式來預測輸出。

與PNN的區別:GRNN用於求解迴歸問題,而PNN用於求解分類問題。

2.1.1.2 概率神經網路(Probabilistic Neural Network,PNN)

簡介:徑向基神經元和競爭神經元還可以組成概率神經網路。PNN也是RBF的一種變化形式,結構簡單訓練快捷,特別適合於模式分類問題的解決。理論基礎是貝葉斯最小風險準則,即是貝葉斯決策理論。

結構:由輸入層、隱含層、求和層、輸出層組成。也把隱含層稱為模式層,把求和層叫做競爭層

在這裡插入圖片描述

第一層為輸入層,用於接收來自訓練樣本的值,將資料傳遞給隱含層,神經元個數與輸入向量長度相等。

第二層隱含層是徑向基層,每一個隱含層的神經元節點擁有一箇中心,該層接收輸入層的樣本輸入,計算輸入向量與中心的距離,最後返回一個標量值,神經元個數與輸入訓練樣本個數相同。

優點:

  • 訓練容易,收斂速度快,從而非常適用於實時處理。在基於密度函式核估計的PNN網路中,每一個訓練樣本確定一個隱含層神經元,神經元的權值直接取自輸入樣本值。口可以實現任意的非線性逼近,用PNN網路所形成的判決曲面與貝葉斯最優準則下的曲面非常接近。
  • 隱含層採用徑向基的非線性對映函式,考慮了不同類別模式樣本的交錯影響,具有很強的容錯性。只要有充足的樣本資料,概率神經網路都能收斂到貝葉斯分類器,沒有BP網路的區域性極小值問題。
  • 隱含層的傳輸函式可以選用各種用來估計概率密度的基函式,且分類結果對基函式的形式不敏感。
  • 擴充效能好。網路的學習過程簡單,增加或減少類別模式時不需要重新進行長時間的訓練學習。
  • 各層神經元的數目比較固定,因而易於硬體實現。

2.2 多層前饋神經網路

2.2.1 BP神經網路(Back Propagation,BP)

強化多層神經網路的訓練,必須引入演算法,其中最成功的是誤差逆傳播演算法(Back Propagation,簡稱BP演算法)。BP演算法不僅用於多層前饋神經網路,還可以用於訓練遞迴神經網路。解決了多層神經網路隱含層連線權學習問題,並在數學上給出了完整推導。人們把採用這種演算法進行誤差校正的多層前饋網路稱為BP神經網路
BP神經網路網路主要四個方面的應用:
1)函式逼近:用輸入向量和相應的輸出向量訓練一個網路逼近一個函式。
2)模式識別:用一個待定的輸出向量將它與輸入向量聯絡起來。
3)分類:把輸入向量所定義的合適方式進行分類。
4)資料壓縮:減少輸出向量維數以便於傳輸或儲存。

2.2.2 全連線神經網路

全連線神經網路(fully connected neural network),顧名思義,就是相鄰兩層之間任意兩個節點之間都有連線。全連線神經網路是最為普通的一種模型(比如和CNN相比),由於是全連線,所以會有更多的權重值和連線,因此也意味著佔用更多的記憶體和計算。
如圖定義了一個兩層的全連線神經網路。

在這裡插入圖片描述

2.2.3 卷積神經網路(Convolutional Neural Networks, CNN)

參考本人的另一篇部落格
卷積神經網路CNN(Convolutional Neural Networks, CNN) 綜述

3 反饋型神經神經網路

反饋神經網路中神經元不但可以接收其他神經元的訊號,而且可以接收自己的反饋訊號。和前饋神經網路相比,反饋神經網路中的神經元具有記憶功能,在不同時刻具有不同的狀態。反饋神經網路中的資訊傳播可以是單向也可以是雙向傳播,因此可以用一個有向迴圈圖或者無向圖來表示。

3.1 遞迴神經網路(Recurrent neural network,RNN)

與前饋神經網路不同"遞迴神經網路" (recurrent neural networks)允許網路中出現環形結構,從而可讓一些神經元的輸出反饋回來作為輸入訊號.這樣的結構與資訊反饋過程,使得網路在 t 時刻的輸出狀態不僅與 t 時刻的輸入有關,還與 t - 1 時刻的網路狀態有關,從而能處理與時間有關的動態變化。

3.1.1 Elman網路

Elman 網路是最常用的遞迴神經網路之 一,其結構如圖所示,它的結構與多層前饋網路恨相似,但隱層神經元的輸出被反饋回來,與下一時刻輸入層神經元提供的訊號一起,作為隱層神經元在下一時刻的輸入層神經元通常採Sigmoid 啟用函式,而網路的訓練則常通過推廣的BP演算法進行。

在這裡插入圖片描述

3.2 Hopfield神經網路

一種基於能量的模型(Energy Based Model,EBM)——可用作聯想儲存的互連網路,稱該模型為 Hopfield 網路。根據其啟用函式的不同,Hopfield 神經網路有兩種:離散Hopfield 網路(Discrete Hopfield Neural Network,DHNN)和連續Hopfield 網路(Continues Hopfield Neural Network,CHNN)。
具體講解參考部落格:
Hopfield 網路詳細講解

3.3 玻爾茲曼機(Boltzmann)

簡介: Boltzmann 機 就是一種"基於能量的模型" (Energy Based Model,EBM) ,常見結構如圖所示,其神經元分為兩層:顯層與隱層.顯層用於表示資料的輸入與輸出,隱層則被理解為資料的內在表達. Boltzmann 機中的神經元都是布林型的嗎即只能取 0、 1 兩種狀態,狀態 1 表示啟用,狀態0表示抑制。

能量定義:令向量 s ∈ \in {0,1}^n 表示n個神經元的狀態, ωij表示神經元i與j訓練容易,收斂速度快,從而非常適用於實時處理之間的連線權。 θ \theta θi也表示神經元i的閾值,則狀態向量s所對應的 Boltzmann 機能量定義為

在這裡插入圖片描述

網路中的神經元以任意不依賴於輸入值的順序進行更新,則網路最終將達到 Boltzmann 分佈,此時狀態向量 s 出現的概率將僅由其能量與所有可能狀態向量的能量確定:

在這裡插入圖片描述

Boltzmann 機的訓練過程:將每個訓練樣本視為一個狀態向量,使其出現的概率儘可能大.標準的 Boltzmann 機是一個全連線圖,訓練網路的複雜度很高,這使其難以用於解決現實任務. 現實中 常採用受限Boltzmann機(Restricted Boltzmann Machine,簡稱 RBM) . 如下圖所示,受限 Boltzmann 機僅保留顯層與隱層之間的連線 從而將 Boltzmann 機結構由完全圖簡化為二部圖。
在這裡插入圖片描述

4 競爭型學習神經網路

競爭型學習(compaetitive learning)是神經網路的中一種常用的無監督學習策略,在使用該策略時,網路的輸出神經元相互競爭,每一時刻僅有一個獲勝的神經元被啟用,其他神經元的狀態被抑制,中級機制也別稱為"勝者通吃"原則。

4.1 自適應諧振理論網路(Adaptive Resonance Theory,ART)

簡介:是一種競爭學習型神經網路。該網路由比較層、識別層、識別閾和重要模組構成。其中,比較層負責接受輸入樣本,並將其傳遞給識別層神經元。識別曾每個神經元對應一個模式類,神經元數目可在訓練過程中動態增長以增加新的模式類。

優點:課進行增量學習(incremental Learning)或者線上學習(online learning)

4.2 自組織對映神經網路(Self-Organizing Map,SOM)

簡介: SOM(Self-Organizing Map,自組織對映)網路,是一種競爭學習型的無監督神經網路,它能將高維輸入資料對映到低維空間(通常是二維),同時保持輸入資料在高維空間的拓撲結構,即將高維空間中想死的樣本點對映到網路輸出層中的鄰近神經元。
如圖所示, SOM 網路中的輸出層神經元以矩陣方式排列在二維空間中,每個神經元都擁有一個權向量,網路在接收輸入向量後,將會確定輸出層獲勝神經元,它決定了該輸入向量在低維空間中的位置.
在這裡插入圖片描述

SOM的訓練目標:每個輸出層神經元找到合適的權向量,以達到保持拓撲結構的目的

SOM訓練過程: 在接收到一個訓練樣本後.每個輸出層神經局會計算該樣本與自身攜帶的權向量之間的距離,距離最近的神經兀成為競爭獲勝者,稱為最佳匹配單元 (best matching unit). 然後,最佳匹配單元及其鄰近神經
元的權向量將被調整,以使得這些權向量與當前輸入樣本的距離縮小.這個過程不斷迭代,直至收斂.

5 結構自適應神經網路

一般的神經網路模型通常假定 網路結構是事先固定的,訓練的目的是利用訓練樣本來確定合適的連線權、 闕值等引數.與此不同, 結構自適應網路則將網路結構也當作學習的目標之 一,並希望能在訓練過程中找到最利合數據特點的網路結構

5.1 級聯相關 (Cascade-Correlation) 網路

簡介:,是結構自適應網路的重要代表。級聯相關網路有兩個主要成分"級聯"和"相關" 級聯是指建立層次連線的層級結構.在開始訓練時,網路只有輸入層和輸出層,處於最小拓撲結
構;隨著訓練的進行,如圖所示,新的隱層神經元逐漸加入,從而建立起層級結構. 當新的隱層神經元加入時,其輸入端連線權值是凍結固 定的相關是指通過最大化新神經元的輸出與網路誤差之間的相關性(correlation)來訓練相關的引數.
在這裡插入圖片描述

優缺點:與一般的前饋神經網路相比,級聯相關網路無需設定網路層數、隱層神經元數目,且訓練速度較快,但其在資料較小時易 陷入過擬合

6 線性神經網路

線性神經網路詳細原理及MATLAB實現pdf

簡介: 線性神經網路最典型的例子是自適應線性元件(Adaptive Linear Element,Adaline)。自適應線性元件 20 世紀 50 年代末由 Widrow 和 Hoff 提出,主要用途是通過線性逼近一個函式式而進行模式聯想以及訊號濾波、預測、模型識別和控制等。

線性神經網路與感知器的主要區別:
感知器的傳輸函式只能輸出兩種可能的值,而線性神經網路的輸出可以取任意值,其傳輸函式是線性函式。線性神經網路採用
Widrow-Hoff 學習規則,即 LMS(Least Mean Square)演算法來調整網路的權值和偏置。線性神經網路在收斂的精度和速度上較感知器都有了較大提高,但其線性運算規則決定了它只能解決線性可分的問題。

線性神經網路在結構上與感知器網路非常相似,只是神經元傳輸函式不同。

在這裡插入圖片描述

6.1 Madaline 神經網路

若網路中包含多個神經元節點,就能形成多個輸出,這種線性神經網路叫Madaline神經網路。

在這裡插入圖片描述

Madaline 可以用一種間接的方式解決線性不可分的問題,方法是用多個線性函式對區域進行劃分,然後對各個神經元的輸出做邏輯運算。如圖所示,Madaline 用兩條直線實現了異或邏輯。

在這裡插入圖片描述

7對抗神經網路GAN

簡介: 對抗神經網路其實是兩個網路的組合,可以理解為一個網路生成模擬資料,另一個網路判斷生成的資料是真實的還是模擬的。生成模擬資料的網路要不斷優化自己讓判別的網路判斷不出來,判別的網路也要不斷優化自己讓判斷的更加精確。兩者的關係形成對抗,因此叫對抗神經網路。

結構:GAN由generator(生成模型)和discriminator(判別式模型)兩部分構成。 二者結合之後,經過大量次數的迭代訓練會使generator儘可能模擬出以假亂真的樣本,而discrimator會有更精確的鑑別真偽資料的能力,最終整個GAN會達到所謂的納什均衡,即discriminator對於generator的資料鑑別結果為正確率和錯誤率各佔50%。

在這裡插入圖片描述

  • generator網路:主要是從訓練資料中產生相同分佈的samples,對於輸入x,類別標籤y,在生成模型中估計其聯合概率分佈。
  • discriminator網路:判斷輸入的是真實資料還是generator生成的資料,即估計樣本屬於某類的條件概率分佈。它採用傳統的監督學習的方法。

舉例:如果用到圖片生成上,則訓練完成後,G可以從一段隨機數中生成逼真的影象。G, D的主要功能是:

  • G是一個生成式的網路,它接收一個隨機的噪聲z(隨機數),通過這個噪聲生成影象
  • D是一個判別網路,判別一張圖片是不是“真實的”。它的輸入引數是x,x代表一張圖片,輸出D(x)代表x為真實圖片的概率,如果為1,就代表100%是真實的圖片,而輸出為0,就代表不可能是真實的圖片
    在這裡插入圖片描述