GNMT-谷歌的神經(jīng)網(wǎng)絡(luò)翻譯系統(tǒng)

一、前言

2016年9月份,谷歌發(fā)布了基于神經(jīng)網(wǎng)絡(luò)的翻譯系統(tǒng)(GNMT),并宣稱GNMT在多個(gè)主要語言對(duì)的翻譯中將翻譯誤差降低了55%-85%以上寸宵,并將此翻譯系統(tǒng)的技術(shù)細(xì)節(jié)在論文(Google’s Neural Machine Translation System: Bridging the Gap
between Human and Machine Translation
)在展示,在閱讀之后收益匪淺元咙。

二梯影、概要

一般來說,NMT【神經(jīng)網(wǎng)絡(luò)翻譯系統(tǒng)】通常會(huì)含用兩個(gè)RNN【遞歸神經(jīng)網(wǎng)絡(luò)】庶香,一個(gè)用來接受輸入文本甲棍,另一個(gè)用來產(chǎn)生目標(biāo)語句,與此同時(shí)脉课,還會(huì)引入當(dāng)下流行的注意力機(jī)制【attention mechanism】使得系統(tǒng)處理長句子時(shí)更準(zhǔn)確高效。但谷歌認(rèn)為财异,通常這樣的神經(jīng)網(wǎng)絡(luò)系統(tǒng)有三個(gè)弱點(diǎn):

  • 訓(xùn)練速度很慢并且需要巨大的計(jì)算資源倘零,由于數(shù)量眾多的參數(shù),其翻譯速度也遠(yuǎn)低于傳統(tǒng)的基于短語的翻譯系統(tǒng)【PBMT】戳寸。
  • 對(duì)罕見詞的處理很無力呈驶,而直接復(fù)制原詞在很多情況下肯定不是一個(gè)好的解決方法。
  • 在處理長句子的時(shí)候會(huì)有漏翻的現(xiàn)象疫鹊。

而且GNMT致力于解決以上的三個(gè)問題袖瞻,在GNMT中,RNN使用的是8層(實(shí)際上Encoder是9層拆吆,輸入層是雙向LSTM聋迎。)含有殘差連接的神經(jīng)網(wǎng)絡(luò),殘差連接可以幫助某些信息枣耀,比如梯度霉晕、位置信息等的傳遞。同時(shí)捞奕,attention層與decoder的底層以及encoder的頂層相連接牺堰,如圖:

GNMT結(jié)構(gòu)圖
  • 為了解決翻譯速度問題,谷歌在翻譯過程中使用了低精度的算法(將模型中的部分參數(shù)限制為8bit)以及使用了TPU颅围。
  • 為了更好的處理低詞頻的詞伟葫,谷歌在輸入和輸出中使用了sub-word units也叫wordpieces,(比如把’higher‘拆分成‘high’和‘er’院促,分別進(jìn)行處理)
    *在beamsearch中筏养,谷歌加入了長度規(guī)范化和獎(jiǎng)勵(lì)懲罰(coverage penalty)使對(duì)翻譯過程中產(chǎn)生的長度不同的句子處理更高效并且減少模型的漏翻斧抱。

在進(jìn)行了這么多改進(jìn)之后,谷歌宣稱撼玄,在英-法夺姑,英-中,英-西等多個(gè)語對(duì)中掌猛,錯(cuò)誤率跟之前的PBMT系統(tǒng)相比降低了60%盏浙,并且接近人類的平均翻譯水平。
接下來就詳細(xì)的看一下神奇的GNMT模型的細(xì)節(jié)荔茬。

三废膘、模型結(jié)構(gòu)

