Seq2seq(Sequence to sequence)模型,是將序列(Sequence)映射到序列的神經網絡機器學習模型。這個模型最初設計用於改進機器翻譯技術,可容許機器通過此模型發現及學習將一種語言的語句(詞語序列)映射到另一種語言的對應語句上。[1]除此之外,Seq2Seq也能廣泛地應用到各種不同的技術上,如聊天機器人、Inbox by Gmail等,但需要有配對好的文本集才能訓練出對應的模型。[2]
歷史
在2019年, Facebook宣布其用於求解微分方程。 相比 Mathematica,MATLAB 和 Maple等商業解決方案,該算法能夠更快更精準的解決複雜方程。首先,方程被解析為樹形結構來避免書寫方式帶來的偏差。 之後應用一個LSTM神經網絡,基於標準模式識別來處理方程樹。[5]
在2020年,谷歌發布了Meena,一個在341GB數據集上訓練的26億參數的seq2seq聊天機器人。谷歌稱,該聊天機器人的模型容量比OpenAI的GPT-2多出1.7倍.[6]
技術
Seq2seq將輸入序列轉換為輸出序列。它通過利用循環神經網絡(遞歸神經網絡)或更常用的LSTM GRU網絡來避免梯度消失問題。當前項的內容總來源於前一步的輸出。Seq2seq主要由一個編碼器和一個解碼器組成。 編碼器將輸入轉換為一個隱藏狀態向量,其中包含輸入項的內容。 解碼器進行相反的過程,將向量轉換成輸出序列,並使用前一步的輸出作為下一步的輸入。[4]
優化包括:[4]
相關的軟件
採用類似的算法的軟件包括OpenNMT(Torch),Neural Monkey(TensorFlow)和NEMATUS(Theano)。[2]
參考
參考文獻
外部連結
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.