人工神經網絡

出自維基百科,自由嘅百科全書
Jump to navigation Jump to search
一個人工神經網絡嘅抽象圖;每個圓圈代表咗一粒模擬嘅神經細胞,而每粒神經細胞嘅啟動程度由佢打前嗰排神經細胞嘅啟動程度話事-就好似動物嘅神經系統噉。

人工神經網絡粵拼:jan4 gung1 san4 ging1 mong5 lok6英文artificial neural network,簡稱「ANN」)係指一啲模仿生物神經網絡動物中樞神經系統,尤其係個)嘅結構同功能嘅數學模型:一隻(例如)靈長目動物嘅腦閒閒地有斷百億計嘅神經細胞(neuron),一粒神經細胞喺俾化學物訊號刺激到嗰陣,會跟住以電或者化學物嚟傳新訊號,所以當一粒神經細胞射訊號嗰陣可以引起連鎖反應,將訊息喺成個神經網絡嗰度傳開去;而人工神經網絡好多時係以電腦程式嘅方法嚟到模擬呢一個過程,令到一個電腦程式能夠出現一啲好似動物神經系統噉嘅行為-對於認知科學人工智能、同機械人學等嘅領域嚟講好緊要[1][2]

一個人工神經網絡由大量嘅人工神經細胞(artificial neuron)組成。喺用電腦程式整 ANN 嗰陣,個研究者(通常)會每粒人工神經細胞都同佢設返個變數,嚟到代表佢嘅啟動程度(activation level)[3],而每粒神經細胞嘅啟動程度嘅數值都有條式計,而呢條式會包括咗佢之前嗰啲神經細胞嘅啟動程度-用數學嘅行話講就係「每粒人工神經細胞嘅啟動程度都係佢嘅輸入嘅函數」。呢啲函數當中嘅參數(parameter)可以變化,而如果一個 ANN 嘅程式令到佢曉靠自己嘅經驗嚟到調整呢啲參數嘅話,個 ANN 就會有學習嘅能力。

舉個例說明,例如家吓揾個 ANN 入面某一粒人工神經細胞集中睇佢,佢會有返個數字嚟反映佢嘅啟動程度,而呢個數字取決於第啲人工神經細胞嘅啟動程度-即係話會有一條類似噉樣嘅算式:

喺呢條式當中, 代表粒神經細胞嘅啟動程度, 代表其他神經細胞當中第 粒嘅啟動程度,而 就係其他神經細胞當中第 粒嘅權重(指嗰粒神經細胞有幾影響到 嗰粒神經細胞嘅啟動程度)。所以當一粒人工神經細胞啟動嗰陣會帶起埋第啲人工神經細胞跟住佢啟動-就好似生物神經網絡入面嗰啲神經細胞噉。

到咗廿一世紀頭,人工神經網絡經已俾科學界廣泛噉應用落去各種各樣嘅問題嗰度,例如係機械視覺同埋語音識別呢啲傳統嘅電腦程式編寫好難解決到嘅問題都有得用人工神經網絡嘅方法應付[2][4][5]

人工神經細胞[編輯]

睇埋:神經細胞

人工神經細胞係人工神經網絡嘅基本組成部件。一粒典型人工神經細胞嘅結構圖如下[6][7]

Ncell.png
  • 係各個輸入嘅數值,啲輸入嚟自外界又得,嚟自同一個網絡入面嘅第啲人工神經細胞又得。
  • 係每個輸入嘅權重,指嗰個輸入對嗰粒人工神經細胞有幾大嘅影響力。
  • 指「bias」,即係嗰粒神經細胞本身喺啟動嗰陣嘅傾向[8][9]
  • 指傳遞函數,簡單啲講就係 同埋 之間嗰條式,可以有 traingd()、tansig()、同 hardlim() 等多個款。
  • 係粒人工神經細胞嘅輸出,呢個輸出嘅數值由上述呢柞因素話事。

喺數學上,一粒人工神經細胞個 可以用以下呢條式表達:

  • 權重向量(weight vector),指包括咗所有權重在內嘅一個向量
  • 輸入向量(input vector),同理係指包括咗所有輸入在內嘅一個向量。
  • 指「bias」。
  • 指傳遞函數。
  • 同理係粒人工神經細胞嘅輸出,係一個純量(scalar)。

