【論文閱讀】TCN-時間卷積網絡

參考論文:An Empirical Evaluation of Generic Convolutional and Recurrent Networks for Sequence Modeling

參考鏈接:

序列建模之時間卷積網絡TCN - 楊鎰銘的文章 - 知乎 https://zhuanlan.zhihu.com/p/41987775

TCN時間卷積網絡 - 剪水作花飛的文章 - 知乎 https://zhuanlan.zhihu.com/p/51246745

TCN論文閱讀 - 陳見聳的文章 - 知乎 https://zhuanlan.zhihu.com/p/52477665

時間卷積網絡(TCN) 總結:時序模型不再是遞歸網絡(RNN) 的天下,但作爲信息粗暴提取的一種方法,請不要神話CNN !

問題定義:

給定輸入序列 x_0,\cdots,x_T ,預測 y_0,\cdots,y_T 。但是在預測 y_t 時,只能使用已經觀測到的 x_0,\cdots,x_t 。這個約束使得提出的模型只能在自迴歸的場景下是成立的,在機器翻譯等裏面不成立,因爲機器翻譯裏預測的時候可以使用整個輸入序列的信息

涉及概念:

一維卷積

一維卷積也類似於加權求和

因果卷積

時序預測要求對時刻t 的預測yt只能通過t時刻之前的輸入x1到xt-1來判別(像隱馬爾科夫鏈)。這在CNN裏面就叫做因果卷積(causalconvolutions)。本質上,David 9認爲就是通過限制卷積窗口滑動做到的。

擴張卷積

例如下圖是擴張卷積,卷積核的感受野爲7×7=49

殘差卷積的跳層連接

深層網絡容易出現梯度消失和梯度爆炸的問題(主要是因爲鏈式求導過程中對激活函數的導數多次累乘,如果導數<1則梯度消失,>1則梯度爆炸),目前可以使用BN、正則化等方式進行改善,但是還是無法支持過深的網絡。針對深層網絡出現的層數失效甚至越深結果越差的現象,使用殘差網絡結構來進行優化。(https://www.zhihu.com/question/53224378)

殘差鏈接被證明是訓練深層網絡的有效方法,它使得網絡可以以跨層的方式傳遞信息。本文構建了一個殘差塊來代替一層的卷積。如上圖所示,一個殘差塊包含兩層的卷積和非線性映射,在每層中還加入了WeightNorm和Dropout來正則化網絡。

全卷積網絡

特點總結

總結一下TCN的優點和缺點。

【優點】

(1)並行性。當給定一個句子時,TCN可以將句子並行的處理,而不需要像RNN那樣順序的處理。

(2)靈活的感受野。TCN的感受野的大小受層數、卷積核大小、擴張係數等決定。可以根據不同的任務不同的特性靈活定製。

(3)穩定的梯度。RNN經常存在梯度消失和梯度爆炸的問題,這主要是由不同時間段上共用參數導致的,和傳統卷積神經網絡一樣,TCN不太存在梯度消失和爆炸問題。這裏主要針對更深的網絡

(4)內存更低。RNN在使用時需要將每步的信息都保存下來,這會佔據大量的內存,TCN在一層裏面卷積核是共享的,內存使用更低。

【缺點】:

(1)TCN 在遷移學習方面可能沒有那麼強的適應能力。這是因爲在不同的領域,模型預測所需要的歷史信息量可能是不同的。因此,在將一個模型從一個對記憶信息需求量少的問題遷移到一個需要更長記憶的問題上時,TCN 可能會表現得很差,因爲其感受野不夠大。

(2)論文中描述的TCN還是一種單向的結構,在語音識別和語音合成等任務上,純單向的結構還是相當有用的。但是在文本中大多使用雙向的結構,當然將TCN也很容易擴展成雙向的結構,不使用因果卷積,使用傳統的卷積結構即可。

(3)TCN畢竟是卷積神經網絡的變種,雖然使用擴展卷積可以擴大感受野,但是仍然受到限制,相比於Transformer那種可以任意長度的相關信息都可以抓取到的特性還是差了點。TCN在文本中的應用還有待檢驗。

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