㈠ 卷積神經網路 輸出層的rbf是什麼意思
在多分類中,CNN的輸出層一般都是Softmax。RBF在我的接觸中如果沒有特殊情況的話應該是「徑向基函數」(Radial Basis Function)。在DNN興起之前,RBF由於出色的局部近似能力,被廣泛應用在SVM的核函數中,當然也有我們熟悉的RBF神經網路(也就是以RBF函數為激活函數的單隱含層神經網路)。
如果說把RBF作為卷積神經網路的輸出,我覺得如果不是有特殊的應用背景的話,它並不是一個很好的選擇。至少從概率角度上講,RBF沒有Softmax那樣擁有良好的概率特性。
如果題主是在什麼地方看到它的源代碼並且感到困惑的話,可以貼上源鏈接一起討論一下。
FYI. RBF的定義和計算公式參考:http://ke..com/link?url=_G0Yv0vyTfV3P8S3Q_rZU3CM6f0udS-b6ux2w-hejkOrGMkmj8Nqba
㈡ 神經網路模型-27種神經網路模型們的簡介
【1】Perceptron(P) 感知機
【1】感知機
感知機是我們知道的最簡單和最古老的神經元模型,它接收一些輸入,然後把它們加總,通過激活函數並傳遞到輸出層。
【2】Feed Forward(FF)前饋神經網路
【2】前饋神經網路
前饋神經網路(FF),這也是一個很古老的方法——這種方法起源於50年代。它的工作原理通常遵循以下規則:
1.所有節點都完全連接
2.激活從輸入層流向輸出,無回環
3.輸入和輸出之間有一層(隱含層)
在大多數情況下,這種類型的網路使用反向傳播方法進行訓練。
【3】Radial Basis Network(RBF) RBF神經網路
【3】RBF神經網路
RBF 神經網路實際上是 激活函數是徑向基函數 而非邏輯函數的FF前饋神經網路(FF)。兩者之間有什麼區別呢?
邏輯函數--- 將某個任意值映射到[0 ,... 1]范圍內來,回答「是或否」問題。適用於分類決策系統,但不適用於連續變數。
相反, 徑向基函數--- 能顯示「我們距離目標有多遠」。 這完美適用於函數逼近和機器控制(例如作為PID控制器的替代)。
簡而言之,RBF神經網路其實就是, 具有不同激活函數和應用方向的前饋網路 。
【4】Deep Feed Forword(DFF)深度前饋神經網路
【4】DFF深度前饋神經網路
DFF深度前饋神經網路在90年代初期開啟了深度學習的潘多拉盒子。 這些依然是前饋神經網路,但有不止一個隱含層 。那麼,它到底有什麼特殊性?
在訓練傳統的前饋神經網路時,我們只向上一層傳遞了少量的誤差信息。由於堆疊更多的層次導致訓練時間的指數增長,使得深度前饋神經網路非常不實用。 直到00年代初,我們開發了一系列有效的訓練深度前饋神經網路的方法; 現在它們構成了現代機器學習系統的核心 ,能實現前饋神經網路的功能,但效果遠高於此。
【5】Recurrent Neural Network(RNN) 遞歸神經網路
【5】RNN遞歸神經網路
RNN遞歸神經網路引入不同類型的神經元——遞歸神經元。這種類型的第一個網路被稱為約旦網路(Jordan Network),在網路中每個隱含神經元會收到它自己的在固定延遲(一次或多次迭代)後的輸出。除此之外,它與普通的模糊神經網路非常相似。
當然,它有許多變化 — 如傳遞狀態到輸入節點,可變延遲等,但主要思想保持不變。這種類型的神經網路主要被使用在上下文很重要的時候——即過去的迭代結果和樣本產生的決策會對當前產生影響。最常見的上下文的例子是文本——一個單詞只能在前面的單詞或句子的上下文中進行分析。
【6】Long/Short Term Memory (LSTM) 長短時記憶網路
【6】LSTM長短時記憶網路
LSTM長短時記憶網路引入了一個存儲單元,一個特殊的單元,當數據有時間間隔(或滯後)時可以處理數據。遞歸神經網路可以通過「記住」前十個詞來處理文本,LSTM長短時記憶網路可以通過「記住」許多幀之前發生的事情處理視頻幀。 LSTM網路也廣泛用於寫作和語音識別。
存儲單元實際上由一些元素組成,稱為門,它們是遞歸性的,並控制信息如何被記住和遺忘。
【7】Gated Recurrent Unit (GRU)
【7】GRU是具有不同門的LSTM
GRU是具有不同門的LSTM。
聽起來很簡單,但缺少輸出門可以更容易基於具體輸入重復多次相同的輸出,目前此模型在聲音(音樂)和語音合成中使用得最多。
實際上的組合雖然有點不同:但是所有的LSTM門都被組合成所謂的更新門(Update Gate),並且復位門(Reset Gate)與輸入密切相關。
它們比LSTM消耗資源少,但幾乎有相同的效果。
【8】Auto Encoder (AE) 自動編碼器
【8】AE自動編碼器
Autoencoders自動編碼器用於分類,聚類和特徵壓縮。
當您訓練前饋(FF)神經網路進行分類時,您主要必須在Y類別中提供X個示例,並且期望Y個輸出單元格中的一個被激活。 這被稱為「監督學習」。
另一方面,自動編碼器可以在沒有監督的情況下進行訓練。它們的結構 - 當隱藏單元數量小於輸入單元數量(並且輸出單元數量等於輸入單元數)時,並且當自動編碼器被訓練時輸出盡可能接近輸入的方式,強制自動編碼器泛化數據並搜索常見模式。
【9】Variational AE (VAE) 變分自編碼器
【9】VAE變分自編碼器
變分自編碼器,與一般自編碼器相比,它壓縮的是概率,而不是特徵。
盡管如此簡單的改變,但是一般自編碼器只能回答當「我們如何歸納數據?」的問題時,變分自編碼器回答了「兩件事情之間的聯系有多強大?我們應該在兩件事情之間分配誤差還是它們完全獨立的?」的問題。
【10】Denoising AE (DAE) 降噪自動編碼器
【10】DAE降噪自動編碼器
雖然自動編碼器很酷,但它們有時找不到最魯棒的特徵,而只是適應輸入數據(實際上是過擬合的一個例子)。
降噪自動編碼器(DAE)在輸入單元上增加了一些雜訊 - 通過隨機位來改變數據,隨機切換輸入中的位,等等。通過這樣做,一個強制降噪自動編碼器從一個有點嘈雜的輸入重構輸出,使其更加通用,強制選擇更常見的特徵。
【11】Sparse AE (SAE) 稀疏自編碼器
【11】SAE稀疏自編碼器
稀疏自編碼器(SAE)是另外一個有時候可以抽離出數據中一些隱藏分組樣試的自動編碼的形式。結構和AE是一樣的,但隱藏單元的數量大於輸入或輸出單元的數量。
【12】Markov Chain (MC) 馬爾科夫鏈
【12】Markov Chain (MC) 馬爾科夫鏈
馬爾可夫鏈(Markov Chain, MC)是一個比較老的圖表概念了,它的每一個端點都存在一種可能性。過去,我們用它來搭建像「在單詞hello之後有0.0053%的概率會出現dear,有0.03551%的概率出現you」這樣的文本結構。
這些馬爾科夫鏈並不是典型的神經網路,它可以被用作基於概率的分類(像貝葉斯過濾),用於聚類(對某些類別而言),也被用作有限狀態機。
【13】Hopfield Network (HN) 霍普菲爾網路
【13】HN霍普菲爾網路
霍普菲爾網路(HN)對一套有限的樣本進行訓練,所以它們用相同的樣本對已知樣本作出反應。
在訓練前,每一個樣本都作為輸入樣本,在訓練之中作為隱藏樣本,使用過之後被用作輸出樣本。
在HN試著重構受訓樣本的時候,他們可以用於給輸入值降噪和修復輸入。如果給出一半圖片或數列用來學習,它們可以反饋全部樣本。
【14】Boltzmann Machine (BM) 波爾滋曼機
【14】 BM 波爾滋曼機
波爾滋曼機(BM)和HN非常相像,有些單元被標記為輸入同時也是隱藏單元。在隱藏單元更新其狀態時,輸入單元就變成了輸出單元。(在訓練時,BM和HN一個一個的更新單元,而非並行)。
這是第一個成功保留模擬退火方法的網路拓撲。
多層疊的波爾滋曼機可以用於所謂的深度信念網路,深度信念網路可以用作特徵檢測和抽取。
【15】Restricted BM (RBM) 限制型波爾滋曼機
【15】 RBM 限制型波爾滋曼機
在結構上,限制型波爾滋曼機(RBM)和BM很相似,但由於受限RBM被允許像FF一樣用反向傳播來訓練(唯一的不同的是在反向傳播經過數據之前RBM會經過一次輸入層)。
【16】Deep Belief Network (DBN) 深度信念網路
【16】DBN 深度信念網路
像之前提到的那樣,深度信念網路(DBN)實際上是許多波爾滋曼機(被VAE包圍)。他們能被連在一起(在一個神經網路訓練另一個的時候),並且可以用已經學習過的樣式來生成數據。
【17】Deep Convolutional Network (DCN) 深度卷積網路
【17】 DCN 深度卷積網路
當今,深度卷積網路(DCN)是人工神經網路之星。它具有卷積單元(或者池化層)和內核,每一種都用以不同目的。
卷積核事實上用來處理輸入的數據,池化層是用來簡化它們(大多數情況是用非線性方程,比如max),來減少不必要的特徵。
他們通常被用來做圖像識別,它們在圖片的一小部分上運行(大約20x20像素)。輸入窗口一個像素一個像素的沿著圖像滑動。然後數據流向卷積層,卷積層形成一個漏斗(壓縮被識別的特徵)。從圖像識別來講,第一層識別梯度,第二層識別線,第三層識別形狀,以此類推,直到特定的物體那一級。DFF通常被接在卷積層的末端方便未來的數據處理。
【18】Deconvolutional Network (DN) 去卷積網路
【18】 DN 去卷積網路
去卷積網路(DN)是將DCN顛倒過來。DN能在獲取貓的圖片之後生成像(狗:0,蜥蜴:0,馬:0,貓:1)一樣的向量。DNC能在得到這個向量之後,能畫出一隻貓。
【19】Deep Convolutional Inverse Graphics Network (DCIGN) 深度卷積反轉圖像網路
【19】 DCIGN 深度卷積反轉圖像網路
深度卷積反轉圖像網路(DCIGN),長得像DCN和DN粘在一起,但也不完全是這樣。
事實上,它是一個自動編碼器,DCN和DN並不是作為兩個分開的網路,而是承載網路輸入和輸出的間隔區。大多數這種神經網路可以被用作圖像處理,並且可以處理他們以前沒有被訓練過的圖像。由於其抽象化的水平很高,這些網路可以用於將某個事物從一張圖片中移除,重畫,或者像大名鼎鼎的CycleGAN一樣將一匹馬換成一個斑馬。
【20】Generative Adversarial Network (GAN) 生成對抗網路
【20】 GAN 生成對抗網路
生成對抗網路(GAN)代表了有生成器和分辨器組成的雙網路大家族。它們一直在相互傷害——生成器試著生成一些數據,而分辨器接收樣本數據後試著分辨出哪些是樣本,哪些是生成的。只要你能夠保持兩種神經網路訓練之間的平衡,在不斷的進化中,這種神經網路可以生成實際圖像。
【21】Liquid State Machine (LSM) 液體狀態機
【21】 LSM 液體狀態機
液體狀態機(LSM)是一種稀疏的,激活函數被閾值代替了的(並不是全部相連的)神經網路。只有達到閾值的時候,單元格從連續的樣本和釋放出來的輸出中積累價值信息,並再次將內部的副本設為零。
這種想法來自於人腦,這些神經網路被廣泛的應用於計算機視覺,語音識別系統,但目前還沒有重大突破。
【22】Extreme Learning Machine (ELM) 極端學習機
【22】ELM 極端學習機
極端學習機(ELM)是通過產生稀疏的隨機連接的隱藏層來減少FF網路背後的復雜性。它們需要用到更少計算機的能量,實際的效率很大程度上取決於任務和數據。
【23】Echo State Network (ESN) 回聲狀態網路
【23】 ESN 回聲狀態網路
回聲狀態網路(ESN)是重復網路的細分種類。數據會經過輸入端,如果被監測到進行了多次迭代(請允許重復網路的特徵亂入一下),只有在隱藏層之間的權重會在此之後更新。
據我所知,除了多個理論基準之外,我不知道這種類型的有什麼實際應用。。。。。。。
【24】Deep Resial Network (DRN) 深度殘差網路
【24】 DRN 深度殘差網路
深度殘差網路(DRN)是有些輸入值的部分會傳遞到下一層。這一特點可以讓它可以做到很深的層級(達到300層),但事實上它們是一種沒有明確延時的RNN。
【25】Kohonen Network (KN) Kohonen神經網路
【25】 Kohonen神經網路
Kohonen神經網路(KN)引入了「單元格距離」的特徵。大多數情況下用於分類,這種網路試著調整它們的單元格使其對某種特定的輸入作出最可能的反應。當一些單元格更新了, 離他們最近的單元格也會更新。
像SVM一樣,這些網路總被認為不是「真正」的神經網路。
【26】Support Vector Machine (SVM)
【26】 SVM 支持向量機
支持向量機(SVM)用於二元分類工作,無論這個網路處理多少維度或輸入,結果都會是「是」或「否」。
SVM不是所有情況下都被叫做神經網路。
【27】Neural Turing Machine (NTM) 神經圖靈機
【27】NTM 神經圖靈機
神經網路像是黑箱——我們可以訓練它們,得到結果,增強它們,但實際的決定路徑大多數我們都是不可見的。
神經圖靈機(NTM)就是在嘗試解決這個問題——它是一個提取出記憶單元之後的FF。一些作者也說它是一個抽象版的LSTM。
記憶是被內容編址的,這個網路可以基於現狀讀取記憶,編寫記憶,也代表了圖靈完備神經網路。
㈢ 神經網路簡述
機器學習中談論的神經網路是指「神經網路學習」,或者說,是機器學習和神經網路這兩個學科領域的交叉部分[1]。
在這里,神經網路更多的是指計算機科學家模擬人類大腦結構和智能行為,發明的一類演算法的統稱。
神經網路是眾多優秀仿生演算法中的一種,讀書時曾接觸過蟻群優化演算法,曾驚訝於其強大之處,但神經網路的強大,顯然蟻群優化還不能望其項背。
A、起源與第一次高潮。有人認為,神經網路的最早討論,源於現代計算機科學的先驅——阿蘭.圖靈在1948年的論文中描述的「B型組織機器」[2]。二十世紀50年代出現了以感知機、Adaling為代表的一系列成功,這是神經網路發展的第一個高潮[1]。
B、第一次低谷。1969年,馬文.明斯基出版《感知機》一書,書中論斷直接將神經網路打入冷宮,導致神經網路十多年的「冰河期」。值得一提的是,在這期間的1974年,哈佛大學Paul Webos發明BP演算法,但當時未受到應有的重視[1]。
C、第二次高潮。1983年,加州理工學院的物理學家John Hopfield利用神經網路,在旅行商問題上獲得當時最好結果,引起轟動;Rumelhart等人重新發明了BP演算法,BP演算法迅速走紅,掀起神經網路第二次高潮[1]。
D、第二次低谷。二十世紀90年代中期,統計學習理論和支持向量機興起,較之於這些演算法,神經網路的理論基礎不清晰等缺點更加凸顯,神經網路研究進入第二次低谷[1]。
E、深度學習的崛起。2010年前後,隨著計算能力的提升和大數據的涌現,以神經網路為基礎的「深度學習」崛起,科技巨頭公司谷歌、Facebook、網路投入巨資研發,神經網路迎來第三次高潮[1]。2016年3月9日至15日,Google人工智慧程序AlphaGo對陣韓國圍棋世界冠軍李世乭,以4:1大比分獲勝,比眾多專家預言早了十年。這次比賽,迅速在全世界經濟、科研、計算機產業各領域掀起人工智慧和深度學習的熱烈討論。
F、展望。從幾個方面討論一下。
1)、近期在Google AlphaGo掀起的熱潮中,民眾的熱情與期待最大,甚至有少許恐慌情緒;計算機產業和互聯網產業熱情也非常巨大,對未來充滿期待,各大巨頭公司對其投入大量資源;學術界的反應倒是比較冷靜的。學術界的冷靜,是因為神經網路和深度神經網路的理論基礎還沒有出現長足的進步,其缺點還沒有根本改善。這也從另一個角度說明了深度神經網路理論進步的空間很大。
2)、"當代神經網路是基於我們上世紀六十年代掌握的腦知識。"關於人類大腦的科學與知識正在爆炸式增長。[3]世界上很多學術團隊正在基於大腦機制新的認知建立新的模型[3]。我個人對此報樂觀態度,從以往的仿生演算法來看,經過億萬年進化的自然界對科技發展的促進從來沒有停止過。
3)、還說AlphaGo,它並不是理論和演算法的突破,而是基於已有演算法的工程精品。AlhphaGo的工作,為深度學習的應用提供了非常廣闊的想像空間。分布式技術提供了巨大而廉價的計算能力,巨量數據的積累提供了豐富的訓練樣本,深度學習開始騰飛,這才剛剛開始。
一直沿用至今的,是McChlloch和Pitts在1943年依據腦神經信號傳輸結構抽象出的簡單模型,所以也被稱作」M-P神經元模型「。
其中,
f函數像一般形如下圖的函數,既考慮階躍性,又考慮光滑可導性。
實際常用如下公式,因形如S,故被稱作sigmoid函數。
把很多個這樣的神經元按一定層次連接起來,就得到了神經網路。
兩層神經元組成,輸入層接收外界輸入信號,輸出層是M-P神經元(只有輸出層是)。
感知機的數學模型和單個M-P神經元的數學模型是一樣的,如因為輸入層只需接收輸入信號,不是M-P神經元。
感知機只有輸出層神經元是B-P神經元,學習能力非常有限。對於現行可分問題,可以證明學習過程一定會收斂。而對於非線性問題,感知機是無能為力的。
BP神經網路全稱叫作誤差逆傳播(Error Propagation)神經網路,一般是指基於誤差逆傳播演算法的多層前饋神經網路。這里為了不佔篇幅,BP神經網路將起篇另述。
BP演算法是迄今最為成功的神經網路學習演算法,也是最有代表性的神經網路學習演算法。BP演算法不僅用於多層前饋神經網路,還用於其他類型神經網路的訓練。
RBF網路全程徑向基函數(Radial Basis Function)網路,是一種單隱層前饋神經網路,其與BP網路最大的不同是採用徑向基函數作為隱層神經元激活函數。
卷積神經網路(Convolutional neural networks,簡稱CNNs)是一種深度學習的前饋神經網路,在大型圖片處理中取得巨大成功。卷積神經網路將起篇另述。
循環神經網路(Recurrent Neural Networks,RNNs)與傳統的FNNs不同,RNNs引入定向循環,能夠處理那些輸入之間前後關聯的問題。RNNs已經在眾多自然語言處理(Natural Language Processing, NLP)中取得了巨大成功以及廣泛應用[5]。RNNs將起篇另述。[5]
[1]、《機器學習》,周志華著
[2]、《模式識別(第二版)》,Richard O.Duda等著,李宏東等譯
[3]、《揭秘IARPA項目:解碼大腦演算法或將徹底改變機器學習》,Emily Singerz著,機器之心編譯出品
[4]、圖片來源於互聯網
[5]、 循環神經網路(RNN, Recurrent Neural Networks)介紹
㈣ BP神經網路的梳理
BP神經網路被稱為「深度學習之旅的開端」,是神經網路的入門演算法。
各種高大上的神經網路都是基於BP網路出發的,最基礎的原理都是由BP網路而來 [1] ,另外由於BP神經網路結構簡單,演算法經典, 是神經網路中應用最廣泛的一種。
BP神經網路(back propagation neural network)全稱是反向傳播神經網路。
神經網路發展部分背景如下 [2] :
為解決非線性問題,BP神經網路應運而生。
那麼什麼是BP神經網路?稍微專業點的解釋要怎麼說呢?
很喜歡 最簡單的神經網路--Bp神經網路 一文對演算法原理的解釋,語言活潑,案例簡單,由淺入深。
文中提到所謂的 AI 技術,本質上是一種數據處理處理技術,它的強大來自於兩方面:1.互聯網的發展帶來的海量數據信息;2.計算機深度學習演算法的快速發展。AI 其實並沒有什麼神秘,只是在演算法上更為復雜 [3] 。
我們從上面的定義出發來解釋BP神經網路的原理。
BP神經網路整個網路結構包含了:一層輸入層,一到多層隱藏層,一層輸出層。
一般說L層神經網路,指的是有L個隱層,輸入層和輸出層都不計算在內的 [6] 。
BP神經網路模型訓練的學習過程由信號的 正向傳播 和誤差的 反向傳播 兩個過程組成。
什麼是信號的正向傳播?顧名思義,就是結構圖從左到右的運算過程。
我們來看看結構圖中每個小圓圈是怎麼運作的。我們把小圈圈叫做神經元,是組成神經網路的基本單元。
正向傳播就是輸入數據經過一層一層的神經元運算、輸出的過程,最後一層輸出值作為演算法預測值y'。
前面正向傳播的時候我們提到權重w、偏置b,但我們並不知道權重w、偏置b的值應該是什麼。關於最優參數的求解,我們在 線性回歸 、 邏輯回歸 兩章中有了詳細說明。大致來講就是:
BP神經網路全稱 back propagation neural network,back propagation反向傳播是什麼?
反向傳播的建設本質上就是尋找最優的參數組合,和上面的流程差不多,根據演算法預測值和實際值之間的損失函數L(y',y),來反方向地計算每一層的z、a、w、b的偏導數,從而更新參數。
對反向傳播而言,輸入的內容是預測值和實際值的誤差,輸出的內容是對參數的更新,方向是從右往左,一層一層的更新每一層的參數。
BP神經網路通過先正向傳播,構建參數和輸入值的關系,通過預測值和實際值的誤差,反向傳播修復權重;讀入新數據再正向傳播預測,再反向傳播修正,...,通過多次循環達到最小損失值,此時構造的模型擁有最優的參數組合。
以一個簡單的BP神經網路為例,由3個輸入層,2層隱藏層,每層2個神經元,1個輸出層組成。
【輸入層】傳入
【第一層隱藏層】
對於 神經元而言,傳入 ,加權求和加偏置激活函數處理後,輸出 ;
對於 神經元而言,傳入 ,加權求和加偏置函數處理後,輸出 ;
輸出:
【第二層隱藏層】
對於 神經元而言,傳入 ,加權求和加偏置激活函數處理後,輸出 ;
對於 神經元而言,傳入 ,加權求和加偏置激活函數處理後,輸出 ;
輸出:
【輸出層】
對於輸出層神經元而言,輸入 ,加權求和加偏置激活函數處理後,輸出 ,輸出的是一個值
第一次運行正向傳播這個流程時隨用隨機參數就好,通過反向傳播不斷優化。因此需要在一開始對 設置一個隨機的初始值。
首先計算正向傳播輸出值 與實際值的損失 ,是一個數值。所謂反向是從右到左一步步來的,先回到 ,修正參數 。
以此類推,通過對損失函數求偏導跟新參數 ,再跟新參數 。這時又回到了起點,新的數據傳入又可以開始正向傳播了。
keras可以快速搭建神經網路,例如以下為輸入層包含7129個結點,一層隱藏層,包含128個結點,一個輸出層,是二分類模型。
神經網路反向傳播的優化目標為loss,可以觀察到loss的值在不斷的優化。
可以通過model.get_layer().get_weights()獲得每一層訓練後的參數結果。通過model.predict()預測新數據。
至此,BP神經網路的整個運算流程已經過了一遍。之前提到BP神經網路是為解決非線性問題應運而生的,那麼為什麼BP神經網路可以解決非線性問題呢?
還記得神經元里有一個激活函數的操作嗎?神經網路通過激活函數的使用加入非線性因素。
通過使用非線性的激活函數可以使神經網路隨意逼近復雜函數,從而使BP神經網路既可以處理線性問題,也可以處理非線性問題。
為什麼激活函數的使用可以加入非線性因素 [7] ?
其實邏輯回歸演算法可以看作只有一個神經元的單層神經網路,只對線性可分的數據進行分類。
輸入參數,加權求和,sigmoid作為激活函數計算後輸出結果,模型預測值和實際值計算損失Loss,反向傳播梯度下降求編導,獲得最優參數。
BP神經網路是比 Logistic Regression 復雜得多的模型,它的擬合能力很強,可以處理很多 Logistic Regression處理不了的數據,但是也更容易過擬合。
具體用什麼演算法還是要看訓練數據的情況,沒有一種演算法是使用所有情況的。
常見的前饋神經網路有BP網路,RBF網路等。
BP神經網路的一個主要問題是:結構不好設計。
網路隱含層的層數和單元數的選擇尚無理論上的指導,一般是根據經驗或者通過反復實驗確定。
但是BP神經網路簡單、易行、計算量小、並行性強,目前仍是多層前向網路的首選演算法。
[1] 深度學習開端---BP神經網路: https://blog.csdn.net/Chile_Wang/article/details/100557010
[2] BP神經網路發展歷史: https://zhuanlan.hu.com/p/47998728
[3] 最簡單的神經網路--Bp神經網路: https://blog.csdn.net/weixin_40432828/article/details/82192709
[4] 神經網路的基本概念: https://blog.csdn.net/jinyuan7708/article/details/82466653
[5] 神經網路中的 「隱藏層」 理解: https://blog.csdn.net/nanhuaibeian/article/details/100183000
[6] AI學習筆記:神經元與神經網路: https://www.jianshu.com/p/65eb2fce0e9e
[7] 線性模型和非線性模型的區別: https://www.cnblogs.com/toone/p/8574294.html
[8] BP神經網路是否優於logistic回歸: https://www.hu.com/question/27823925/answer/38460833