想從事深度學(xué)習工作的進(jìn)來(lái)看,經(jīng)典面試問(wèn)題幫你整理好了
更新幾個(gè)面試被問(wèn)到或者聯(lián)想出來(lái)的問(wèn)題,后面有時(shí)間回答
本文引用地址:http://dyxdggzs.com/article/201709/364073.htmSGD 中 S(stochastic)代表什么
個(gè)人理解差不多就是Full-Batch和Mini-Batch
監督學(xué)習/遷移學(xué)習/半監督學(xué)習/弱監督學(xué)習/非監督學(xué)習?
本筆記主要問(wèn)題來(lái)自以下兩個(gè)問(wèn)題,后續會(huì )加上我自己面試過(guò)程中遇到的問(wèn)題。
深度學(xué)習相關(guān)的職位面試時(shí)一般會(huì )問(wèn)什么?會(huì )問(wèn)一些傳統的機器學(xué)習算法嗎?
如果你是面試官,你怎么去判斷一個(gè)面試者的深度學(xué)習水平?
以下問(wèn)題來(lái)自@Naiyan Wang
CNN最成功的應用是在CV,那為什么NLP和Speech的很多問(wèn)題也可以用CNN解出來(lái)?為什么AlphaGo里也用了CNN?這幾個(gè)不相關(guān)的問(wèn)題的相似性在哪里?CNN通過(guò)什么手段抓住了這個(gè)共性?
Deep Learning -Yann LeCun, Yoshua Bengio & Geoffrey Hinton
Learn TensorFlow and deep learning, without a Ph.D.
The Unreasonable Effectiveness of Deep Learning -LeCun 16 NIPS Keynote
以上幾個(gè)不相關(guān)問(wèn)題的相關(guān)性在于,都存在局部與整體的關(guān)系,由低層次的特征經(jīng)過(guò)組合,組成高層次的特征,并且得到不同特征之間的空間相關(guān)性。如下圖:低層次的直線(xiàn)/曲線(xiàn)等特征,組合成為不同的形狀,最后得到汽車(chē)的表示。

CNN抓住此共性的手段主要有四個(gè):局部連接/權值共享/池化操作/多層次結構。
局部連接使網(wǎng)絡(luò )可以提取數據的局部特征;權值共享大大降低了網(wǎng)絡(luò )的訓練難度,一個(gè)Filter只提取一個(gè)特征,在整個(gè)圖片(或者語(yǔ)音/文本) 中進(jìn)行卷積;池化操作與多層次結構一起,實(shí)現了數據的降維,將低層次的局部特征組合成為較高層次的特征,從而對整個(gè)圖片進(jìn)行表示。如下圖:

上圖中,如果每一個(gè)點(diǎn)的處理使用相同的Filter,則為全卷積,如果使用不同的Filter,則為L(cháng)ocal-Conv。
為什么很多做人臉的Paper會(huì )最后加入一個(gè)Local Connected Conv?
DeepFace: Closing the Gap to Human-Level Performance in Face Verification
以FaceBook DeepFace 為例:

DeepFace 先進(jìn)行了兩次全卷積+一次池化,提取了低層次的邊緣/紋理等特征。
后接了3個(gè)Local-Conv層,這里是用Local-Conv的原因是,人臉在不同的區域存在不同的特征(眼睛/鼻子/嘴的分布位置相對固定),當不存在全局的局部特征分布時(shí),Local-Conv更適合特征的提取。
以下問(wèn)題來(lái)自@抽象猴
什麼樣的資料集不適合用深度學(xué)習?
數據集太小,數據樣本不足時(shí),深度學(xué)習相對其它機器學(xué)習算法,沒(méi)有明顯優(yōu)勢。
數據集沒(méi)有局部相關(guān)特性,目前深度學(xué)習表現比較好的領(lǐng)域主要是圖像/語(yǔ)音/自然語(yǔ)言處理等領(lǐng)域,這些領(lǐng)域的一個(gè)共性是局部相關(guān)性。圖像中像素組成物體,語(yǔ)音信號中音位組合成單詞,文本數據中單詞組合成句子,這些特征元素的組合一旦被打亂,表示的含義同時(shí)也被改變。對于沒(méi)有這樣的局部相關(guān)性的數據集,不適于使用深度學(xué)習算法進(jìn)行處理。舉個(gè)例子:預測一個(gè)人的健康狀況,相關(guān)的參數會(huì )有年齡、職業(yè)、收入、家庭狀況等各種元素,將這些元素打亂,并不會(huì )影響相關(guān)的結果。
對所有優(yōu)化問(wèn)題來(lái)說(shuō), 有沒(méi)有可能找到比現在已知算法更好的算法?
機器學(xué)習-周志華
沒(méi)有免費的午餐定理:

對于訓練樣本(黑點(diǎn)),不同的算法A/B在不同的測試樣本(白點(diǎn))中有不同的表現,這表示:對于一個(gè)學(xué)習算法A,若它在某些問(wèn)題上比學(xué)習算法 B更好,則必然存在一些問(wèn)題,在那里B比A好。
也就是說(shuō):對于所有問(wèn)題,無(wú)論學(xué)習算法A多聰明,學(xué)習算法 B多笨拙,它們的期望性能相同。
但是:沒(méi)有免費午餐定力假設所有問(wèn)題出現幾率相同,實(shí)際應用中,不同的場(chǎng)景,會(huì )有不同的問(wèn)題分布,所以,在優(yōu)化算法時(shí),針對具體問(wèn)題進(jìn)行分析,是算法優(yōu)化的核心所在。
用貝葉斯機率說(shuō)明Dropout的原理
Dropout as a Bayesian Approximation: Insights and Applications
何為共線(xiàn)性, 跟過(guò)擬合有啥關(guān)聯(lián)?
Multicollinearity-Wikipedia
共線(xiàn)性:多變量線(xiàn)性回歸中,變量之間由于存在高度相關(guān)關(guān)系而使回歸估計不準確。
共線(xiàn)性會(huì )造成冗余,導致過(guò)擬合。
解決方法:排除變量的相關(guān)性/加入權重正則。
說(shuō)明如何用支持向量機實(shí)現深度學(xué)習(列出相關(guān)數學(xué)公式)
這個(gè)不太會(huì ),最近問(wèn)一下老師。
廣義線(xiàn)性模型是怎被應用在深度學(xué)習中?
A Statistical View of Deep Learning (I): Recursive GLMs
深度學(xué)習從統計學(xué)角度,可以看做遞歸的廣義線(xiàn)性模型。
廣義線(xiàn)性模型相對于經(jīng)典的線(xiàn)性模型(y=wx+b),核心在于引入了連接函數g(.),形式變?yōu)椋簓=g?1(wx+b)。
深度學(xué)習時(shí)遞歸的廣義線(xiàn)性模型,神經(jīng)元的激活函數,即為廣義線(xiàn)性模型的鏈接函數。邏輯回歸(廣義線(xiàn)性模型的一種)的Logistic函數即為神經(jīng)元激活函數中的Sigmoid函數,很多類(lèi)似的方法在統計學(xué)和神經(jīng)網(wǎng)絡(luò )中的名稱(chēng)不一樣,容易引起初學(xué)者(這里主要指我)的困惑。下圖是一個(gè)對照表:

什麼造成梯度消失問(wèn)題? 推導一下
Yes you should understand backdrop-Andrej Karpathy
How does the ReLu solve the vanishing gradient problem?
神經(jīng)網(wǎng)絡(luò )的訓練中,通過(guò)改變神經(jīng)元的權重,使網(wǎng)絡(luò )的輸出值盡可能逼近標簽以降低誤差值,訓練普遍使用BP算法,核心思想是,計算出輸出與標簽間的損失函數值,然后計算其相對于每個(gè)神經(jīng)元的梯度,進(jìn)行權值的迭代。
梯度消失會(huì )造成權值更新緩慢,模型訓練難度增加。造成梯度消失的一個(gè)原因是,許多激活函數將輸出值擠壓在很小的區間內,在激活函數兩端較大范圍的定義域內梯度為0。造成學(xué)習停止

以下問(wèn)題來(lái)自匿名用戶(hù)
Weights Initialization. 不同的方式,造成的后果。為什么會(huì )造成這樣的結果。
幾種主要的權值初始化方法: lecun_uniform / glorot_normal / he_normal / batch_normal
lecun_uniform:Efficient BackProp
glorot_normal:Understanding the difficulty of training deep feedforward neural networks
he_normal:Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification
batch_normal:Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift
為什么網(wǎng)絡(luò )夠深(Neurons 足夠多)的時(shí)候,總是可以避開(kāi)較差Local Optima?
The Loss Surfaces of Multilayer Networks
Loss. 有哪些定義方式(基于什么?), 有哪些優(yōu)化方式,怎么優(yōu)化,各自的好處,以及解釋。
Cross-Entropy / MSE / K-L散度
Dropout。 怎么做,有什么用處,解釋。
How does the dropout method work in deep learning?
Improving neural networks by preventing co-adaptation of feature detectors
An empirical analysis of dropout in piecewise linear networks
Activation Function. 選用什么,有什么好處,為什么會(huì )有這樣的好處。
幾種主要的激活函數:Sigmond / ReLU /PReLU
Deep Sparse Rectifier Neural Networks
Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification
評論