1. 神經網路(Neural Network)
(1)結構:許多樹突(dendrite)用於輸入,一個軸突 (axon)用於輸出。
(2)特性:興奮性和傳導性。興奮性是指當信號量超過某個閾值時,細胞體就會被激活,產生電脈沖。傳導性是指電脈沖沿著軸突並通過突觸傳遞到其它神經元。
(3)有兩種狀態的機器:激活時為「是」,不激活時為「否」。神經細胞的狀態取決於從其他神經細胞接收到的信號量,以及突觸的性質(抑制或加強)。
(1)神經元——不重要
① 神經元是包含權重和偏置項的 函數 :接收數據後,執行一些計算,然後使用激活函數將數據限制在一個范圍內(多數情況下)。
② 單個神經元:線性可分的情況下,本質是一條直線, ,這條直線將數據劃分為兩類。而線性分類器本身就是一個單層神經網路。
③ 神經網路:非線性可分的情況下,神經網路通過多個隱層的方法來實現非線性的函數。
(2)權重/參數/連接(Weight)——最重要
每一個連接上都有一個權重。一個神經網路的訓練演算法就是讓權重的值調整到最佳,以使得整個網路的預測效果最好。
(3)偏置項(Bias Units)——必須
① 如果沒有偏置項,所有的函數都會經過原點。
② 正則化偏置會導致欠擬合:若對偏置正則化,會導致激活變得更加簡單,偏差就會上升,學習的能力就會下降。
③ 偏置的大小度量了神經元產生激勵(激活)的難易程度。
(1)定義:也稱為轉換函數,是一種將輸入 (input) 轉成輸出 (output) 的函數。
(2)作用:一般直線擬合的精確度要比曲線差很多,引入激活函數能給神經網路 增加一些非線性 的特性。
(3)性質:
① 非線性:導數不是常數,否則就退化成直線。對於一些畫一條直線仍然無法分開的問題,非線性可以把直線變彎,就能包羅萬象;
② 可微性:當優化方法是基於梯度的時候,處處可導為後向傳播演算法提供了核心條件;
③ 輸出范圍:一般限定在[0,1],使得神經元對一些比較大的輸入會比較穩定;
④ 非飽和性:飽和就是指,當輸入比較大的時候輸出幾乎沒變化,會導致梯度消失;
⑤ 單調性:導數符號不變,輸出不會上躥下跳,讓神經網路訓練容易收斂。
(1)線性函數 (linear function)—— purelin()
(2)符號函數 (sign function)—— hardlim()
① 如果z值高於閾值,則激活設置為1或yes,神經元將被激活。
② 如果z值低於閾值,則激活設置為0或no,神經元不會被激活。
(3)對率函數 (sigmoid function)—— logsig()
① 優點:光滑S型曲線連續可導,函數閾值有上限。
② 缺點:❶ 函數飽和使梯度消失,兩端梯度幾乎為0,更新困難,做不深;
❷ 輸出不是0中心,將影響梯度下降的運作,收斂異常慢;
❸ 冪運算相對來講比較耗時
(4)雙曲正切函數(hyperbolic tangent function)—— tansig()
① 優點:取值范圍0中心化,防止了梯度偏差
② 缺點:梯度消失現象依然存在,但相對於sigmoid函數問題較輕
(5)整流線性單元 ReLU 函數(rectified linear unit)
① 優點:❶ 分段線性函數,它的非線性性很弱,因此網路做得很深;
❷ 由於它的線性、非飽和性, 對於隨機梯度下降的收斂有巨大的加速作用;
② 缺點:❶ 當x<0,梯度都變成0,參數無法更新,也導致了數據多樣化的丟失;
❷ 輸出不是0中心
(6)滲漏型整流線性單元激活函數 Leaky ReLU 函數
① 優點:❶ 是為解決「ReLU死亡」問題的嘗試,在計算導數時允許較小的梯度;
❷ 非飽和的公式,不包含指數運算,計算速度快。
② 缺點:❶ 無法避免梯度爆炸問題; (沒有體現優於ReLU)
❷ 神經網路不學習 α 值。
(7)指數線性單元 ELU (Exponential Linear Units)
① 優點:❶ 能避免「死亡 ReLU」 問題;
❷ 能得到負值輸出,這能幫助網路向正確的方向推動權重和偏置變化;
❸ 在計算梯度時能得到激活,而不是讓它們等於 0。
② 缺點:❶ 由於包含指數運算,所以計算時間更長;
❷ 無法避免梯度爆炸問題; (沒有體現優於ReLU)
❸ 神經網路不學習 α 值。
(8)Maxout(對 ReLU 和 Leaky ReLU的一般化歸納)
① 優點:❶ 擁有ReLU的所有優點(線性和不飽和)
❷ 沒有ReLU的缺點(死亡的ReLU單元)
❸ 可以擬合任意凸函數
② 缺點 :參數數量增加了一倍。難訓練,容易過擬合
(9)Swish
① 優點:❶ 在負半軸也有一定的不飽和區,參數的利用率更大
❷ 無上界有下界、平滑、非單調
❸ 在深層模型上的效果優於 ReLU
每個層都包含一定數量的單元(units)。增加層可增加神經網路輸出的非線性。
(1)輸入層:就是接收原始數據,然後往隱層送
(2)輸出層:神經網路的決策輸出
(3)隱藏層:神經網路的關鍵。把前一層的向量變成新的向量,讓數據變得線性可分。
(1)結構:僅包含輸入層和輸出層,直接相連。
(2)作用:僅能表示 線性可分 函數或決策,且一定可以在有限的迭代次數中收斂。
(3)局限:可以建立與門、或門、非門等,但無法建立更為復雜的異或門(XOR),即兩個輸入相同時輸出1,否則輸出0。 (「AI winter」)
(1)目的:擬合某個函數 (兩層神經網路可以逼近任意連續函數)
(2)結構:包含輸入層、隱藏層和輸出層 ,由於從輸入到輸出的過程中不存在與模型自身的反饋連接,因此被稱為「前饋」。 (層與層之間全連接)
(3)作用: 非線性 分類、聚類、預測等,通過訓練,可以學習到數據中隱含的知識。
(4)局限:計算復雜、計算速度慢、容易陷入局部最優解,通常要將它們與其他網路結合形成新的網路。
(5)前向傳播演算法(Forward Propagation)
① 方法:從左至右逐級依賴的演算法模型,即網路如何根據輸入X得到輸出Y,最終的輸出值和樣本值作比較, 計算出誤差 。
② 目的:完成了一次正反向傳播,就完成了一次神經網路的訓練迭代。通過輸出層的誤差,快速求解對每個ω、b的偏導,利用梯度下降法,使Loss越來越小。
② 局限:為使最終的誤差達到最小,要不斷修改參數值,但神經網路的每條連接線上都有不同權重參數,修改這些參數變得棘手。
(6)誤差反向傳播(Back Propagation)
① 原理:梯度下降法求局部極值
② 方法:從後往前,從輸出層開始計算 L 對當前層的微分,獲得各層的誤差信號,此誤差信號即作為修正單元權值的依據。計算結束以後,所要的兩個參數矩陣的 梯度 就都有了。
③ 局限:如果激活函數是飽和的,帶來的缺陷就是系統迭代更新變慢,系統收斂就慢,當然這是可以有辦法彌補的,一種方法是使用 交叉熵函數 作為損失函數。
(1)原理:隨著網路的層數增加,每一層對於前一層次的抽象表示更深入。在神經網路中,每一層神經元學習到的是前一層神經元值的更抽象的表示。通過抽取更抽象的特徵來對事物進行區分,從而獲得更好的區分與分類能力。
(2)方法:ReLU函數在訓練多層神經網路時,更容易收斂,並且預測性能更好。
(3)優點:① 易於構建,表達能力強,基本單元便可擴展為復雜的非線性函數
② 並行性號,有利於在分布是系統上應用
(4)局限:① 優化演算法只能獲得局部極值,性能與初始值相關
② 調參理論性缺乏
③ 不可解釋,與實際任務關聯性模糊
(1)原理:由手工設計卷積核變成自動學習卷積核
(2)卷積(Convolutional layer): 輸入與卷積核相乘再累加 (內積、加權疊加)
① 公式:
② 目的:提取輸入的不同特徵,得到維度很大的 特徵圖(feature map)
③ 卷積核:需要訓練的參數。一般為奇數維,有中心像素點,便於定位卷積核
④ 特點:局部感知、參數變少、權重共享、分層提取
(3)池化(Pooling Layer):用更高層的抽象表達來表示主要特徵,又稱「降采樣」
① 分類: 最大 (出現與否)、平均(保留整體)、隨機(避免過擬合)
② 目的:降維,不需要訓練參數,得到新的、維度較小的特徵
(4)步長(stride):若假設輸入大小是n∗n,卷積核的大小是f∗f,步長是s,則最後的feature map的大小為o∗o,其中
(5)填充(zero-padding)
① Full模式:即從卷積核(fileter)和輸入剛相交開始做卷積,沒有元素的部分做補0操作。
② Valid模式:卷積核和輸入完全相交開始做卷積,這種模式不需要補0。
③ Same模式:當卷積核的中心C和輸入開始相交時做卷積。沒有元素的部分做補0操作。
(7)激活函數:加入非線性特徵
(8)全連接層(Fully-connected layer)
如果說卷積層、池化層和激活函數層等是將原始數據映射到隱層特徵空間(決定計算速度),全連接層則起到將學到的「分布式特徵表示」映射到樣本標記空間的作用(決定參數個數)。
參考:
[1] 神經網路(入門最詳細)_ruthy的博客-CSDN博客_神經網路演算法入門
[2] 神經網路(容易被忽視的基礎知識) - Evan的文章 - 知乎
[3] 人工神經網路——王的機器
[4] 如何簡單形象又有趣地講解神經網路是什麼? - 舒小曼的回答 - 知乎
[5] 神經網路15分鍾入門!足夠通俗易懂了吧 - Mr.括弧的文章 - 知乎
[6] 神經網路——最易懂最清晰的一篇文章_illikang的博客-CSDN博客_神經網路
[7] 直覺化深度學習教程——什麼是前向傳播——CSDN
[8] 「反向傳播演算法」過程及公式推導(超直觀好懂的Backpropagation)_aift的專欄-CSDN
[9] 卷積、反卷積、池化、反池化——CSDN
[10] 浙大機器學習課程- bilibili.com
2. 神經網路是什麼
神經網路是一種以人腦為模型的機器學習,簡單地說就是創造一個人工神經網路,通過一種演算法允許計算機通過合並新的數據來學習。
神經網路簡單說就是通過一種演算法允許計算機通過合並新的數據來學習!
3. 神經網路是什麼
神經網路可以指向兩種,一個是生物神經網路,一個是人工神經網路。
生物神經網路:一般指生物的大腦神經元,細胞,扒褲觸點等組成的網路,用於產生生物的意識御斗,幫助生物進行思考和行動。
人工神經網路(Artificial Neural Networks,簡寫為ANNs)也簡稱為神經網路(NNs)或稱作連接模型(Connection Model),它是一種模仿動物神經網路行為特徵春拆簡,進行分布式並行信息處理的演算法數學模型。這種網路依靠系統的復雜程度,通過調整內部大量節點之間相互連接的關系,從而達到處理信息的目的。
人工神經網路:是一種應用類似於大腦神經突觸聯接的結構進行信息處理的數學模型。在工程與學術界也常直接簡稱為「神經網路」或類神經網路。
4. rbf神經網路演算法是什麼
RBF神經網路演算法是由三層結構組成,輸入層至隱層為非線性的空間變換,一般選用徑向基函數的高斯函數進行運算;從隱層至輸出層為線性空間變換,即矩陣與矩陣之間的變換。
RBF神經網路進行數據運算時需要確認聚類中心點的位置及隱層至輸出層的權重。通常,選用K-means聚類演算法或最小正交二乘法對數據大量的進行訓練得出聚類中心矩陣和權重矩陣。
一般情況下,最小正交二乘法聚類中心點的位置是給定的,因此比較適合分布相對規律的數據。而K-means聚類演算法則會自主選取聚類中心,進行無監督分類學習,從而完成空間映射關系。
RBF網路特點
RBF網路能夠逼近任意非線性的函數(因為使用的是一個局部的激活函數。在中心點附近有最大的反應;越接近中心點則反應最大,遠離反應成指數遞減;就相當於每個神經元都對應不同的感知域)。
可以處理系統內難以解析的規律性,具有很好的泛化能力,並且具有較快的學習速度。
有很快的學習收斂速度,已成功應用於非線性函數逼近、時間序列分析、數據分類、模式識別、信息處理、圖像處理、系統建模、控制和故障診斷等。
當網路的一個或多個可調參數(權值或閾值)對任何一個輸出都有影響時,這樣的網路稱為全局逼近網路。由於對於每次輸入,網路上的每一個權值都要調整,從而導致全局逼近網路的學習速度很慢,比如BP網路。
5. 神經網路
神經網路是一種運算模型,模擬大腦神經網路處理、記憶信息的方式進行信息處理。晌棗敏
.
搜索神經網路經常會看到這種圈、線圖。神經網路定義是由大量的節點之間相互聯接構成,每個結點代表什麼?每條線代表什麼?
上圖每個圓圓的圈稱之為節點,節點就是對輸入數據乘上一定的權重後,進行函數處理。
每兩個節點間的連接都代表一個權重,這相當於人工神經網路的記憶。
術語上把上面一個個圓圈叫做 「神經元」 ,深入了解這些圈圈的內部構造。
當這些圈圈(神經元)收到數據輸入時,經歷三個步驟:
輸出的結果又可以作為數據進入下一個神經元。
還有一個「偏置」的定義用來完善步驟二,這里就不提了。
·
有時候會遇到這樣的神經網路的圖,其實就是把上面兩種類型圖結合起來。
輸入數據經過3層神經網路處理後,輸岩悔出結果。
不同層數可以有不同數量的神經元。
每個神經元都有對應輸入值的權值w,以及一個偏置b,還有一個激活函數f。
每個神經元的權重w、偏置b、激活函數f都可以不一樣。
所以針對這一特性,當神經元函數採用sigmoid函數時,權重的計算:
其中gj計算如下:
這里y為實際分類,y^為預測分類(神經元f處理結果) 詳細計算
.
有一組數據,包含4個樣本,每個樣本有3個屬性,每一個樣本對於一個已知的分類結果y。(相當於已知結果的訓練樣本,4個樣本,3個特徵)
每個樣本有3個屬性,對應3個權重,進入神經元訓練。第宴枝一層採用10個神經元進行處理。
步驟一:輸入數據*權重
步驟二:代入函數f中計算
上面加權求和後的數據帶入函數,這里使用sigmoid函數。
到這一步一層的神經網路就處理好了,比較預測結果和實際y之間的數值差(上面演算法中提到的偏差d)為:-0.009664、0.00788003、0.00641069、-0.00786466,相差不多。
步驟三:完善權重w
一開始的權重是隨便設置的,故需要根據公式需要完善權重值。
權重計算結果為-0.62737713,-0.30887831,-0.20651647,三個屬性重新賦予合適的權重。
6. 神經網路演算法是什麼
神經網路演算法是指邏輯性的思維是指根據邏輯規則進行推理的過程;神經網路的研究內容相當廣泛,反映了多學科交叉技術領域的特點,主要的研究工敬彎作集中在生物原型研究、建立理論模型、網路模型與演算法研亮敬悶究、人工神經網路應用系統等方面;生物原型研究:從生理學、心理學、解剖學、腦科學、病理學等生物科學方面研究神經細胞、神經網路、神經系統的生物原型結構及其功能機理;建立理論模型:根據生物原型的研究,建立神經元、神經網路的理論模型;網路模型與演算法研究:在理論模型研究的基礎上構作具體的神經網路模型,以實現計算機模擬或准備製作硬體;人稿爛
7. 人工神經網路綜述
文章主要分為:
一、人工神經網路的概念;
二、人工神經網路的發展歷史;
三、人工神經網路的特點;
四、人工神經網路的結構。
。。
人工神經網路(Artificial Neural Network,ANN)簡稱神經網路(NN),是基於生物學中神經網路的基本原理,在理解和抽象了人腦結構和外界刺激響應機制後,以網路拓撲知識為理論基礎,模擬人腦的神經系統對復雜信息的處理機制的一種數學模型。該模型以並行分布的處理能力、高容錯性、智能化和自學習等能力為特徵,將信息的加工和存儲結合在一起,以其獨特的知識表示方式和智能化的自適應學習能力,引起各學科領域的關注。它實際上是一個有大量簡單元件相互連接而成的復雜網路,具有高度的非線性,能夠進行復雜的邏輯操作和非線性關系實現的系統。
神經網路是一種運算模型,由大量的節點(或稱神經元)之間相互聯接構成。每個節點代表一種特定的輸出函數,稱為激活函數(activation function)。每兩個節點間的連接都代表一個對於通過該連接信號的加權值,稱之為權重(weight),神經網路就是通過這種方式來模擬人類的記憶。網路的輸出則取決於網路的結構、網路的連接方式、權重和激活函數。而網路自身通常都是對自然界某種演算法或者函數的逼近,也可能是對一種邏輯策略的表達。神經網路的構築理念是受到生物的神經網路運作啟發而產生的。人工神經網路則是把對生物神經網路的認識與數學統計模型相結合,藉助數學統計工具來實現。另一方面在人工智慧學的人工感知領域,我們通過數學統計學的方法,使神經網路能夠具備類似於人的決定能力和簡單的判斷能力,這種方法是對傳統邏輯學演算的進一步延伸。
人工神經網路中,神經元處理單元可表示不同的對象,例如特徵、字母、概念,或者一些有意義的抽象模式。網路中處理單元的類型分為三類:輸入單元、輸出單元和隱單元。輸入單元接受外部世界的信號與數據;輸出單元實現系統處理結果的輸出;隱單元是處在輸入和輸出單元之間,不能由系統外部觀察的單元。神經元間的連接權值反映了單元間的連接強度,信息的表示和處理體現在網路處理單元的連接關系中。人工神經網路是一種非程序化、適應性、大腦風格的信息處理,其本質是通過網路的變換和動力學行為得到一種並行分布式的信息處理功能,並在不同程度和層次上模仿人腦神經系統的信息處理功能。
神經網路,是一種應用類似於大腦神經突觸連接結構進行信息處理的數學模型,它是在人類對自身大腦組織結合和思維機制的認識理解基礎之上模擬出來的,它是根植於神經科學、數學、思維科學、人工智慧、統計學、物理學、計算機科學以及工程科學的一門技術。
在介紹神經網路的發展歷史之前,首先介紹一下神經網路的概念。神經網路主要是指一種仿造人腦設計的簡化的計算模型,這種模型中包含了大量的用於計算的神經元,這些神經元之間會通過一些帶有權重的連邊以一種層次化的方式組織在一起。每一層的神經元之間可以進行大規模的並行計算,層與層之間進行消息的傳遞。
下圖展示了整個神經網路的發展歷程:
神經網路的發展有悠久的歷史。其發展過程大致可以概括為如下4個階段。
(1)、M-P神經網路模型:20世紀40年代,人們就開始了對神經網路的研究。1943 年,美國心理學家麥克洛奇(Mcculloch)和數學家皮茲(Pitts)提出了M-P模型,此模型比較簡單,但是意義重大。在模型中,通過把神經元看作個功能邏輯器件來實現演算法,從此開創了神經網路模型的理論研究。
(2)、Hebb規則:1949 年,心理學家赫布(Hebb)出版了《The Organization of Behavior》(行為組織學),他在書中提出了突觸連接強度可變的假設。這個假設認為學習過程最終發生在神經元之間的突觸部位,突觸的連接強度隨之突觸前後神經元的活動而變化。這一假設發展成為後來神經網路中非常著名的Hebb規則。這一法則告訴人們,神經元之間突觸的聯系強度是可變的,這種可變性是學習和記憶的基礎。Hebb法則為構造有學習功能的神經網路模型奠定了基礎。
(3)、感知器模型:1957 年,羅森勃拉特(Rosenblatt)以M-P 模型為基礎,提出了感知器(Perceptron)模型。感知器模型具有現代神經網路的基本原則,並且它的結構非常符合神經生理學。這是一個具有連續可調權值矢量的MP神經網路模型,經過訓練可以達到對一定的輸入矢量模式進行分類和識別的目的,它雖然比較簡單,卻是第一個真正意義上的神經網路。Rosenblatt 證明了兩層感知器能夠對輸入進行分類,他還提出了帶隱層處理元件的三層感知器這一重要的研究方向。Rosenblatt 的神經網路模型包含了一些現代神經計算機的基本原理,從而形成神經網路方法和技術的重大突破。
(4)、ADALINE網路模型: 1959年,美國著名工程師威德羅(B.Widrow)和霍夫(M.Hoff)等人提出了自適應線性元件(Adaptive linear element,簡稱Adaline)和Widrow-Hoff學習規則(又稱最小均方差演算法或稱δ規則)的神經網路訓練方法,並將其應用於實際工程,成為第一個用於解決實際問題的人工神經網路,促進了神經網路的研究應用和發展。ADALINE網路模型是一種連續取值的自適應線性神經元網路模型,可以用於自適應系統。
人工智慧的創始人之一Minsky和Papert對以感知器為代表的網路系統的功能及局限性從數學上做了深入研究,於1969年發表了轟動一時《Perceptrons》一書,指出簡單的線性感知器的功能是有限的,它無法解決線性不可分的兩類樣本的分類問題,如簡單的線性感知器不可能實現「異或」的邏輯關系等。這一論斷給當時人工神經元網路的研究帶來沉重的打擊。開始了神經網路發展史上長達10年的低潮期。
(1)、自組織神經網路SOM模型:1972年,芬蘭的KohonenT.教授,提出了自組織神經網路SOM(Self-Organizing feature map)。後來的神經網路主要是根據KohonenT.的工作來實現的。SOM網路是一類無導師學習網路,主要用於模式識別﹑語音識別及分類問題。它採用一種「勝者為王」的競爭學習演算法,與先前提出的感知器有很大的不同,同時它的學習訓練方式是無指導訓練,是一種自組織網路。這種學習訓練方式往往是在不知道有哪些分類類型存在時,用作提取分類信息的一種訓練。
(2)、自適應共振理論ART:1976年,美國Grossberg教授提出了著名的自適應共振理論ART(Adaptive Resonance Theory),其學習過程具有自組織和自穩定的特徵。
(1)、Hopfield模型:1982年,美國物理學家霍普菲爾德(Hopfield)提出了一種離散神經網路,即離散Hopfield網路,從而有力地推動了神經網路的研究。在網路中,它首次將李雅普諾夫(Lyapunov)函數引入其中,後來的研究學者也將Lyapunov函數稱為能量函數。證明了網路的穩定性。1984年,Hopfield 又提出了一種連續神經網路,將網路中神經元的激活函數由離散型改為連續型。1985 年,Hopfield和Tank利用Hopfield神經網路解決了著名的旅行推銷商問題(Travelling Salesman Problem)。Hopfield神經網路是一組非線性微分方程。Hopfield的模型不僅對人工神經網路信息存儲和提取功能進行了非線性數學概括,提出了動力方程和學習方程,還對網路演算法提供了重要公式和參數,使人工神經網路的構造和學習有了理論指導,在Hopfield模型的影響下,大量學者又激發起研究神經網路的熱情,積極投身於這一學術領域中。因為Hopfield 神經網路在眾多方面具有巨大潛力,所以人們對神經網路的研究十分地重視,更多的人開始了研究神經網路,極大地推動了神經網路的發展。
(2)、Boltzmann機模型:1983年,Kirkpatrick等人認識到模擬退火演算法可用於NP完全組合優化問題的求解,這種模擬高溫物體退火過程來找尋全局最優解的方法最早由Metropli等人1953年提出的。1984年,Hinton與年輕學者Sejnowski等合作提出了大規模並行網路學習機,並明確提出隱單元的概念,這種學習機後來被稱為Boltzmann機。
Hinton和Sejnowsky利用統計物理學的感念和方法,首次提出的多層網路的學習演算法,稱為Boltzmann 機模型。
(3)、BP神經網路模型:1986年,儒默哈特(D.E.Ru melhart)等人在多層神經網路模型的基礎上,提出了多層神經網路權值修正的反向傳播學習演算法----BP演算法(Error Back-Propagation),解決了多層前向神經網路的學習問題,證明了多層神經網路具有很強的學習能力,它可以完成許多學習任務,解決許多實際問題。
(4)、並行分布處理理論:1986年,由Rumelhart和McCkekkand主編的《Parallel Distributed Processing:Exploration in the Microstructures of Cognition》,該書中,他們建立了並行分布處理理論,主要致力於認知的微觀研究,同時對具有非線性連續轉移函數的多層前饋網路的誤差反向傳播演算法即BP演算法進行了詳盡的分析,解決了長期以來沒有權值調整有效演算法的難題。可以求解感知機所不能解決的問題,回答了《Perceptrons》一書中關於神經網路局限性的問題,從實踐上證實了人工神經網路有很強的運算能力。
(5)、細胞神經網路模型:1988年,Chua和Yang提出了細胞神經網路(CNN)模型,它是一個細胞自動機特性的大規模非線性計算機模擬系統。Kosko建立了雙向聯想存儲模型(BAM),它具有非監督學習能力。
(6)、Darwinism模型:Edelman提出的Darwinism模型在90年代初產生了很大的影響,他建立了一種神經網路系統理論。
(7)、1988年,Linsker對感知機網路提出了新的自組織理論,並在Shanon資訊理論的基礎上形成了最大互信息理論,從而點燃了基於NN的信息應用理論的光芒。
(8)、1988年,Broomhead和Lowe用徑向基函數(Radialbasis function, RBF)提出分層網路的設計方法,從而將NN的設計與數值分析和線性適應濾波相掛鉤。
(9)、1991年,Haken把協同引入神經網路,在他的理論框架中,他認為,認知過程是自發的,並斷言模式識別過程即是模式形成過程。
(10)、1994年,廖曉昕關於細胞神經網路的數學理論與基礎的提出,帶來了這個領域新的進展。通過拓廣神經網路的激活函數類,給出了更一般的時滯細胞神經網路(DCNN)、Hopfield神經網路(HNN)、雙向聯想記憶網路(BAM)模型。
(11)、90年代初,Vapnik等提出了支持向量機(Supportvector machines, SVM)和VC(Vapnik-Chervonenkis)維數的概念。
經過多年的發展,已有上百種的神經網路模型被提出。
深度學習(Deep Learning,DL)由Hinton等人於2006年提出,是機器學習的一個新領域。深度學習本質上是構建含有多隱層的機器學習架構模型,通過大規模數據進行訓練,得到大量更具代表性的特徵信息。深度學習演算法打破了傳統神經網路對層數的限制,可根據設計者需要選擇網路層數。
突觸是神經元之間相互連接的介面部分,即一個神經元的神經末梢與另一個神經元的樹突相接觸的交界面,位於神經元的神經末梢尾端。突觸是軸突的終端。
大腦可視作為1000多億神經元組成的神經網路。神經元的信息傳遞和處理是一種電化學活動.樹突由於電化學作用接受外界的刺激,通過胞體內的活動體現為軸突電位,當軸突電位達到一定的值則形成神經脈沖或動作電位;再通過軸突末梢傳遞給其它的神經元.從控制論的觀點來看;這一過程可以看作一個多輸入單輸出非線性系統的動態過程。
神經元的功能特性:(1)時空整合功能;(2)神經元的動態極化性;(3)興奮與抑制狀態;(4)結構的可塑性;(5)脈沖與電位信號的轉換;(6)突觸延期和不應期;(7)學習、遺忘和疲勞。
神經網路從兩個方面模擬大腦:
(1)、神經網路獲取的知識是從外界環境中學習得來的。
(2)、內部神經元的連接強度,即突觸權值,用於儲存獲取的知識。
神經網路系統由能夠處理人類大腦不同部分之間信息傳遞的由大量神經元連接形成的拓撲結構組成,依賴於這些龐大的神經元數目和它們之間的聯系,人類的大腦能夠收到輸入的信息的刺激由分布式並行處理的神經元相互連接進行非線性映射處理,從而實現復雜的信息處理和推理任務。
對於某個處理單元(神經元)來說,假設來自其他處理單元(神經元)i的信息為Xi,它們與本處理單元的互相作用強度即連接權值為Wi, i=0,1,…,n-1,處理單元的內部閾值為θ。那麼本處理單元(神經元)的輸入為:
,而處理單元的輸出為:
式中,xi為第i個元素的輸入,wi為第i個處理單元與本處理單元的互聯權重即神經元連接權值。f稱為激活函數或作用函數,它決定節點(神經元)的輸出。θ表示隱含層神經節點的閾值。
神經網路的主要工作是建立模型和確定權值,一般有前向型和反饋型兩種網路結構。通常神經網路的學習和訓練需要一組輸入數據和輸出數據對,選擇網路模型和傳遞、訓練函數後,神經網路計算得到輸出結果,根據實際輸出和期望輸出之間的誤差進行權值的修正,在網路進行判斷的時候就只有輸入數據而沒有預期的輸出結果。神經網路一個相當重要的能力是其網路能通過它的神經元權值和閾值的不斷調整從環境中進行學習,直到網路的輸出誤差達到預期的結果,就認為網路訓練結束。
對於這樣一種多輸入、單輸出的基本單元可以進一步從生物化學、電生物學、數學等方面給出描述其功能的模型。利用大量神經元相互連接組成的人工神經網路,將顯示出人腦的若干特徵,人工神經網路也具有初步的自適應與自組織能力。在學習或訓練過程中改變突觸權重wij值,以適應周圍環境的要求。同一網路因學習方式及內容不同可具有不同的功能。人工神經網路是一個具有學習能力的系統,可以發展知識,以至超過設計者原有的知識水平。通常,它的學習(或訓練)方式可分為兩種,一種是有監督(supervised)或稱有導師的學習,這時利用給定的樣本標准進行分類或模仿;另一種是無監督(unsupervised)學習或稱無導師學習,這時,只規定學習方式或某些規則,而具體的學習內容隨系統所處環境(即輸入信號情況)而異,系統可以自動發現環境特徵和規律性,具有更近似於人腦的功能。
在人工神經網路設計及應用研究中,通常需要考慮三個方面的內容,即神經元激活函數、神經元之間的連接形式和網路的學習(訓練)。
8. 神經網路演算法的三大類分別是
神經網路演算法的三大類分別是:
1、前饋神經網路:
這是實際應用中最常見的神經網路類型。第一層是輸入,最後一層是輸出。如果有多個隱藏層,我們稱之為「深度」神經網路。他們計算出一系列改變樣本相似性的變換。各層神經元的活動是前一層活動的非線性函數。
2、循環網路:
循環網路在他們的連接圖中定向了循環,這意味著你可以按照箭頭回到你開始的地方。他們可以有復雜的動態,使其很難訓練。他們更具有生物真實性。
循環網路的目的是用來處理序列數據。在傳統的神經網路模型中,是從輸入層到隱含層再到輸出層,層與層之間是全連接的,每層之間的節點是無連接的。但是這種普通的神經網路對於很多問題卻無能無力。
循環神經網路,即一個序列當前的輸出與前面的輸出也有關。具體的表現形式為網路會對前面的信息進行記憶並應用於當前輸出的計算中,即隱藏層之間的節點不再無連接而是有連接的,並且隱藏層的輸入不僅包括輸入層的輸出還包括上一時刻隱藏層的輸出。
3、對稱連接網路:
對稱連接網路有點像循環網路,但是單元之間的連接是對稱的(它們在兩個方向上權重相同)。比起循環網路,對稱連接網路更容易分析。
這個網路中有更多的限制,因為它們遵守能量函數定律。沒有隱藏單元的對稱連接網路被稱為「Hopfield 網路」。有隱藏單元的對稱連接的網路被稱為玻爾茲曼機。
(8)神經網路運算主要做什麼擴展閱讀:
應用及發展:
心理學家和認知科學家研究神經網路的目的在於探索人腦加工、儲存和搜索信息的機制,弄清人腦功能的機理,建立人類認知過程的微結構理論。
生物學、醫學、腦科學專家試圖通過神經網路的研究推動腦科學向定量、精確和理論化體系發展,同時也寄希望於臨床醫學的新突破;信息處理和計算機科學家研究這一問題的目的在於尋求新的途徑以解決不能解決或解決起來有極大困難的大量問題,構造更加逼近人腦功能的新一代計算機。
9. 簡單介紹神經網路演算法
直接簡單介紹神經網路演算法
神經元:它是神經網路的基本單元。神經元先獲得輸入,然後執行某卜銀些數學運算後,再產生一個輸出。
神經元內輸入 經歷了3步數學運算,
先將兩個輸入乘以 權重 :
權重 指某一因素或指標相對於某一事物的重要程度,其不同於一般的比重,體現的不僅僅是某一因素或指標所佔的百分比,強調的是因素或指標的相對重要程度
x1→x1 × w1
x2→x2 × w2
把兩個結果相加,加上一個 偏置 :
(x1 × w1)+(x2 × w2)+ b
最後將它們經過 激活函數 處理得到輸出:
y = f(x1 × w1 + x2 × w2 + b)
激活函數 的作用是將無限制的輸入轉換為可預測形式的輸出。一種常用的激活函數是 sigmoid函數
sigmoid函數的輸御弊巧出 介於0和1,我們可以理解為它把 (−∞,+∞) 范圍內的數壓縮到 (0, 1)以內。正值越大輸出越接近1,負向數值越大輸出越接近0。
神經網路: 神經網路就是把一堆神經元連接在一起
隱藏層 是夾在輸入輸入層和輸出層之間的部分,一個神經網路可以有多個隱藏層。
前饋 是指神經元的輸入向前傳遞獲得輸出的過程
訓練神經網路 ,其實這就是一個優化的過程,將損失最小化
損失 是判斷訓練神經網路的一個標准
可用 均方誤差 定義損失
均方誤差 是反映 估計量 與 被估計量 之間差異程度的一種度量。設t是根據子樣確定的總體參數θ的一個估計量,鎮鍵(θ-t)2的 數學期望 ,稱為估計量t的 均方誤差 。它等於σ2+b2,其中σ2與b分別是t的 方差 與 偏倚 。
預測值 是由一系列網路權重和偏置計算出來的值
反向傳播 是指向後計算偏導數的系統
正向傳播演算法 是由前往後進行的一個演算法
10. 神經網路演算法是什麼
Introction
--------------------------------------------------------------------------------
神經網路是新技術領域中的一個時尚詞彙。很多人聽過這個詞,但很少人真正明白它是什麼。本文的目的是介紹所有關於神經網路的基本包括它的功能、一般結構、相關術語、類型及其應用。
「神經網路」這個詞實際是來自於生物學,而我們所指的神經網路正確的名稱應該是「人工神經網路(ANNs)」。在本文,我會同時使用這兩個互換的術語。
一個真正的神經網路是由數個至數十億個被稱為神經元的細胞(組成我們大腦的微小細胞)所組成,它們以不同方式連接而型成網路。人工神經網路就是嘗試模擬這種生物學上的體系結構及其操作。在這里有一個難題:我們對生物學上的神經網路知道的不多!因此,不同類型之間的神經網路體系結構有很大的不同,我們所知道的只是神經元基本的結構。
The neuron
--------------------------------------------------------------------------------
雖然已經確認在我們的大腦中有大約50至500種不同的神經元,但它們大部份都是基於基本神經元的特別細胞。基本神經元包含有synapses、soma、axon及dendrites。Synapses負責神經元之間的連接,它們不是直接物理上連接的,而是它們之間有一個很小的空隙允許電子訊號從一個神經元跳到另一個神經元。然後這些電子訊號會交給soma處理及以其內部電子訊號將處理結果傳遞給axon。而axon會將這些訊號分發給dendrites。最後,dendrites帶著這些訊號再交給其它的synapses,再繼續下一個循環。
如同生物學上的基本神經元,人工的神經網路也有基本的神經元。每個神經元有特定數量的輸入,也會為每個神經元設定權重(weight)。權重是對所輸入的資料的重要性的一個指標。然後,神經元會計算出權重合計值(net value),而權重合計值就是將所有輸入乘以它們的權重的合計。每個神經元都有它們各自的臨界值(threshold),而當權重合計值大於臨界值時,神經元會輸出1。相反,則輸出0。最後,輸出會被傳送給與該神經元連接的其它神經元繼續剩餘的計算。
Learning
--------------------------------------------------------------------------------
正如上述所寫,問題的核心是權重及臨界值是該如何設定的呢?世界上有很多不同的訓練方式,就如網路類型一樣多。但有些比較出名的包括back-propagation, delta rule及Kohonen訓練模式。
由於結構體系的不同,訓練的規則也不相同,但大部份的規則可以被分為二大類別 - 監管的及非監管的。監管方式的訓練規則需要「教師」告訴他們特定的輸入應該作出怎樣的輸出。然後訓練規則會調整所有需要的權重值(這是網路中是非常復雜的),而整個過程會重頭開始直至數據可以被網路正確的分析出來。監管方式的訓練模式包括有back-propagation及delta rule。非監管方式的規則無需教師,因為他們所產生的輸出會被進一步評估。
Architecture
--------------------------------------------------------------------------------
在神經網路中,遵守明確的規則一詞是最「模糊不清」的。因為有太多不同種類的網路,由簡單的布爾網路(Perceptrons),至復雜的自我調整網路(Kohonen),至熱動態性網路模型(Boltzmann machines)!而這些,都遵守一個網路體系結構的標准。
一個網路包括有多個神經元「層」,輸入層、隱蔽層及輸出層。輸入層負責接收輸入及分發到隱蔽層(因為用戶看不見這些層,所以見做隱蔽層)。這些隱蔽層負責所需的計算及輸出結果給輸出層,而用戶則可以看到最終結果。現在,為免混淆,不會在這里更深入的探討體系結構這一話題。對於不同神經網路的更多詳細資料可以看Generation5 essays
盡管我們討論過神經元、訓練及體系結構,但我們還不清楚神經網路實際做些什麼。
The Function of ANNs
--------------------------------------------------------------------------------
神經網路被設計為與圖案一起工作 - 它們可以被分為分類式或聯想式。分類式網路可以接受一組數,然後將其分類。例如ONR程序接受一個數字的影象而輸出這個數字。或者PPDA32程序接受一個坐標而將它分類成A類或B類(類別是由所提供的訓練決定的)。更多實際用途可以看Applications in the Military中的軍事雷達,該雷達可以分別出車輛或樹。
聯想模式接受一組數而輸出另一組。例如HIR程序接受一個『臟』圖像而輸出一個它所學過而最接近的一個圖像。聯想模式更可應用於復雜的應用程序,如簽名、面部、指紋識別等。
The Ups and Downs of Neural Networks
--------------------------------------------------------------------------------
神經網路在這個領域中有很多優點,使得它越來越流行。它在類型分類/識別方面非常出色。神經網路可以處理例外及不正常的輸入數據,這對於很多系統都很重要(例如雷達及聲波定位系統)。很多神經網路都是模仿生物神經網路的,即是他們仿照大腦的運作方式工作。神經網路也得助於神經系統科學的發展,使它可以像人類一樣准確地辨別物件而有電腦的速度!前途是光明的,但現在...
是的,神經網路也有些不好的地方。這通常都是因為缺乏足夠強大的硬體。神經網路的力量源自於以並行方式處理資訊,即是同時處理多項數據。因此,要一個串列的機器模擬並行處理是非常耗時的。
神經網路的另一個問題是對某一個問題構建網路所定義的條件不足 - 有太多因素需要考慮:訓練的演算法、體系結構、每層的神經元個數、有多少層、數據的表現等,還有其它更多因素。因此,隨著時間越來越重要,大部份公司不可能負擔重復的開發神經網路去有效地解決問題。
NN 神經網路,Neural Network
ANNs 人工神經網路,Artificial Neural Networks
neurons 神經元
synapses 神經鍵
self-organizing networks 自我調整網路
networks modelling thermodynamic properties 熱動態性網路模型
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
網格演算法我沒聽說過
好像只有網格計算這個詞
網格計算是伴隨著互聯網技術而迅速發展起來的,專門針對復雜科學計算的新型計算模式。這種計算模式是利用互聯網把分散在不同地理位置的電腦組織成一個「虛擬的超級計算機」,其中每一台參與計算的計算機就是一個「節點」,而整個計算是由成千上萬個「節點」組成的「一張網格」, 所以這種計算方式叫網格計算。這樣組織起來的「虛擬的超級計算機」有兩個優勢,一個是數據處理能力超強;另一個是能充分利用網上的閑置處理能力。簡單地講,網格是把整個網路整合成一台巨大的超級計算機,實現計算資源、存儲資源、數據資源、信息資源、知識資源、專家資源的全面共享。