ニューラルネットワークモデルによるテキスト翻訳
記載されている内容は 2017 年 1 月 5 日 時点のものとなり、現時点におきましては変更されている可能性がありますので、ご注意下さい。
あけましておめでとうございます!
Azure CIE サポートの村山です。
いきなり本題ですが、皆さん、翻訳サービスって普段使ってますか?
「Web 上の翻訳サービスって前からあるけど、なんだか結果に違和感があるから使いづらいなぁ、、」っていう感想を持っている方が大半だと思います。僕もそうでした。
でも今は違うんです!!
Microsoft が昨年 11 月に発表したはニューラルネットワークモデルを利用したテキスト翻訳は、精度が大幅に向上していて、翻訳結果も違和感のないものになっています。
下のリンクでお試し可能なので、まずは試してみてください。
https://translator.microsoft.com/neural
実は、この翻訳機能、Microsoft Azure の Cognitive Services というサービス内で誰でも利用可能です。
現在は、日本語を含む10か国語をサポートしていて、今後も言語は増えていく予定です。 (2017/01/03 現在)
現在は、韓国語も含めた 11 ヵ国の言語がご利用いただけます。(2017/06/21 現在)
Microsoft Translator launching Neural Network based translations for all its speech languages
In addition to the nine languages supported by the Microsoft Translator speech API, namely Arabic, Chinese Mandarin, English, French, German, Italian, Brazilian Portuguese, Russian and Spanish, neural networks also power Japanese text translations. These ten languages together represent more than 80% of the translations performed daily by Microsoft Translator.
今回は、そんなニューラルネットワークモデルによる翻訳を Microsoft Azure で利用する方法をご案内します。
Text Translation API でニューラルネットワークモデルによる翻訳を行うまで
1. Text Translator API を利用する際は、まず Microsoft Azure のアカウントを作成します。
2. アカウント作成後、下記リンクよりAzure にログインします。ログイン後のトップページは下記となります。
Azure ポータル
3. ポータル左側の “+新規” をクリックし、[Intelligence + analytics] より、[Cognitive Services ] を選択します。
4. 必要な情報を入力して Cognitive Services のアカウントを作成します。
5. API Type から、”Translator Text API” を選択します。
6. Pricing tier から、プランを選択します。この際、右上の “詳細情報” から価格のページを確認し、続けて、リソースグループを作成し、リージョンを選択ののち、[作成] をクリックします。
価格のページはこちらになります。
Cognitive Services の価格
https://azure.microsoft.com/ja-jp/pricing/details/cognitive-services
7. 作成をクリック後、Translator API が作成されます。作成された Translator API を選択し、[Key] をクリックした後、赤枠の key1 をコピーします。(右側のアイコンをクリックするとコピーされます。)
8. 下記リンクにて、APIの動作を確認します。
Text Translation API
http://docs.microsofttranslator.com/text-translate.html#!/default/get_Translate
その前に、手順 7. でコピーしたキー (key1) を利用して、API を利用するためのトークンを生成する必要があります。
下記画像の赤枠のリンクをクリックして、トークン生成のページに飛びます。
9. 先ほどコピーしたキー (key1) を用いて、トークンを生成します。 Value の欄にキーを貼り付けて、”Try it out!” をクリックし、Response Body の内容をすべてコピーします。
10. 下記のように情報を入力し、その場でAPIを試します。
入力例:
appid: Bearer <先ほど取得したトークン> (Bearer と トークンの間は半角スペースを開けてください)
text: 翻訳したいテキスト(下記では、例文として ”一方、敷地面積は41%減の32.9ヘクタールとなった。” を利用しています。)
from: ja
to: en
category: generalnn (ニューラルネットワークモデルによる翻訳を利用する場合は、generalnn を選択してください。)
11. 入力後、 Try it out! を選択して、API を実行します。Curl コマンドや、Request URL にて投げる場合などの例も表示されます。実行結果から、ニューラルネットワークモデルによる翻訳と同等であることが確認できます。
いかがでしょうか。
APIをプログラムで実装する手間が省けて、簡単にニューラルネットワークモデルによる翻訳がどんな動作をするか確認できるので、サービス応用へのイメージも付きやすいと思います。
なお、Bing 翻訳でも、URL に"?category=generalnn" と追加することで、ニューラルネットワークモデルによる翻訳を利用することができます。
※ 翻訳時にニューラルネットワークモデルが利用可能なのは、現在は、上記と同じ
10
11
言語です。
Bing 翻訳
http://www.bing.com/translator?category=generalnn
今後も、下記ブログにて新着情報が更新されますので、是非チェックしてください!
Translation
https://blogs.msdn.microsoft.com/translation/
それでは、本年もよろしくお願いします!