如上圖所示,GNMT和通常的模型一樣慕蔚,擁有3個(gè)組成部分 -- 一個(gè)encoder丐黄,一個(gè)decoder,和一個(gè)attention network 孔飒。encoder將輸入語句變成一系列的向量灌闺,每個(gè)向量代表原語句的一個(gè)詞,decoder會(huì)使用這些向量以及其自身已經(jīng)生成的詞坏瞄,生成下一個(gè)詞桂对。encoder和decoder通過attention network連接,這使得decoder可以在產(chǎn)生目標(biāo)詞時(shí)關(guān)注原語句的不同部分鸠匀。
此外蕉斜,如我們所想,要使翻譯系統(tǒng)有一個(gè)好的準(zhǔn)確率缀棍,encoder和decoder的RNN網(wǎng)絡(luò)都要足夠深宅此,以獲取原句子和目標(biāo)語句中不容易被注意的細(xì)節(jié),在谷歌的實(shí)驗(yàn)中爬范,沒增加一層父腕,會(huì)使PPL降低約10%。
關(guān)于模型中的attention機(jī)制青瀑,采用了如下的公式來計(jì)算:

attention的公式

其實(shí)在此我有一個(gè)疑問侣诵,這里最后的ai是一個(gè)向量呢?還是一個(gè)標(biāo)量(一個(gè)數(shù)值)狱窘。從式中看似乎是一個(gè)標(biāo)量杜顺,但我在之前理解的是attention是一個(gè)跟輸入語句單詞數(shù)量等長的向量。

3.1殘差連接

如上面提到的蘸炸,多層堆疊的LSTM網(wǎng)絡(luò)通常會(huì)比層數(shù)少的網(wǎng)絡(luò)有更好的性能躬络,然而,簡單的錯(cuò)層堆疊會(huì)造成訓(xùn)練的緩慢以及容易受到剃度爆炸或梯度消失的影響搭儒,在實(shí)驗(yàn)中穷当,簡單堆疊在4層工作良好提茁,6層簡單堆疊性能還好的網(wǎng)絡(luò)很少見,8層的就更罕見了馁菜,為了解決這個(gè)問題茴扁,在模型中引入了殘差連接,如圖汪疮,

殘差連接示意圖

將第i層的輸入與第i層LSTM的隱狀態(tài)一起峭火,作為第i+1層LSTM的輸入,


沒有引入殘差連接的LSTM示意圖
引入殘差連接的LSTM示意圖

3.2Encoder的第一層雙向LSTM

一句話的譯文所需要的關(guān)鍵詞可能在出現(xiàn)在原文的任何位置智嚷,而且原文中的信息可能是從右往左的卖丸,也可能分散并且分離在原文的不同位置,因?yàn)闉榱双@得原文更多更全面的信息盏道,雙向RNN可能是個(gè)很好的選擇稍浆,在本文的模型結(jié)構(gòu)中,只在Encoder的第一層使用了雙向RNN猜嘱,其余的層仍然是單向RNN衅枫。


Bi-directions RNN示意圖

可以看到,粉色的LSTM從左往右的處理句子朗伶,綠色的LSTM從右往左弦撩,二者的輸出先是連接,然后再傳給下一層的LSTM腕让。

3.3模型的平行訓(xùn)練

這一部分主要是介紹模型在訓(xùn)練過程中一些加速的方法孤钦。
谷歌同時(shí)采用了數(shù)據(jù)平行和模型平行兩種方式以加速訓(xùn)練歧斟,數(shù)據(jù)平行很直接纯丸,就是把模型復(fù)制并部署n份,每份的參數(shù)是共享的静袖,每份訓(xùn)練時(shí)都以Batch的形式訓(xùn)練觉鼻,即同時(shí)訓(xùn)練batch-size句話。在谷歌實(shí)驗(yàn)中队橙,n通常是10坠陈,而batch-size通常是128,然后用Adam和SGD的方法來更新參數(shù)捐康。
除了數(shù)據(jù)平行仇矾,實(shí)驗(yàn)中還采用了模型平行,即解总,將每一層網(wǎng)絡(luò)部署在一個(gè)GPU上贮匕,如最上方的圖所示,這樣在Encoder的第一層雙向RNN計(jì)算完之后花枫,下一時(shí)間步不需要等本時(shí)間步完全運(yùn)行完就可以開始刻盐,并行計(jì)算加速了訓(xùn)練速度掏膏。
而之所以不在每一層都是用雙向RNN是因?yàn)椋绻@樣會(huì)大幅度降低訓(xùn)練速度敦锌,因?yàn)槠渲荒苁褂脙蓚€(gè)GPU馒疹,一個(gè)作前向信息處理,一個(gè)作后向的信息處理乙墙,降低平行計(jì)算的效率颖变。
在attention的部分,將encoder的輸出層與decoder的底層對(duì)齊(我的理解應(yīng)該是輸出的tensor緯度一致)來最大化平行計(jì)算的效率伶丐。(具體是什么原理我還沒理解太明白)悼做。

