深度學習面試

2021-08-24 20:26:04 字數 2367 閱讀 5741

cnn抓住此共性的手段主要有四個:區域性連線/權值共享/池化操作/多層次結構。

relu:

解決了gradient vanishing問題 (在正區間)

計算速度非常快,只需要判斷輸入是否大於0

收斂速度遠快於sigmoid和tanh

loss. 有哪些定義方式(基於什麼?), 有哪些優化方式,怎麼優化,各自的好處,以及解釋

stochastic gradient descent (sgd), adaptivegradient (adagrad), and nesterov』s accelerated gradient (nag)。

26.神經網路中啟用函式的真正意義?乙個啟用函式需要具有哪些必要的屬性?還有哪些屬性是好的屬性但不必要的?

解析:(1)非線性:

(2)幾乎處處可微:

(3)計算簡單

(4)非飽和性(saturation):飽和指的是在某些區間梯度接近於零(即梯度消失),使得引數無法繼續更新的問題。最經典的例子是sigmoid,它的導數在x為比較大的正值和比較小的負值時都會接近於0。更極端的例子是階躍函式,由於它在幾乎所有位置的梯度都為0,因此處處飽和,無法作為啟用函式。relu在x>0時導數恒為1,因此對於再大的正值也不會飽和。但同時對於x<0,其梯度恒為0,這時候它也會出現飽和的現象(在這種情況下通常稱為dying relu)。leaky relu[3]和prelu[4]的提出正是為了解決這一問題。

(5)單調性(monotonic):即導數符號不變。這個性質大部分啟用函式都有,除了諸如sin、cos等。個人理解,單調性使得在啟用函式處的梯度方向不會經常改變,從而讓訓練更容易收斂。

(6)輸出範圍有限:有限的輸出範圍使得網路對於一些比較大的輸入也會比較穩定,這也是為什麼早期的啟用函式都以此類函式為主,如sigmoid、tanh。但這導致了前面提到的梯度消失問題,而且強行讓每一層的輸出限制到固定範圍會限制其表達能力。因此現在這類函式僅用於某些需要特定輸出範圍的場合,比如概率輸出(此時loss函式中的log操作能夠抵消其梯度消失的影響[1])、lstm裡的gate函式。

(8)引數少:大部分啟用函式都是沒有引數的。像prelu帶單個引數會略微增加網路的大小。還有乙個例外是maxout[7],儘管本身沒有引數,但在同樣輸出通道數下k路maxout需要的輸入通道數是其它函式的k倍,這意味著神經元數目也需要變為k倍;但如果不考慮維持輸出通道數的情況下,該啟用函式又能將引數個數減少為原來的k倍。

梯度**:訓練過程中出現梯度**會伴隨一些細微的訊號

(1) 重新設計網路模型

在深度神經網路中,梯度**可以通過重新設計層數更少的網路來解決。

使用更小的批尺寸對網路訓練也有好處。

在迴圈神經網路中,訓練過程中在更少的先前時間步上進行更新(沿時間的截斷反向傳播,truncated backpropagation through time)可以緩解梯度**問題。

(2)使用 relu 啟用函式

在深度多層感知機神經網路中,梯度**的發生可能是因為啟用函式,如之前很流行的 sigmoid 和 tanh 函式。

使用 relu 啟用函式可以減少梯度**。採用 relu 啟用函式是最適合隱藏層的新實踐。

(4)使用梯度截斷(gradient clipping)

在非常深且批尺寸較大的多層感知機網路和輸入序列較長的 lstm 中,仍然有可能出現梯度**。如果梯度**仍然出現,你可以在訓練過程中檢查和限制梯度的大小。這就是梯度截斷。

(5)使用權重正則化(weight regularization)

如果梯度**仍然存在,可以嘗試另一種方法,即檢查網路權重的大小,並懲罰產生較大權重值的損失函式。該過程被稱為權重正則化,通常使用的是 l1 懲罰項(權重絕對值)或 l2 懲罰項(權重平方)。

正如我們預期那樣,執行時間確實隨著批大小的增加而下降。然而,這導致了測試正確率的妥協,因為測試正確率隨著批大小的增加而單調遞減。

邊框回歸學習就是dx(p),dy(p),dw(p),dh(p)這四個變換。

w∗=argminw∗∑in(ti∗−w^t∗ϕ5(pi))2+λ||w^∗||2

利用梯度下降法或者最小二乘法就可以得到 w∗。

什麼是深度學習中的anchor?

解析:當我們使用乙個3*3的卷積核,在最後乙個feature map上滑動,當滑動到特徵圖的某乙個位置時,以當前滑動視窗中心為中心對映回原圖的乙個區域(注意 feature map 上的乙個點是可以對映到原圖的乙個區域的,相當於感受野起的作用),以原圖上這個區域的中心對應乙個尺度和長寬比,就是乙個anchor了。

faster r-cnn 採用與 fast r-cnn 相同的設計,只是它用內部深層網路代替了候選區域方法。新的候選區域網路(rpn)在生成 roi 時效率更高,並且以每幅影象 10 毫秒的速度執行。

深度學習面試

1.列舉常見的一些範數及其應用場景,如l0,l1,l2,l frobenius範數 2.簡單介紹一下貝葉斯概率與頻率派概率,以及在統計中對於真實引數的假設。3.概率密度的萬能近似器 4.簡單介紹一下sigmoid,relu,softplus,tanh,rbf及其應用場景 5.jacobian,hes...

深度學習面試準備

深度學習離不開神經網路,我主要是做視覺方面的,所以做線性回歸問題不多,主要是影象方面的問題,例如影象分類 classification 檢測 detection 語義分割 例項分割 segmentation 主要會涉及到 卷積神經網路 cnn 本人對卷積神經網路的基本結構比較熟悉,所以就先直接介紹c...

如何面試深度學習的

基礎 一 關於現有模型 你想要招聘什麼崗位,比如人臉識別,目標檢測,ocr。然後問問當下比較流行的模型,讓其複述其結構。如何微調,注意哪些引數。二 無論是人臉識別,是目標檢測,還是ocr裡面都有一些特殊的東西,比如rpn,iou,ctw等等,讓他解釋下。階級三 基本網路 流行的網路結構,比如resn...