1. 程式人生 > >機器學習崗位面試問題匯總 之 深度學習

機器學習崗位面試問題匯總 之 深度學習

ini 生成模型 其中 推導 中產 2-2 聯系 相同 扭曲

自己結合網絡內容總結,歡迎指正歡迎補充。

最新更新:20170624—版本2(增加22-28)

1.模式識別、機器學習、深度學習的區別與聯系
模式識別:過去、程序/機器做智能的事、決策樹等
機器學習:熱點領域、給數據+學習數據
深度學習:前言領域、強調模型

2.早年神經網絡被淘汰的原因
耗時、局部最優、競爭對手、over-fitting、參數

3.深度學習的實質 及其 與淺層學習的區別
深度學習實質:多隱層+海量數據——>學習有用特征—–>提高分類或預測準確性
區別:(1)DL強調模型深度 (2)DL突出特征學習的重要性:特征變換+非人工

4.神經網絡的發展(背景之類的)
MP模型+sgn—->單層感知機(只能線性)+sgn— Minsky 低谷 —>多層感知機+BP+sigmoid—- (低谷) —>深度學習+pre-training+ReLU/sigmoid

5.DL解決過擬合的方法
數據擴容、dropout技術

6.介紹dropout技術
修改神經網絡本身來避免過擬合、訓練網絡的一種trike。
步驟:repeat { 隨機‘刪除’+BP獲權值}
為何會避免過擬合:訓練多個“半數網絡”,隨著訓練的進行,大部分正確,小部分錯誤(不影響)

7.推導BP算法
http://blog.csdn.net/hungryof/article/details/50436231

8.BP算法為什麽不能適應於深度學習
BP為傳統多層感知機的訓練方法,<=5層
問題:(1)梯度越來越稀疏(梯度擴散<—-非凸目標函數) (2)局部最小 (3)一般,有標簽
NOTE:解決其中局部最小值的方法:(1)多組不同隨機參數,取最好參數 (2)啟發式優化算法:模擬退火 或 遺傳 (3)隨機梯度下降

9.深度學習與傳統神經網絡之間的區別與聯系
聯系:分層結構
區別:訓練機制(初始值)

10.介紹DNN(原理和應用)
DNN:深度神經網絡,廣義上包含CNN,DBN,RNN等
優點:層數多,抽象能力強,模擬更復雜模型
應用:圖像處理、語音識別、文本分類。。。

11.什麽是深度學習、深度學習的訓練過程是什麽
無監督預訓練(Layerwise Pre-Training)+有監督微調(fine-tune)
過程:(1)自下而上非監督學習特征 (2)自頂向下有監督微調

12.深度學習常用方法
全連接DNN(相鄰層相互連接、層內無連接):
AutoEncoder(盡可能還原輸入)、Sparse Coding(在AE上加入L1規範)、RBM(解決概率問題)—–>特征探測器——>棧式疊加 貪心訓練
RBM—->DBN
解決全連接DNN的全連接問題—–>CNN
解決全連接DNN的無法對時間序列上變化進行建模的問題—–>RNN—解決時間軸上的梯度消失問題——->LSTM

13.RBM用途
(1)編碼、降維 (2)得到權重矩陣和偏移量,供BP網絡初始化訓練 (3)可作為生成模型使用 (4)可作為判別模型使用

14.介紹DBN
DBN是一個概率生成模型。
組成:多個RBM+BP網絡
訓練過程:(1)無監督訓練每一層RBM網絡、特征向量映射到不同特征空間、盡可能保留特征信息(貪心算法) (2)DBN最後一層設置為BP網絡,有監督微調
RBM訓練可以看作對一個深層BP網絡的網絡權值參數的初始化—->克服容易局部最優+訓練時間長
優點:不用人工選取特征
缺點:(1)有標簽樣本集 (2)學習過程慢 (3)參數不當可能導致局部最優
公式推導:
http://blog.csdn.net/app_12062011/article/details/54313082

15.介紹CNN
重點:局部感受域、權值共享
組成:卷基層、子采樣層(池化層)
訓練過程:不同小隨機數初始參數—->repeat{ 前向傳播(特征提取層C層—->特征映射層S層) + 後向傳播 }
廣義上的優點:(1)識別位移、縮放及其他形式扭曲不變性的二維圖形 (2)隱式從訓練數據中學習特征 (3)同一特征映射面的神經元權值相同—–>課並行學習 (4)局部權值共享—->在語音識別、圖像處理方面有優勢、更接近實際生物神經網絡、降低網絡復雜性、避免特征提取和分類過程中的數據重建復雜度
較一般神經網絡在圖像處理方面的優點:(1)圖像和網絡拓撲更好吻合 (2)特征提取和模式分類同時進行,並同時在訓練中產生 (3)權值共享—–>減少參數、結構簡單、適應性更強
應用:語音分析、圖像識別等
公式推導 之 inference:
http://blog.csdn.net/lu597203933/article/details/46575871
http://blog.csdn.net/zouxy09/article/details/9993371
公式推導 之 BP:
http://blog.csdn.net/walegahaha/article/details/51945421