四、數(shù)據(jù)預(yù)處理

神經(jīng)網(wǎng)絡(luò)翻譯系統(tǒng)在運(yùn)行過程中通常有一個(gè)字?jǐn)?shù)有限的字典哗魂,而可能遇到的詞是無數(shù)的肛走,這就可能造成OOV(out-of-vocabulary)問題,由于這些未知詞通常是日期录别,人名朽色,地名等,所以一個(gè)簡單的方法就是直接復(fù)制這些詞组题,顯然在處理非人名等詞時(shí)著不是最好的解決方案葫男,在谷歌的模型中,采用更好的wordpiece model崔列,也叫sub-word units梢褐,比如在“Turing’s major is NLP .”一句經(jīng)過WPM模型處理之后應(yīng)該是"Turing ‘s major is NLP ." 另外為了直接復(fù)制人名等詞,使source language和target language共享wordpiece model赵讯,WPM在單詞的靈活性和準(zhǔn)確性上取得了一個(gè)很好的均衡盈咳,也在翻譯有更好的準(zhǔn)確率(BLEU)和更快的翻譯速度。

五边翼、訓(xùn)練標(biāo)準(zhǔn)

通常來說鱼响,在N對(duì)語句對(duì)中,訓(xùn)練的目標(biāo)是使下式最大化:


log probabilities of the groud-truth outputs given the corresponding inputs

但這里面有一個(gè)問題组底,翻譯中的BLEU值中不能反映對(duì)單句翻譯質(zhì)量好壞的獎(jiǎng)懲丈积,進(jìn)一步,因?yàn)槟P驮谟?xùn)練過程中從來沒有見過錯(cuò)誤的譯句债鸡,當(dāng)模型有一個(gè)較高的BLEU值時(shí)江滨,那些錯(cuò)誤的句子仍然會(huì)獲得較高的概率,所以上式不能明確的對(duì)翻譯中的錯(cuò)誤句子進(jìn)行懲罰厌均。(對(duì)原論文中此處不是完全理解唬滑,存疑。)
因此需要對(duì)模型有進(jìn)一步的refinement,但BLEU值是針對(duì)兩個(gè)語料庫進(jìn)行的評(píng)測(cè)標(biāo)準(zhǔn)间雀,在對(duì)單句的評(píng)測(cè)上效果并不理想悔详,所以谷歌提出了GLEU值,GLEU值的大體意思就是分別計(jì)算目標(biāo)語句和譯句的n-grams,(n = 1,2,3,4)數(shù)量惹挟,然后計(jì)算兩個(gè)集合的交集的大小與原集大小的比值茄螃,取較小值。
我用python實(shí)現(xiàn)了一下GLEU值的計(jì)算连锯,代碼如下:

def get_ngrams(s,maxn):
    ngrams = {}
    size = 0
    for n in range(1,maxn+1):
        for i in range(0,len(s)):
            for j in range(i+1,min(i+n+1,len(s)+1)):
                ngram = ''
                for word in s[i:j]:
                    ngram += word
                    ngram += ' '
                ngram = ngram.strip()
                if ngram not in ngrams:
                    ngrams[ngram] = 1
                    size += 1
    return size,ngrams
