重磅福利!程序員面試——算法工程師面試大全第六部分

1.什麼是 seq2seq model?

Seq2seq 屬於 encoder-decoder 結構的一種,利用兩個 RNN,一個作爲 encoder 一個作爲 decoder.Encoder 負責將輸入序列壓縮成指定長度的向量,這個向量可以看作這段序列的語義, 而 decoder 負責根據語義向量生成指定的序列.

 

2.激活函數的作用

激活函數是用來加入非線性因素的,提高神經網絡對模型的表達能力,解決線性模型所不能 解決的問題.

 

3.SPP,YOLO

SPP-Net 簡介:

SPP-Net 主要改進有下面兩個:

1).共享卷積計算,2).空間金字塔池化

在 SPP-Net 中同樣由這幾個部分組成: ss 算法,CNN 網絡,SVM 分類器,bounding box

ss 算法的區域建議框同樣在原圖上生成,但是卻在 Conv5 上提取,當然由於尺寸的變化, 在 Conv5 層上提取時要經過尺度變換,這是它 R-CNN 最大的不同,也是 SPP-Net 能夠大幅縮短時 長的原因.因爲它充分利用了卷積計算,也就是每張圖片只卷積一次,但是這種改進帶來了一個 新的問題,由於 ss 算法生成的推薦框尺度是不一致的,所以在 cov5 上提取到的特徵尺度也是不 一致的,這樣是沒有辦法做全尺寸卷積的(Alexnet).

所以 SPP-Net 需要一種算法,這種算法能夠把不一致的輸入產生統一的輸出,這就 SPP,即 空間金字塔池化,由它替換 R-CNN 中的 pooling 層,除此之外,它和 R-CNN 就一樣了.

YOLO 詳解: YOLO 的名字 You only look once 正是自身特點的高度概括.YOLO 的核心思想在於將目標檢 測作爲迴歸問題解決 ,YOLO 首先將圖片劃分成 SxS 個區域,注意這個區域的概念不同於上文提及將圖片劃分成 N 個區域扔進 detector 這裏的區域不同.上文提及的區域是真的將圖片進行剪 裁,或者說把圖片的某個局部的像素扔進 detector,而這裏的劃分區域,只的是邏輯上的劃分.

 

4.神經網絡爲啥用交叉熵.

通過神經網絡解決多分類問題時,最常用的一種方式就是在最後一層設置 n 個輸 出節點,無論在淺層神經網絡還是在 CNN 中都是如此,比如,在 AlexNet 中最後的輸出層有 1000 個節點,而即便是 ResNet 取消了全連接層,也會在最後有一個 1000 個節點的輸出層. 一般情況下,最後一個輸出層的節點個數與分類任務的目標數相等.假設最後的節點數爲 N, 那麼對於每一個樣例,神經網絡可以得到一個 N 維的數組作爲輸出結果,數組中每一個維度會對 應一個類別.在最理想的情況下,如果一個樣本屬於 k,那麼這個類別所對應的的輸出節點的輸 出值應該爲 1,而其他節點的輸出都爲 0,即[0,0,1,0,….0,0],這個數組也就是樣本的 Label, 是神經網絡最期望的輸出結果,交叉熵就是用來判定實際的輸出與期望的輸出的接近程度.

 

5.RetinaNet 爲什麼比 SSD 效果好

SSD 在訓練期間重新採樣目標類和背景類的比率,這樣它就不會被圖像背景淹沒.RetinaNet 採用另一種方法來減少訓練良好的類的損失.因此,只要該模型能夠很好地檢測背景,就可以減少其損失並重新增強對目標類的訓練.所以 RetinaNet 比 SSD 效果好.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章