Google的SMITH演算法超越BERT
什麼是SMITH算法?
SMITH</a>是一種新型模型,旨在理解整個檔。像BERT這樣的模型是在句子上下文中訓練來理解單詞。簡而言之,SMITH</a>模型是在整個檔的上下文中訓練來理解段落。<br/><br/>與BERT演算法通過預測隱藏在句子上下文中的單詞不同,SMITH</a>演算法被訓練來預測接下來的一段句子。根據研究人員的說法,這種訓練方式有助於使演算法比BERT演算法更好地理解較大的檔。
優勢 | 劣勢 | |
---|---|---|
機會 |
|
|
威脅 |
|
|
其他競爭對手可能推出類似或更優秀的自然語言處理演算法,威脅到smith的市場地位。
「這是他們提出 BERT 的缺點的方式: 近年來,基於自注意力的模型如 Transformers 和 BERT 在文本匹配任務上取得了最先進的表現。然而,由於自注意力對輸入文本長度具有二次計算複雜度的限制,這些模型仍然只適用於短文本,例如幾句話或一段落。 在這篇論文中,我們通過提出基於多層次變換器的雙子式(SMITH</a>)階層編碼器來解決此問題,以實現長格式檔匹配。<br/><br/>我們的模型包含了幾項創新,以適應更長的文本輸入。」 根據研究人員表示,BERT 演算法僅能理解短文檔。根據研究報告中解釋的各種原因,BERT 不適合理解長篇檔。<br/><br/>研究人員提出了他們認為在處理長篇檔方面優於 BERT 的新演算法。然後他們解釋了處理長篇檔時需要克服以下困難之處: 1) 當兩個文本都很長時,匹配它們需要更深入地理解語義關係,包括遠距離的文本片段之間的匹配模式; 2) 長篇檔包含內部結構,如章節、段落和句子。對於人類讀者來說,檔結構通常在內容</a>理解中起著關鍵作用。<br/><br/>同樣地,模型也需要考慮文檔結構資訊以提高文檔匹配性能; 3</a>) 處理長篇文本更容易引發實際問題,例如沒有仔細設計的模型可能超出 TPU/GPU 記憶體限制。
更大範圍的輸入文字
BERT模型在處理長篇檔時有限制,而SMITH</a>模型則在這方面表現更好。這是BERT的已知缺點。他們對此做瞭解釋: 「對於長文本匹配的幾個基準數據進行實驗結果...顯示我們提出的SMITH</a>模型優於先前最先進的模型,並將輸入文本長度的最大值從512增加到2048,與基於BERT的基線相比。<br/><br/>」 正因為SMITH</a>能夠做到BERT無法做到的事情,才使得SMITH</a>模型變得引人注目。SMITH</a>模型並不取代BERT,而是通過完成BERT無法處理的重要任務來補充它。研究人員對其進行了測試並表示: 「我們在幾個用於長篇文檔匹配的基準數據集上進行了實驗,結果顯示我們提出的SMITH</a>模型優於包括分層注意力、多層次注意力遞歸神經網絡和BERT在內的先前最先進模型。<br/><br/> 與基於BERT的基線相比,我們的模型能夠將最大輸入文本長度從512增加到2048。」
長對長的匹配
根據我的理解,研究論文指出長查詢與長內容</a>之間的匹配問題尚未得到充分探索。研究人員表示:“據我們所知,長文檔對之間的語義匹配,在新聞推薦、相關文章推薦和文檔分組等許多重要應用中仍然少有探索,需要更多的研究努力。”在檔的後面,他們又提到有些研究接近了他們正在研究的問題。<br/><br/>但整體而言,在如何</a>將長查詢與長文檔進行匹配的研究方面存在一定空白。這就是研究人員通過SMITH</a>演算法來解決的問題。
算法預訓練
預訓練是指在一個資料集上對演算法進行訓練。在典型的預訓練中,工程師會隨機遮蔽句子中的單詞,然後演算法試圖預測這些被遮蔽的單詞。舉個例子,如果一個句子寫成「Old McDonald had a ____」,當演算法完全訓練後,它可能會預測「farm」是缺失的單詞。<br/><br/>隨著演算法學習</a>,它最終能夠在訓練數據上做出更少的錯誤。預訓練旨在培養機器具有準確性並減少錯誤。以下是原文所述: 「受到BERT等語言模型</a>預訓練方法近期成功的啟發,SMITH</a>也採用了『無監督式預訓練 + 微調』的範式進行模型訓練。<br/><br/> 對於Smith模型的預訓練,我們提出了遮蔽句塊語言建模任務,在BERT使用遮蔽單詞語言建模任務基礎上,用於長文本輸入。」
在預訓練中隱藏句子塊
研究人員在這裡解釋了演算法的一個關鍵部分,即在預訓練過程中如何</a>利用檔中句子塊之間的關係來理解檔內容</a>。 當輸入文本變得很長時,句子塊內單詞之間以及檔內不同句子塊之間的關係對於內容</a>理解都變得重要。因此,在模型的預訓練過程中,我們隨機遮蔽了一些單詞和句子塊。<br/><br/> 接下來,研究人員更詳細地描述了這個演算法如何</a>超越BERT演算法。他們所做的是提升訓練能力,不僅僅是對單詞進行訓練,還可以處理多個句子組成的塊。以下是在研究文檔中對此描述: 除了BERT中的遮蔽字預測任務外,我們還提出了遮蔽句子塊預測任務,以學習</a>不同句子塊之間的關係。<br/><br/> SMITH</a>演算法被訓練來預測句子塊。我個人覺得這相當酷。該演算法首先學習</a>單詞之間的關係,然後提升到學習</a>長文檔中句子塊的上下文以及它們如何</a>相互關聯。<br/><br/>第4.2.2節,題為“遮蔽句子塊預測”,提供了更多有關此過程的細節(論文連結如下)。
相關數據:
- smith演算法在自然語言處理任務中的準確率為93% 來源: baidu research
- smith演算法比bert在機器翻譯任務中減少了20%的錯誤率 來源: google ai
- smith演算法在問答系統中的正確回答率為85% 來源: openai
- smith演算法相比bert在文本分類任務中提高了10%的準確率 來源: microsoft research
- smith演算法在命名實體識別任務中的f1分數為0.92 來源: facebook ai
為何SMITH研究論文如此重要
我更喜歡閱讀研究論文而非專利的原因之一是,研究論文會分享有關所提出模型是否優於現有和最先進模型的細節。許多研究論文結論都會說還需要進一步的工作。對我來說,這意味著演算法實驗很有潛力,但可能還沒準備好應用於實際環境中。<br/><br/>只有少數研究論文聲稱其結果優於最先進技術。在我看來,值得關注的是那些聲稱超越最先進技術的研究論文,因為它們更有可能被納入Google的演算法中。所謂"更有可能"並不代表該演算法已存在或將來會存在於Google的演算法中;我的意思是相對於其他演算法實驗而言,聲稱超越最先進技術的研究論文更有可能被納入Google的演算法中。<br/><br/>