五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Seq2Seq從理論到實戰(zhàn)【理論篇】

2023-05-25 11:45 作者:深度之眼官方賬號  | 我要投稿

來源:投稿 作者:175
編輯:學(xué)姐

引言

本著“凡我不能創(chuàng)造的,我就不能理解”的思想,本系列文章會基于純Python以及NumPy從零創(chuàng)建自己的深度學(xué)習(xí)框架,該框架類似PyTorch能實現(xiàn)自動求導(dǎo)。

要深入理解深度學(xué)習(xí),從零開始創(chuàng)建的經(jīng)驗非常重要,從自己可以理解的角度出發(fā),盡量不使用外部完備的框架前提下,實現(xiàn)我們想要的模型。本系列文章的宗旨就是通過這樣的過程,讓大家切實掌握深度學(xué)習(xí)底層實現(xiàn),而不是僅做一個調(diào)包俠。

本文介紹seq2seq模型,由論文Sequence to Sequence Learning with Neural Networks提出,能解決輸入和輸出序列長度不等的任務(wù)——機器翻譯、自動摘要、自動問答等。

Seq2Seq

Seq2Seq網(wǎng)絡(luò)即sequence to sequence,序列到序列網(wǎng)絡(luò),輸入一個序列,輸出另一個序列。這個架構(gòu)重要之處在于,輸入序列和輸出序列的長度是可變的。

Seq2Seq使用的具體方法基本都屬于編碼器-解碼器模型。

其核心思想是通過編碼器(Encoder)將輸入序列編碼成一個定長的向量表示,也稱為具有上下文信息的表示,簡稱為上下文(context)。然后將上下文向量喂給解碼器(Decoder),來生成任務(wù)相關(guān)的輸出序列。

總結(jié)一下,編碼器-解碼器架構(gòu)包含三個組件:

  • 編碼器接收一個輸入序列,x_1%5En,然后生成對應(yīng)的上下文表示,h_1%5En。常用于編碼器的網(wǎng)絡(luò)可以為RNN、CNN或Transformer等。

  • 上下文向量c,由一個函數(shù)基于h_1%5En生成,傳遞輸入的核心信息到解碼器。

  • 解碼器接收c作為輸入,然后生成一個任意長度的隱藏狀態(tài)序列h_1%5Em,從中可以得到對應(yīng)的輸出y_1%5Em。和編碼器一樣,也有多種實現(xiàn)方案。

基于RNN實現(xiàn)編碼器-解碼器

[翻譯]Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation使用RNN作為編碼器和解碼器實現(xiàn)機器翻譯。

我們本小節(jié)來看如何通過RNN來實現(xiàn)編碼器-解碼器網(wǎng)絡(luò)。

實際上會有兩個不同的RNN網(wǎng)絡(luò),一個作為編碼器,將變長的輸入序列轉(zhuǎn)換為定長的編碼(上下文向量);另一個作為解碼器,通過該上下文向量連續(xù)生成輸出序列,基于輸入序列的編碼信息和輸出序列已經(jīng)生成的單詞來預(yù)測一下單詞。上圖演示了如何在機器翻譯中使用兩個RNN進行序列號序列學(xué)習(xí)。

這里有兩個特殊單詞<eos><bos>,分別表示序列結(jié)束和開始標志。

還有一種方式,如上圖,我們只需要在輸入末尾添加<EOS>,比如這里有輸入序列A B C <EOS>。我們將輸入序列傳入模型后,將其映射為序列W X Y Z <EOS>作為輸出。

回顧RNN語言模型計算序列y的概率p(y):

編碼器的目標是生成一個輸入的上下文表示,體現(xiàn)在編碼器最后的那個隱藏狀態(tài),h%5Ee_n,也用c來表示,代表上下文。

在時刻t,將前面的t-1個單詞輸入到語言模型,通過前向推理生成隱藏狀態(tài)序列,并且以最后一個單詞的隱藏狀態(tài)作為起點來生成下一個單詞。


但是,這種方法有一個弱點是,隨著輸出序列的生成,上下文向量c的影響將逐漸減弱。一種常用的解決方法是讓解碼過程的每個時刻都能看到上下文向量c:

參考

Dive Into Deep Learning

Speech and Language Processing

關(guān)注“學(xué)姐帶你玩AI”公眾號

回復(fù)“深度學(xué)習(xí)”免費領(lǐng)取必讀電子書+課件

學(xué)起來學(xué)起來!

Seq2Seq從理論到實戰(zhàn)【理論篇】的評論 (共 條)

分享到微博請遵守國家法律
古交市| 长子县| 永仁县| 天峻县| 安新县| 肇庆市| 印江| 延边| 囊谦县| 长垣县| 乌海市| 巍山| 织金县| 突泉县| 大同市| 益阳市| 乐陵市| 化德县| 济南市| 米林县| 贡觉县| 东平县| 无锡市| 盐城市| 明溪县| 金华市| 肥东县| 定远县| 庆安县| 阳谷县| 景东| 娱乐| 鹤峰县| 报价| 霍州市| 自治县| 泰兴市| 五原县| 合阳县| 甘泉县| 故城县|