六種方法解決LSTM循環(huán)神經(jīng)網(wǎng)絡(luò)中的超長序列問題
發(fā)布時間:2017-06-27 來源:Jason Brownlee 責(zé)任編輯:wenwei
【導(dǎo)讀】長短期記憶(LSTM)循環(huán)神經(jīng)網(wǎng)絡(luò)可以學(xué)習(xí)和記憶長段序列的輸入。如果你的問題對于每個輸入都有一個輸出(如時間序列預(yù)測和文本翻譯任務(wù)),那么 LSTM 可以運(yùn)行得很好。但 LSTM 在面臨超長輸入序列——單個或少量輸出的情形時就會遇到困難了。這種問題通常被稱為序列標(biāo)記,或序列分類。
其中的一些例子包括:
包含數(shù)千個單詞的文本內(nèi)容情緒分類(自然語言處理)。
分類數(shù)千個時間步長的腦電圖數(shù)據(jù)(醫(yī)療領(lǐng)域)。
分類數(shù)千個 DNA 堿基對的編碼/非編碼基因序列(基因信息學(xué))。
當(dāng)使用循環(huán)神經(jīng)網(wǎng)絡(luò)(如 LSTM)時,這些所謂的序列分類任務(wù)需要特殊處理。在這篇文章中,你將發(fā)現(xiàn) 6 種處理長序列的方法。
1. 原封不動
原封不動地訓(xùn)練/輸入,這或許會導(dǎo)致訓(xùn)練時間大大增長。另外,嘗試在很長的序列里進(jìn)行反向傳播可能會導(dǎo)致梯度消失,反過來會削弱模型的可靠性。在大型 LSTM 模型中,步長通常會被限制在 250-500 之間。
2. 截斷序列
處理非常長的序列時,最直觀的方式就是截斷它們。這可以通過在開始或結(jié)束輸入序列時選擇性地刪除一些時間步來完成。這種方式通過失去部分?jǐn)?shù)據(jù)的代價來讓序列縮短到可以控制的長度,而風(fēng)險也顯而易見:部分對于準(zhǔn)確預(yù)測有利的數(shù)據(jù)可能會在這個過程中丟失。
3. 總結(jié)序列
在某些領(lǐng)域中,我們可以嘗試總結(jié)輸入序列的內(nèi)容。例如,在輸入序列為文字的時候,我們可以刪除所有低于指定字頻的文字。我們也可以僅保留整個訓(xùn)練數(shù)據(jù)集中超過某個指定值的文字??偨Y(jié)可以使得系統(tǒng)專注于相關(guān)性最高的問題,同時縮短了輸入序列的長度。
4. 隨機(jī)取樣
相對更不系統(tǒng)的總結(jié)序列方式就是隨機(jī)取樣了。我們可以在序列中隨機(jī)選擇時間步長并刪除它們,從而將序列縮短至指定長度。我們也可以指定總長的選擇隨機(jī)連續(xù)子序列,從而兼顧重疊或非重疊內(nèi)容。
在缺乏系統(tǒng)縮短序列長度的方式時,這種方法可以奏效。這種方法也可以用于數(shù)據(jù)擴(kuò)充,創(chuàng)造很多可能不同的輸入序列。當(dāng)可用的數(shù)據(jù)有限時,這種方法可以提升模型的魯棒性。
5. 時間截斷的反向傳播
除基于整個序列更新模型的方法之外,我們還可以在最后的數(shù)個時間步中估計梯度。這種方法被稱為「時間截斷的反向傳播(TBPTT)」。它可以顯著加速循環(huán)神經(jīng)網(wǎng)絡(luò)(如 LSTM)長序列學(xué)習(xí)的過程。
這將允許所有輸入并執(zhí)行的序列向前傳遞,但僅有最后數(shù)十或數(shù)百時間步會被估計梯度,并用于權(quán)重更新。一些最新的 LSTM 應(yīng)用允許我們指定用于更新的時間步數(shù),分離出一部分輸入序列以供使用。例如:
Theano 中的「truncate_gradient」參數(shù):deeplearning
6. 使用編碼器-解碼器架構(gòu)
你可以使用自編碼器來讓長序列表示為新長度,然后解碼網(wǎng)絡(luò)將編碼表示解釋為所需輸出。這可以是讓無監(jiān)督自編碼器成為序列上的預(yù)處理傳遞者,或近期用于神經(jīng)語言翻譯的編碼器-解碼器 LSTM 網(wǎng)絡(luò)。
當(dāng)然,目前機(jī)器學(xué)習(xí)系統(tǒng)從超長序列中學(xué)習(xí)或許仍然非常困難,但通過復(fù)雜的架構(gòu)和以上一種或幾種方法的結(jié)合,我們是可以找到辦法解決這些問題的。
其他瘋狂的想法
這里還有一些未被充分驗(yàn)證過的想法可供參考。
將輸入序列拆分為多個固定長度的子序列,并構(gòu)建一種模型,將每個子序列作為單獨(dú)的特征(例如并行輸入序列)進(jìn)行訓(xùn)練。
雙向 LSTM,其中每個 LSTM 單元對的一部分處理輸入序列的一半,在輸出至層外時組合。這種方法可以將序列分為兩塊或多塊處理。
我們還可以探索序列感知編碼方法、投影法甚至哈希算法來將時間步的數(shù)量減少到指定長度。
推薦閱讀:
特別推薦
- AMTS 2025展位預(yù)訂正式開啟——體驗(yàn)科技驅(qū)動的未來汽車世界,共迎AMTS 20周年!
- 貿(mào)澤電子攜手安森美和Würth Elektronik推出新一代太陽能和儲能解決方案
- 功率器件熱設(shè)計基礎(chǔ)(六)——瞬態(tài)熱測量
- 貿(mào)澤開售Nordic Semiconductor nRF9151-DK開發(fā)套件
- TDK推出用于可穿戴設(shè)備的薄膜功率電感器
- 日清紡微電子GNSS兩款新的射頻低噪聲放大器 (LNA) 進(jìn)入量產(chǎn)
- 中微半導(dǎo)推出高性價比觸控 MCU-CMS79FT72xB系列
技術(shù)文章更多>>
- 意法半導(dǎo)體推出首款超低功耗生物傳感器,成為眾多新型應(yīng)用的核心所在
- 是否存在有關(guān) PCB 走線電感的經(jīng)驗(yàn)法則?
- 智能電池傳感器的兩大關(guān)鍵部件: 車規(guī)級分流器以及匹配的評估板
- 功率器件熱設(shè)計基礎(chǔ)(八)——利用瞬態(tài)熱阻計算二極管浪涌電流
- AHTE 2025展位預(yù)訂正式開啟——促進(jìn)新技術(shù)新理念應(yīng)用,共探多行業(yè)柔性解決方案
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
生產(chǎn)測試
聲表諧振器
聲傳感器
濕度傳感器
石英機(jī)械表
石英石危害
時間繼電器
時鐘IC
世強(qiáng)電訊
示波器
視頻IC
視頻監(jiān)控
收發(fā)器
手機(jī)開發(fā)
受話器
數(shù)字家庭
數(shù)字家庭
數(shù)字鎖相環(huán)
雙向可控硅
水泥電阻
絲印設(shè)備
伺服電機(jī)
速度傳感器
鎖相環(huán)
胎壓監(jiān)測
太陽能
太陽能電池
泰科源
鉭電容
碳膜電位器