我嘗試創建一個特定於領域的神經機器翻譯引擎:專注於數據收集和性能驗證(第 1 部分)

起先
自 2015 年以來,隨著 AI 行業技術神經網路的發展,出現了一種稱為神經機器翻譯 (NMT) 的新型機器自動翻譯。
NMT 只存在了幾年,但它仍然被稱為 Rule Base 機器翻譯。 RBMT) 和統計機器翻譯。 與 SMT 相比,它可以以更高的準確性進行翻譯,因此它一下子成為機器翻譯的主流。
現在,繼續討論特定領域的翻譯,人們強烈認為特定領域的翻譯應該留給人類而不是機器。
這樣做的原因是:
1. 專業文檔翻譯難度高,與人工翻譯相比質量差異大。
2. 術語的輸出翻譯每次都不同,或者輸出不適合該領域。
等等。
然而,在現實中,當綜合考慮工作量、成本和品質時,手工特定領域的翻譯存在各種限制。
另一方面,客戶的期望越來越高,即如果根據應用程式提供的翻譯滿足一定水平,機器翻譯是可以接受的。
現在 NMT 正在蓬勃發展,是否有可能創建能夠滿足這些期望的特定領域 NMT?
另外,你是如何製造的,它的表現如何?
現在讓我們來檢查一下。
引擎創建的第一個因素:數據
毋庸置疑,創建特定於現場的 NMT 引擎需要數據。 數據本身必須是雙語的,並且特定於領域。
雙語數據是句子及其雙語句子對齊和對應的數據。 例如,日語及其中文翻譯是相連的。
換句話說,欄位識別意味著運動數據用於製作運動場的引擎。 這樣做的原因是,如果您使用通用雙語數據,它可能與特定欄位中的數據不匹配,而其他欄位中的數據可能會產生負面影響。
由於 NMT 的機制,需要比傳統 SMT 更多的雙語數據。
因此,保護大量特定於領域的雙語數據是需要克服的第一個問題。
如何收集特定於域的雙語數據
然而,在實踐中,收集雙語數據並不容易。 此外,添加主題標識的名稱使收集數據變得更加困難。
那麼,您如何收集「高容量」、「特定領域」、「雙語」數據呢?
有三種可能的方法可以做到這一點
1. 提取雙語數據
(1) 如果沒有句子級雙語數據,則為兩種語言分配一定量的數據,例如在文件級別。
(2) 從(1)中的文件級數據中,確定句子級對應關係並提取 “biingual” 句子對。
2. 欄位相似數據的提取
(1) 如果本身存在雙語數據,但多個字段的數據混雜不區分,首先從數據中選擇少量字段特定的雙語數據。
(2) 使用句子相似度計算來搜索與所選欄位特定數據相似的數據。
3. 語言轉換
(1) 確保單語種數據安全。
(2) 將其轉換為其他語言。
(3) 將其視為雙語數據。
到目前為止,我們已經介紹了三種收集雙語數據的方法,但這次我們將介紹第一種方法,“1. 使用「雙語數據提取」,我實際上收集了特定於 IT 領域的日日雙語數據。
通常,有許多網站包含支援每頁多種語言的技術 IT 文件。
因此,可以從此類網站獲得大量的中日雙語數據。
獲得的數據僅在頁面檔級別,但我們將創建一個對齊工具並將白天數據處理到句子級別。
這裡的 「對齊」 是指自動關聯句子,該方法將在另一個場合介紹。
作為這個過程的結果,我們最終能夠收集大約 600,000 對句子的中日雙語數據。
儘管與使用最先進的通用 NMT 的數據量相比,數據量仍然很小,但足以對 NMT 引擎進行原型設計。
在下一篇文章中,我將介紹使用此處收集的中日雙語數據對特定於該領域的中日和中日NMT引擎進行實際原型設計的過程。