2018深度學習演算法面經小記
阿新 • • 發佈:2018-12-14
前言
面的公司不多,基本都是提前批(找工作主要還是依靠提前批,坑多人少)。大多數時間都是在問簡歷相關的問題,基礎知識和程式設計也涉及到一些,簡單總結一下,也算回顧面試過程了。
面試題
基礎知識
- 求空間中兩異面直線的距離
- SVM的原理、推導
- SVM與決策樹的比較
- 各種熵、KL散度、JS散度
- 解釋梯度消失、梯度爆炸,以及為什麼
- 解釋過擬合,如何解決
程式設計
- 手寫快排,快排的時間複雜度(為什麼是O(nlogn)),比快排更快的演算法實現
- 手寫歸併排序
- 求逆序對個數
- 手寫maxpooling實現
- 計算IOU的實現
- 判斷連結串列有環
深度學習相關
- 卷積網路中引數量、運算量的計算
- BN層的原理、應用,訓練和測試時的設定
- Dropout 層的原理、應用
- 各種優化演算法的比較
- 如何計算感受野
- 描述GAN,包括流程、Loss函式、生成器和判別器的結構
- GAN與之前方法(如VAE)的比較
- GAN的引申,描述一下比如DCGAN,WGAN(因為我說看過WGAN,所以讓我講了一下WGAN解決的兩個問題以及如何解決的)
- 講一下MobileNet,如何減少模型引數量
專案相關
因為這塊會根據每個人的專案有很大的差異,所以簡單根據我的某個專案(遷移學習相關)介紹一下面試官會注意到的地方
- 為什麼要用遷移學習
- 講一下遷移學習的應用場景
- 遷移學習和深度學習結合的方式、種類
- 2018的best paper講一下(遷移學習相關)
- 用到的損失函式,以及與其他損失函式的比較(比如MMD和KL散度的比較)
- 遷移學習在專案中的作用體現在什麼地方,如何評價
開放性問題
有時候除了基礎知識,面試官會設定一個場景,問一些開放性的問題。
- 如何根據資料量選擇用哪個模型
- 如何處理資料不平衡問題
- 如何調參,按照什麼思路調參?(比如先判斷是否過擬合,損失函式和優化函式的調整,權重初始化,資料歸一化等等調參手段)
- 改過框架的原始碼嗎
hr面試
HR面試一般就比較輕鬆了,基本就是聊人生聊夢想
- 為什麼來這,對公司有什麼瞭解
- 之前科研/實習經歷有什麼收穫
- 遇到壓力/困難如何處理
- 遇到和別人意見不一致時怎麼處理
- 說一下自身的優點和缺點
- 看論文/寫程式碼的頻率
- 聊男/女朋友,是否支援你來
- 有沒有其他offer