分層結構[編輯]

睇埋:生物神經網絡

常見嘅多層結構前饋網絡(Multilayer Feedforward Network)基本結構如下[10][11]

Artificial neural network.svg

幅圖入面嘅每一個圓圈都代表咗一粒人工神經細胞。呢個網絡由三大層組成,分別係[10]

  • 輸入層(input layer)嘅人工神經細胞負責由外界嗰度攞訊息-佢哋嘅啟動程度主要由呢啲外界訊息話事(係呢啲外界訊息嘅函數)。
  • 隱藏層(hidden layer)係輸入層同輸出層之間嘅一排排人工神經細胞,可以得一層或者有好多層都得,一粒喺隱藏層入面嘅人工神經細胞嘅啟動程度通常都係主要取決於佢打前嗰層嗰啲人工神經細胞嘅啟動程度。一般嚟講,隱藏層愈多人工神經細胞,個 ANN 嘅就愈會有顯著嘅非線性(nonlinearity;指啲數值之間嘅關係唔會係簡單嘅正比反比),而且亦都會愈強健(robust;冇噉易因為結構同參數改變而失去原有嘅效能)。喺實際應用上,啲科學家整 ANN 嗰陣會設每浸隱藏層嘅神經細胞數目做輸入層嘅 1.2 至 1.5 倍。
  • 輸出層(output layer),呢層嗰啲人工神經細胞嘅啟動程度由佢哋之前嗰層嘅人工神經細胞嘅話事,會俾出個 ANN 嘅運算結果。

但係亦都有一啲人工神經網絡係冇隱藏層嘅-呢啲 ANN 浸輸出層嘅啟動程度數值會直接噉由輸入層嘅決定,即係話:

SingleLayerNeuralNetwork english.png

呢種冇隱藏層嘅 ANN 嘅缺點係,佢哋所模擬嘅輸入同輸出之間嘅關係唔會太複雜-而一旦個輸入同輸出之間嘅關係唔係簡單嘅線性(linear)嗰陣,單層嘅人工神經網絡好多時就會搞唔掂[12][13]

按結構分類[編輯]

按照結構嚟分類嘅話,ANN 有得分做幾種:

  • 前饋神經網絡(feedforward network),指訊號淨係由輸入到輸出一個方向流動嘅 ANN -冇任何人工神經細胞能夠影響自己前排嗰啲人工神經細胞,好似上面嗰幾幅圖所描述嘅噉。
  • 遞迴神經網絡(recurrent network),指啲訊號會喺個 ANN 之內「遞迴」,即係話個 ANN 啲人工神經細胞當中有至少一部份嘅會有能力影響佢哋之前嗰啲人工神經細胞嘅啟動程度[14]。因為佢哋呢種結構上嘅特徵,佢哋識得處理喺時間上一連串噉出現嘅訊息,例如係人口講嘅嘢噉[15]:一個人講一句嘢嗰陣,句嘢嘅第二個字會影響到第一個字嘅意思(例如「家吓」同「家庭」意思就已經唔同),所以響分析喺時間點 聽到嘅字嗰陣,要考慮埋喺打前嗰啲時間點聽到嘅字先可以理解到嗮成個意思-遞迴神經網絡比起前饋神經網絡更加能夠做到呢一點。而事實係喺廿一世紀初,已經有科學家成功噉運用遞迴神經網絡嚟令到電腦學識處理人類用自然語言(natural language;指好似廣東話閩南話呢啲日常傾偈用嘅語言)講嘅嘢[15]
一個遞迴神經網絡嘅簡化圖, 代表個 ANN 喺時間點 嘅狀態、 代表個 ANN 喺時間點 嘅輸出、 代表個 ANN 喺時間點 由外界收到嘅輸入;一個遞迴神經網絡嘅唔單止會喺每單位時間接收外界嚟嘅輸入,仲會以自己之前出嘅輸出做新嘅輸入。

學習[編輯]

睇埋:機械學習估計理論同埋最佳化

學習法則[編輯]

