1. 程式人生 > >深度學習與機器學習的區別

深度學習與機器學習的區別

底層 cati 都是 CA 以及 解決問題 郵件營銷 ID external

深度學習是一種特殊的機器學習,它將現實世界表示為嵌套的層次概念體系(由較簡單概念間的聯系定義復雜概念,從一般抽象概括到高級抽象表示),從而獲得強大的性能與靈活性。

深度學習和傳統機器學習最重要的區別是它的性能隨著數據量的增加而增強。如果數據很少,深度學習算法性能並不好,這是因為深度學習算法需要大量數據才能很好理解其中蘊含的模式。這種情況下,使用人工指定規則的傳統機器學習占據上風。

深度學習算法嚴重依賴於高端機,而傳統機器學習在低端機上就可以運行。因為深度學習需要進行大量矩陣乘法操作,而GPU可以有效優化這些操作,所以GPU成為其中必不可少的一部分。

特征工程將領域知識輸入特征提取器,降低數據復雜度,使數據中的模式對學習算法更加明顯,得到更優秀的結果。從時間和專業性方面講,這個過程開銷很高。機器學習中,大部分使用的特征都是由專家指定或根據先驗知識確定每個數據域和數據類型。比如,特征可以是像素值,形狀,紋理,位置,方向。大多數機器學習方法的性能依賴於識別和抽取這些特征的準確度。

深度學習算法試圖從數據中學習高層特征,這是深度學習與眾不同的一部分,同時也是超越傳統機器學習的重要一步。深度學習將每個問題歸結為開發新特征提取器,如卷積神經網絡在底層學習如邊和直線種種低層特征,然後是面部部分特征,最後是人臉的高層特征。

當使用傳統機器學習方法解決問題時,經常采取化整為零,分別解決,再合並結果求解的策略。而深度學習主張end-to-end模型,輸入訓練數據,直接輸出最終結果,讓網絡自己學習如何提取關鍵特征。

比如說你要進行目標檢測,需要識別出目標的類別並指出在圖中的位置。

通常,深度學習需要很長時間訓練,因為深度學習中很多參數都需要遠超正常水平的時間訓練。ResNet大概需要兩周時間從零開始完成訓練,而機器學習只需要從幾秒到幾小時不等的訓練時間。測試所需要的時間就完全相反,深度學習算法運行需要很少的時間。然而,和KNN(K近鄰,一種機器學習算法)相比,測試時間會隨著測試數據量的增加而增加。不過並非所有的機器學習算法都需要很長時間,某些也只需要很少的測試時間。

假定使用深度學習給文章自動評分,你會發現性能會很不錯,並且接近人類評分水準。但它不能解釋為什麽給出這樣的分數。在運行過程中,你可以發現深度神經網絡的哪些節點被激活,但你不知道這些神經元是對什麽進行建模以及這每層在幹什麽,所以無法解釋結果。

另一方面,機器學習算法如決策樹按照規則明確解釋每一步做出選擇的原因,因此像決策樹和線性/邏輯斯蒂回歸這類算法由於可解釋性良好,在工業界應用很廣泛。

Wiki上面介紹了一些機器學習的應用領域:

1. 計算機視覺:如車牌號識別,人臉識別;

2. 信息檢索:如搜索引擎,文本檢索,圖像檢索;

3. 營銷:自動郵件營銷,目標識別;

4. 醫療診斷:癌癥診斷,異常檢測;

5. 自然語言處理:語義分析,照片標記;

6. 在線廣告,等等

深度學習與機器學習的區別