難忘那縷羈絆
近幾年人工智能領(lǐng)域大熱,專業(yè)人才缺口問題也逐漸顯現(xiàn)。由于校招薪資比其他方向的開發(fā)人員高,很多同學(xué)想學(xué)習(xí)機器學(xué)習(xí),畢業(yè)以后從事算法相關(guān)的崗位。所謂知己知彼,百戰(zhàn)不殆,下面整理了一些面試深度學(xué)習(xí)算法工程師??嫉闹R點,幫助同學(xué)們更好的了解深度學(xué)習(xí),提高個人的競爭力。1)經(jīng)典算法:EM,HMM,貝葉斯網(wǎng)絡(luò),樸素貝葉斯,聚類,PCA,LDA,高斯混合模型等等。2) 概率論相關(guān):各種分布,極大似然,最大后驗,假設(shè)檢驗的過程(顯著性水平和p的區(qū)別和聯(lián)系),卡方檢驗等等。3)機器學(xué)習(xí)主要模型:線性回歸,邏輯回歸,svm,各種樹模型等等。原理公式要會,也要能熟悉推導(dǎo)過程。4)大數(shù)據(jù),要了解并行化分布式的東西,比如hadoop,spark,Hive等,要明白底層的工作原理。另外,我們要知道面試回答問題的過程其實是各方面能力的展現(xiàn)過程。對面試官提出的問題,不要想當(dāng)然地給出非此即彼的答案,要把自己的思考過程、分析脈絡(luò)表述出來。很多時候面試官看重的不是你的答案,而是你分析問題解決問題的思維過程。