學習法則(learning rule)係指一啲改變個 ANN 嗰柞參數嘅法則。一個 ANN 喺收到一個輸入嗰陣會計一個輸出出嚟,但係呢個輸出唔一定係正確嘅,可能會同正確嘅結果有所出入。所以如果要用 ANN 嚟計出正確嘅結果,好多時就要靠一個好似學習噉嘅過程[7][16]:例如喺監督式學習當中,個研究者可以走去揾柞數據返嚟-呢柞數據就係所謂嘅訓練集(training set);呢個訓練集會包括咗一連串嘅輸入個案,而每個個案都有一個已知嘅正確輸出值;跟手個研究者就可以將個訓練集嘅數據入落去個 ANN 度,等部電腦自動噉計出喺每一個個案入面,個 ANN 俾出嚟嘅輸出同正確嘅輸出值有幾大出入,跟手啲事先編寫好嘅學習法則就會按照呢啲落差值計吓啲(例如)權重要點樣改變先可以令到個 ANN 俾出更準確嘅答案。如是者,喺個 ANN 運算過大量嘅個案之後,佢嗰啲權重等嘅參數就會有所改變,變到更加能夠計到正確嘅答案-個研究者就可以攞呢個 ANN 嚟去預測一啲將來會撞到嘅同類個案[7]

喺呢個過程裏面,個研究者會想令以下條方程式入面嗰個 有噉細得噉細:

;當中
  • 係個訓練集入面嘅個案數量;
  • 係第 個個案入面嗰個輸入;
  • 係個 ANN 用 做輸入嗰陣俾出嚟嘅輸出;而
  • 係第 個個案入面嗰個正確輸出;所以
  • 呢個數值反映咗攞個 ANN 嚟計嘢嗰陣嘅平均誤差。

反向傳播算法[編輯]

內文: 反向傳播算法

反向傳播算法(backpropagation)係一種用嚟計個 ANN 啲權重要點樣調整嘅方法[17],例如係確率勾配降下法(stochastic gradient descent)會運用以下呢條算式嚟計出每個權重值要點變:

;當中
  • 係指喺時間點 嘅權重值
  • 學習率(learning rate);
  • 係個誤差,反映咗喺個個案入面個 ANN 俾嘅輸出同正確輸出差幾遠;
  • 隨住 偏導數(partial derivative);
  • 係一個隨機(stochastic)嘅數值。

如果一個以電腦程式寫嘅 ANN 跟呢條式(或者係類似嘅式)嚟行嘅話,佢喺計完每一個個案之後,都會計出佢裏面嘅權重值要點樣改變。而每次有個權重值改變嗰陣,佢嘅改變幅度會同個誤差有一定嘅關係-所以個 ANN 會一路計個案一路變,變到誤差值愈嚟愈接近零為止[10][18][19]

學習範式[編輯]

一個 ANN 可以隨住經驗而變得更加有能力做準確嘅預測-曉好似動物噉樣學習。所以 ANN 技術對機械學習(machine learning)嚟講至關重要,而要訓練一個 ANN 學嘢,主要有幾大學習範式:

監督式學習[編輯]

內文: 監督式學習

監督式學習(supervised learning)會揾一柞例子個案返嚟,將每個個案嘅輸入入落去個 ANN 嗰度等佢計個輸出出嚟,跟手再計返誤差值同埋用誤差值計吓個 ANN 啲權重要點改。用數學行話講嘅話,即係要揾出一柞已知嘅例子 ,並且由可容許嘅函數當中揾返個同啲例子最吻合嘅函數 出嚟[20]。喺呢種學習之下,個 ANN 會由個研究者嗰度收到一柞數據俾佢學,好似有個老師噉-所以就叫「監督」式學習。

