AutoML Translation 新手指南

相較於預設的 Google 神經機器翻譯 (NMT) 模型,AutoML Translation 可讓您建構專為特定領域內容量身打造的自訂模型 (無須編寫程式碼)。

想像一下,假設您正在執行財務報表服務,這服務有機會擴展至新國家,而這些市場需要您即時翻譯這些有時效性的財務文件。與其聘請雙語財務人員或與專業翻譯人員簽約 (這兩者都需要高昂的費用,因為他們具備領域專業知識,且您需要快速完成翻譯),不如使用自訂模型,以可擴充的方式自動執行翻譯工作。

翻譯

歡迎試用

如果您未曾使用過 Google Cloud,歡迎建立帳戶,親自體驗實際使用 Cloud Translation 的成效。新客戶可以獲得價值 $300 美元的免費抵免額,可用於執行、測試及部署工作負載。

免費試用 Cloud Translation

為何機器學習 (ML) 是適合解決這個問題的工具?

傳統程式設計要求程式設計人員為電腦指定逐步操作說明以供遵循。 不過這種方法在面對翻譯時,很快就行不通了。自然語言十分複雜,翻譯自然語言也是如此。機器翻譯幾乎完全採用統計方法,以大量平行語料庫取代語言專家手動微調的專用規則集。

您需要一個系統,不僅能廣泛適用於各種翻譯情境,還能專注於您感興趣的語言組合,以及特定用途和工作專屬的語言領域。如果一連串特定規則的擴充速度呈指數成長,您就需要能從範例中學習的系統。幸好,機器學習系統非常適合用於解決這類問題。

我應該使用預設 NMT 模型還是自訂模型?

神經機器翻譯 (NMT) 模型涵蓋大量語言組合,且擅長處理一般用途的文字。自訂模型真正擅長的是處理一般翻譯工作和特定專業詞彙之間的「最後一哩路」。AutoML Translation 會先使用一般 NMT 模型,然後根據訓練資料調整模型,針對您重視的特定領域內容提供正確翻譯。

機器學習的流程為何?

機器學習是指使用資料訓練演算法,從而達到理想的結果。演算法及訓練方法的具體細節因問題領域而異。機器學習有許多不同的子類別,這些子類別解決的問題各不相同,且運作時的限制也不同。AutoML Translation 可讓您執行監督式學習,也就是訓練電腦從翻譯的區段配對中辨識模式。透過監督式學習,我們可以訓練自訂模型,翻譯您感興趣的特定領域內容。

資料準備

如要訓練自訂模型,請提供原文和譯文語言中相符的區段組合,也就是在原文和譯文語言中意義相同的區段組合。區隔配對的意義越接近,模型效果就越好。

評估用途

統整資料集時,請務必從用途開始。您可以先思考以下問題:

  • 您想達成什麼成果?
  • 如要達成這個目標,需要翻譯哪些類型的區隔? NMT 模型是否能直接執行這項工作?
  • 人類是否能以您滿意的方式翻譯這些片段?如果翻譯工作本身就模稜兩可,即使精通兩種語言的人也難以勝任,您可能會發現 NMT 模型和自訂模型的效能相近。
  • 哪些類型的範例最能反映系統需要翻譯的資料類型和範圍?

Google 機器學習產品的核心原則是以人為本的機器學習,這種方法強調負責任的 AI 做法,包括公平性。機器學習公平性的目標是瞭解並防止演算法系統或演算法輔助決策中,出現與種族、收入、性傾向、宗教、性別,以及其他與歧視和邊緣化相關特徵有關的不公正或偏見待遇。如需詳細資訊,請參閱我們的指南,以及下方的準則中註明「注意公平性」 的部分。逐一參閱說明統整資料集準則時,建議您根據自己的用途思考機器語言的公平性。

取得資料

確認所需資料後,您需要設法找到資料的來源。您可以先考慮貴機構收集的所有資料,或許您會發現,您早就在收集需要用來訓練模型的資料。如果沒有所需資料,可以手動取得或外包給第三方供應商。

根據問題領域提供適當資料

您需要適用於特定語言領域的模型,因此必須訓練自訂的翻譯模型。請盡可能確保您的區段組合涵蓋了所屬產業或重點領域的詞彙、用法和特殊文法。找出包含常見用法的文件,這些用法與您想完成的翻譯工作相關,並盡可能讓平行片語的意義相近。當然,有時語言在詞彙或語法方面不一定能完美對應,但請盡可能擷取您預期在實際使用時會遇到的完整語意多樣性。您是以一般用途翻譯模型為基礎進行建構,因此範例是最後一個特殊步驟,可確保自訂模型適用於特定用途,請務必提供相關且具代表性的範例,反映您預期看到的用法。

