文章標題是個很有趣的問題,深度學習作為機器學習的子集,它和普通機器學習之間到底有什么區(qū)別呢?作者使用了一種很普通的方式來回答這個問題。
本質上,深度學習提供了一套技術和算法,這些技術和算法可以幫助我們對深層神經網絡結構進行參數化——人工神經網絡中有很多隱含層數和參數。深度學習背后的一個關鍵思想是從給定的數據集中提取高層次的特征。因此,深度學習的目標是克服單調乏味的特征工程任務的挑戰(zhàn),并幫助將傳統的神經網絡進行參數化。
現在,為了引入深度學習,讓我們來看看一個更具體的例子,這個例子涉及多層感知器(MLP)。
在MLP中,“感知器”這個詞可能有點讓人困惑,因為我們并不想只在我們的網絡中使用線性神經元。利用MLP,我們可以學習復雜的函數來解決非線性問題。因此,我們的網絡通常由連接輸入和輸出層的一個或多個“隱藏”層組成。這些隱藏的層通常有某種S型的激活函數(logs-s形或雙曲正切等)。例如,在我們的網絡中,一個邏輯回歸單元,返回0-1范圍內的連續(xù)值。
一個簡單的MLP看起來就像這樣:
其中y是最終的類標簽,我們返回的是基于輸入x的預測,“a”是我們激活的神經元,而“w”是權重系數。現在,如果我們向這個MLP添加多個隱藏層,我們也會把網絡稱為“深度”。這種“深度”網絡的問題在于,為這個網絡學習“好”的權重變得越來越難。當我們開始訓練我們的網絡時,我們通常會將隨機值賦值為初始權重,這與我們想要找到的“最優(yōu)”解決方案很不一樣。在訓練過程中,我們使用流行的反向傳播算法(將其視為反向模式自動微分)來傳播從右到左的“錯誤”,并計算每一個權重的偏導數,從而向成本(或“錯誤”)梯度的相反方向邁進。現在,深度神經網絡的問題是所謂的“消失梯度”——我們添加的層越多,就越難“更新”我們的權重,因為信號變得越來越弱。由于我們的網絡的權重在開始時可能非常糟糕(隨機初始化),因此幾乎不可能用反向傳播來參數化一個具有“深度”的神經網絡。
這就是深度學習發(fā)揮作用的地方。粗略地說,我們可以把深度學習看作是一種“聰明”的技巧或算法,可以幫助我們訓練這種“深度”神經網絡結構。有許多不同的神經網絡結構,但是為了繼續(xù)以MLP為例,讓我來介紹卷積神經網絡(CNN)的概念。我們可以把它看作是我們的MLP的“附加組件”,它可以幫助我們檢測到我們的MLP“好”的輸入。
在一般機器學習的應用中,通常有一個重點放在特征工程部分;算法學習的模型只能是和輸入數據一樣好。當然,我們的數據集必須要有足夠多的、具有辨別能力的信息,然而,當信息被淹沒在無意義的特征中,機器學習算法的性能就會受到嚴重影響。深度學習的目的是從雜亂的數據中自動學習;這是一種算法,它為我們提供了具有意義的深層神經網絡結構,使其能夠更有效地學習。我們可以把深度學習看作是自動學習“特征工程”的算法,或者我們也可以簡單地稱它們?yōu)椤疤卣?a target="_blank">探測器”,它可以幫助我們克服一系列挑戰(zhàn),并促進神經網絡的學習。
讓我們在圖像分類的背景下考慮一個卷積神經網絡。在這里,我們使用所謂的“接收域”(將它們想象成“窗口”),它們會經過我們的圖像。然后,我們將這些“接受域”(例如5x5像素的大小)和下一層的1個單元連接起來,這就是所謂的“特征圖”。在這個映射之后,我們構建了一個所謂的卷積層。注意,我們的特征檢測器基本上是相互復制的——它們共享相同的權重。它的想法是,如果一個特征檢測器在圖像的某個部分很有用,它很可能在其他地方也有用,與此同時,它還允許用不同的方式表示圖像的各個部分。
接下來,我們有一個“池”層,在這個層中,我們將我們的特征映射中的相鄰特征減少為單個單元(例如,通過獲取最大特征,或者對其進行平均化)。我們在很多測試中都這樣做,最終得出了我們的圖像的幾乎不不變的表示形式(確切的說法是“等變量”)。這是非常強大的,因為無論它們位于什么位置,我們都可以在圖像中檢測到對象。
本質上,CNN這個附加組件在我們的MLP中充當了特征提取器或過濾器。通過卷積層,我們可以從圖像中提取有用的特征,通過池層,我們可以使這些特征在縮放和轉換方面有一定的不同。
-
機器學習
+關注
關注
66文章
8472瀏覽量
133732 -
深度學習
+關注
關注
73文章
5535瀏覽量
122190
發(fā)布評論請先 登錄
相關推薦
如何區(qū)分深度學習與機器學習

5分鐘內看懂機器學習和深度學習的區(qū)別
深度學習和機器學習的六個本質區(qū)別你知道幾個?
深度學習與機器學習的區(qū)別是什么
從五個方面詳談機器學習和深度學習的區(qū)別
機器學習和深度學習的關鍵區(qū)別
AI、機器學習和深度學習的區(qū)別及應用

評論