22個深度學習面試問題

作者 | Tomer Amit

來源 | Medium

編輯 | 程式碼醫生團隊

以下是有關深度學習的25個問題,它們可以作為面試準備的良好資源。

1.描述處理神經網路中消失梯度問題的兩種方法。

答:

使用ReLU激活而不是S型。

使用Xavier初始化。

2.在影像分類任務中使用CNN(卷積神經網路)而不是DNN,為什麼?

答:雖然兩個模型都可以捕獲接近像素之間的關係,但CNN具有以下屬性:

1)它是平移不變的-像素的確切位置與濾鏡無關。

2)不容易產生過擬合——CNN中的典型參數數量比DNN中的參數數量少得多。

3)使人們對模型有更好的理解-我們可以查看過濾器的權重並可視化網路「學習」的內容。

4)分層性質-通過使用較簡單的模式描述複雜的模式來學習模式。

3.假設一個有3層神經網路使用了ReLU激活函數。如果將所有權重初始化為相同的值,將會發生什麼?如果只有一層(即線性/邏輯回歸)會是什麼樣子?

答:如果將所有權重初始化為相同,則將無法破壞對稱性。也就是說,所有梯度將被更新為相同,並且網路將無法學習。但是,在1層方案中,損失函數是凸的(線性/ S形),因此權重將始終收斂到最佳點,而與初始值無關(收斂可能會更慢)。

4.解釋Adam優化器背後的想法。

答: Adam(或自適應動量)結合了兩個想法來改善收斂性:每個參數更新可加快收斂速度;動量可避免卡在鞍點上。

5.比較批次、迷你批次和隨機梯度下降(SGD)的區別?

答:批處理是指通過獲取整個數據來估計數據,通過取樣一些數據點來進行小批量處理,而SGD則是在每個時期更新一個數據點的梯度。這裡的權衡是在梯度計算的精確度與可以保留在記憶體中的批量大小之間。此外,通過在每個時間段添加隨機雜訊,以小批量而不是整個批次具有正規化效果。

6.什麼是數據擴充?舉個例子。

答:數據擴充是一種通過對原始數據執行操作來增加輸入數據的技術。例如,在影像中,可以執行以下操作:旋轉影像,反射(翻轉)影像,添加高斯模糊

7. GAN的概念是什麼?

答: GAN或生成對抗網路由兩個網路(D,G)組成,其中D是「區分者」網路,而G是「生成」網路。目標是創建數據,例如與真實影像無法區分的影像。假設要創建一隻貓的對抗示例。網路G將生成影像。網路D將根據影像是否是貓來對其進行分類。G的損失函數將被構造為使得它試圖「愚弄」 D-將其輸出始終分類為cat。

8.使用Batchnorm有什麼優勢?

答: Batchnorm加快了訓練過程。改善了模型移動協變數問題。

9.什麼是多任務學習?什麼時候應該使用?

答:當有少量任務數據需要多任務處理時,多任務處理將很有用,而在另一個任務的大型數據集上訓練模型將使我們受益。模型的參數可以通過「硬」方式(即相同的參數)或「軟」方式(即對損失函數的正則化/懲罰)共享。

10.什麼是端到端學習?列舉一些優點。

答:端到端學習通常是一個模型,該模型獲取原始數據並直接輸出所需的結果,而無需任何中間任務或功能工程。它具有幾個優點,其中包括:無需手工製作功能,並且通常可以降低偏差。

11.如果先使用ReLU激活然後再使用S型曲線作為最後一層,那會發生什麼?

答:由於ReLU始終輸出非負結果,因此網路將不斷為所有輸入預測一個類別!

12.如何解決爆炸梯度問題?

答:爆炸梯度問題的一個簡單解決方法是梯度修剪-當梯度的絕對值大於M(其中M是一個大數)時,使梯度為±M。

13.使用批量梯度下降法時是否有必要將訓練數據改組?

答:不可以,因為使用每個訓練數據在每個曆元上計算梯度,所以改組沒有區別。

14.當使用小批量梯度下降時,為什麼對數據進行亂序?

答:防止模型學到樣本間的順序。而這個順序並不是樣本自帶的特徵。

15.描述一些用於遷移學習的超參數。

答:保留幾層,添加幾層,凍結幾層。

16。測試設備上是否使用了dropout?

答:不!僅在訓練上。dropout是一種在訓練過程中應用的正則化技術。

17。解釋為什麼神經網路中的dropout充當正則化器。

答:對於dropout為何起作用,有幾種(相關的)解釋。可以將其視為模型平均的一種形式-在每個步驟中, 「關閉」模型的一部分並取平均值。它還會增加噪音,自然會產生調節效果。它還導致權重的稀疏性,並從根本上阻止了網路中神經元的共適應。

18.給出適合多對一RNN架構的示例。

答:情感分析,語音中的性別識別,。

19。什麼時候不能使用BiLSTM?

答:在任何雙向模型中,都假定可以在給定的「時間」內訪問序列的下一個元素。文本數據(例如,情感分析,翻譯等)就是這種情況,而時間序列數據則不是這種情況。

20。向RNN添加L2正則化可以幫助解決梯度消失的問題。正確or錯誤?

答:錯誤!添加L2正則化會將權重縮小為零,這實際上會使消失的梯度在某些情況下更糟。

21。假設訓練誤差/成本很高,並且驗證成本/誤差幾乎相等。這是什麼意思?應該做什麼?

答:這表明擬合能力不足。可以添加更多參數,增加模型的複雜性或降低正則化。

22。描述如何將L2正則化解釋為一種權重衰減。

答:假設的損失函數為C(w),並加上一個懲罰c | w | 2。使用梯度下降時,迭代看起來像

w = w -grad(C)(w)— 2cw =(1-2c)w — grad(C)(w)

在此等式中,權重乘以因子<1。