def get_gleu(orig,pred,n=4):
    orig_ = orig.split(' ')
    pred_ = pred.split(' ')
    n_orig,ngrams_orig = get_ngrams(orig_,n)
    n_pred,ngrams_pred = get_ngrams(pred_,n)
    count_match = 0
    for v in ngrams_orig:
        if v in ngrams_pred:
            count_match += 1
    return min(count_match/n_orig,count_match/n_pred)

所以归苍,refinement之后模型的評(píng)測(cè)標(biāo)準(zhǔn)變成了下式:

refinement maximum-likelihood

r(Y, Y ?(i))就是GLEU值的計(jì)算部分。GLEU克服了BLEU在單句評(píng)測(cè)上的缺點(diǎn)运怖,在本實(shí)驗(yàn)中拼弃,可以和BLEU值可以很好的共同工作。
為了進(jìn)一步使訓(xùn)練穩(wěn)定摇展,谷歌對(duì)訓(xùn)練標(biāo)準(zhǔn)作了一個(gè)線性的結(jié)合吻氧,也就是下式:
Mixed maximum-likelihood

? α在訓(xùn)練中去0.017.
在實(shí)際的訓(xùn)練過程中,先使用Oml的標(biāo)準(zhǔn)訓(xùn)練使模型收斂咏连,然后使用Omixd的標(biāo)準(zhǔn)進(jìn)一步提升模型的表現(xiàn)盯孙。

六、可量化的模型和翻譯過程中的量化

(坦白的說祟滴,我并不知道原文中Quantizable Model and Quantized Inference應(yīng)該怎么翻譯更好振惰。)
這一部分主要講的是,由于模型較深且計(jì)算量較大垄懂,在翻譯過程會(huì)產(chǎn)生一些問題骑晶,所以谷歌在不影響模型收斂和翻譯效果的前提下,采取了一系列的優(yōu)化措施草慧。
帶有殘差連接的LSTM網(wǎng)絡(luò)桶蛔,有兩個(gè)值是會(huì)不斷傳遞計(jì)算的,在時(shí)間方向上傳遞的cit和在深度方向上傳遞的xit冠蒋,在實(shí)驗(yàn)中過程我們發(fā)現(xiàn)這些值都是非常小的羽圃,為了減少錯(cuò)誤的累積乾胶,所以在翻譯的過程中抖剿,明確的這些值限制在[-δ,δ]之間识窿,因此原LSTM的公式調(diào)整如下:

6.1 modified equation

6.2 完整的LSTM計(jì)算邏輯

在翻譯的過程中斩郎,谷歌將6.1和6.2式中所有浮點(diǎn)數(shù)運(yùn)算替代為8位或16位定點(diǎn)整數(shù)運(yùn)算,其中的權(quán)重W像下式一樣改用8位整數(shù)表示:
權(quán)重W的調(diào)整

所有的cit和xit限制在[-δ喻频,δ]之間且改用16位整數(shù)表示缩宜。
在6.2中的矩陣乘法(比如W1xt)改用8位定點(diǎn)整數(shù)乘法,而其他的所有運(yùn)算,比如sigmoid,tanh锻煌,點(diǎn)乘妓布,加法等,改用16位整數(shù)運(yùn)算宋梧。
假設(shè)decoder RNN的輸出是yt匣沼,那在softmax層,概率向量pt改為這樣計(jì)算:
修改后的概率向量計(jì)算公式

logit vt'限制在[-γ,γ]之間且權(quán)重Ws和6.2式中的權(quán)重W同樣使用8位整數(shù)表示并在運(yùn)算過程中使用8位矩陣乘法捂龄。
但在softmax層和attention層不采取量化措施释涛。
值得一提的是,除了將cit和xit限制在[-δ倦沧,δ]和將logit vt'限制在[-γ,γ]唇撬,在訓(xùn)練過程中一直使用的是全精度的浮點(diǎn)數(shù)。其中γ取25.0展融,δ在訓(xùn)練剛開始取8.0然后逐漸變?yōu)?.0 窖认。(在翻譯時(shí),δ取1.0 告希。