神話0814
,領(lǐng)學(xué)網(wǎng)為你解計算機視覺部分:1、考察特征點匹配算法,輸入兩幅圖像中的特征點對,輸出匹配的特征點對,(128維描述子)距離計算函數(shù)已給出無需考慮復(fù)雜度。編寫偽代碼,分析算法復(fù)雜度;2、考察圖像旋轉(zhuǎn)。左邊圖像時旋轉(zhuǎn)一定角度后的圖像(有黑邊),右邊為正常圖像。已知兩幅圖像都為WxH,以及左圖像與四邊的切點A1A2A3A4,設(shè)計旋轉(zhuǎn)算法使左圖像變換矯正成右圖像,編寫偽代碼,分析算法復(fù)雜度及優(yōu)缺點;3、主要考察雙目視覺中的標(biāo)定知識。給出了雙目視覺的成像原理圖及相關(guān)定理和表達。第一小題,需要證明x'Fx=0 x'x為左右圖像中的匹配點對,并要求給出F矩陣的秩;第二小題要求推導(dǎo)出最少可由多少對左右圖像中匹配點可以推導(dǎo)出F矩陣;4、要求寫出圖像處理和計算機視覺在無人飛行器中的3個重要應(yīng)用。給出理由和解決方案并分析。圖像處理部分:1、主要考察一維中值濾波,退化為區(qū)間濾波 編寫偽代碼,分析算法復(fù)雜度;2、主要考察二維中值濾波,編寫偽代碼,分析算法復(fù)雜度;3、如何去除脈沖噪聲,圖像中有大量隨機產(chǎn)生的255和0噪聲;4、考察加權(quán)中值濾波公式推導(dǎo)以及一維加權(quán)中值濾波控制部分:對象舉例均為四旋翼無人飛行器,各題目要求設(shè)計控制器,給出控制率,還有觀測方案設(shè)計等等;有一題比較簡單就是說明PID的各部分含義以及如何調(diào)節(jié)。希望幫到你!
飄泊四方的狼
參考:
反卷積也稱為轉(zhuǎn)置卷積,如果用矩陣乘法實現(xiàn)卷積操作,將卷積核平鋪為矩陣,則轉(zhuǎn)置卷積在正向計算時左乘這個矩陣的轉(zhuǎn)置WT,在反向傳播是左乘W,與卷積操作剛好相反,需要注意的是,反卷積不是卷積的逆運算。 [知乎問題+caffe實現(xiàn)]
實現(xiàn)上采樣;近似重構(gòu)輸入圖像,卷積層可視化。
只要激活函數(shù)選擇得當(dāng),神經(jīng)元的數(shù)量足夠,至少有一個隱含層的神經(jīng)網(wǎng)絡(luò)可以 逼近閉區(qū)間上任意一個連續(xù)函數(shù)到任意指定的精度。
判別模型,直接輸出類別標(biāo)簽,或者輸出類后驗概率p(y|x) [ ] [ ] [ ]
BN是在 batch這個維度上進行歸一化,GN是計算channel方向每個group的均值方差.
檢測結(jié)果與 Ground Truth 的交集比上它們的并集,即為檢測的準(zhǔn)確率 IoU
內(nèi)存/顯存占用;模型收斂速度等
Hessian矩陣是n*n, 在高維情況下這個矩陣非常大,計算和存儲都是問題。
mini-batch太小會導(dǎo)致收斂變慢,太大容易陷入sharp minima,泛化性不好。
可以把dropout看成是 一種ensemble方法,每次做完dropout相當(dāng)于從原網(wǎng)絡(luò)中找到一個更瘦的網(wǎng)絡(luò)。
pooling操作雖然能增大感受野,但是會丟失一些信息。空洞卷積在卷積核中插入權(quán)重為0的值,因此每次卷積中會skip掉一些像素點;
空洞卷積增大了卷積輸出每個點的感受野,并且不像pooling會丟失信息,在圖像需要全局信息或者需要較長sequence依賴的語音序列問題上有著較廣泛的應(yīng)用。
表達式為:
使用BN的原因是網(wǎng)絡(luò)訓(xùn)練中每一層不斷改變的參數(shù)會導(dǎo)致后續(xù)每一層輸入的分布發(fā)生變化,而學(xué)習(xí)的過程又要使每一層去適應(yīng)輸入的分布,因此不得不降低網(wǎng)絡(luò)的學(xué)習(xí)率,并且要小心得初始化(internal covariant shift) 如果僅通過歸一化方法使得數(shù)據(jù)具有零均值和單位方差,則會降低層的表達能力(如使用Sigmoid函數(shù)時,只使用線性區(qū)域) BN的具體過程(注意第三個公式中分母要加上epsilon)
最好的解釋是通過1 * 1卷積核能實現(xiàn)多個channel間的解耦合,解耦cross-channel correlation和spatial correlation。 【但是因為解耦不徹底,因此后續(xù)有了mobile net的組卷積方式和shuffle net組卷積方式】
由于 1×1 并不會改變 height 和 width,改變通道的第一個最直觀的結(jié)果,就是可以將原本的數(shù)據(jù)量進行增加或者減少。改變的只是 height × width × channels 中的 channels 這一個維度的大小而已。
1*1卷積核,可以在保持feature map尺度不變的(即不損失分辨率)的前提下大幅增加非線性特性(利用后接的非線性激活函數(shù)),把網(wǎng)絡(luò)做的很deep。
備注:一個filter對應(yīng)卷積后得到一個feature map,不同的filter(不同的weight和bias),卷積以后得到不同的feature map,提取不同的特征,得到對應(yīng)的specialized neuron。
例子:使用1x1卷積核,實現(xiàn)降維和升維的操作其實就是channel間信息的線性組合變化,3x3,64channels的卷積核后面添加一個1x1,28channels的卷積核,就變成了3x3,28channels的卷積核,原來的64個channels就可以理解為跨通道線性組合變成了28channels,這就是通道間的信息交互
注意:只是在channel維度上做線性組合,W和H上是共享權(quán)值的sliding window
并不能說明這個模型無效導(dǎo)致模型不收斂的原因可能有
A. 在實際場景下,應(yīng)盡量使用ADAM,避免使用SGD B. 同樣的初始學(xué)習(xí)率情況下,ADAM的收斂速度總是快于SGD方法 C. 相同超參數(shù)數(shù)量情況下,比起自適應(yīng)的學(xué)習(xí)率調(diào)整方式,SGD加手動調(diào)節(jié)通常會取得更好效果 D. 同樣的初始學(xué)習(xí)率情況下,ADAM比SGD容易過擬合
A.保證每一層的感受野不變,網(wǎng)絡(luò)深度加深,使得網(wǎng)絡(luò)的精度更高 B.使得每一層的感受野增大,學(xué)習(xí)小特征的能力變大 C.有效提取高層語義信息,且對高層語義進行加工,有效提高網(wǎng)絡(luò)準(zhǔn)確度 D.利用該結(jié)構(gòu)有效減輕網(wǎng)絡(luò)的權(quán)重
A.計算簡單 B.非線性 C.具有飽和區(qū) D.幾乎處處可微 【relu函數(shù)在0處是不可微的。】
的收斂速度比RMSprop慢 B.相比于SGD或RMSprop等優(yōu)化器,Adam的收斂效果是最好的 C.對于輕量級神經(jīng)網(wǎng)絡(luò),使用Adam比使用RMSprop更合適 D.相比于Adam或RMSprop等優(yōu)化器,SGD的收斂效果是最好的 【SGD通常訓(xùn)練時間更長,容易陷入鞍點,但是在好的初始化和學(xué)習(xí)率調(diào)度方案的情況下,結(jié)果更可靠。如果在意更快的收斂,并且需要訓(xùn)練較深較復(fù)雜的網(wǎng)絡(luò)時,推薦使用學(xué)習(xí)率自適應(yīng)的優(yōu)化方法?!?/p>
A.使用ReLU做為激活函數(shù),可有效地防止梯度爆炸 B.使用Sigmoid做為激活函數(shù),較容易出現(xiàn)梯度消失 C.使用Batch Normalization層,可有效的防止梯度爆炸 D.使用參數(shù)weight decay,在一程度上可防止模型過擬合
對結(jié)果存疑。認(rèn)為二者皆可防止。
L-BFGS(Limited-memory BFGS,內(nèi)存受限擬牛頓法)方法: 所有的數(shù)據(jù)都會參與訓(xùn)練,算法融入方差歸一化和均值歸一化。大數(shù)據(jù)集訓(xùn)練DNN,容易參數(shù)量過大 (牛頓法的進化版本,尋找更好的優(yōu)化方向,減少迭代輪數(shù))從LBFGS算法的流程來看,其整個的核心的就是如何快速計算一個Hesse的近似:重點一是近似,所以有了LBFGS算法中使用前m個近似下降方向進行迭代的計算過程;重點二是快速,這個體現(xiàn)在不用保存Hesse矩陣上,只需要使用一個保存后的一階導(dǎo)數(shù)序列就可以完成,因此不需要大量的存儲,從而節(jié)省了計算資源;重點三,是在推導(dǎo)中使用秩二校正構(gòu)造了一個正定矩陣,即便這個矩陣不是最優(yōu)的下降方向,但至少可以保證函數(shù)下降。 FTRL(Follow-the-regularized-Leader)是一種適用于處理超大規(guī)模數(shù)據(jù)的,含大量稀疏特征的在線學(xué)習(xí)的常見優(yōu)化算法,方便實用,而且效果很好,常用于更新在線的CTR預(yù)估模型;FTRL在處理帶非光滑正則項(如L1正則)的凸優(yōu)化問題上表現(xiàn)非常出色,不僅可以通過L1正則控制模型的稀疏度,而且收斂速度快;
在一定程度上解決了傳統(tǒng)RNN梯度消失或梯度爆炸的問題 相比于全連接的優(yōu)勢之一是模型復(fù)雜度低,緩解過擬合 C.只要參數(shù)設(shè)置合理,深度學(xué)習(xí)的效果至少應(yīng)優(yōu)于隨機算法 D.隨機梯度下降法可以緩解網(wǎng)絡(luò)訓(xùn)練過程中陷入鞍點的問題
實際上,現(xiàn)在有很多針對小目標(biāo)的措施和改良,如下:
最常見的是Upsample來Rezie網(wǎng)絡(luò)輸入圖像的大??;
用dilated/astrous等這類特殊的卷積來提高檢測器對分辨率的敏感度;(空洞卷積是針對圖像語義分割問題中下采樣會降低圖像分辨率、丟失信息而提出的一種卷積思路。利用添加空洞擴大感受野,讓原本3 x3的卷積核,在相同參數(shù)量和計算量下?lián)碛?x5(dilated rate =2)或者更大的感受野,從而無需下采樣。在保持參數(shù)個數(shù)不變的情況下增大了卷積核的感受野)
有比較直接的在淺層和深層的Feature Map上直接各自獨立做預(yù)測的,這個就是我們常說的尺度問題。
用FPN這種把淺層特征和深層特征融合的,或者最后在預(yù)測的時候,用淺層特征和深層特征一起預(yù)測;
SNIP(Scale Normalization for Image Pyramids)主要思路:
在訓(xùn)練和反向傳播更新參數(shù)時,只考慮那些在指定的尺度范圍內(nèi)的目標(biāo),由此提出了一種特別的多尺度訓(xùn)練方法。
優(yōu)質(zhì)工程師考試問答知識庫