用監督式學習可以訓練一個 ANN 做好多工作,好似係模式識別(pattern recognition)[21]同埋迴歸分析(regression analysis) [22]呀噉。舉個例說明,家吓有個研究員想訓練一個 ANN 分辨一個病人係咪有肺癌[23],用嚟幫啲醫生手做檢查;佢可以去問醫院大學醫學院等嘅單位借啲有關肺癌病人嘅數據,呢柞數據要包括咗每個病人嘅檢查結果、X 光片、同埋佢係咪有肺癌等嘅資訊;跟手個研究員就會逐個逐個將啲病人個案嘅檢查結果同 X 光片嗰柞數字入落去個 ANN 嘅輸入層嗰度,啲隱藏層會計吓啲輸入嘅數據,而個輸出層就會係是但一個二元(binary)嘅輸出-「有肺癌」(用「1」代表)同「冇肺癌」(用「0」代表)。喺初頭嗰陣,個 ANN 會犯好多錯,但係用呢柞數據訓練到噉上下,個 ANN 會根據佢啲學習法則改變佢啲參數,順利嘅話啲誤差會變到愈嚟愈細;而最後如果個誤差細到去一個可以接受嘅水平嘅話,啲醫生就有可能會有興趣用呢個 ANN 幫佢哋手做肺癌檢查。事實係,喺醫學上經已有唔少醫護人員會用 ANN 幫手做診斷,而且有研究發現,有陣時用 ANN 做診斷仲準過用人手做[24][25]

非監督式學習[編輯]

聚類分析嘅圖解;每一點代表咗一個個案,每個個案喺用 X 軸同 Y 軸兩條軸代表嘅兩個變數上都各有其數值,由呢幅圖睇得出,啲個案明顯可以按呢兩個變數分做三大類。
內文: 非監督式學習

非監督式學習(unsupervised learning)當中,個研究者會有一柞數據 俾個 ANN 處理,但係同監督式學習唔同嘅係,個研究者唔會明確噉話俾個 ANN 知佢做嘅預測係啱定錯,所以就嗌做「非監督」式學習。

非監督式學習最常見嘅用途係攞嚟做聚類分析(cluster analysis)[26][27][28]。舉個例子說明,家吓有個生態學家想研究吓一個區域入面嗰啲傾向聚集喺啲乜嘢位置,佢可以坐直昇機或者用人造衛星影啲返嚟,再記錄嗮嗰個區域入面每樖樹生喺邊個位(呢個過程會嘥唔少時間),會得出一個數據庫,記錄嗮每樖樹喺 X 軸同 Y 軸嗰度嘅坐標。跟手佢就可能會想睇吓啲樹會唔會傾向聚集喺個區域入面嘅某啲位置(呢啲資訊可能有助佢保育一啲靠樹生存嘅小動物)。如果有某一柞嘅樹彼此之間距離近,又同佢哋以外嘅樹距離遠,噉就可以話佢係「聚埋一羣」,而聚類分析就正係用嚟分析一柞個案入面會唔會有幾羣個體係「彼此之間距離近,同羣以外嘅個體距離遠」嘅。

喺呢次研究入面,個生態學家唔會事先知道啲樹要點分羣,所以用唔到監督式學習[27],但係佢可以運用非監督式學習嚟整一個 ANN 幫佢手做呢個聚類分析。一個簡單嘅可能做法係好似以下噉:將浸輸入層設做「樖樹嘅坐標」,等啲隱藏層用每一樖樹嘅數據逐個逐個計吓,而浸輸出層就有(例如)5 粒人工神經細胞,喺每樖樹嘅運算之後都會有一粒輸出層神經細胞嘅啟動程度係大過其他嘅-所以個生態學家就可以按「喺將嗰樖樹嘅數據入咗落去個 ANN 度之後,邊粒輸出層神經細胞嘅啟動程度最大」為準則將啲樹分做聚類,而且佢仲有得按照分類結果分得好唔好,嚟計吓使唔使改變吓個 ANN 嗰啲參數-個 ANN 喺度進行學習。除咗噉,電腦科學界仲有第啲更加精良嘅演算法嚟做非監督式學習[27][28]

喺上述呢個過程當中,個研究者由始至終都冇話俾個 ANN 知乜嘢輸出先算係「正確答案」,所以係「非監督」式學習。

強化學習[編輯]

強化學習嘅圖解;一個運用 ANN 解決問題嘅機械會自己同個環境互動,再睇自己嘅行動會帶嚟啲乜嘢回輸。
內文: 強化學習

