第一次製作 Google 客製機器翻譯引擎就上手

Camille Xu
翻譯柑仔店
Published in
5 min readAug 22, 2018

最近機器翻譯、AI、機器學習的議題還是非常火熱。機器翻譯方面,今年我比較關注的幾個大咖包括:

Google Cloud AI 底下的 Google Translate: https://cloud.google.com/translate/?hl=zh-tw

Amazon sagemaker 底下的 Amazon Translate:

https://aws.amazon.com/tw/translate/

IBM Watson 底下的 IBM Watson Translator:

https://www.ibm.com/watson/services/language-translator/

微軟的 Microsoft Translator:

https://www.microsoft.com/en-us/translator/business/

機器翻譯這個這事呢,經常內行人自嗨,外行人看熱鬧。許多人就算想了解,也是經常不得其門而入(真的不是人人都會寫程式啊!!!)

於是乎~為了推動AI普及化,要連不懂ML技術的人都能自己製作一個企業級AI應用。Google 今年(2018)夏天推出了AutoML Translate

雖說 AutoML Translate 可以自動辨識你的資料集的特徵,不用寫程式,任何人可以建立機器學習模型。但使用者對於程式語言、SDK、語言資料還是要有一定程度的瞭解,不然還是鴨子聽雷,有聽沒懂。

如果說你蠻了解程式語言、SDK和語言資料,那可以按照以下谷歌的教學一步步走。

不想在UI上做建立引擎前的準備,AutoML 目前可以用 python, java, nodejs來處理。以下環境準備拿 python 為例:

  1. 安裝python 2 & 3 及 pip
  2. 安裝 Google Cloud Client Libraries (安裝之後基本上就可以利用此 Libraries 進行專案設定)
  3. 安裝 Google cloud SDK 中的 gcloud (安裝之後才能方便在GCP上做各種設定、開發) [google 教學步驟4]

如果你一點概念都沒有,但又想玩機器翻譯引擎怎辦?那就看以下說明吧!

建立引擎前的準備:

  1. 建立Google 帳號
  2. 進入Google Cloud Platform (GCP) console 中的 manage source 建立一個新project [google 教學步驟1]
  3. 確認專案啟用計費功能 (綁信用卡,首次使用 GCP 的用戶 Google 頭一個月會送 USD 300 美元)[google 教學步驟2]
  4. 開啟 AutoML Translation APIs (這樣以後才方便在各種工具平台使用製作的機器翻譯引擎) [google 教學步驟3]
  5. 在專案下建立 service account (依照 Google Group上的回覆目前 AutoML 因安全因素尚未支援 API key 所以只先用 service account 的 key ) [google 教學步驟5]
  6. 設定 GOOGLE_APPLICATION_CREDENTIALS 變數 [google 教學步驟6]
  7. 將步驟5建立的 service account 新增到 GCP 中的 IAM 管理員,並設定角色為 AutoML 編輯者 [google 教學步驟7]
  8. 新增 “custom-vision@appspot.gserviceaccount.com” 到 GCP 中的 IAM 管理員,並設定角色為儲存空間=>storage管理員 (讓 service account 能存取 GCP 專案的資源) [google 教學步驟8]
  9. 設定 PROJECT_ID 及 REGION_NAME 變數(目前 AutoML 的 Region_NAME 需設定為 “us-central1”) [google 教學步驟10]
  10. 建立 Google Cloud Storage bucket。名稱:PROJECT_ID-vcm。預設儲存空間級別: regional。位置:us-central1。(這是之後要語言資料的地方,類似 GCP 內的 google drive)[google 教學步驟11]

建立 AutoML Translate 的機器翻譯引擎!!!

note: 利用程式語言的人可以按照 google 教學步驟繼續走。

  1. 透過 AutoML Translate UI 進入前面設定的 AutoML Translate 專案
  2. 建立 Dataset
  3. 上傳語言資料 (目前格式支援 .tmx 及 .tsv。語言資料整理跟準備請看google的說明。不過google專業畢竟不是在整理語料跟處理tmx,處理語料的注意事項可參考這篇文)
  4. 訓練&評估 ( AutoML 的訓練費用是 USD 76/小時,前兩小時免費,第三小時開始收費,之後引擎調用的話是 USD 80/100萬元。評估是採 BLEU ,簡單來說就是越高分越好)
  5. 評估結果ok就可以開始用啦~~

到這邊還是覺得很複雜?如果是這樣…那還是乖乖付錢用商用引擎吧 (又或者找我諮詢?這或許又是一個新的服務項目XD)

至於 AutoML Translate 的自製引擎有沒有比 Google Translate 或者其他家MT好,還有待時間檢驗。但可以預期的是以客製化/企業用機器翻譯引擎為主要服務業務的公司,現在應該蠻緊張的XD

--

--

Camille Xu
翻譯柑仔店

是個愛幻想的夢想家,但總被誤會是理智的實踐者