廣納語言空間的各種變化版本

您可能會認為,人們撰寫特定領域內容的方式相當一致,因此只要少數譯者翻譯少量文字樣本,就足以訓練出適用於其他撰寫該領域內容者的模型。但我們都是獨立個體,每個人寫出來的文字都帶有個人風格。如果訓練資料集包含多位作者和譯者提供的區隔配對,模型就越有可能適用於翻譯多元機構的內容。此外,請考量區隔長度和結構的多樣性;如果資料集中的所有區隔大小相同或文法結構相似,Cloud Translation 就無法取得足夠資訊來建構優質模型,捕捉所有可能性。

人機迴圈

如果可行,請務必由精通兩種語言的人員驗證區段配對是否正確,以及譯文是否準確易懂。如果訓練資料試算表的資料列對齊錯誤,即使只是簡單的失誤,也可能導致翻譯結果毫無意義。提供高品質資料是您能為 AutoML 翻譯做的最重要的事情,這樣才能取得適用於貴商家的模型。

清理雜亂的資料

預先處理資料時很容易出錯,而某些錯誤可能會讓自訂模型感到困惑。請特別留意下列可修正的資料問題:

  • 移除重複的來源片段,尤其是目標翻譯不同的來源片段。AutoML Translation 只會使用第一個範例,並在匯入時捨棄所有其他配對。移除重複項目後,AutoML Translation 就會使用您偏好的翻譯。
  • 將來源區隔對應至正確的目標區隔。
  • 將區隔與指定語言相符,例如在中文資料集中只加入中文區隔。
  • 如果目標區隔包含多種語言,請確認未翻譯的字詞是刻意保留,例如產品或機構名稱。如果目標區隔誤用未翻譯的字詞,訓練資料就會出現雜訊,導致模型品質降低。
  • 修正有錯字或文法錯誤的區段,以免模型學到這些錯誤。
  • 移除無法翻譯的內容,例如預留位置標記和 HTML 標記。 如果內容無法翻譯,可能會導致標點符號錯誤。
  • 請勿加入將一般實體替換為特定名詞的譯文。 舉例來說,您可能有一個範例,將「總統」變更為特定總統的姓名,例如「甘迺迪」或「約翰甘迺迪」。模型可能會學到將所有「總統」例項改為「甘迺迪」。請移除這些翻譯內容,或將特定名詞改為通用名詞。
  • 移除訓練集和測試集中重複的區隔。(進一步瞭解訓練和測試集)
  • 將多個區隔分成不同的區隔配對。如果資料集中有許多項目包含超過 50 符記 (字詞),會訓練出品質低落的模型。請盡可能將每個項目分割為單一句子。
  • 使用一致的大小寫。大小寫會影響模型的學習方式,例如區分標題和內文。
  • 從 TSV 檔案匯入資料時,請移除 TMX 標記。在某些情況下,您可能會將現有的翻譯記憶庫匯出為 TSV 檔案,其中可能包含 TMX 標記。不過,只有從 TMX 檔案匯入時,AutoML Translation 才會清除翻譯單元標記 (不適用於 TSV 檔案)。

AutoML Translation 如何預先處理資料

AutoML Translation 會在下列情況停止剖析您的資料輸入檔案:

  • 有無效的格式
  • 有不合理過長的區隔組合 (10 MB)
  • 檔案使用非 UTF-8 的編碼

AutoML Translation 會忽略無法偵測問題的錯誤,例如:

  • TMX 檔案中的 <tu> 元素沒有來源語言或目標語言。
  • 其中一個輸入區隔組合為空白。

如果是自動分割資料,AutoML Translation 會在以下情況執行其他處理:

  • 上傳資料集後,刪除來源區隔相同的區隔組合。
  • 在訓練之前,將您的資料以 8:1:1 的比例隨機分成三組 (訓練:驗證:測試)。

想想 AutoML Translation 如何運用資料集建立自訂模型

您的資料集包含訓練集、驗證集和測試集。如果您未指定分割方式 (請參閱「準備訓練資料」),且資料集的區段組合不到 100,000 個,AutoML Translation 就會自動將 80% 的內容文件用於訓練、10% 用於驗證,最後的 10% 用於測試。如果資料集大於 100, 000 個語句組合,您就必須自行分割資料。

訓練集

絕大多數的資料都應該在訓練集中。這是模型在訓練期間會「看到」的資料:訓練集是用於學習模型的參數,也就是類神經網路的各個節點之間的連結權重。

驗證集

