機器學習深度學習 筆試面試題目整理(2)
1. CNN問題:
(1) 思想
改變全連線為區域性連線,這是由於圖片的特殊性造成的(影象的一部分的統計特性與其他部分是一樣的),通過區域性連線和引數共享大範圍的減少引數值。可以通過使用多個filter來提取圖片的不同特徵(多卷積核)。
(2)filter尺寸的選擇
通常尺寸多為奇數(1,3,5,7)
(3)輸出尺寸計算公式
輸出尺寸=(N - F +padding*2)/stride + 1
步長可以自由選擇通過補零的方式來實現連線。
(4)pooling池化的作用
雖然通過.卷積的方式可以大範圍的減少輸出尺寸(特徵數),但是依然很難計算而且很容易過擬合,所以依然利用圖片的靜態特性通過池化的方式進一步減少尺寸。
名稱 | 特點 |
---|---|
LeNet5 | –沒啥特點-不過是第一個CNN應該要知道 |
AlexNet | 引入了ReLU和dropout,引入資料增強、池化相互之間有覆蓋,三個卷積一個最大池化+三個全連線層 |
VGGNet | 採用1*1和3*3的卷積核以及2*2的最大池化使得層數變得更深。常用VGGNet-16和VGGNet19 |
Google Inception Net 我稱為盜夢空間網路 |
這個在控制了計算量和引數量的同時,獲得了比較好的分類效能,和上面相比有幾個大的改進: 1、去除了最後的全連線層,而是用一個全域性的平均池化來取代它; 2、引入Inception Module,這是一個4個分支結合的結構。所有的分支都用到了1*1的卷積,這是因為1*1價效比很高,可以用很少的引數達到非線性和特徵變換。 3、Inception V2第二版將所有的5*5變成2個3*3,而且提出來著名的Batch Normalization; 4、Inception V3第三版就更變態了,把較大的二維卷積拆成了兩個較小的一維卷積,加速運算、減少過擬合,同時還更改了Inception Module的結構。 |
微軟ResNet殘差神經網路(Residual Neural Network) | 1、引入高速公路結構,可以讓神經網路變得非常深 2、ResNet第二個版本將ReLU啟用函式變成y=x的線性函式 |
2. RNN問題
1、RNN原理:
在普通的全連線網路或CNN中,每層神經元的訊號只能向上一層傳播,樣本的處理在各個時刻獨立,因此又被成為前向神經網路(Feed-forward+Neural+Networks)。而在RNN中,神經元的輸出可以在下一個時間戳直接作用到自身,即第i層神經元在m時刻的輸入,除了(i-1)層神經元在該時刻的輸出外,還包括其自身在(m-1)時刻的輸出。所以叫迴圈神經網路
2、RNN、LSTM、GRU區別
- RNN引入了迴圈的概念,但是在實際過程中卻出現了初始資訊隨時間消失的問題,即長期依賴(Long-Term Dependencies)問題,所以引入了LSTM。
- LSTM:因為LSTM有進有出且當前的cell informaton是通過input gate控制之後疊加的,RNN是疊乘,因此LSTM可以防止梯度消失或者爆炸。推導forget gate,input gate,cell state, hidden information等因為LSTM有進有出且當前的cell informaton是通過input gate控制之後疊加的,RNN是疊乘,因此LSTM可以防止梯度消失或者爆炸的變化是關鍵,下圖非常明確適合記憶:
- GRU是LSTM的變體,將忘記門和輸入們合成了一個單一的更新門。
3、LSTM防止梯度彌散和爆炸
LSTM用加和的方式取代了乘積,使得很難出現梯度彌散。但是相應的更大的機率會出現梯度爆炸,但是可以通過給梯度加門限解決這一問題。
4、引出word2vec
這個也就是Word Embedding,是一種高效的從原始語料中學習字詞空間向量的預測模型。分為CBOW(Continous Bag of Words)和Skip-Gram兩種形式。其中CBOW是從原始語句推測目標詞彙,而Skip-Gram相反。CBOW可以用於小語料庫,Skip-Gram用於大語料庫。具體的就不是很會了。