TCN-时间卷积网络
目錄
一、引言
二、時序卷積神經網絡
2.1 因果卷積(Causal Convolution)
2.2 膨脹卷積(Dilated Convolution)
2.3 殘差鏈接(Residual Connections)
三、討論和總結
1. TCN的優點
2. TCN的缺點
參考論文:An Empirical Evaluation of Generic Convolutional and Recurrent Networks for Sequence Modeling
Github:https://github.com/LOCUSLAB/tcn
參考鏈接:
? ? ? ?序列建模之時間卷積網絡TCN - 楊鎰銘的文章 - 知乎
? ? ??TCN時間卷積網絡 - 剪水作花飛的文章 - 知乎
? ? ? ?時間卷積網絡(TCN)在 NLP 多領域發光,RNN 或將沒落
一、引言
? ? ? ?時序問題的建模大家一般習慣性的采用循環神經網絡(RNN)來建模,這是因為RNN天生的循環自回歸的結構是對時間序列的很好的表示。傳統的卷積神經網絡一般認為不太適合時序問題的建模,這主要由于其卷積核大小的限制,不能很好的抓取長時的依賴信息。 但是最近也有很多的工作顯示,特定的卷積神經網絡結構也可以達到很好的效果,比如Goolgle提出的用來做語音合成的wavenet,Facebook提出的用來做翻譯的卷積神經網絡。這就帶來一個問題,用卷積來做神經網絡到底是只適用于特定的領域還是一種普適的模型? 本文就帶著這個問題,將一種特殊的卷積神經網絡——時序卷積網絡(Temporal convolutional network, TCN)與多種RNN結構相對比,發現在多種任務上TCN都能達到甚至超過RNN模型。
二、時序卷積神經網絡
2.1 因果卷積(Causal Convolution)
?? ? ? ? ? ? ? ? ? ?
? ? ? ? 因果卷積可以用上圖直觀表示。 即對于上一層t時刻的值,只依賴于下一層t時刻及其之前的值。和傳統的卷積神經網絡的不同之處在于,因果卷積不能看到未來的數據,它是單向的結構,不是雙向的。也就是說只有有了前面的因才有后面的果,是一種嚴格的時間約束模型,因此被成為因果卷積。
2.2 膨脹卷積(Dilated Convolution)
? ? ? ?單純的因果卷積還是存在傳統卷積神經網絡的問題,即對時間的建模長度受限于卷積核大小的,如果要想抓去更長的依賴關系,就需要線性的堆疊很多的層。為了解決這個問題,研究人員提出了膨脹卷積。如下圖所示。
?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? 和傳統卷積不同的是,膨脹卷積允許卷積時的輸入存在間隔采樣,采樣率受圖中的d控制。 最下面一層的d=1,表示輸入時每個點都采樣,中間層d=2,表示輸入時每2個點采樣一個作為輸入。一般來講,越高的層級使用的d的大小越大。所以,膨脹卷積使得有效窗口的大小隨著層數呈指數型增長。這樣卷積網絡用比較少的層,就可以獲得很大的感受野。
2.3 殘差鏈接(Residual Connections)
? ? ? ? ? ? ? ??
? ? ? ? 殘差鏈接被證明是訓練深層網絡的有效方法,它使得網絡可以以跨層的方式傳遞信息。本文構建了一個殘差塊來代替一層的卷積。如上圖所示,一個殘差塊包含兩層的卷積和非線性映射,在每層中還加入了WeightNorm和Dropout來正則化網絡。
三、討論和總結
? ? ? ?總體來講,TCN模型上的創新并不是很大,因果卷積和擴展卷積也并不是本論文提出來,本文主要是將TCN的結構梳理了一下,相比于wavenet中的結構,去掉了門機制,加入了殘差結構,并在很多的序列問題上進行了實驗。實驗效果如下:
? ? ? ? ? ? ??
在多個任務上,都比標準的LSTM、GRU等效果好。
1. TCN的優點
? ? (1)并行性。當給定一個句子時,TCN可以將句子并行的處理,而不需要像RNN那樣順序的處理。
? ? (2)靈活的感受野。TCN的感受野的大小受層數、卷積核大小、擴張系數等決定。可以根據不同的任務不同的特性靈活定制。
? ? (3)穩定的梯度。RNN經常存在梯度消失和梯度爆炸的問題,這主要是由不同時間段上共用參數導致的,和傳統卷積神經網絡一樣,TCN不太存在梯度消失和爆炸問題。
? ? (4)內存更低。RNN在使用時需要將每步的信息都保存下來,這會占據大量的內存,TCN在一層里面卷積核是共享的,內存使用更低。
2. TCN的缺點
? ? (1)TCN 在遷移學習方面可能沒有那么強的適應能力。這是因為在不同的領域,模型預測所需要的歷史信息量可能是不同的。因此,在將一個模型從一個對記憶信息需求量少的問題遷移到一個需要更長記憶的問題上時,TCN 可能會表現得很差,因為其感受野不夠大。
? ? (2)論文中描述的TCN還是一種單向的結構,在語音識別和語音合成等任務上,純單向的結構還是相當有用的。但是在文本中大多使用雙向的結構,當然將TCN也很容易擴展成雙向的結構,不使用因果卷積,使用傳統的卷積結構即可。
? ? (3)TCN畢竟是卷積神經網絡的變種,雖然使用擴展卷積可以擴大感受野,但是仍然受到限制,相比于Transformer那種可以任意長度的相關信息都可以抓取到的特性還是差了點。TCN在文本中的應用還有待檢驗。
總結
以上是生活随笔為你收集整理的TCN-时间卷积网络的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机二级Python公共基础部分
- 下一篇: foobar2000_为MP3/flac