強化學習(reinforcement learning)係機械學習嘅一種,喺機械人設計上好有用[29][30][31]。喺 ANN 強化學習嘅過程裏面,個研究者唔會有個數據庫 俾個 ANN 睇同跟住學,而係俾個 ANN 係噉同佢周圍嘅環境互動:喺每一個時間點 ,個 ANN 會產生一個用輸出嘅數字表示嘅動作(例如用「0」代表「企喺度唔郁」同「1」代表「向前行」呀噉),而跟住佢周圍個環境會俾返一啲回輸(feedback)-簡單啲講就係話返俾個 ANN 聽佢個動作係咪一個好嘅決定(例如個地下有個窿,「向前行」會跌得好痛)。而個 ANN 跟手就會根據呢個回輸計吓,睇吓要點樣改佢嗰啲參數先可以令到下次佢做行動嗰陣得到正面回應嘅機會率高啲-而上述嘅呢個例子有可能可以攞嚟教一個機械人行路

在線機械學習[編輯]

內文: 在線機械學習

嘅數值偏向極大嗰陣,一個研究者冇噉易有嗮數據喺手頭上,好多時會靠在線機械學習(online machine learning)-指喺一段時間之內俾個 ANN 係噉由外界攞輸入[32],例如喺整一個用嚟預測股價嘅 ANN 嗰陣,俾個 ANN(例如)日日睇一次隻股票嘅價格,每次睇完都要個 ANN 估吓隻股票聽日係乜嘢價格,跟手聽日睇吓個真實價格同個 ANN 嘅估計差幾遠,再計返個 出嚟同埋用呢個數值改變個 ANN 嘅參數,等佢第日可以做到更加準嘅預測。在線機械學習成本低,而且喺要預測嗰樣嘢嘅變化規律唔係恆定不變嘅情況下零舍有用[32]

例子[編輯]

