はじめに
IBM CloudのIBM Watson Language Translator(以下、WLT)を使用すると、テキストを他言語に翻訳できます。今回は、WLTの概要と学習方法についてご紹介します。
・検証日:2022年7月15日
・WLTバージョン:2018-05-01
IBM Watson Language Translatorの機能とプラン
WLTには「Lite」「Standard」「Advanced」「Premium」といった4つのプランがあり、プランによって利用できる機能が異なります。Premiumは問い合わせが必要なプランなので、それ以外の3つのプランについて表にまとめました。料金について詳しくはこちらをご覧ください。
参考:(カタログ)Language Translator
Lite | Standard | Advanced | |
詳細 |
|
|
|
WLTでは基本モデルとして標準で68言語の翻訳が可能になっています。その一部が下記の表です。その他の言語についてはこちらをご覧ください。
翻訳可能な言語 |
英語 日本語 中国語 韓国語 ドイツ語 フランス語 イタリア語 オランダ語 チェコ語 フィンランド語 デンマーク語 ギリシャ語 インドネシア語 ポーランド語 ポルトガル語 ルーマニア語 ロシア語 |
今回は、カスタムモデルについても紹介するため、Advancedプランを使用します。
基本モデルによる翻訳
まずは、基本モデルを使用して翻訳結果を確認します。今回はcurlコマンドを使用して下記の英語の文章を日本語に翻訳します。
Once upon a time, an old couple lived in a small village. 日本語:昔々あるところに、小さな村におじいさんとおばあさんが住んでいました。 One day, when the old woman was washing clothes in the river, a huge peach came from the river. 日本語:ある日、おばあさんが川で洗濯をしていると、川から大きな桃が流れてきました。 |
下記が、基本モデルでの翻訳結果になります。
|
各プロパティの説明はこちらです。
- translation:翻訳結果
- word_count:翻訳元の単語数
- character_count:翻訳元の文字数
モデルのカスタマイズ-パラレルコーパス
次に、自然な文章に近づけるためにパラレルコーパスを使用します。パラレルコーパスは基本モデルの学習用に追加翻訳を提供し、同じ意味の文章でも言葉の表現の仕方を変えることができます。学習では様々なフォーマットのファイルが使用可能ですが、今回はCSVファイル用いて以下の内容で学習させます。パラレルコーパスを学習させるには下記のように2つの言語間で最低5000ペアが必要になります。
en | ja |
Once upon a time, an old couple lived in a small village.” | 昔々、小さな村に老いた夫婦が住んでいました。 |
“One day, when the old woman was washing clothes in the river, a huge peach came from the river.” | ある日、老婦人が川で洗濯をしていると、大きな桃が川から流れてきました。 |
⋮ | ⋮ |
パラレルコーパス学習後、再度同じ英文を学習させた結果が下記になります。
{ |
基本モデルの結果と比べると、パラレルコーパスの学習内容が反映され、少し自然な文章になりました。
学習前 |
昔々、小さな村に老いた夫婦が住んでいた。 ある日、老婆が川の中で衣服を洗っていたとき、大きな桃が川からやって来た。 |
学習後 |
昔々、小さな村に老いた夫婦が住んでいました。 ある日、老婦人が川で洗濯をしていると、大きな桃が川から出てきました。 |
モデルのカスタマイズ-強制グロッサリー
最後に、より自然な文章に近づけるために、先ほどのパラレルコーパスを使ってカスタマイズしたモデルに強制グロッサリーを使用します。強制グロッサリーは特定の用語および語句の必須翻訳を設定できます。今回もCSVファイルを用いて下記の内容で学習させます。
en | ja |
“Once upon a time” | 昔々あるところに |
“old couple” | おじいさんとおばあさん |
“old woman” | おばあさん |
強制グロッサリー学習後、再度同じ英文を学習させた結果が下記になります。
{ |
基本モデルの結果と比べると、強制グロッサリーの学習内容が反映され、より自然な文章になりました。
学習前 |
昔々、小さな村に老いた夫婦が住んでいた。 ある日、老婆が川の中で衣服を洗っていたとき、大きな桃が川からやって来た。 |
学習後 |
昔々あるところに、小さな村におじいさんとおばあさんが住んでいました。 ある日、おばあさんが川で洗濯していると、大きな桃が川から出てきました。 |
最後に
今回は、WLTについてご紹介させていただきました。文章と単語の学習の仕方によって、豊富なカスタマイズを実現できます。そのため翻訳させる文章や単語が同じでも、文脈やストーリーによって理想の形に仕上げられると考えています。ご興味のある方はぜひお試しください。
執筆者プロフィール
-
配属後、IBM Watsonサービス、Node.jsを用いてアプリ開発をメインに行っております。これまで音声認識、文書検索の開発に携わってきました。
今後も自身の扱えるスキル範囲の拡大に努めていきます。