16.CNN卷基層和pooling層的作用
卷積層:特征提取
子采樣層/池化層:縮減輸入數據的規模

17.CNN和DBN有什麽區別
CNN是判別模型,DBN基於生成模型
CNN是局部連接,DBN是全連接

18.介紹RNN
概念:廣義來說RNN是兩種人工神經網絡的總稱:結構遞歸神經網絡(Recursive Neural Network)和循環神經網絡/時間遞歸神經網絡(Recurrent Neural Network)。時間遞歸升降網絡的神經元之間連接構成有向圖,結構遞歸神經網絡利用相似的神經網絡結構遞歸構造更為復雜的網絡結構,兩者訓練算法不同,但屬於同一變體。
一般我們說的RNN是指時間遞歸神經網絡
重點:同一個神經網絡單元不停處理不同的輸入值,而這些值是它自己產生的
缺點:長時間依賴問題,即時間距離較長時,會出現時間軸上的梯度消失現象,可以形象的理解為,比較容易忘事
應用:應為它老忘事,所以沒有改進為LSTM的它並沒有什麽有價值的應用

19.介紹LSTM及其變體
是一種特殊的循環神經網絡,具有能夠學習的長期依賴能力
重點:cell
組成:Cell(state參數,用來記錄),Input Gate, Output Gate, Forget Gate
訓練過程:前向傳播(Input Gate, Forget Gate, cell, output gate, cell output)+後向傳播(cell output, output gates, states, cells, forget gates, input gates)
優點:能夠解決長時間依賴問題
應用:自然語言處理、語音識別、手寫識別等
推導:打印資料

20.深度學習的優化問題,及各種優化算法的區別
經典的:MBGD(小批量梯度算法)
改進梯度算法,使梯度更新更加靈活:Momentum,Nesterov
可以自適應學習率:Adagrad,Adadelta,RMSprop,Adam,Adamax,Nadam

21.深度學習在推薦系統上可能有怎樣的發揮
推薦系統要解決:預測和推薦。深度學習可以用來做預測,(此處可以撤一點DL做預測的一般過程),YouTube已經開始使用了,他的推薦系統由2個神經網絡組成,一個用來生成後選視頻列表(協同過濾算法),另一個對輸入的視頻列表進行打分排名。

22.神經網絡相比於LR、線性回歸的優勢
包含DNN
不包含DNN,即傳統神經網絡:特征提取抽象

23.梯度消失的原因
(1)sigmoid求導<=1/4
參考:http://blog.csdn.net/baidu_29782299/article/details/52742773
(2)BP?

24.DNN常用的激活函數有哪些,各有什麽特點
(1)sigmoid:易飽和(梯度消失),非0均值 (2)tanh,改進了sigmoid的第二個缺點,即它是0均值的 (3)ReLU,收斂快(不容易飽和),求梯度簡單(沒有指數計算,只需要閾值就可以),有稀疏特性。缺點是神經元容易壞死。
參考:http://f.dataguru.cn/thread-712946-1-1.html

25.什麽樣的資料不適合用深度學習?
(1)數據量小 (2)沒有局部相關性

26.什麽是共線性,跟過擬合有何關聯?
共線性:高度相關—>冗余——>過擬合
解決:排除相關、加入權重正則

27.CNN可應用與圖像識別、語音識別、Alphago等,這些不相關問題的共性是什麽?也就是說CNN為什麽可以應用在這幾個問題上?CNN又是通過什麽手段抓住了這些共性?
共性:都存在局部與整體的關系(單詞與句子,一步棋和整個棋局)。(我自己想的(1)可以用CNN,(2)CNN有優勢)
CNN通過局部感知、權值共享、池化操作。越來越抽象。

28.CNN什麽時候用local-conv?什麽時候用全卷積(每一個點用同一個filter)?
當數據集的局部特征之間具有較強相關性的時候,適合用全卷積。在不同的區域有不同的特征分布時,適合用local-conv

參考
《統計學習方法》,李航
《神經網絡與深度學習》,吳岸城
《機器學習》,周誌華
《斯坦福大學2014機器學習課程筆記》,Andrew Ng主講,黃海廣整理筆記

機器學習崗位面試問題匯總 之 深度學習