驗證集 (有時也稱為「開發」集) 也會在訓練過程中派上用場。在模型學習期間,架構會使用訓練集訓練一系列候選模型,然後根據模型在驗證集上的效能,選出最佳模型。這項功能會根據模型在驗證集上的效能,調整模型的超參數,也就是指定模型結構的變數。如果您使用訓練集調整超參數,模型最終會過度著重於訓練資料。使用新穎的資料集微調模型結構,代表模型能更妥善地泛化。

測試集

測試集完全不會參與訓練程序。模型完全訓練完畢後,我們會使用測試集做為模型的全新挑戰。模型在測試集上的表現,可讓您大致瞭解模型在實際資料上的表現。

手動分割

AutoML Translation 可以為您將資料拆分為訓練、驗證和測試集,您也可以自行拆分,以便進一步控管程序、偏好不同的百分比拆分方式,或是確定要將特定範例納入模型訓練生命週期的特定部分。

 

準備您要匯入的資料

決定好要手動或自動進行資料分組後,可以透過兩種方式新增資料:

  • 您可以用定位點分隔值 (TSV) 檔案匯入資料,其中包含來源和目標片段,一個片段組合就是一行。
  • 你可以用 TMX 檔案匯入資料,這是提供區段組合給自動翻譯模型工具的標準格式 (深入瞭解支援的 TMX 格式)。如果 TMX 檔案包含無效的 XML 標記,AutoML 會忽略這些標記。如果檔案不符合正確的 XML 與 TMX 格式 (例如遺失結束標記或 <tmx> 元素),則 AutoML 不會處理該檔案。如果略過超過 1024 個無效 <tu> 元素,Cloud Translation 也會結束處理作業並傳回錯誤。

評估

模型訓練完畢後,會顯示一份模型效能匯總資料。 按一下「Train」分頁標籤即可瀏覽詳細分析。

開始評估模型之前該注意哪些事項?

為模型除錯的重點在於針對資料除錯,而非針對模型。當您在評估將模型推送至實際工作環境前後的效能時,如果模型開始出現異常行為,請回頭檢查資料,看看資料是否有改進之處。

BLEU 分數

BLEU 分數是評估機器翻譯系統品質的標準方式。AutoML Translation 會使用您提供的測試資料計算 BLEU 分數,做為主要評估指標。(進一步瞭解 BLEU 分數)。

Cloud Translation API 採用的 Google NMT 模型是針對一般用途所設計。如果您需要的是自身領域的專業翻譯,這可能不是最佳解決方案。就與您訓練集相關的領域而言,經過訓練的自訂模型通常會比 NMT 模型表現更好。

利用自己的資料集訓練自訂模型之後,自訂模型和 Google NMT 模型的 BLEU 分數會顯示在「Train」(訓練) 分頁中。「Train」(訓練) 分頁中也有提供自訂模型 BLEU 分數的表現提升程度。BLEU 分數越高,表示模型對類似於訓練資料的區段翻譯得越好。如果 BLEU 分數落在 30-40 的範圍內,就可以將模型視為足以提供良好的翻譯。

請注意,我們不建議使用 BLEU 分數比較不同語料庫和語言。舉例來說,英文到德文的 BLEU 分數 50,與日文到英文的 BLEU 分數 50 無法比較。許多翻譯專家已改用以模型為基礎的指標方法,這類方法與人工評估的相關性較高,且能更精細地識別錯誤情境。

AutoML Translation 僅支援 BLEU 分數。如要使用模型式指標評估翻譯模型,請參閱 Vertex AI 中的 Gen AI Evaluation Service

測試模型

即使 BLEU 分數看起來還不錯,我們仍建議您檢查模型,以確保模型的效能符合您的期望。如果訓練和測試資料來自同一組錯誤樣本,即使翻譯內容毫無意義,分數也可能很高。在「預測」分頁中新增一些範例做為輸入內容,然後比較自訂模型與 Google NMT 基礎模型的結果。您可能會注意到,模型的預測結果與基礎模型的預測結果相同,尤其是針對短句,或是在訓練集的規模較小的時候。這種結果並不令人意外,畢竟基礎模型已經可以應用至各種用途。請嘗試較長或較複雜的片段。不過,如果所有區隔都和基礎模型產出的結果相同,可能表示資料出現問題。

如果擔心模型會犯下特定錯誤 (例如語言組合中容易造成混淆的功能,導致人類譯者經常出錯,或是可能造成金錢或聲譽損失的翻譯錯誤),請確保測試集或程序涵蓋該情況,讓您安心在日常工作中使用模型。

後續步驟

  • 如要建立自己的資料集和自訂模型,請參閱「準備訓練資料」,瞭解如何準備資料。