見出し画像

スピーキングテストに使われている技術 |#2|AI×Speaking Test

《今回のポイント》

・音声認識技術
・自然言語処理技術
・機械学習
・深層学習(ディープラーニング)
・転移学習

なぜ、AIによって「話す力」を自動採点できるのか?

スピーキングテストのざっくりした仕組みは下記のイメージです。

・受験者が設問に発声して解答する(音声データができあがる)
→①音声データを文字データに変換する:音声認識技術
→②文字データの内容を解析し、評価基準と照らし合わせて設問の解答としての適切さを判定する:自然言語処理

人間が採点する場合、①~②のプロセスは頭の中で行われます。それを人間の頭ではなく機械的処理するのが「自動採点のスピーキングテスト」です。

スピーキングテストに使われている技術

【音声認識技術】

音声データをテキストに変換する技術。いわゆる《文字起こし》です。音声入力や音声検索、キャプションの生成などの用途で使われています。
スピーキングテストにおいては、受験者の発声した音声データを、採点するための文字データに変換する部分で用いられています。この変換作業の精度を高めるためには、元のデータとなる音声データの音質が重要になるので、受験時はマイクの利用や静かな場所での実施が推奨されています。

【自然言語処理技術】

機械によって人間の言語(=自然言語)を処理して、その内容を解析する技術。話し言葉から書き言葉まで、人間は日常的に言葉を使ってコミュニケーションを行います。その内容を機械に処理させるのが、この自然言語処理技術。たとえば翻訳ツールや検索エンジンなどにも使われています。
スピーキングテストにおいては、設問に対して受験者がきちんと意味を汲んで適切に解答しているかどうか採点する時に、自然言語処理技術が使われています。

しかし、機械にとっては「意味を汲んで」「適切かどうか」を判断するのは非常に難しいことです。なぜなら、人間が使う自然言語は、前後の文脈や区切りの位置によって意味が変化するからです。

(そんなのありえない!)と思った人は人間です

「生物学的に、サルはネコを産めない。だから、この文章はサルが子どもを産んだとしか考えられない」と判断できるのは、人間が生物学の理論を知っているからです。
しかし、その前提を知らない場合には判断材料がありません。この前提知識を与えるために使われているのが「機械学習」です。

【機械学習】

入力データから期待する出力を予測するようなアルゴリズムを、自動で学習させること。
たとえば、ある文章から、その文章の意味的な正しさを出力をするように学習させれば、文章の意味的正しさを予測するために必要なルールやパターンを自動で発見します。それによって、上述のような親と異なる種の子どもは生まれない(=サルから猫は生まれない)という前提知識を学習させることができます。
一般的に、与えるデータの量が多く教師ラベルの質が高いほど、多くの正しいパターンを学習できるので、学習後のモデルの予測結果の精度が高くなります。

【深層学習(ディープラーニング)】

機械学習の学習方法のひとつ「ディープニューラルネットワーク」を用いる手法です。“深層”という言葉が示すように、この方法では「データの入力層」と「結果の出力層」の間に「多層の中間層」が存在します。中間層では、データ特徴を細分化しながらより詳細なルールや法則を見つけ出すことで、最終的なアウトプットの精度が高まります。

【転移学習】

特定の領域に関する学習の結果を、別の領域に適用させること。より少ないコストで、高い精度のモデルを機械に学習させるために必要となります。

前述の通り、学習に与えるデータの量が多くて教師ラベルの質が高いほど、予測精度の高いモデルの学習ができます。しかし、一般的に教師ラベルは人手で付けるので、良質な教師ラベルを大量に収集するには非常にコストがかかります。また、データ量が多いほど学習時間も長くなります。

一方で、似たようなタスク間であればモデルの知識がうまく転移できることも知られています。そのため、膨大なデータで事前学習されたモデルをベースに追加学習を行うことで、学習させた場合に比べて、圧倒的に少ないデータ量でも高精度のモデルの学習ができるのです。

ゴールに近い場所から走り出せば、より早く着ける

考え方としては…
「①日本人が話す英語の音声データを解析する」という学習をした機械があるとします。
この機械に「②中国人が話す英語の音声データを解析する」という機械学習を行いたいと思った時に、またゼロの状態から学習し始めると、一定の精度に到達するのに時間を要してしまいます。

しかし「日本人も中国人も英語が母語ではない」という点は共通していて、音声データにも共通項があるはずです。
たとえば、〈100時間分の中国人が話した英語の音声データ〉で学習されたモデルがあるとして、それをベースに〈10時間分の日本人が話した英語のデータ〉で学習すると、共通項部分は新たに学習する必要がなくなります。日本人に特有な部分のみを学習すれば良いので、②の機械学習をより早く・高精度にできるのが「転移学習」なのです。

その共通項をそのまま活用する(=転移する)ことで、②の機械学習をより速く・精度高く行えるようにするのが「転移学習」なのです。

#3「なぜ音声認識技術の精度が上がったのか?」はこちら


今回は、スピーキングテストに使われている技術の説明をまとめました。
本シリーズでは、AIを活用したスピーキングテストを支える音声認識技術など、テクノロジー界隈の情報とトレンドをまとめてお届けしていきます。

取材をご希望の方、本件に関してのお問い合わせはこちら
株式会社レアジョブ 広報
メール:press@rarejob.co.jp

【レアジョブが提供する英語関連サービス】