近年來,“基于神經(jīng)網(wǎng)絡(luò)的自然語言識別”相關(guān)的研究取得了飛速進(jìn)展,特別是在學(xué)習(xí)語義的文本表示方面,這些進(jìn)展有助于催生一系列真正新奇的產(chǎn)品,例如智能撰寫(Gmail 的輔助郵件創(chuàng)作)和Talk to Books(訪問文末的鏈接,試著與書籍對話)。還有助于提高訓(xùn)練數(shù)據(jù)量有限的各種自然語言任務(wù)的性能,例如,通過僅僅 100 個標(biāo)記示例構(gòu)建強(qiáng)大的文本分類器。
下面我們將討論兩篇關(guān)于 Google 語義表示相關(guān)研究最新進(jìn)展的論文,以及可在 TensorFlow Hub 上下載的兩個新模型,我們希望開發(fā)者使用這些模型來構(gòu)建令人興奮的新應(yīng)用。
TensorFlow Hub是一個管理、分發(fā)和檢索用于 TensorFlow 的可重用代碼(模型)的管理工具。
語義文本相似度
在“Learning Semantic Textual Similarity from Conversations”中,我們引入了一種新的方法來學(xué)習(xí)語義文本相似度的語句形式。可以直觀理解為,如果句子的答復(fù)具有相似的分布,那么它們在語義上是相似的。例如,“你多大了?” (How old are you?) 和“你幾歲了?” (What is your age?) 都是關(guān)于年齡的問題,可以通過類似的答復(fù)來回答,例如“我 20 歲” (I am 20 years old)。相比之下,雖然“你好嗎?” (How are you?) 和“你多大?” (How old are you?) 包含的英文單詞幾乎相同,但它們的含義卻大相徑庭,因而答復(fù)也不同。
如果句子可以通過相同的答復(fù)來回答,那么它們在語義上是相似的。否則,它們在語義上是不同的。
在這項研究中,我們的目標(biāo)是通過答復(fù)分類任務(wù)學(xué)習(xí)語義相似度:給定一個對話輸入,我們希望從一批隨機(jī)選擇的答復(fù)中選出正確的答復(fù)。但是,最終目標(biāo)是學(xué)習(xí)一個可以返回表示各種自然語言關(guān)系(包括相似度和相關(guān)性)編碼的模型。通過添加另一個預(yù)測任務(wù)(在本例中為SNLI 蘊含數(shù)據(jù)集),并通過共享編碼層強(qiáng)制執(zhí)行,我們在相似度度量方面獲得了更好的性能,例如STSBenchmark(句子相似度基準(zhǔn))和CQA 任務(wù) B(問題/問題相似度任務(wù))。這是因為邏輯蘊含與簡單的等價有很大不同,并且更有助于學(xué)習(xí)復(fù)雜的語義表示。
對于給定的輸入,可將分類視為潛在候選項排名問題。
Universal Sentence Encoder
“Universal Sentence Encoder”一文中引入了一個模型,此模型通過增加更多的任務(wù)對上述多任務(wù)訓(xùn)練進(jìn)行了擴(kuò)展,我們使用類似于skip-thought的模型 (論文鏈接在文末)(可以在給定的文本范圍內(nèi)預(yù)測句子)來訓(xùn)練它們。但是,盡管原始 skip-thought 模型中采用的是編碼器-解碼器架構(gòu),我們并未照搬使用,而是通過共享編碼器的方式使用了只有編碼器的架構(gòu)來驅(qū)動預(yù)測任務(wù)。通過這種方式可以大大縮短訓(xùn)練時間,同時保持各種傳輸任務(wù)的性能,包括情感和語義相似度分類。目的是提供一種單一編碼器來支持盡可能廣泛的應(yīng)用,包括釋義檢測、相關(guān)性、聚類和自定義文本分類。
基于 TensorFlow Hub Universal Sentence Encoder 的輸出進(jìn)行的語義相似度成對比較。
正如我們的論文所述,Universal Sentence Encoder 模型的一個版本使用了深度平均網(wǎng)絡(luò)(DAN) 編碼器,而另一個版本則使用了更復(fù)雜的自助網(wǎng)絡(luò)架構(gòu)- Transformer。
"Universal Sentence Encoder"中所述的多任務(wù)訓(xùn)練。各種任務(wù)和任務(wù)結(jié)構(gòu)通過共享編碼器層/參數(shù)(灰色框)連接。
對于更復(fù)雜的架構(gòu)而言,與相對簡單的 DAN 模型相比,此模型在各種情感和相似度分類任務(wù)上的表現(xiàn)更加出色,而短句子方面的速度只是稍微慢一些。然而,隨著句子長度的增加,使用 Transformer 的模型的計算時間顯著增加,而同等條件下,DAN 模型的計算時間幾乎保持不變。
新模型
除了上述 Universal Sentence Encoder 模型外,我們還將在 TensorFlow Hub 上分享兩個新模型:Universal Sentence Encoder - Large和Universal Sentence Encoder - Lite。這些都是預(yù)訓(xùn)練的 Tensorflow 模型,可返回可變長度文本輸入的語義編碼。這些編碼可用于語義相似度度量、相關(guān)性、分類或自然語言文本的聚類。
Large 模型使用 Transformer 編碼器進(jìn)行訓(xùn)練,我們的第二篇論文進(jìn)行了介紹。此模型適用于需要高精度語義表示以及要求以速度和大小為代價獲得最佳模型性能的場景。
Lite 模型基于 Sentence Piece 詞匯而非單詞進(jìn)行訓(xùn)練,以顯著減少詞匯量,而詞匯量則顯著影響模型大小。此模型適用于內(nèi)存和 CPU 等資源有限的場景,例如基于設(shè)備端或基于瀏覽器的實現(xiàn)。
我們很高興與社區(qū)分享本研究成果和這些模型。我們相信這里所展示的成果只是一個開始,并且還有許多重要的研究問題亟待解決。例如,將技術(shù)擴(kuò)展到更多語言(上述模型目前僅支持英語)。我們也希望進(jìn)一步開發(fā)這項技術(shù),以便能夠理解段落甚至文檔級別的文本。如果能夠完成這些任務(wù),或許我們能制作出一款真正意義上的“通用”編碼器。
-
編碼器
+關(guān)注
關(guān)注
45文章
3747瀏覽量
136494 -
Google
+關(guān)注
關(guān)注
5文章
1781瀏覽量
58488 -
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4797瀏覽量
102220
原文標(biāo)題:語義文本相似度研究進(jìn)展
文章出處:【微信號:tensorflowers,微信公眾號:Tensorflowers】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論