Log perplexity vs. steps

紅線代表采用了量化措施的訓(xùn)練過程耀态,藍(lán)線代表普通的訓(xùn)練,可以看到將一些值限制在一定范圍內(nèi)作為額外的規(guī)劃化措施可以改善模型的質(zhì)量暂雹。

七首装、Decoder

在翻譯的過程中,使用了常規(guī)的beam search算法杭跪,但引入了兩個(gè)重要的優(yōu)化方案仙逻,即GNMT中的α和β值。

  • α值的作用是對(duì)譯句進(jìn)行長度規(guī)范化涧尿,因?yàn)檫x取一個(gè)句子的可能性是由劇中每個(gè)詞的概率取log后相加得到的系奉,這些個(gè)對(duì)數(shù)概率都是負(fù)值,因此某種程度上姑廉,長句會(huì)取得更小的對(duì)數(shù)概率缺亮,這顯然是不合理的,因此需要對(duì)譯句進(jìn)行長度規(guī)劃化桥言。
  • β值的作用是促使模型更好的翻譯全句萌踱,不漏翻。

關(guān)于α和β值適用的公式

其中s(Y,X)代表譯文最終獲得的分?jǐn)?shù)号阿,pij表示在翻譯第j個(gè)詞時(shí)其對(duì)應(yīng)第i個(gè)詞的attention值并鸵。
谷歌在文中還提到兩種優(yōu)化方法:
***Firstly, at each step, we only consider tokens that have local scores that are
not more than beamsize below the best token for this step. Secondly, after a normalized best score has
been found according to equation 14, we prune all hypotheses that are more than beamsize below the best
normalized score so far. ***
額,其實(shí)我沒看懂這跟常規(guī)的beam search算法有什么不同扔涧,望大神指點(diǎn)园担。届谈。。

在En-Fr語料庫上弯汰,不同α和β值對(duì)BLEU值的影響

當(dāng)α和β值取0時(shí)相當(dāng)于不做長度規(guī)劃化和覆蓋范圍懲罰艰山,算法退回到最原始的beam search算法,值得一提的是咏闪,得到上述BLEU的模型并沒有進(jìn)行只使用了ML進(jìn)行訓(xùn)練程剥,沒有使用RL優(yōu)化。因?yàn)镽L refinement已經(jīng)促使模型不漏翻汤踏,不過翻织鲸。

在En-Fr語料庫上先用ML優(yōu)化在用RL優(yōu)化的到的BLEU值與上圖的比較

在谷歌實(shí)驗(yàn)中,α=0.2和β=0.2溪胶,但在我們的實(shí)驗(yàn)中搂擦,在中英翻譯中,還是α=0.6~1和β=0.2~0.4會(huì)取得更好的效果

實(shí)驗(yàn)過程以及實(shí)驗(yàn)結(jié)果

實(shí)驗(yàn)結(jié)果對(duì)比

模型部分基本介紹完了,剩下的第八部分關(guān)于實(shí)驗(yàn)以及實(shí)驗(yàn)結(jié)果先貼張圖,會(huì)繼續(xù)不定時(shí)補(bǔ)充霞势,下一篇文章應(yīng)該會(huì)介紹一下Facebook發(fā)布并開源的宣稱比GNMT更好更快的FairSeq模型...


論文中提到但未使用的方法

