神經網絡數據量要求 神經網絡是大數據嗎?
神經網絡是大數據嗎?神經網絡不是大數據,神經網絡是一種大數據處理方法。自2016年以來,阿爾法犬以4:1奪得人類圍棋冠軍,以神經網絡為代表的人工智能開始流行。神經網絡(現(xiàn)在一般稱為人工神經網絡),它是
神經網絡是大數據嗎?
神經網絡不是大數據,神經網絡是一種大數據處理方法。
自2016年以來,阿爾法犬以4:1奪得人類圍棋冠軍,以神經網絡為代表的人工智能開始流行。神經網絡(現(xiàn)在一般稱為人工神經網絡),它是一種模擬動物神經網絡行為特征、分布式并行信息處理算法的數學模型。這種網絡依賴于系統(tǒng)的復雜性,通過調整大量內部節(jié)點之間的關系,從而達到處理信息的目的。
大數據和神經網絡(以及其他人工智能)經常一起討論,而且它們密切相關。正是因為有大量關于用戶行為的網絡大數據,我們可以利用神經網絡等方法對大數據進行分析,從而模擬人類的行為,使計算機也能識別圖形、識別聲音、分析問題、找到問題的最優(yōu)解等。大數據的出現(xiàn)和興起,也帶動了神經網絡技術的發(fā)展。為了處理大量的搜索行為數據,Google投入了大量的研究人員對人工神經網絡進行優(yōu)化以提高效率,最終開發(fā)出alpha狗。阿里巴巴、百度等其他公司也在神經網絡等人工智能技術領域投入了大量研究人員。
神經網絡和大數據可以簡單地分別與人的大腦和所見所聞進行比較。神經網絡是一種數據處理方法,它往往依賴于計算機程序;大數據是大量的客觀數據和信息,大數據不依賴于計算機程序,而是存儲在硬盤、云硬盤等物理設備中。
用同一數據集訓練神經網絡,每次訓練結果不一樣,有時正確率很高,有時很低,為什么?
其實這個問題的實質是,如果我們用機器學習算法對數據集上的數據模型進行一次訓練,保存模型,然后用同樣的算法和同樣的數據集以及數據排序對其進行再次訓練,那么第一個模型和第二個模型是一樣的嗎?
這可能是因為神經網絡用增益或權重的隨機值初始化,然后每個模擬在訓練階段有不同的起點。如果您希望始終保持相同的初始權重,可以嘗試為初始權重修復種子以消除問題。
如果我們深入研究這個問題,我們可以根據ml算法的“確定性”來對其進行分類。當從同一個數據集進行訓練時:
一個是總是生成相同的模型,并且記錄以相同的順序呈現(xiàn);
另一個是總是生成不同的模型,并且記錄順序不同。
在實踐中,大多數是“不確定的”。模型變化的原因可能是機器學習算法本身存在隨機游走、不同權值的隨機初始化、不同分量的概率分布抽樣來分配優(yōu)化函數。
雖然模型的“不確定性”可能會對單個訓練結果造成干擾,但我們也可以用“不確定性”來確認模型的穩(wěn)定性,如決策樹、支持向量機(SVM)、神經網絡等,最終可以通過多次迭代來確認模型的穩(wěn)定性。
如何估算神經網絡的最優(yōu)學習率?
。
具體來說,當前主流的神經網絡模型使用梯度下降算法進行訓練,或學習參數。學習速率決定權重在梯度方向上成批移動的距離。理論上,學習率越高,神經網絡的學習速度越快。但是,如果學習速率過高,可能會“穿越”損失函數的最小值,導致收斂失敗。
上圖左邊是高學習率,右邊是低學習率,來源:mikkel Duif(quora)
那么,如何找到最佳學習率?
方法。但是,這種方法的初始學習率(上例中為0.1)不應該太高。如果初始學習率太高,可能會“穿越”最優(yōu)值。
另外,還有另外一種思路,就是逆向操作,從學習率很低開始,每批之后再提高學習率。例如,從0.00001到0.0001,再到0.001,再到0.01,再到0.1。這個想法背后的直覺是,如果我們總是以很低的學習率學習,我們總是可以學習到最好的權重(除非整個網絡架構有問題),但它將非常緩慢。因此,從一個很低的學習率開始,我們可以肯定地觀察到損失函數的下降。然后逐漸加大學習率,直到學習率過高,導致發(fā)散。該方法還避免了上述方法初始學習率過高,一次“穿越”最優(yōu)值的隱患。這是Leslie n.Smith在2015年的論文《訓練神經網絡的循環(huán)學習率》中提出的方法。