以下係一段用 MATLAB程式語言嘅一種)寫嘅簡單前饋神經網絡嘅源碼[33]

  function m = neural()
  [Attributes, Classifications] = mendez; % 由「mendez」嗰度攞數據,「mendez」係個檔案嘅名。
  n = 2.6; % 設個變數做學習率。
  nbrOfNodes = 8;
  nbrOfEpochs = 800;
  
  % Initialize matrices with random weights 0-1; % 設矩陣嚟代表啲權重。
  W = rand(nbrOfNodes, length(Attributes(1,:)));
  U = rand(length(Classifications(1,:)),nbrOfNodes);
  
  m = 0; figure; hold on; e = size(Attributes);
  
  while m < nbrOfEpochs % 係噉 run 若干次。
  
      % Increment loop counter
      m = m + 1;
  
      % Iterate through all examples
      for i=1:e(1)
          % Input data from current example set % 由數據嗰度攞輸入。
          I = Attributes(i,:).';
          D = Classifications(i,:).';
  
          % Propagate the signals through network % 根據輸入同權重計吓個 ANN 俾啲乜嘢輸出。
          H = f(W*I);
          O = f(U*H);
  
          % Output layer error
          delta_i = O.*(1-O).*(D-O); % 計誤差值。
  
          % Calculate error for each node in layer_(n-1)
          delta_j = H.*(1-H).*(U.'*delta_i); % 計誤差值。
  
          % Adjust weights in matrices sequentially % 根據誤差值調較吓啲權重。
          U = U + n.*delta_i*(H.');
          W = W + n.*delta_j*(I.');
      end
  
      RMS_Err = 0;
  
      % Calculate RMS error % 計 RMS 誤差值。
      for i=1:e(1)
          D = Classifications(i,:).';
          I = Attributes(i,:).';
          RMS_Err = RMS_Err + norm(D-f(U*f(W*I)),2);
      end
      
      y = RMS_Err/e(1);
      plot(m,log(y),'*'); % 畫幅圖展示 RMS 誤差值點樣隨住學習次數演變;結果通常會係個誤差隨時間變細。
  
  end
  
  function x = f(x)
  x = 1./(1+exp(-x));

「黑盒」問題[編輯]

有好多 ANN 相關領域嘅學者都對 ANN 存有「黑盒」(black box)嘅疑問[34][35]。人類喺用個腦諗完嘢解決完問題之後,曉將自己嘅思考過程用口頭報告返出嚟,但係一個 ANN 唔會識做呢樣嘢,唔會話到俾研究者聽佢經過啲乜嘢思考過程先能夠達到佢所俾嘅輸出。所以有人將 ANN 比喻做一個黑盒-就算佢嘅輸出係準確嘅都好,個研究者都淨係知個 ANN 嘅輸入同輸出,冇辦法知道當中嘅思考過程。即係話對於「個 ANN 俾嘅答案點解係啱嘅」呢條問題,目前唯一嘅答覆係「因為一部醒過人類嘅系統俾咗個答案出嚟」,雖然呢一點唔損害 ANN 喺實用上預測現象嘅能力,但係噉表示咗 ANN 嘅可解釋度(explainability)低得好交關,令好多學者都覺得難以接受。因為噉,有好多科學家都致力研究點樣先可以拆解一個經歷咗訓練、做緊準確預測嘅 ANN [34]

[編輯]

起源[編輯]

人工神經網絡呢條橋最先係由美國神經科學家 Warren Sturgis McCulloch 同埋邏輯學家 Walter Pitts 喺 1943 年提出嘅[36],佢哋基於數學方法同一種叫做閾值邏輯(threshold logic)嘅演算法創造咗神經網絡嘅基本計算模型,令到科學界對神經網絡嘅研究分裂咗做兩個唔同嘅子領域,一個專係分析大腦裏面嘅生物學過程,而另一個就研究神經網絡可以點樣應用落去人工智能嗰度,正式噉開展咗現代嘅人工神經網絡研究。

赫布學習[編輯]

1940 年代尾橛,加拿大心理學家 Donald O. Hebb 諗咗一個假說出嚟描述神經細胞點隨住隻動物進行學習而有所改變,呢個後嚟會演變成所謂嘅赫布理論(Hebbian theory)。赫布理論嘅基本原則係,兩粒神經細胞愈係會一齊射神經訊號,就愈係會有強嘅連繫[37],呢個理論後尾演變做描述長期增強作用(long-term potentiation)嘅模型。喺 1954 年,美國科學家 Farley 同 Clark 用運算機械去模擬一個跟住赫布定律嚟行嘅神經網絡[38],而呢種嘗試仲有第啲科學家跟住做[39],確立咗人類用運算機械(好似電腦噉)嚟模擬神經網絡嘅做法。

美國心理學家 Frank Rosenblatt 喺 1956 年創造咗感知機(perceptron)[40]呢個演算法嚟去做模式識別,用簡單嘅實現咗一個兩層嘅電腦學習網絡。Rosenblatt 仲用數學符號描述咗啲基本感知機冇嘅迴路,例如係異或(exclusive-or circuit)迴路噉,呢啲迴路要打後電腦運算能力提高先有得用運算機械實現[41]

後尾烏克蘭裔蘇聯數學家 Alexey Ivakhnenko 同佢嘅同事史上首次成功噉整咗個行到嘅多層神經網絡出嚟[42][43]

雖然 ANN 學界有呢啲成就,但係因為嗰陣啲電腦運算能力低得滯,搞到好多時啲科學家都冇辦法真係攞部電腦去模擬佢哋啲神經網絡模型,令到對 ANN 嘅研究停滯咗成十幾年。

反向傳播演算法[編輯]

後嚟喺 1975 年出現咗個關鍵嘅進展-反向傳播演算法(backpropagation algorithm),呢個演算法有效噉解決咗異或嘅問題同埋多層神經網絡要點樣訓練嘅問題[41],令到對 ANN 嘅研究開始復甦。

喺廿世紀 80 年代中,科學界開始興用分散式並列處理(parallel distributed processing)模型嚟模擬人腦當中嘅過程,呢種模型將人腦當做一個同一時間處理大量訊息嘅物體(而唔係好似電腦噉好多時單一線路處理),而美國心理學家 Rumelhart 同 McClelland 詳細噉論述咗點樣將呢種模型用落去用電腦模擬神經活動嗰度[44]

後嚟支援向量機(support vector machines)同第啲簡單過 ANN 嘅方法(例如係線性分類器)喺機械學習(machine learning;指教機械學嘢嘅領域)上嘅人氣超越咗 ANN,搞到 ANN 研究又稍微低沉咗一輪,但係喺 2000 年代尾出現嘅深度學習(deep learning)又重新激發咗人對 ANN 嘅興趣[45][46]

廿一世紀[編輯]

到咗廿一世紀,運算力勁嘅電腦同埋人工智能領域嘅展開令到世界各地嘅科學家都開始睇重 ANN 研究[47],ANN 俾人廣泛噉用嚟解決一啲之前以為係電腦冇可能解到問題,例如係翻譯視覺、甚至乎係藝術創作噉[48],仲開始有啲國際比賽俾啲科學家鬥用 ANN 嚟解決難題[49]。總括嚟講,廿一世紀嘅 ANN 學界可以話係多姿多采。

睇埋[編輯]

[編輯]

  1. "Artificial Neural Networks as Models of Neural Information Processing | Frontiers Research Topic". Retrieved 2018-02-20.
  2. 2.0 2.1 Gardner, M. W., & Dorling, S. R. (1998). Artificial neural networks (the multilayer perceptron)—a review of applications in the atmospheric sciences. Atmospheric environment, 32(14-15), 2627-2636.
  3. The Machine Learning Dictionary - activation level.
  4. Ivakhnenko, A. G.; Grigorʹevich Lapa, Valentin (1967). Cybernetics and forecasting techniques. American Elsevier Pub. Co.
  5. Akira Hirose, Shotaro Yoshida (2012). “Generalization Characteristics of Complex-valued Feedforward Neural Networks in Relation to Signal Coherence”. IEEE TNNLS, 23(4): 541-551.
  6. Hagan, Martin. Neural Network Design. PWS Publishing Company. 1996.
  7. 7.0 7.1 7.2 Zell, Andreas (1994). "chapter 5.2". Simulation Neuronaler Netze [Simulation of Neural Networks] (in German) (1st ed.). Addison-Wesley.
  8. Abbod, Maysam F (2007). "Application of Artificial Intelligence to the Management of Urological Cancer". The Journal of Urology. 178 (4): 1150–1156.
  9. Dawson, Christian W (1998). "An artificial neural network approach to rainfall-runoff modelling". Hydrological Sciences Journal. 43 (1): 47–66.
  10. 10.0 10.1 10.2 Schmidhuber, J. (2015). "Deep Learning in Neural Networks: An Overview". Neural Networks. 61: 85–117.
  11. Ivakhnenko, A. G. (1973). Cybernetic Predicting Devices. CCM Information Corporation.
  12. Auer, Peter; Harald Burgsteiner; Wolfgang Maass (2008). "A learning rule for very simple universal approximators consisting of a single layer of perceptrons". Neural Networks. 21 (5): 786–795.
  13. 2.3.4 Single-Layer Network
  14. Siegelmann, H.T.; Sontag, E.D. (1991). "Turing computability with neural nets" (PDF). Appl. Math. Lett. 4 (6): 77–80.
  15. 15.0 15.1 Sak, Hasim; Senior, Andrew; Beaufays, Francoise (2014). "Long Short-Term Memory recurrent neural network architectures for large scale acoustic modeling" (PDF).
  16. How do Artificial Neural Networks learn?.
  17. Nielsen, Michael A. (2015). "Chapter 6". Neural Networks and Deep Learning.
  18. Dreyfus, Stuart E. (1990-09-01). "Artificial neural networks, back propagation, and the Kelley-Bryson gradient procedure". Journal of Guidance, Control, and Dynamics. 13 (5): 926–928.
  19. Eiji Mizutani, Stuart Dreyfus, Kenichi Nishio (2000). On derivation of MLP backpropagation from the Kelley-Bryson optimal-control gradient formula and its application. Proceedings of the IEEE International Joint Conference on Neural Networks (IJCNN 2000), Como Italy, July 2000.
  20. Ojha, Varun Kumar; Abraham, Ajith; Snášel, Václav (2017-04-01). "Metaheuristic design of feedforward neural networks: A review of two decades of research". Engineering Applications of Artificial Intelligence. 60: 97–116.
  21. Looney, C. G. (1997). Pattern recognition using neural networks: theory and algorithms for engineers and scientists (pp. 171-172). New York: Oxford University Press.
  22. Tu, J. V. (1996). Advantages and disadvantages of using artificial neural networks versus logistic regression for predicting medical outcomes. Journal of clinical epidemiology, 49(11), 1225-1231.
  23. Cancer Detection - MATLAB Example.
  24. Menéndez, L. Á., de Cos Juez, F. J., Lasheras, F. S., & Riesgo, J. Á. (2010). Artificial neural networks applied to cancer detection in a breast screening programme. Mathematical and Computer Modelling, 52(7-8), 983-991.
  25. Milani, C., & Jadavji, N. M. (2017). Solving cancer: The use of artificial neural networks in cancer diagnosis and treatment. Journal of Young Investigators, 33(4).
  26. Unsupervised learning - MathWorks.
  27. 27.0 27.1 27.2 Unsupervised Learning and Data Clustering - Towards Data Science.
  28. 28.0 28.1 Dostál, P., & Pokorný, P. (2009). Cluster analysis and neural network. In 17th Annual Conference Proceedings on Technical Computing Prague (pp. 131-57).
  29. Dominic, S.; Das, R.; Whitley, D.; Anderson, C. (July 1991). "Genetic reinforcement learning for neural networks". IJCNN-91-Seattle International Joint Conference on Neural Networks. IJCNN-91-Seattle International Joint Conference on Neural Networks. Seattle, Washington, USA: IEEE.
  30. Hoskins, J.C.; Himmelblau, D.M. (1992). "Process control via artificial neural networks and reinforcement learning". Computers & Chemical Engineering. 16 (4): 241–251.
  31. Bertsekas, D.P.; Tsitsiklis, J.N. (1996). Neuro-dynamic programming. Athena Scientific. p. 512.
  32. 32.0 32.1 Bottou, Léon (1998). "Online Algorithms and Stochastic Approximations". Online Learning and Neural Networks. Cambridge University Press.
  33. A very simple and intuitive neural network implementation. MathWorks.
  34. 34.0 34.1 THE BLACK BOX PROBLEM CLOSES IN ON NEURAL NETWORKS. The Next Platform.
  35. Trust, and don’t verify: the AI black box problem. Medium.
  36. McCulloch, Warren S.; Pitts, Walter. A logical calculus of the ideas immanent in nervous activity. The bulletin of mathematical biophysics. 1943-12-01, 5 (4): 115–133.
  37. Hebb, D.O. (1949). The Organization of Behavior. New York: Wiley & Sons.
  38. Farley, B.G.; W.A. Clark (1954). "Simulation of Self-Organizing Systems by Digital Computer". IRE Transactions on Information Theory. 4 (4): 76–84.
  39. Rochester, N.; J.H. Holland; L.H. Habit; W.L. Duda (1956). "Tests on a cell assembly theory of the action of the brain, using a large digital computer". IRE Transactions on Information Theory. 2 (3): 80–93.
  40. Rosenblatt, F. (1958). "The Perceptron: A Probabilistic Model For Information Storage And Organization In The Brain". Psychological Review. 65 (6): 386–408.
  41. 41.0 41.1 Werbos, P.J. (1975). Beyond Regression: New Tools for Prediction and Analysis in the Behavioral Sciences.
  42. Schmidhuber, J. (2015). "Deep Learning in Neural Networks: An Overview". Neural Networks. 61: 85–117.
  43. Ivakhnenko, A. G. (1973). Cybernetic Predicting Devices. CCM Information Corporation.
  44. Rumelhart, D.E; McClelland, James (1986). Parallel Distributed Processing: Explorations in the Microstructure of Cognition. Cambridge: MIT Press.
  45. Qian, N.; Sejnowski, T.J. (1988). "Predicting the secondary structure of globular proteins using neural network models". Journal of Molecular Biology. 202. pp. 865–884. Qian1988.
  46. Rost, B.; Sander, C. (1993). "Prediction of protein secondary structure at better than 70% accuracy". Journal of Molecular Biology. 232. pp. 584–599. Rost1993.
  47. Strukov, D. B.; Snider, G. S.; Stewart, D. R.; Williams, R. S. The missing memristor found. Nature. 2008, 453: 80–83.
  48. AI Painter.
  49. 2012 Kurzweil AI Interview with Jürgen Schmidhuber on the eight competitions won by his Deep Learning team 2009–2012.

[編輯]