另有一種方法處理OOV問題是將罕見詞標(biāo)記出來婿奔,比如柬批,假設(shè)Miki這個(gè)詞沒有出現(xiàn)在詞典中,經(jīng)過標(biāo)記后,變成<B>M<M>i<M>k<E>i,這樣在翻譯過程中棘劣,將罕見詞替換為特殊符號(hào)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末楞遏,一起剝皮案震驚了整個(gè)濱河市茬暇,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌寡喝,老刑警劉巖糙俗,帶你破解...
    沈念sama閱讀 221,406評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異预鬓,居然都是意外死亡巧骚,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,395評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門格二,熙熙樓的掌柜王于貴愁眉苦臉地迎上來劈彪,“玉大人,你說我怎么就攤上這事蟋定》垭” “怎么了草添?”我有些...
    開封第一講書人閱讀 167,815評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵驶兜,是天一觀的道長。 經(jīng)常有香客問我,道長抄淑,這世上最難降的妖魔是什么屠凶? 我笑而不...
    開封第一講書人閱讀 59,537評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮肆资,結(jié)果婚禮上矗愧,老公的妹妹穿的比我還像新娘。我一直安慰自己郑原,他們只是感情好唉韭,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,536評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著犯犁,像睡著了一般属愤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上酸役,一...
    開封第一講書人閱讀 52,184評(píng)論 1 308
  • 那天住诸,我揣著相機(jī)與錄音,去河邊找鬼涣澡。 笑死贱呐,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的入桂。 我是一名探鬼主播奄薇,決...
    沈念sama閱讀 40,776評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼抗愁!你這毒婦竟也來了惕艳?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,668評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤驹愚,失蹤者是張志新(化名)和其女友劉穎远搪,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體逢捺,經(jīng)...
    沈念sama閱讀 46,212評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡谁鳍,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,299評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了劫瞳。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片倘潜。...
    茶點(diǎn)故事閱讀 40,438評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖志于,靈堂內(nèi)的尸體忽然破棺而出涮因,到底是詐尸還是另有隱情,我是刑警寧澤伺绽,帶...
    沈念sama閱讀 36,128評(píng)論 5 349
  • 正文 年R本政府宣布养泡,位于F島的核電站嗜湃,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏澜掩。R本人自食惡果不足惜购披,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,807評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望肩榕。 院中可真熱鬧刚陡,春花似錦、人聲如沸株汉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,279評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽乔妈。三九已至哥童,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間褒翰,已是汗流浹背贮懈。 一陣腳步聲響...
    開封第一講書人閱讀 33,395評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留优训,地道東北人朵你。 一個(gè)月前我還...
    沈念sama閱讀 48,827評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像揣非,于是被迫代替她去往敵國和親抡医。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,446評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 近日早敬,谷歌官方在 Github開放了一份神經(jīng)機(jī)器翻譯教程忌傻,該教程從基本概念實(shí)現(xiàn)開始,首先搭建了一個(gè)簡單的NMT模型...
    MiracleJQ閱讀 6,405評(píng)論 1 11
  • 前面的文章主要從理論的角度介紹了自然語言人機(jī)對(duì)話系統(tǒng)所可能涉及到的多個(gè)領(lǐng)域的經(jīng)典模型和基礎(chǔ)知識(shí)搞监。這篇文章水孩,甚至之后...
    我偏笑_NSNirvana閱讀 13,928評(píng)論 2 64
  • 對(duì)比兩篇論文 : 其中一篇是A Neural Attention Model for Abstractive Se...
    MiracleJQ閱讀 3,543評(píng)論 0 1
  • 人的這一生中俘种,本來就會(huì)遇到很多的人,TA們展現(xiàn)這不同的形態(tài)绝淡,用著不同的面具宙刘,在你并沒察覺的時(shí)候,以一種全新的姿態(tài)出...
    MrLmomo閱讀 203評(píng)論 0 0
  • 2015牢酵,11悬包,17。小雨馍乙。 耳機(jī)里在循環(huán)《穿襯衫的人》整張EP布近。 張晏銘(老張)去了西外垫释。朋友圈被他談唱的視頻刷...
    我沒有生來勇敢閱讀 233評(píng)論 0 0