神經網絡層數怎么確定 深度學習和普通的機器學習有什么區(qū)別?
深度學習和普通的機器學習有什么區(qū)別?一張圖片顯示了這種關系。機器學習是人工智能的重要領域之一,而深度學習是機器學習的一個分支。深度學習之所以近年來流行起來,是因為它突破了傳統(tǒng)機器學習無法解決的一些問題
深度學習和普通的機器學習有什么區(qū)別?
一張圖片顯示了這種關系。機器學習是人工智能的重要領域之一,而深度學習是機器學習的一個分支。深度學習之所以近年來流行起來,是因為它突破了傳統(tǒng)機器學習無法解決的一些問題。
機器學習的意義在于代替人工完成重復性工作,識別出統(tǒng)一的規(guī)則(模式)。但是對于傳統(tǒng)的機器學習來說,特征提取的難度不?。ㄌ卣骺梢允窍袼?、位置、方向等)。特征的準確性將在很大程度上決定大多數機器學習算法的性能。為了使特征準確,在特征工程部分需要大量的人力來調整和改進特征。完成這一系列工作的前提是,數據集中所包含的信息量是充分的,并且易于識別。如果不滿足這一前提,傳統(tǒng)的機器學習算法將在信息的雜亂中失去其性能。深度學習的應用正是基于這個問題。它的深層神經網絡使它能夠在雜波中學習,自動發(fā)現與任務相關的特征(可以看作是自發(fā)學習的特征工程),并提取高級特征,從而大大減少了特征工程部分任務所花費的時間。
另一個明顯的區(qū)別是他們對數據集大小的偏好。傳統(tǒng)的機器學習在處理規(guī)則完備的小規(guī)模數據時表現出良好的性能,而深度學習則表現不好。隨著數據集規(guī)模的不斷擴大,深度學習的效果會逐漸顯現出來,并變得越來越好。對比如下圖所示。
神經網絡的每一層網絡,有什么實際的意義嗎?
這個問題涉及到神經網絡的可解釋性。經過訓練,每一層神經網絡都有其實際意義,但這一意義通常很難被人類簡單地理解。人類可以嘗試對經過訓練的神經網絡進行重復計算,但這種計算的意義還不夠明確,因此一般認為神經網絡的“解釋性”不強。
一般來說,淺層神經元提取一些低級特征,而深層神經元提取一些高級特征。在許多問題中,我們可以設計一些方法來可視化從每個隱藏層中提取的特征,但是這種方法不能很好地解釋所有的問題,所以很多人把神經網絡看作一個“黑匣子”。
在某些特定問題中,模型可能具有良好的可解釋性。以卷積神經網絡(CNN)為例,提出了一種逐層提取特征的方法。如下圖所示,底層網絡提取圖像的邊緣、紋理等特征。隨著層次的提高,網絡逐漸提取出更高層次、更全面的特征。然而,這并不是說CNN的解釋能力是完美的。只能說,CNN比一般的神經網絡具有相對更好的解釋能力,但我們仍然很難真正厘清每一層網絡的實際意義。
在深度學習被提出之前,當時機器學習領域最流行、最成功的方法是隨機林,隨機林中的每一棵決策樹都有非常好的解釋性——深度學習拋棄了這種解釋性,從模型的最終性能來看,它也有一個更好的表現比各種隨機森林。從這個例子中,我們還可以感覺到模型的可解釋性和模型的性能之間存在著非常復雜的關系。當您的模型非常簡單時,模型的可解釋性越強,模型的性能越好;但一旦模型變得復雜,模型的可解釋性和模型的性能之間可能會出現矛盾。