知識蒸餾,緊湊的網路結構簡單記錄

2021-08-17 06:40:39 字數 715 閱讀 2176

知識蒸餾:遷移學習的一種,目的是將龐大網路學到的知識轉移到小的網路模型上,即不改變網路複雜度的情況下,通過增加監督資訊的豐富程度來提公升效能。

關鍵點:1.知識獲取  2.知識轉移

常見集中思想:

1.    softmax層的輸入比類別標籤包含更多的監督資訊,使用logistics代替類別標籤對小模型進行訓練,將小模型訓練轉化為了回歸問題。讓小模型輸出盡量接近大模型的logits。因為小模型隱層要足夠寬,所以引數沒有明顯減少,效果有限。

2.    softmax的輸出層包含了每個類別的概率,包含了更多的資訊,用超引數控制**概率的平衡程度。最終損失函式由小模型**結果和大模型logistics的交叉熵,和小模型**結果和類別標籤的交叉熵組成。通過調節權重確定兩部分的重要程度。但當類別較多時模型難收斂,因為與維度緊密。與logits相比,前一層的輸出包含了更多雜訊和無關資訊。因此先取出無關維度(保留足夠強區分維度,維度間低相關)。效果會提高。但研究工作還需要深入。

緊湊的網路結構

1.    擠壓(維度不高表達不強,維度高了引數增多,容量與引數的平衡用1*1的卷積進行降維,得到多通道資訊,特徵緊密,保證模型泛化)

2.    擴張(為了減少引數,部分使用1*1代替大的卷積核,但為了保證不同核輸出拼接完整,要對打的卷積輸入進行合適的填充畫素)

3.    squeezenet:三條卷積操作,擴張卷積,反卷積,普通卷積,然後合併輸入下一層。實現了4.1m引數和googlenet效果一樣。

RNN中網路結構的理解

在使用tensorflow對構建rnn模型的時候,有幾個引數一直不能很好的理解它本身的結構,這對後續網路的修改產生了很大的問題,在網上查閱資料後對其中一些引數結構進行總結。例子 如下 usr bin env python3 coding utf 8 import tensorflow as tf f...

各種高效的網路結構巡禮

暫時發現如下寶藏專欄,有空把下面的看了,根據入門先到後再重新排序。根據看完每一篇,其中有看不懂的,備註,解釋,再貼出來。一文讀懂卷積神經網路中的1x1卷積核 知乎 薰風讀 mobilenet 詳解深度可分離卷積,它真的又好又快嗎?知乎 cnn更新換代!效能提公升算力減半,還即插即用 知乎 輕量卷積神...

百度SRN的網路結構

towards accurate scene text recognition with semantic reasoning networks paddlepaddle ocr 特徵提取部分 resnet50 fpn 這時候輸出的特徵是 b,t,c t imgh 8 imgw 8 這時候,每個特徵...