音声認識・翻訳 Android アプリケーション制作 情報物理研究室 1210960031 豊田晃己
研究の背景 まずは研究の背景について述べたいと思います。 1/16
日本への外国人旅行客数 1937万人 1341万人 1036万人 日本政府観光局のデータによると、日本への外国人旅行者数,は年々増加しており2015年は2012年の2倍以上増加しています。 また,2020 年には日本政府目標の 2,000 万人を上回る 3,000 万人も達成する勢いです. このような増加から、日本政府は外国人旅行客の増加の対応に向けて 多言語音声翻訳システムの研究開発および社会実装に取り組んでおり、 都市インフラとして、多言語サポート整備の必要性が高まっています。 2/16
音声翻訳サービス Google音声翻訳 NICT音声翻訳アプリ 3/16 次に音声翻訳サービスについてですが、 実際に音声翻訳サービスはスマートフォンを利用している人が良く知っていると 思われるGoogle音声翻訳や、日本情報通信研究機構であるNICTが音声翻訳のアプリケーションを開発しています。 これらのサービスがある背景がありますが、 私の研究ではこれらのサービス参考にして、音声翻訳アプリを製作することです。 3/16
NICTの音声翻訳の仕組みの解説 続いてにくとの音声翻訳の仕組みについて解説をします。 4/16
NICT翻訳システムの精度 コーパスとは…. 言語学において、自然言語の文章を構造化し大規模に集積したデータ コーパスを使って統計的機械翻訳を実現 TOEIC600点以上の英語翻訳精度 次に翻訳システムの精度についてですが、 精度の高い翻訳を実現するためには「コーパス」という部分が非常に重要です。翻訳システムは対訳コーパスに 基づいて,同じ表現でも場面や使い方に合わせて翻訳するための確率付対訳辞書を自動的にさくせいするようになっています.翻訳システムを作る時に,「コーパス」をどれだけ集めるかが,翻訳精度を高めることにつながっています.「コーパス」を 使った統計的機械翻訳を用いると,多言語の翻訳システムが簡単に作れるという ところがメリットの一つです. また,翻訳結果をきかいがくしゅうすることにより翻訳精度が向上することから,翻訳を使えば使うほどデータが多くなり,翻訳精度が 向上する仕組みがあります. また、NICTの日本語から英語翻訳の精度はトエック600点以上を取るレベルだと いわれています。 5/16
音声入力 音声入力 クラウドサーバー処理 日本語 「おはよう」 6/16 続いてNICTの日本語から英語の音声翻訳の仕組みについて説明します。 まずは端末に音声入力を行います。 次に入力された音声データをネットワーク上のクラウドサーバーへ送信をされます。 音声入力 6/16
クラウドサーバー処理 クラウドサーバー処理の流れ 「o ha yo u」 7/16 「おはよう」 ↓ 「o ha yo u」 ↓ ↓ ↓ 「o ha yo u」 「o ha yo u」 ↓ 「おはようございます。」 「おはようございます。」 ↓ 「goodmorning」 「Goodmorning.」 日本語の 発音列に変換 日本語の 文字列に変換 日本語と同じ 意味の英語に変換 文法に合わせて 自然な文章に変換 自然な会話音声 に変換 次にクラウド処理についてです。日本語音声コーパスで日本語の発音列に 変換します. 次に日本語の文字コーパスで日本語の辞書と 文法により文字列に 変換し, 自然な日本語文章にあわせて文字を並び替えます.並び替えた文字列を英語の対訳コーパスから,日本語文字列と同じ意味の英語を検索します. 次に一致した同じ意味の検索結果から,英語文字コーパスで英語の文法にあわせて自然な文章に並び替えます. 並び替えられた文章を英語音声コーパスを用いて自然な会話音声に変換され,クラウド処理が完了です。 日本語音声コーパス 日本語文字コーパス 英語対訳コーパス 英語文字コーパス 英語音声コーパス 7/16
音声データを再生 クラウドサーバー 音声再生 音声データ 「Goodmorning.」 8/16 次に端末に音声データが送られ、音声が再生されます。 8/16
音声翻訳アプリを制作するために 音声認識・翻訳ソフトウェア開発キット 提供 9/16 独自に開発が可能 次に音声翻訳アプリ制作をするためにどれを利用したのかというと、 NICTが音声翻訳アプリの開発に利用している音声認識 翻訳サーバーを利用するためのソフトウェア開発キットを利用しました。これを利用することで、 音声認識・翻訳機能を持つアプリを独自に開発することができます。 開発はAndroid StudioでAndroidアプリ開発をしました。 では音声翻訳サービスを参考にし、開発した点を述べていきたいと思います。 提供 独自に開発が可能 Android StudioでAndroidアプリ開発 9/16
10/16 NIctが提供しているソフトウェア開発キットをこのまま実行すると、 音声翻訳はできるのですが、すべて英語表記されています。 私のアプリケーションの利用者は日本人と想定しているため選択言語項目とテキスト表記を日本語化しました。 10/16
次に利用者がなんのための言語選択と、選択している言語を視覚的に 理解できるために、項目をタイトルとボタンを配置しました。 11/16
次にボタンを配置して、ボタンを押すと追加した機能が実行するようにしました。 12/16
13/16 使い方説明ボタンは利用者向けの説明欄画面に画面移動。 音声翻訳リピートボタンは最後に行った音声翻訳が再生できるようにした機能。 対話履歴ボタンは対話履歴画面に画面移動する機能実装しています。 しかし、音声翻訳リピートボタンの機能は未実装です。 13/16
アプリケーション実演 ここでアプリケーションの実演に入りたいと思います。 14/16
課題 ボタンを配置しただけで機能は未実装 画面レイアウト ユーザーインターフェース 15/16 続いで課題点についてですが、 音声翻訳サービスにあった音声翻訳機能を実装しようと思って、 コードを読解してそれらしきメソッドをボタンで実行するような記述してみましたが、 上手くいきませんでした。 ボタンを配置しただけで機能は未実装なので、これを実装できるようにすること。 HTMLを利用したレイアウトや動的なレイアウトがあったのだが、 時間的制約で実装できなかったので、勉強をすすめて実装していくことと、 NICTが提供している音声翻訳SDKは、録音開始時は画面を押し続け、 録音終了時は指を離すというユーザーインターフェースです。 このユーザーインターフェースを、スマホを傾けて音声録音を開始、 傾きを戻すと、録音が終了する ユーザーインターフェースを実装するのが課題点です。 なぜなら、音声翻訳者が傍らにいるかのようなユーザーインターフェースを 目指しているからです。 15/16
まとめ 1210960031 豊田晃己 まとめとしては、アプリケーション製作に音声翻訳のソフトウェア開発キットを利用しましたが、開発キットの中身のプログラム内容がとても難しく、プログラムの読解が 困難でした。しかし、あきらめずに読解をし、メソッドを変えることはできなかったのですが、コードを追記し、追加機能を実現、文字表記を変更することができました。 このことから、NICTの音声翻訳アプリの開発キットを使用して独自のアプリ開発するための足場を作ることができたと思います。 これで発表を終わります。ご静聴、ありがとうございました。 16/16