(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2025-01-08
(45)【発行日】2025-01-17
(54)【発明の名称】情報処理方法、情報処理装置、プログラム及び言語能力診断システム
(51)【国際特許分類】
G09B 19/00 20060101AFI20250109BHJP
G09B 19/06 20060101ALI20250109BHJP
【FI】
G09B19/00 H
G09B19/06
(21)【出願番号】P 2023177926
(22)【出願日】2023-10-14
【審査請求日】2024-10-01
【国等の委託研究の成果に係る記載事項】(出願人による申告)2020年度、国立研究開発法人新エネルギー・産業技術総合開発機構「人と共に進化する次世代人工知能に関する技術開発事業/説明できるAIの基盤技術開発」委託研究、産業技術力強化法第17条の適用を受ける特許出願
【早期審査対象出願】
(73)【特許権者】
【識別番号】899000068
【氏名又は名称】学校法人早稲田大学
(74)【代理人】
【識別番号】110004093
【氏名又は名称】弁理士法人アクセル特許事務所
(72)【発明者】
【氏名】▲高▼津 弘明
(72)【発明者】
【氏名】松山 洋一
(72)【発明者】
【氏名】鈴木 駿吾
(72)【発明者】
【氏名】佐伯 真於
(72)【発明者】
【氏名】松浦 瑠希
【審査官】池田 剛志
(56)【参考文献】
【文献】特開2020-160336(JP,A)
【文献】中国特許出願公開第105632488(CN,A)
【文献】特開2017-122880(JP,A)
【文献】特開2018-045062(JP,A)
【文献】中国特許出願公開第111899581(CN,A)
【文献】中国特許出願公開第113470651(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
G09B 1/00- 9/56,
17/00-19/26
(57)【特許請求の範囲】
【請求項1】
言語能力診断システムにおいて情報処理装置が実行する情報処理方法であって、
ユーザによる発話を含む入力データを取得する取得処理と、
取得した前記入力データから特徴量を抽出する特徴量抽出処理と、
抽出した前記特徴量から、任意の指標に基づき前記ユーザの言語能力を計測する言語能力計測処理と、を含み、
前記言語能力計測処理は、
前記特徴量からスコアを算出するスコア計測処理と、
前記特徴量から前記スコアの根拠を抽出する根拠抽出処理と、を含む、
情報処理方法。
【請求項2】
前記情報処理装置は、前記特徴量抽出処理において前記特徴量を抽出する特徴抽出器を少なくとも一つ備えることを特徴とする、
請求項1に記載の情報処理方法。
【請求項3】
前記入力データは、文字情報、音声情報、及び映像情報のうち一以上を備え、
前記特徴量は、前記文字情報、前記音声情報、及び前記映像情報のうち一以上が数値情報に変換されたベクトルを含む、
請求項1に記載の情報処理方法。
【請求項4】
前記特徴量抽出処理は、テキスト特徴、マルチモーダル特徴、語彙難易度特徴、文法誤り特徴、発音特徴、談話特徴、共参照特徴、常識特徴、及び人手設計特徴のすべてまたはいずれかを特徴量として出力する処理を含む、
請求項1に記載の情報処理方法。
【請求項5】
前記スコア計測処理は、前記ユーザの言語能力に関する少なくとも一つ以上の指標に関して前記スコアを計測する処理を含む、
請求項1に記載の情報処理方法。
【請求項6】
前記根拠抽出処理は、前記スコアの根拠を説明する各特徴量の貢献度を抽出する処理を含む、
請求項1に記載の情報処理方法。
【請求項7】
前記根拠抽出処理において抽出された前記スコアの根拠を可視化する可視化部を有し、前記可視化部によって根拠を前記ユーザに視覚的に提示することを特徴とする、
請求項1に記載の情報処理方法。
【請求項8】
ユーザによる発話を含む入力データを取得し、取得した前記入力データから特徴量を抽出する言語特徴抽出部と、
抽出した前記特徴量から、任意の指標に基づき前記ユーザの言語能力を計測する言語能力計測部と、を備え、
前記言語能力計測部は、
前記特徴量からスコアを計測するスコア計測部と、
前記特徴量から前記スコアの根拠を抽出する根拠抽出部と、を備える、
情報処理装置。
【請求項9】
コンピュータに、
ユーザによる発話を含む入力データを取得する取得処理と、
取得した前記入力データから特徴量を抽出する特徴量抽出処理と、
抽出した前記特徴量から、任意の指標に基づき前記ユーザの言語能力を計測する言語能力計測処理と、を含み、
前記言語能力計測処理は、
前記特徴量からスコアを算出するスコア計測処理と、
前記特徴量から前記スコアの根拠を抽出する根拠抽出処理と、を含む、
情報処理方法を実行させるためのプログラム。
【請求項10】
ユーザによる発話を含む入力データを取得し、取得した前記入力データから特徴量を抽出する言語特徴抽出部と、
抽出した前記特徴量から、任意の指標に基づき前記ユーザの言語能力を計測する言語能力計測部と、を備え、
前記言語能力計測部は、
前記特徴量からスコアを計測するスコア計測部と、
前記特徴量から前記スコアの根拠を抽出する根拠抽出部と、を備える
情報処理装置と、
前記ユーザによる発話を入力するユーザ端末と、を備え、
前記ユーザ端末から入力された前記ユーザによる発話から前記ユーザの言語能力を計測する、
言語能力診断システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理方法、プログラム及び言語能力診断システムに関する。
【背景技術】
【0002】
引用文献1には、ユーザの発話音声を音声認識して得られた音素情報をもとに機械学習により、言語のスピーキング習熟度を予測する手法が提案されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
第二言語学習を進めていくうえで、学習者(ユーザ)の現状把握のための習熟度評価は欠かせない。第二言語学習では、文法・語彙・発音など習得しなくてはならない項目が無数にあるものの、上記従来技術のように、特定の言語能力(例えば、流暢さ)の計測に特化した特徴量(ピッチや話速、間(ま)の長さなど)をユーザの発話音声から抽出し、その特徴量に基づき習熟度を予測する場合が多い。しかしながら、様々な観点の言語能力(一貫性ややり取りの良さなど)を計測するためには、ユーザの発話時に得られるマルチモーダルな情報(発話データ)に含まれる種々の言語の特徴(言語特徴)を考慮する必要があるため、上記従来技術のように発話音声から抽出した限定的な特徴量だけでは個々の言語能力を正確に診断することが難しい。なお、発話データは入力データともいう。
【0005】
本発明は、上記の課題を鑑みてなされたものであり、ユーザのマルチモーダルな発話データに含まれる多様な言語特徴に基づき言語能力を複数の観点から診断することを目的とする。
【課題を解決するための手段】
【0006】
一実施形態によれば、情報処理装置を備える言語能力診断システムが実行する情報処理方法であって、ユーザによる発話を含む入力データを取得する取得処理と、取得した前記入力データから特徴量を抽出する特徴量抽出処理と、抽出した前記特徴量から、前記ユーザによる発話について、任意の指標に基づきスコアを計測する計測処理と、を含み、前記計測処理は、スコアを算出する処理と、前記ユーザの言語能力を診断する処理と、を含む。
【発明の効果】
【0007】
一実施形態によれば、ユーザのマルチモーダルな入力データに含まれる多様な言語特徴に基づき言語能力を診断することができる。
【図面の簡単な説明】
【0008】
【
図1】情報処理システム(1000)の構成の一例を示す図である。
【
図2】言語能力診断装置(1)のハードウェア構成の一例を示す図である。
【
図3】ユーザ端末のハードウェア構成の一例を示す図である。
【
図4】言語能力診断装置の機能構成の一例を示す図である。
【
図5】言語能力診断装置の概念の一例を示す図である。
【
図6】マルチモーダル特徴抽出器の一例を示す図である。
【
図7】語彙難易度特徴抽出器の一例を示す図である。
【
図10】談話マーカーとクラスとの関係の一例を示す図である。
【
図11】談話マーカーの一部をマスクした文章の一例を示す図である。
【
図14】スコア計測部によって求められる各指標に対するスコアの一例を示す図である。
【
図16】複雑特徴モデルの処理の流れの一例を示す図である。
【
図17】マルチモーダル特徴エンコーダの処理の流れの一例を示す図である。
【
図18】マルチモーダル特徴エンコーダ以外のエンコーダの一般的な処理の流れの一例を示す図である。
【
図19】複雑特徴モデルにおける総合的な習熟度を出力するアンサンブルモデルの処理の流れの一例を示す図である。
【
図20】単純特徴モデルの処理の流れの一例を示す図である。
【
図21】レーダーチャートによる可視化の一例を示す図である。
【
図24】ユーザ発話に含まれる語彙のCEFRレベルの可視化の一例を示す図である。
【
図25】文法誤り特徴の可視化の一例を示す図である。
【
図27】発音の良さの可視化の一例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の各実施形態について、添付の図面を参照しながら説明する。なお、各実施形態に係る明細書及び図面の記載に関して、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
【0010】
<システム構成>
まず、本実施形態に係る、情報処理システム1000の概要について説明する。情報処理システム1000は、第二言語や第三言語等を習得するユーザ、すなわち、言語習得者の機能的言語能力を機械学習等の技術を利用して診断するものである。なお、本発明において、機能的言語能力とは、状況によって与えられた非言語成果を十分かつ適切に達成するための能力(日常生活の具体的な課題を、習得したい言語を通じて、十分かつ適切に達成するための能力)である。ここでは、機能的言語能力を単に言語能力ともいう。なお、機能的言語能力については、(参考文献1)F. Kuiken and I. Vedder,“TASK. Journal on Task-Based Language Teaching and Learning”, Volume 2, Number 1,(オランダ)John Benjamins, Amsterdam, 2022や、(参考文献2)N. Taguchi and Y. Kim, Eds.,“Task-Based Approaches to Teaching and Assessing Pragmatics”, Chap. 11,(アメリカ), Longmans Green and Co.,2018, Chap. 11, pp. 266-285.を参照されたい。
【0011】
情報処理システム1000は、言語習得者が効率よく第二言語を習得するために利用される。また、情報処理システム1000は、言語習得者の言語運用についても支援できる。言語運用とは、発話そのものの特徴(例えば、流暢さ)に焦点を当てた、実際に観察可能な発話のことである。なお、言語運用については、上記参考文献1及び参考文献2を参照されたい。
【0012】
図1は、情報処理システム1000の構成の一例を示す図である。
図1に示すように、情報処理システム1000は、ネットワークNを介して相互に通信可能に接続された、言語能力診断装置1と、ユーザ端末2と、を備える。ネットワークNは、例えば、有線LAN(Local Area Network)、無線LAN、インターネット、公衆回線網、モバイルデータ通信網、又はこれらの組み合わせである。
図1の例では、情報処理システム1000は、言語能力診断装置1及びユーザ端末2を各1つずつ備えるが、それぞれ複数備えてもよい。
【0013】
言語能力診断装置1は、ユーザの入力データに基づいて、ユーザの言語能力を診断する情報処理装置である。言語能力診断装置1は、例えば、PC(Personal Computer:パーソナルコンピュータ)、スマートフォン、タブレット端末、サーバ装置、マイクロコンピュータ、又はロボットであるが、これに限られない。
図1の例では、言語能力診断装置1は、1の情報処理装置であるが、ネットワークNを介して接続された複数の情報処理装置からなるシステムとして実現されてもよい。また、言語能力診断装置1は、ユーザが一連の対話(タスク)をすべて終了した後に、当該対話中のユーザによる発話(ユーザ発話)を入力としてユーザの言語能力を診断してもよい。また、ユーザの対話中にリアルタイムでユーザによる発話を解析してもよい。
【0014】
ユーザ端末2は、入力データを言語能力診断装置1に送信し、言語能力の評価結果を表示する、ユーザによって使用される情報処理装置である。ユーザ端末2は、例えば、PC、スマートフォン、タブレット端末、サーバ装置、AR(Augmented Reality:拡張現実)ゴーグル、VR(Virtual Reality:仮想現実)ゴーグル、又はマイクロコンピュータであるが、これに限られない。ユーザ端末2は、外部装置から入力データを取得し、取得した入力データを言語能力診断装置1に送信してもよい。また、ユーザ端末2は、カメラやマイクロフォン(マイク)を備え、そのカメラで撮影した入力データや、マイクロフォンで収音した入力データを言語能力診断装置1に送信してもよい。この場合、ユーザは、自身の入力データを自ら撮影または収音してもよいし、ユーザ以外の撮影者に自身の入力データを撮影または収音してもらってもよい。また、入力データを送信するユーザ端末2と、評価結果を表示するユーザ端末2と、は異なる情報処理装置であってもよい。
【0015】
入力データとは、ユーザから発せられる情報であって、文字情報、音声情報、及び映像情報のいずれか、またはこれらの組み合わせである。また、入力データについては
図4を用いて後述する。
【0016】
<言語能力診断装置1のハードウェア構成>
次に、言語能力診断装置1のハードウェア構成について説明する。
図2は、言語能力診断装置1のハードウェア構成の一例を示す図である。
図2に示すように、言語能力診断装置1は、バスB1を介して相互に接続された、プロセッサ101と、メモリ102と、ストレージ103と、通信I/F104と、入出力I/F105と、ドライブ装置106と、入力装置107と、出力装置108と、を備える。
【0017】
プロセッサ101は、ストレージ103に記憶されたOS(Operating System)及び言語能力診断プログラムを含む各種のプログラムをメモリ102に展開して実行することにより、言語能力診断装置1の各構成を制御し、言語能力診断装置1の機能を実現する。プロセッサ101は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、ASIC(Application Specific Integrated Circuit)又はDSP(Digital Signal Processor)であるが、これに限られない。
【0018】
メモリ102は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、又はこれらの組み合わせである。ROMは、例えば、PROM(Programmable ROM)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、又はこれらの組み合わせである。RAMは、例えば、DRAM(Dynamic RAM)又はSRAM(Static RAM)であるが、これに限られない。
【0019】
ストレージ103は、OS及び言語能力診断プログラムを含む各種のプログラム及びデータを記憶する。ストレージ103は、例えば、フラッシュメモリ、HDD(Hard Disk Drive)、SSD(Solid State Drive)又はSCM(Storage Class Memories)であるが、これに限られない。
【0020】
通信I/F104は、言語能力診断装置1を、ネットワークNを介して外部装置に接続し、通信を制御するためのインタフェースである。通信I/F104は、例えば、Bluetooth(登録商標)、Wi-Fi(登録商標)、ZigBee(登録商標)又はEthernet(登録商標)であるが、これに限られない。
【0021】
入出力I/F105は、言語能力診断装置1に入力装置107及び出力装置108を接続するためのインタフェースである。入力装置107は、言語能力診断装置1に情報を入力するための装置である。入力装置107は、例えば、マウス、キーボード、タッチパネル、マイクロフォン、スキャナ、カメラ、各種センサ、操作ボタン、又はこれらの組み合わせであるが、これに限られない。出力装置108は、言語能力診断装置1から情報を出力するための装置である。出力装置108は、例えば、ディスプレイ、プロジェクタ、プリンタ、スピーカー、バイブレータ、又はこれらの組み合わせであるが、これに限られない。
【0022】
ドライブ装置106は、記録メディア109のデータを読み書きする装置である。ドライブ装置106は、例えば、磁気ディスクドライブ、光学ディスクドライブ、光磁気ディスクドライブ又はSDカードリーダであるが、これに限られない。記録メディア109は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、FD(Floppy Disk)、MO(Magneto-Optical disk)、BD(Blu-ray(登録商標) Disc)、USB(登録商標)メモリ又はSDカードであるが、これに限られない。
【0023】
なお、本実施形態において、言語能力診断プログラムは、言語能力診断装置1の製造段階でメモリ102又はストレージ103に書き込まれてもよいし、ネットワークNを介して言語能力診断装置1に提供されてもよいし、記録メディア109などの非一時的でコンピュータ読み取り可能な記録媒体を介して言語能力診断装置1に提供されてもよい。
【0024】
<ユーザ端末2のハードウェア構成>
次に、ユーザ端末2のハードウェア構成について説明する。
図3は、ユーザ端末2のハードウェア構成の一例を示す図である。
図3に示すように、ユーザ端末2は、バスB2を介して相互に接続された、プロセッサ201と、メモリ202と、ストレージ203と、通信I/F204と、入出力I/F205と、ドライブ装置206と、入力装置207と、出力装置208と、を備える。
【0025】
プロセッサ201は、ストレージ203に記憶されたOS及び各種プログラムをメモリ202に展開して実行することにより、ユーザ端末2の各構成を制御し、ユーザ端末2の機能を実現する。プロセッサ201は、例えば、CPU、MPU、GPU、ASIC又はDSPであるが、これに限られない。
【0026】
メモリ202は、例えば、ROM、RAM、又はこれらの組み合わせである。ROMは、例えば、PROM、EPROM、EEPROM、又はこれらの組み合わせである。RAMは、例えば、DRAM又はSRAMであるが、これに限られない。
【0027】
ストレージ203は、OS及び各種のプログラム及びデータを記憶する。ストレージ203は、例えば、フラッシュメモリ、HDD、SSD又はSCMであるが、これに限られない。
【0028】
通信I/F204は、ユーザ端末2を、ネットワークNを介して外部装置に接続し、通信を制御するためのインタフェースである。通信I/F204は、例えば、Bluetooth(登録商標)、Wi-Fi(登録商標)、ZigBee(登録商標)又はEthernet(登録商標)であるが、これに限られない。
【0029】
入出力I/F205は、ユーザ端末2に入力装置207及び出力装置208を接続するためのインタフェースである。入力装置207は、ユーザ端末2に情報を入力するための装置である。入力装置207は、例えば、マウス、キーボード、タッチパネル、マイクロフォン、スキャナ、カメラ、各種センサ、操作ボタン、又はこれらの組み合わせであるが、これに限られない。出力装置208は、ユーザ端末2から情報を出力するための装置である。出力装置208は、例えば、ディスプレイ、プロジェクタ、プリンタ、スピーカー、バイブレータ、又はこれらの組み合わせであるが、これに限られない。
【0030】
ドライブ装置206は、記録メディア209のデータを読み書きする装置である。ドライブ装置206は、例えば、磁気ディスクドライブ、光学ディスクドライブ、光磁気ディスクドライブ又はSDカードリーダであるが、これに限られない。記録メディア209は、例えば、CD、DVD、FD、MO、BD(登録商標)、USB(登録商標)メモリ又はSDカードであるが、これに限られない。
【0031】
出力装置208は、ユーザ端末2から情報を出力するための装置である。出力装置208は、例えば、マウス、キーボード、タッチパネル、マイクロフォン、スキャナ、撮影装置(カメラ)、各種センサ又は操作ボタンであるが、これに限られない。
【0032】
<言語能力診断装置1の機能構成>
次に、言語能力診断装置1の機能構成について説明する。
図4は、言語能力診断装置1の機能構成の一例を示す図である。
図4に示すように、言語能力診断装置1は、通信部11と、記憶部12と、制御部13と、を備える。
【0033】
通信部11は、通信I/F104により実現される。通信部11は、ネットワークNを介して、ユーザ端末2との間で情報の送受信を行う。通信部11は、ユーザ端末2から入力データを受信する。また、通信部11は、ユーザ端末2に対して診断結果等の情報を送信する。
【0034】
記憶部12は、メモリ102及びストレージ103により実現される。記憶部12は、ユーザ情報と、入力データと、を記憶する。なお、記憶部12はデータベースによって構築されもよい。
【0035】
入力データは、ユーザから発せられる情報であって、文字情報、音声情報、及び、映像情報のいずれか、またはこれらの組み合わせである。文字情報とは、ユーザの発話音声が音声認識システム(図示省略)等を介して変換された文字列や、ユーザがキーボード等の入力装置207を用いて入力した文字列を含んでもよい。また、文字情報とは、対話エージェントがユーザ端末2のスピーカー等の出力装置208を通してユーザに発した音声を書き起こしたテキストや、対話エージェントがユーザ端末2のディスプレイ等の出力装置208を通してユーザに表示したテキストでもよい。なお、対話エージェントとは、教師である人間の代わりにユーザ(学習者)と対話する相手のことをいい、システムやプログラムであってもよい。また、対話エージェントは、例えば、ロボットや三次元のキャラクタでもよいし、実体のない音声のみで実現されてもよい。
【0036】
音声情報とは、ユーザの声帯から発せられる音声を含む。また、音声情報は、ユーザ端末2のマイクロフォン等の入力装置207に入力されたユーザの音声や、対話エージェントが端末のスピーカー等の出力装置208を通してユーザに発した音声である。
【0037】
映像情報とは、ユーザ端末2のカメラ等の入力装置207から入力された、ユーザの表情や口の動き、身振り、及び手振りが収録された映像である。また、映像情報とは、対話エージェントがユーザ端末2のディスプレイ等の出力装置208を通してユーザに示した動作の映像でもよい。
【0038】
入力データは、上述した手法により得られた文字情報、音声情報、及び、映像情報の組み合わせによって構成されてもよい。また、入力データは、複数の人間の中でかわされる対話データであってもよい。また、入力データは、人間と対話エージェントとの間の対話(会話)データであってもよいし、複数の対話エージェント間の対話データであってもよい。その場合、入力データは、対話エージェントとユーザが相互作用することによって生じた双方の文字情報・音声情報・映像情報を含めてもよい。また、入力データは、対話エージェントによって生成された出力データを含めてもよい。また、対話データに限らず、モノローグの発話データであってもよい。また、入力データは、キーボード等の入力装置207で入力された文字情報、すなわち、発話を伴わない文字情報であってもよい。また、入力データには記憶部12に格納される追加情報が含まれてもよく、この追加情報とは、ユーザに関連する情報であって、例えば、ユーザのプロパティや学習目的であってもよい。
【0039】
なお、上述した各入力データは、暗号化されていてもよい。また、入力データにおいて、文字情報、音声情報、及び映像情報が時系列に並んでいてもよいが、これに限られない。
【0040】
制御部13は、プロセッサ101がメモリ102から言語能力診断プログラムを読み出して実行し、他のハードウェア構成と協働することにより実現される。制御部13は、言語能力診断装置1の動作全体を制御する。制御部13は、言語特徴抽出部131と、言語能力計測部132と、スコア計測部133と、根拠抽出部134と、可視化部135と、翻訳部136と、を備える。
【0041】
言語特徴抽出部131について、
図5を用いて説明する。
図5は、言語能力診断装置1の概念図の一例である。
図5に例示しているように、言語特徴抽出部131は、入力データに含まれる、文字情報、音声情報、及び映像情報のうち一つ以上の情報を入力とし、特定の言語特徴(特徴量)を言語能力計測部132に対して出力する。言語特徴抽出部131は、一つ以上の特徴抽出器を備える。
図5には、n個(nは1以上の整数)の特徴抽出器を備える場合を例示したが、言語特徴抽出部131が備える特徴抽出器は1個であってもよい。なお、入力データは、ノイズ除去や複数データへの分割等の前処理が施されていてもよい。なお、言語特徴は、文字情報を数値情報に変換した特徴量であるテキスト特徴を含む。すなわち、言語特徴は、入力データに含まれる、文字情報、音声情報、及び映像情報を統計的な手法や機械学習モデルなどを用いて変換されたベクトルである。
【0042】
本システムは多言語に対応しており、複数の言語に対応した特徴抽出器を備える。
図5は、特徴抽出器1~nが、それぞれ英語やフランス語等の複数の言語に対応していることを例示している。
図5に記載の言語i、言語j、及び言語kは、それぞれ、例えば、フランス語、ドイツ語、及び英語である。
図5は、特徴抽出器1や特徴抽出器2には言語i(フランス語)、言語j(ドイツ語)を含む入力データがそのまま入力され、特徴抽出器nには翻訳部136を介した言語k(英語)が入力されることを例示している。これは、ユーザ発話が例えばフランス語によるものであり、翻訳部136が他国語(例えば、フランス語)から英語に翻訳する機能を備える場合、特徴抽出器nには英語(言語k)のみが入力されることを想定している。なお、言語の定義や特徴抽出器は上記に限定されない。
【0043】
また、言語特徴抽出部131は、一つ以上の特徴抽出器を複雑特徴モデル用と単純特徴モデル用とにそれぞれ備える。複雑特徴モデル用と単純特徴モデル用とについては後述する。なお、ここでは、機械学習モデルを単にモデルともいう。
【0044】
本システムにおいて、公知のCEFR(Common European Framework of Reference for Languages: Learning, teaching, assessment;セファール/シーイーエフアール)の指標(観点)を用いる場合、各特徴抽出器は、テキスト特徴、マルチモーダル特徴、語彙難易度特徴、文法誤り特徴、発音特徴、談話特徴、共参照特徴、常識特徴、及び人手設計特徴のすべてまたはいずれかを、言語特徴(特徴量)として出力するものとする。これらの特徴抽出器をそれぞれ、テキスト特徴抽出器、マルチモーダル特徴抽出器、語彙難易度特徴抽出器、文法誤り特徴抽出器、発音特徴抽出器、談話特徴抽出器、共参照特徴抽出器、常識特徴抽出器、及び人手設計特徴抽出器という。
図5に例示する特徴抽出器1~nが、それぞれ上記抽出器を示しており、例えば、特徴抽出器1がテキスト特徴抽出器であり、特徴抽出器2がマルチモーダル特徴抽出器を示す。なお、上述した特徴抽出器は一例にすぎず、他の特徴を抽出(出力)してもよい。これらの特徴抽出器についてそれぞれ説明する。
【0045】
テキスト特徴を抽出する特徴抽出器、すなわちテキスト特徴抽出器について説明する。テキスト特徴抽出器は、入力データの文字情報を入力とし、特徴量としてテキスト特徴を出力する。テキスト特徴抽出器は、事前学習済みモデル(大規模なデータセットを用いて訓練した学習済みのモデル)の最終層または中間層の出力として求めてもよい。この場合、テキスト特徴抽出器は、事前学習済みモデルの一例として、公知のALBERT(A Lite BERT)を用い、ユーザと対話エージェントとの対話における文単位の文字情報を時系列でALBERTに与えてもよい。また、この場合、テキスト特徴抽出器は、ALBERTの最終層の出力(トークン単位のベクトル列)を当該特徴抽出器から出力する。ALBERTのような言語モデルではトークンという単位でテキストが処理される。トークンとは、文の構成要素である単語や文字、サブワード(単語よりも小さく文字よりも大きい単位)などを表し、言語モデルによってトークンの定義は異なる。以降、トークンの単位を単語として説明する。
【0046】
また、事前学習済みモデルとして、例えば公知のWord2Vec(登録商標)やBERT(Bidirectional Encoder Representations from Transformers,登録商標)を用いてもよく、これらのモデルの最終層または中間層の出力をテキスト特徴として求めてもよい。Word2Vecとは、文章中のある単語から周辺単語を予測するといったタスクにより単語の意味や文法的な特徴を学習したモデルであり、単語が入力されると、その単語が持つ意味や文法機能が埋め込まれたベクトルを出力する。BERTとは、TransformerのEncoderを複数層重ねた構造の双方向エンコーディングモデルであり、文章中のある単語をマスクし、マスクした単語を周辺の単語から予測するタスクおよび、入力された二つの文が連続した文章であるか否かを予測するタスクを通じて、文脈を考慮した単語の意味を反映した埋め込みベクトルを出力する。ALBERTとは、BERTで用いられている単語の埋め込み表現の行列を2つの小さな行列に分解するなどの改善により、BERTを軽量化したモデルである。
【0047】
テキスト特徴は、入力データの文字情報を、公知のTF-IDF(Term Frequency - Inverse Document Frequency)等の手法を用いて解析した際の単語の出現頻度として得られてもよい。なお、TF-IDFとは、各文章中に含まれる各単語が、当該文章内でどれくらい重要かを表す統計的尺度の一つである。このような手法により、テキスト特徴抽出器によって出力される特徴量であるテキスト特徴は、入力データの文字情報を数値情報に変換した特徴量である。なお、文は、一語以上の語からなり、句点(「。」や「.」)で区切れる単位である。文章は、文が一つ以上集まった単位である。
【0048】
テキスト特徴抽出器の出力は、ベクトルやベクトル列などの数値情報である。また、テキスト特徴とは、文や単語等を単位とした多次元のベクトルであってもよい。また、テキスト特徴抽出器への入力を複数の文や単語からなる文字情報とした場合に、テキスト特徴は多次元のベクトル列として得られてもよく、また、文字情報全体を入力とした場合には、テキスト特徴は一つのベクトルとして得られてもよい。
【0049】
マルチモーダル特徴を抽出する特徴抽出器、すなわちマルチモーダル特徴抽出器について
図6を用いて説明する。
図6は、マルチモーダル特徴抽出器の一例を示す図である。
図6に例示するように、マルチモーダル特徴抽出器は、入力データに含まれる、文字情報、音声情報、及び映像情報のうち2つ以上の組み合わせを入力とし、特徴量としてマルチモーダル特徴を出力する。
【0050】
マルチモーダル特徴抽出器への入力データの形態とマルチモーダル特徴抽出処理について説明する。入力データが対話エージェントとユーザとの対話の場合、入力データ、すなわち、文字情報や音声情報や映像情報は、対話エージェントの発話であるシステム発話と、ユーザの発話とが、交互に現れる形態である場合がある。
図6はこの形態を例示しており、具体的には、システム発話1,ユーザの発話1,システム発話2,・・・,ユーザの発話N(Nは1以上の整数)が対話において順に発生していることを示している。
【0051】
また、
図6に例示するように、ユーザの発話は一以上の発話節からなる。発話節とは、文字情報における句読点(例えば、「,」,「?」,「.」,「!」)の位置であり、且つ、音声情報における間(ま)が一定以上(例えば、0.5秒以上)あいている箇所で区切った単位である。なお、ユーザの発話を分割する場合、その単位は発話節に限られない。マルチモーダル特徴抽出器へは、この発話節単位で、且つ、発話された順に入力される。すなわち、まず発話節1-1がマルチモーダル特徴抽出器へ入力されたのち、発話節1-2が入力され、最後に発話節N―Mが入力される。
【0052】
上述のような入力データの形態でマルチモーダル特徴抽出器に発話節データが入力されると、マルチモーダル特徴抽出器は、発話節データに含まれる文字情報、音声情報、及び映像情報がブレンドされた(モーダルを超えて特徴量間で相互作用が取られた)マルチモーダル特徴を出力する。マルチモーダル特徴の生成にあたり、まず、公知の事前学習済みモデルであるALBERTを用いて、発話節データに含まれる文字情報から、テキスト特徴を抽出する。このテキスト特徴は、発話節の文字情報を構成する単語単位の情報が埋め込まれたベクトル列である。
【0053】
また、公知の事前学習済みモデルであるAV-HuBERT(Audio-Visual Hidden Unit BERT)を用いて、発話節データに含まれる音声情報と映像情報との組み合わせから音声映像特徴を抽出する。この音声映像特徴は、発話節の音声情報および映像情報を構成するフレーム単位の情報が埋め込まれたベクトル列である。なお、AV-HuBERTとは、音声情報に加えて映像情報からも特徴抽出できるようにHuBERTを拡張したモデルである。このAV-HuBERTを大規模な音声情報と映像情報とで事前学習させたモデルを用いて、モデル内のTransformer Encoder(トランスフォーマエンコーダ)の出力を映像と音声がブレンドされた特徴量として利用する。なお、Transformer Encoderは、機械翻訳を行うモデルとして提案された、Attention機構のみで構成されたエンコーダ・デコーダモデルであるTransformerモデルのエンコーダ部分を表す。そして、マルチモーダル特徴抽出器は、前記テキスト特徴と前記音声映像特徴を次に説明するViLBERT(後述)のCo-attention Transformer Layer(後述)により相互作用することで、文字情報、音声情報、及び映像情報の3つのモーダルの特徴量がブレンドされたマルチモーダル特徴を出力する。
【0054】
また、例えば、マルチモーダル特徴抽出器は、公知の機械学習モデルであるViLBERT(short for Vision-and-Language BERT)で用いられているCo-attention Transformer Layerを用いて、ALBERTから出力された文字情報に関する特徴量とAV-HuBERTから出力された音声情報と映像情報とに関する特徴量との組み合わせから、文字情報、音声情報、及び映像情報の3つのモーダルの特徴量がブレンドされたマルチモーダル特徴を出力する。なお、ViLBERTとは、Co-attention Transformer Layer(画像の特徴量と文章の特徴量との間で相互にattentionを計算する手法)によって画像とテキストの特徴量の相互作用を行うことで、Visual Question Answering (VQA)やVisual Commonsense Reasoning(VCR:視覚情報に基づく常識推論)等の公知のタスクで高い性能を示すモデルである。このVisual Question Answeringとは、画像と、その画像に関する質問が提示された際に正しい回答を導き出すタスクである。Visual Commonsense Reasoningとは、画像に関する質問と回答の選択肢とに対して正しい回答と根拠とを導き出すタスクである。
【0055】
図6に例示するように、このようにして得られたマルチモーダル特徴は、スコア計測部133の複雑特徴モデルや単純特徴モデルに入力される。なお、上述のような事前学習済みモデルに対して、上記以外の入力データの組み合わせからマルチモーダル特徴を取得してもよい。また、文字情報、音声情報、及び映像情報毎に、異なる特徴抽出器を用いて、上述のように多段階で異なるモーダルの特徴量を融合してもよいし、文字情報・音声情報・映像情報を有する大規模なデータで事前学習した単一の学習済みモデルからマルチモーダル特徴を抽出してもよい。
【0056】
語彙難易度特徴を抽出する特徴抽出器、すなわち語彙難易度特徴抽出器について
図7を用いて説明する。
図7は、語彙難易度特徴抽出器の一例を示す図である。
図7の中央付近に実線で囲んでいる部分は語彙難易度特徴抽出器であり、点線で囲んでいる部分はスコア計測部133である。
図7に例示するように、語彙難易度特徴抽出器は、入力データに含まれる文字情報を入力とし、ユーザ発話に含まれる語句(単語やフレーズ)の難易度を数値化した特徴量を語彙難易度特徴として出力する。
【0057】
語彙難易度特徴抽出器への入力データの形態と語彙難易度特徴抽出処理について説明する。入力データが対話エージェントとユーザとの対話の場合、入力データに含まれる文字情報は、対話エージェントの発話であるシステム発話と、ユーザの発話とが、交互に現れる形態である場合がある。
図7はこの形態を例示しており、具体的には、システム発話1,ユーザの発話1,システム発話2,・・・,ユーザの発話N(Nは1以上の整数)が対話において順に発生していることを示している。
【0058】
また、
図7に例示するように、ユーザの発話は一以上の単語からなる。単語の難易度を数値化するため、語彙難易度特徴抽出器へは、この単語単位で、且つ、発話された順に入力される。すなわち、まず単語1-1がマルチモーダル特徴抽出器へ入力されたのち、単語1-2が入力され、最後に単語N―Mが入力される。なお、語彙難易度特徴抽出器の入力は、単語に限らず、一つ以上の単語からなるフレーズが含まれていてもよい。
【0059】
語彙難易度特徴抽出器は、単語の分散表現(大規模なテキストや音声)で事前学習する公知のモデルである、Word2Vec、Glove(Global Vectors)、またはfastTextを用いて、CEFRのレベル(CEFRレベル)を予測するモデルを学習させる。fastTextは、ウェブ上にある大規模なテキストで学習し、公開されている公知の事前学習済みモデルである。具体的に、上述のような形態で語彙難易度特徴抽出器に入力データが入力されると、語彙難易度特徴抽出器は、CEFRのレベルが付与されたEnglish Vocabulary Profile(EVP)や、日本語の語彙に対して初級前半から上級後半のレベルを付与した公知の日本語教育語彙表を用いて上記モデルを学習させる。なお、上述したEnglish Vocabulary Profileは、単語やフレーズの語義に対してCEFRレベルが付与された辞書である。
【0060】
図7に例示するように、語彙難易度特徴抽出器は、fastText等のモデルの出力を線形関数に入力し、公知のGELU(Gaussian Error Linear Units)を経たのち、活性化関数に入力し、Softmax関数(Softmax function)を経てCEFRレベルに対応する予測確率のベクトル(例えば、(0.1,0.3,…,0.2))を語彙難易度特徴として出力する。予測確率は、モデルが予測した確率である。語彙難易度特徴抽出器が出力する語彙難易度特徴は、スコア計測部133に入力される。例えば、上記線形関数の重みは、English Vocabulary Profileを用いて事前学習する。なお、単語が多義語の場合、語義の中で一番低いレベルをその単語の正解レベルとして学習してもよい。
【0061】
このように、語彙難易度特徴抽出器の出力である特徴量は、ユーザ発話に含まれる語句の難易度を数値化した特徴量である語彙難易度特徴を含む。語句が多義語であり、語義ごとにレベルが異なる場合(例えば、「support」という英単語において、「助ける」という語義はB1だが、「支持する」という語義はB2である場合)、公知の語義曖昧性解消を行い、語義を特定し、その語義に応じた特徴量を取得してもよい。語義曖昧性解消とは、文章に出現した語句(単語やフレーズ)が、その文脈の中でどのような語義(意味)で使われているのかを判別するタスクである。手法として、例えば、文脈となる文章、語義曖昧性解消を行いたい文章中の対象語句、その語句の定義リストを入力として、定義リストの中から正解となる語義の定義を生成するように学習したT5(Text-to-Text Transfer Transformer)などのモデルがある。また、上記モデルの予測確率や中間層出力のベクトルを、単語の語彙難易度特徴として取得してもよいし、ターン単位(話者が話し始めてから会話のターンが相手に移るまでの時間)でこれらのベクトルをまとめてベクトル列としたものを語彙難易度特徴として取得してもよい。なお、語彙難易度特徴抽出器は、入力データに含まれる音声情報及び映像情報を入力としてもよい。
【0062】
文法誤り特徴を抽出する特徴抽出器、すなわち文法誤り特徴抽出器について説明する。
文法誤り特徴抽出器は、文単位に分割された入力データに含まれる文字情報を入力とし、ユーザ発話の文法誤りを特定し、その文法誤りに関する情報を数値化した特徴量を文法誤り特徴として出力する。例えば、文法誤り特徴抽出器は、GECToR(Grammatical Error Correction: Tag, Not Rewrite)を文法誤り訂正器として利用し、GECToR内部で利用されているRoBERTa(Robustly optimized BERT approach)の最終層の出力(単語単位のベクトル列)を文法誤り特徴として取得してもよい。GECToRとは、文法誤り訂正を系列ラベリングとして解くモデルである。RoBERTaとは、BERTで行われているマスクした単語を予測するタスクにおいて、マスクする単語を学習の進行に応じて動的に変えるなどの仕組みを導入し、BERTを改良したモデルである。また、文法誤り特徴抽出器は、入力データに含まれる音声情報及び映像情報を入力としてもよい。このように、文法誤り特徴抽出器の出力である特徴量は、文法誤りの情報を数値化した特徴量である文法誤り特徴を含む。
【0063】
発音特徴を抽出する特徴抽出器、すなわち発音特徴抽出器について
図8を用いて説明する。
図8は、発音特徴抽出器の一例を示す図である。
図8の中央に実線で囲んでいる部分は発音特徴抽出器であり、点線で囲んでいる部分はスコア計測部133である。
図8に例示するように、発音特徴抽出器は、入力データに含まれる音声情報を入力とし、ユーザが発話した音声の発音の良さについて数値化した特徴量を発音特徴として出力する。一例として、発音特徴とは、発音の正確さ、発音の流暢さ、イントネーションやリズム、及び総合的な発音の良さである。
【0064】
発音特徴抽出器への入力データの形態と発音特徴抽出処理について説明する。入力データの形態はマルチモーダル特徴抽出器と同様に、入力データのうち発話データが発話節単位で、且つ、発話された順に入力される。
【0065】
上述のような形態で発音特徴抽出器に入力データが入力されると、発音特徴抽出器は、まず、公知の学習モデルであるALBERTを用いて、入力データに含まれる文字情報からテキスト特徴(単語単位のベクトル列)を抽出する。また、発音特徴抽出器は、本来発話されるべき音素の特徴量として、文字情報を変換して取得した発音記号列(例えば、公知のARPABET(ARPAbet)やIPA(International Phonetic Alphabet;国際音声記号))を抽出する。抽出した発音記号列は、時系列に発音記号をone-hotベクトル(該当する発音記号の次元が1、それ以外が0のベクトル)に変換し、発音記号列全体をベクトル列としたものを発音記号に関する特徴量(音素特徴)とする。
【0066】
また、発音特徴抽出器は、公知の事前学習済みモデルである、HuBERTを用いて、入力データに含まれる音声情報から特徴量として音声特徴を抽出する。なお、HuBERTは、音声の一部をマスクし、マスクした音声の疑似ラベル(クラスタリングで得られたラベル)を予測するタスクを、大規模な音声データで学習したモデルである。そして、テキスト特徴、音素特徴、及び音声特徴から次に説明するデータセット等を用いて発音の正確さ、発音の流暢さ、イントネーションやリズムの良さ、及び総合的な発音の良さを予測するように、
図8に示したモデルを学習することで発音特徴抽出器を構築する。また、発音特徴抽出器は、入力データに含まれる映像情報を入力としてもよい。
【0067】
発音特徴抽出器の上記モデルにおいて、例えば、公知のspeechocean762のデータセットを用いてモデルに学習させる。speechocean762の場合、非ネイティブ話者の英語発話音声に対して11段階のスコアがアノテーションされている。複雑特徴モデルと同様の損失関数(後述)を用いて評価指標のQuadratic Weighted Kappa(QWK;二次の重み付きカッパ係数)が最大となるようにモデルを学習させておき、その中間層出力(
図8のSelf-Attentionの出力)を発音特徴として取得してもよい。
【0068】
図8に例示するように、発音特徴抽出器は、上述したテキスト特徴、音素特徴、及び音声特徴から後述する処理過程を経て発音特徴を生成する。具体体には、抽出された発音特徴をそれぞれ線形関数に入力し、公知のGELUを経た後、Positional Encodingで系列中の位置情報を付与する。なお、Positional Encodingとは、入力のトークン系列に対して、各トークンが系列中の何番目の位置にあるかを一意に区別するために位置情報を付与する処理のことである。
【0069】
さらに、発音特徴抽出器は、Positional Encodingからの出力をTransformer Encoderに入力する。そして、Transformer Encoderからの各出力をTransformer Encoderによって、テキスト特徴、音素特徴、及び音声特徴から得られた情報を相互作用させる。これにより、Transformer Layerからベクトル列が出力され、このベクトル列を公知のSelf-Attention(セルフアテンション)で一つのベクトルに変換する。なお、Self-Attentionは、対象のベクトル列において、そのベクトル列を構成するあるベクトルから見て他のベクトルをどの程度注目すべきかを計算する手法である。発音特徴抽出器は、Self-Attentionからの出力を線形関数に入力し、Softmax関数を施す。
【0070】
発音特徴抽出器は、上述したSoftmax関数を経て、発音の正確さ、発音の流暢さ、イントネーションやリズム、及び総合的な発音の良さに関して、speechocean762でアノテーションされている11段階のラベル(ラベル0,・・・,ラベル10)の予測確率(なお、ラベル0が最も発音が悪い)を出力する。本システムでは、
図8に例示する4つのSelf-Attentionのそれぞれから出力されるベクトルを発音特徴として、スコア計測部133の複雑特徴モデルや単純特徴モデルに入力する。なお、モデルの最終出力である予測確率を発音特徴として、スコア計測部133の複雑特徴モデルや単純特徴モデルに入力してもよい。このように、発音特徴抽出器の出力である特徴量は、ユーザが発話した音声の発音の良さを数値化した特徴量である発音特徴を含む。
【0071】
談話特徴を抽出する特徴抽出器、すなわち談話特徴抽出器について
図9を用いて説明する。
図9は、談話特徴抽出器の一例を示す図である。談話特徴抽出器は、ユーザと対話エージェントとの間の対話(対話データ)に含まれる文字情報を入力とし、談話特徴を出力する。談話特徴とは、一例として、複数の文や節に跨る談話レベルの韻律的特徴、語彙的特徴、統語的特徴、意味的特徴、機能的特徴、社会的特徴、または文体的特徴を数値化した特徴量である。なお、談話特徴抽出器は、複数の種類の談話的特徴を談話特徴として出力してもよい。例えば、談話特徴抽出器は、
図9に例示するようなユーザ発話の文間に明示的に出現しない談話マーカー(Discourse marker:ディスコース・マーカー,談話標識)を予測するモデルの中間層出力を談話特徴として出力する。
【0072】
図10は、談話マーカーとクラスとの関係の一例を示す図である。
図10の右列は談話マーカーであり、左列は同列の談話マーカーが属するクラス(クラス名)を例示している。談話マーカーとクラスについて
図10を用いて説明する。談話マーカーとは、話者が伝えたいメッセージの意味解釈を聞き手に促すために使われる標識であり、一例として、テキスト的機能、情報的機能、発話態度的機能、及び対人関係調整的機能に分類される。例えば、付加的機能である“in addition”や、逆接・反対・矛盾・譲歩機能である“but”は、テキスト的機能に分類される。また、談話マーカーのクラスは、
図10の左列に例示した分類である。例えば、談話マーカーが“in addition”である場合、当該談話マーカーのクラスが”ADDITION”(付加的機能)であることを例示している。本システムでは、大規模なテキストコーパスにおいて高頻度で使用される談話マーカーをカバーし得るようにクラスを定義してもよい。このようにして、談話特徴抽出器は、談話マーカーのクラスごとに、
図9に例示するモデルを後述する方法で学習し、各モデルの中間層出力を談話特徴として出力する。
【0073】
談話特徴抽出器への入力データの形態と談話特徴抽出処理について説明する。入力データの形態は、ユーザ発話の文字情報を文で区切っているものをターン単位でまとめたものである。なお、ユーザ発話に限らず、システム発話も入力してもよいし、複数ターンにまたがるユーザ発話およびシステム発話を入力してもよい。また、入力データは、文字情報だけでなく、音声情報や映像情報を入力してもよい。さらに、文字情報は文法誤り訂正した後の文字情報でもよい。また、文字情報の区切りの単位は文に限らず、節やフレーズ、単語であってもよい。また、談話特徴抽出器は、入力データに含まれる音声情報及び映像情報や、対話以外の文字情報を入力としてもよい。このように、談話特徴抽出器の出力である特徴量は、ユーザと対話エージェントとの間の対話の談話レベルの言語現象を数値化した特徴量である談話特徴を含む。
【0074】
上述のような形態で談話特徴抽出器に入力データが入力されると、談話特徴抽出器は、公知の学習モデルであるALBERTを用いて、入力データに含まれる文字情報からテキスト特徴(単語単位のベクトル列)を抽出する。談話特徴を取得するためのモデルでは、一例として、公知のテキストコーパスで出現した談話マーカー(
図10参照)をマスクした文章を入力とする。
図11は、ある文の間の談話マーカーをマスクした文章の一例を示す図である。談話マーカーの一部をマスクした文章について
図11を用いて説明する。本システムでは、マスクした部分の前後に存在する文章からマスクした談話マーカーのクラスを予測するように当該モデル(
図9に例示するモデル)を学習させる。具体的に、文章中に
図10に例示した談話マーカーが含まれる場合、本システムでは、
図11に例示するように談話マーカーをマスクする。このようにして、談話特徴を取得するためのモデルでは、マスクした部分(
図11中の四角で囲んでいる部分)の前後に存在する文章から、当該談話マーカーのクラスを予測する。
図11では、マスクされた談話マーカーは“for example”であり、マスクをはさむ前後の文章から、談話マーカー“for example”のクラスである”ILLUSTRATION”を予測するように当該モデルを学習させる。
【0075】
図9に例示するように、談話特徴抽出器は、上述のようにして抽出された談話特徴を、談話マーカーのクラス毎に処理する。具体体には、ALBERTで抽出したテキスト特徴(単語単位のベクトル列)を線形関数に入力し、公知のGELUを経た後、Positional Encodingで系列中の位置情報を付与する。さらに、発音特徴抽出器は、Positional Encodingからの出力をTransformer Encoderに入力し、Transformer Encoderによって単語単位の特徴量を相互作用させる。これにより、Transformer Encoderからベクトル列が出力され、このベクトル列を公知のSelf-Attention(セルフアテンション)で一つのベクトルに変換する。そして、Self-Attentionからの出力を線形関数に入力し、Sigmoid関数(Sigmoid function;シグモイド関数)を施す。
【0076】
談話特徴抽出器は、Self-Attentionの出力ベクトルを談話特徴として出力する。上述したSigmoid関数を経て得られた予測確率を談話特徴としてもよい。本学習済みモデルは、ユーザ発話に含まれる連続する二つの文が特定の談話マーカーで接続できる確率を予測する。本システムでは、
図9に例示するSelf-Attentionのそれぞれから出力されるベクトルの予測確率を出力し、スコア計測部133の複雑特徴モデルや単純特徴モデルに入力される。一例として、本システムでは、
図10に示した26個の談話マーカークラスがあるものとする。具体的には、
図9に例示するように、Self-Attentionのそれぞれから出力されるベクトルは、例えば、文1-1と文1-2,1-3,1-4の間に関する26個の談話マーカークラスについての、予測モデルのSelf-Attentionの出力ベクトルである。
【0077】
共参照特徴を抽出する特徴抽出器、すなわち共参照特徴抽出器について
図12を用いて説明する。
図12は、共参照特徴抽出器の一例を示す図である。共参照特徴抽出器は、同一トピックにおける、ユーザと対話エージェントとの間の対話に含まれる文字情報を入力とし、共参照特徴を出力する。トピックとは、対話シナリオに定義された「朝食」や「旅行」といった話題である。
【0078】
共参照関係について
図13を用いて説明する。
図13は、ユーザと対話エージェントとの間の対話に含まれる共参照関係の一例を示す図である。
図13において、“Speaker”の列は発話者を示しており、例えば“System”の場合には発話者が対話エージェントであり、“User”の場合には発話者がユーザであることを示している。“Sentence”の列は、同じ行の発話者により発話された文章を示している。“ID”の列は、同じ行の“Sentence”に記載された文章の識別子を示している。例えば、“ID”が“3-2-1”である文章は“Tell me about your house.”であり、この文章は対話エージェントにより発話されたことを示している。ここでは、“ID”は、トピック番号-ターン番号―文番号からなるが、これに限られない。なお、入力となるユーザ発話の文字情報は文法誤り訂正後の文字情報であってもよい。
【0079】
図13において、対話エージェントによる発話で符号Aが付されている“your”と、ユーザによる発話で符号Aが付されている“m(M)y”とは、同一の対象を指している。また、
図13において、対話エージェントによる発話で符号Bが付されている“your house”と、ユーザによる発話で符号Bが付されている“My house”とは、同一の対象を指している。また、
図13において、ユーザによる発話で符号Cが付されている、2個所の“my room”は、同一の対象を指している。このような同一の対象を指す語句のペア(組)を共参照関係という。共参照特徴抽出器は、共参照関係にある語句のペア(
図13の符号A,B,C)を特定し、特定した共参照関係を数値化した特徴量を共参照特徴として出力する。
【0080】
共参照特徴抽出器への入力データの形態と共参照特徴抽出器について説明する。共参照特徴抽出器への入力データは、
図12に例示するように、トピック単位のシステム発話とユーザ発話との組み合わせである。
【0081】
共参照特徴抽出器は、共参照関係をアノテーションしたデータセットを用いて、語句間の共参照関係を推定する共参照解析モデル(例えば、LingMess)を学習させる。なお、公知のLingMessは、文章に出現する二つの語句の間に共参照関係が成り立つかを判定する関数を、代名詞と代名詞との関係や、固有名詞と代名詞との関係等のカテゴリごとに学習し、推論時には上記二つの語句がいずれのカテゴリに属するかに応じて関数を使い分けることで高い共参照解析性能を実現するモデルである。共参照特徴抽出器は、この学習済みの共参照解析モデルを用いて共参照特徴を出力する。また、共参照特徴抽出器は、入力データに含まれる音声情報及び映像情報を入力としてもよい。このように、共参照特徴抽出器の出力である特徴量は、ユーザと対話エージェントとの間の対話中の語句間の共参照関係を特定して得られる特徴量である共参照特徴を含む。
【0082】
また、共参照特徴抽出器は、対話エージェントが発話した内容を書き起こした文字情報に加え、文法誤り訂正後のユーザ発話の文字情報を入力とし、上述した共参照解析モデルで特定された共参照関係にある語句(単語列)の埋め込み表現(例えば、LingMessの内部で使用されている公知のLongformerの最終層の出力)の集合を、出現順序が早いものから順番に出力してもよい。埋め込み表現とは、単語などのシンボルを高次元の実数値ベクトルで表現したものである。なお、Longformerは、BERT等に比べてより長い文章を処理できるように改良したモデルである。
【0083】
ここでは、上述のLingMessでは、Longformerの単語埋め込み表現を利用している。具体的に、LingMessでは、LingMessの出力において、
図13に例示する符号A,B,Cのように共参照関係にある語句を特定した後、該当する語句の単語埋め込み表現をLingMess内のLongformerから獲得する。この際、語句が複数の単語から構成されている場合、語句を構成する各単語の埋め込み表現の和を取り、一つのベクトル表現を作成する。
【0084】
常識特徴を抽出する特徴抽出器、すなわち常識特徴抽出器について説明する。常識特徴抽出器は、ユーザ発話の文字情報を入力とし、常識特徴を出力する。常識特徴とは、常識をもった人間が、ユーザ発話から主体となる人物の意図や性格を推定した際に得られる特徴量である。例えば、「コンビニに行った」という発話があった場合、主体となる人物の意図として、「何か買いたいものがあった」ということが推察される。また、「疲れている同僚にコーヒーを入れてあげた」という発話からは、主体となる人物の性格として、「気遣いができる」という性格が推察される。なお、常識特徴抽出器は、ユーザ発話の文字情報をそのまま(加工せずに)入力としてもよいし、前処理として文法誤り訂正を施して文単位に分割した文字情報を入力としてもよい。
【0085】
例えば、常識特徴抽出器は、上述のような推察(推論)関係をアノテーションしたデータセットを用いて、公知のCOMET等の常識推論モデルを学習させておき、事前学習済みの常識推論モデルを用いて常識特徴を出力する。このように、常識特徴抽出器の出力である特徴量は、常識をもった人間がユーザ発話から主体となる人物の意図や性格を推定した際に得られる特徴量である。一例として、常識特徴抽出器は、公知のATOMICのような知識グラフをデータセットとして用いて常識推論モデルを学習させ、学習済みの常識推論モデルの中間層出力を常識特徴として出力してもよい。なお、ATOMICは、XとYという人同士が会話を交わした際、XがYを褒めると、YはXに誉め言葉を返す可能性が高い、といった日常における常識的な推論知識をif-then関係で記述したデータベースである。また、COMETは、ATOMIC等のデータを用いて、ifのテキスト(XがYを褒めた)の入力に対して、thenのテキスト(YはXに誉め言葉を返すだろう)を出力するようにTransformerを学習したモデルである。
【0086】
人手設計特徴を抽出する特徴抽出器、すなわち人手設計特徴抽出器について説明する。人手設計特徴抽出器は、ターン単位での対話エージェントの発話とそれに対するユーザ発話の文字情報や音声情報を入力とし、人手設計特徴を出力する。人手設計特徴とは、人間の専門的な知見に基づいて設計された特徴量である。人手設計特徴抽出器は、一例として、第二言語習得研究の知見に基づいて人手設計特徴を求める。例えば、流暢さについては、発話の長さ、空白(間(ま))の長さ、1秒間の発話単語数、及びフィラー(例えば、“uh”,“um”)の数を抽出し、これに基づき人手設計特徴を求める。また、例えば、語彙の豊富さについては、語句に対してレベルが付与された辞書を用意しておき、ユーザ発話中に、いずれのレベルの語句がいくつ含まれていたかという頻度や割合を抽出し、これに基づき人手設計特徴を求める。また、例えば、一貫性については、ユーザ発話中に出現する談話マーカーの頻度や割合を計算し、これに基づき人手設計特徴を求める。このように、人手設計特徴抽出器の出力である特徴量は、人間の専門的な知見に基づいて設計された特徴量である人手設計特徴を含む。
【0087】
なお、言語特徴抽出部131は、多言語の言語特徴を出力する場合、言語毎に異なる特徴抽出器を備え、多言語からなる入力データを入力として言語特徴を抽出してもよい、また、大規模な多言語のデータセットで事前学習したモデルを利用して共通の特徴抽出器から言語特徴を抽出してもよい。この場合、入力データは、単一言語からなるデータであっても、複数の言語が混在するデータであってもよい。また、例えば、状況に応じて複数の言語を切り替える能力(プルリリンガル)を測定したい場合などは、同一対話タスク内で複数の言語が混在する状況を想定してもよい。
【0088】
図4に戻り、言語能力計測部132について説明する。
図5を参照すると、言語能力計測部132は、言語特徴抽出部131で抽出した言語特徴を入力として、スコア、及びスコアの根拠を出力する。スコアは、特定の指標(例えば、語彙の豊富さ,文法の正しさ,流暢さ)のユーザの言語能力を数値化したものであり、また、サービス提供者やシステム設計者が事前に定義するものとしたが、これに限られない。指標とスコアについては
図14を用いて後に詳述する。
【0089】
言語能力計測部132は、スコア計測部133と根拠抽出部134とを備える。スコア計測部133は、言語特徴抽出部131で抽出した言語特徴を入力として、スコアを出力する。例えば、言語能力計測部132は、言語特徴抽出部131の出力値をスコア計測用の機械学習モデル(スコア計測用機械学習モデル)に入力することにより、所定の指標に基づきスコア計測を実施する。
図5に例示するように、言語能力計測部132において、人間評価者、複雑特徴モデル、及び単純特徴モデルとの間で学習と評価とのプロセスが実行されることにより、スコア計測用機械学習モデルの予測精度を改善する。なお、言語特徴をスコアに変換するアルゴリズムは、統計的な手法でもよいし、また、ルールベースであってもよい。
【0090】
スコア計測部133の機能構成の前に、スコア計測部133が求める各指標に対するスコアについて
図14を用いて説明する。
図14は、スコア計測部133によって求められる各指標に対するスコアの一例を示す図である。
図14の上段は指標、下段は各指標に対するユーザのスコアである。本システムにおいてCEFRを指標として用いる場合、スコア計測部133は、一例として、
図14に例示するように、語彙の豊富さ(Range)、文法の正確さ(Accuracy)、流暢さ(Fluency)、発音の良さ(Phonology)、やり取りの良さ(Interaction)、一貫性(Coherence)、及び総合的な習熟度(Overall)の7つの指標に対して、ユーザの各スコアを求める。
【0091】
また、
図14の下段に例示するように、スコア計測部133は、スコアとしてCEFRレベル(離散的なスコア)と連続値のスコア(
図14中の括弧書き)とを求める。本システムでは、一例として、CEFRレベルを、A1、A2、B1、B2、C1、及びC2の離散的なスコアうちのいずれかで表す。この記載は、公知のCEFRレベルの記載に基づく。A1は最低のCEFRレベルであり、C2は最高のCEFRレベルであり、A1からC2にかけて当該指標の習熟度が高いことを示す。また、一例として、連続値のスコアは、0~6の間の数値(小数点以下2桁)で表し、0から6にかけて習熟度が高いことを示す。なお、上記連続値のスコアは一例にすぎず、小数点以下2桁には限られない。
【0092】
CEFRレベルと連続値のスコアとの間には関連性があり、連続値のスコアが0.00から1.00の間の場合にはCEFRレベルをA1、連続値のスコアが1.01から2.00の間の場合にはCEFRレベルをA2、連続値のスコアが2.01から3.00の間の場合にはCEFRレベルをB1、連続値のスコアが3.01から4.00の間の場合にはCEFRレベルをB2、連続値のスコアが4.01から5.00の間の場合にはCEFRレベルをC1、連続値のスコアが5.01から6.00の間の場合にはCEFRレベルをC2と定義しているが、これに限られない。
図14では、語彙の豊富さという指標に対するユーザのCEFRレベル(離散的なスコア)はC2であり、離散的なスコアは5.54であることを示している。
【0093】
また、本システムにおいて、言語能力計測部132は、CEFRレベルと離散的なスコアとの両方を出力してもよいし、いずれか一つを出力してもよい。また、言語能力計測部132が出力するスコアは、回帰問題の連続値や、分類問題の確率や、特定のレベルやカテゴリのIDを示す離散値であってもよい。例えば、CEFRレベルを指標として用いる場合、A1を0~1、A2を1~2、・・・、C2を5~6のように定め、人間がアノテーションした1.2のような連続値を正解として回帰モデルによってその連続値を推定してもよいし、人間がアノテーションしたA1、A2、・・・、C2といった離散的なラベルをA1=[1,0,0,0,0,0]、A2=[0,1,0,0,0,0]、・・・、C2=[0,0,0,0,0,1]のようなone-hotベクトル(ワンホットベクトル)で表し、Softmax関数により各ラベルの確率を予測し、求めた確率が最大となったCEFRレベル(A1,A2,B1,B2,C1,C2のうち確率が最大となったCEFRレベル)をスコアとしてもよい。
【0094】
また、言語能力計測部132は、多クラス分類問題を公知のOne-vs-Rest(一対他)の二値クラス分類問題に分解(例えば、A1と他のCEFRレベル)してスコアを求めてもよい。また、多クラス分類問題を公知のOne-vs-One(一対一)の二値クラス分類問題に分解(例えば、A1とA2)してスコアを求めてもよい。また、アルゴリズムに機械学習の手法を用いる場合、指標毎にモデルを備える構成としてもよいし、マルチタスク学習により複数の指標のスコアを単一モデルで出力する構成としてもよい。さらに、最終的なスコアは、一つの学習済みモデルの出力に限らず、そのモデルの出力をさらに別のモデルの入力としてアンサンブル学習したモデルの出力であってもよい。
【0095】
また、本システムにおいて、指標はCEFRに限られず、対話者とユーザの親密度(ラポール)であってもよい。その場合、対話者は、人間であってもよいし、プログラムを備えるエージェントやロボットであってもよい。また、指標は、例えば公知のビッグファイブ(特性5因子理論)のようなユーザのパーソナリティ特性であってもよい。
【0096】
図5を参照しながら、スコア計測部133の機能構成について説明する。スコア計測部133は、
図5に例示するように、スコア計測用の機械学習モデルとして、複雑特徴モデルと単純特徴モデルとを備え、さらに、スコア変換器を備える。
【0097】
複雑特徴モデルとは、言語特徴抽出部131で抽出された種々の言語特徴を用いてスコアを予測する機械学習モデルである。また、
図5に例示するように、本システムでは、スコア計測部133の出力、すなわち、複雑特徴モデルや単純特徴モデルの出力が正しいか否かを人間評価者が確認する。一例として、人間評価者は、ユーザと対話エージェントとが対話している動画を確認し、CEFRの7つの各指標(語彙の豊富さ、文法の正確さ、流暢さ、発音の良さ、やり取りの良さ、一貫性、及び総合的な習熟度)に対して、スコアとしてA1~C2のCEFRレベルをアノテーションする。また、上述のCEFRの7つの各指標に対して連続値のスコアをアノテーションしてもよい。また、人間評価者は特定の指標の出力のみをアノテーションしてもよい。
【0098】
ここで、スコア計測部133の出力がどれだけ信用できるかを数値化した尺度を確信度と定義する。なお、公知の手法で確信度を計算して当該確信度の低い出力と入力データのペアを人間評価者が優先的に確認するようにしてもよい。一例として、複雑特徴モデルによる予測(予測結果)が正解だったときの確率分布と、正解ではなかったときの確率分布とを求め、新たな予測(予測結果)がどちらの確率分布にどの程度属するかの比率に基づいて確信度を計算してもよい。また、
図5に例示するように、本システムでは、人間評価者が複雑特徴モデルや単純特徴モデルの出力を確認するものとしたが、人間評価者を備えず(介さず)、複雑特徴モデルや単純特徴モデルの出力を正解としてもよい。
【0099】
複雑特徴モデルの学習について説明する。1サイクル目である複雑特徴モデルの初期モデルは、上述したように、人間評価者がユーザと対話エージェントとの対話データに対してアノテーションしたCEFRレベル(A1~C2;正解)を予測するように学習を行う。すなわち、複雑特徴モデルの初期モデルは、人間評価者が入力データを確認して正解をアノテーションした学習データ(データセット)で学習する。
【0100】
2サイクル目以降は、人間評価者による確認プロセスにおいて複雑特徴モデルの出力に誤りが発見された場合、人間評価者が正しいスコアをアノテーションし、学習データに加える。なお、学習データに加えるアノテーションデータは、誤りを訂正したアノテーションデータに限らず、人間が複雑特徴モデルの出力を確認し、その結果が正解であった場合においても、人間が正解と評価したスコアとして新たに学習データ(データセット)に追加されてもよい。複雑特徴モデルは、新たに追加された学習データを用いて複雑特徴モデルを再学習させる。再学習では、新しくアノテーションされたデータのみを使用して学習済みのモデルをファインチューニングしてもよいし、新しくアノテーションされたデータを既存の学習データに加えたデータセットでモデルを一から学習し直してもよい。
【0101】
本システムにおいて、複雑特徴モデル、及び単純特徴モデル(以下、スコア計測用機械学習モデル)は、損失関数を用いて入力データから人間評価者がアノテーションしたCEFRレベルを予測するように学習が行われるものとする。この損失関数について説明する。スコア計測用機械学習モデルにおいて、損失関数を用いて、人間評価者がアノテーションしたCEFRレベルを予測するように学習が行われる。本システムでは、損失関数として、公知のペナルティ項を備えるコスト考慮型の損失関数(LCS)を導入する。これは、A1という正解に対しスコア計測用機械学習モデルの出力がC2であった場合の方が、スコア計測用機械学習モデルの出力がA2であった場合よりも、ペナルティを重くするためである。コスト考慮型の損失関数について数式1~数式4を用いて説明する。全体の損失関数(L)は数式1により求められる。
【0102】
【数1】
ここで、L
csは、コスト考慮型の損失関数である。マルチタスク学習を行うため、CEFRの各指標に関する損失関数(L
k
cs)の和を全体の損失関数(L)と定める。指標毎の損失関数(L
cs)は数式2により求められる。
【0103】
【数2】
数式2では、コスト考慮型の損失関数(L
cs)を、Focal Loss(L
FL,第一項)とコスト項(第二項)との和で定義している。ここで、第一項のL
FLは損失関数Focal Loss(FL)である。第二項において、αはハイパーパラメータであり、ベースの損失関数であるFocal Lossに対してコスト項(第二項)をどの程度重視するかを調節する。Nは学習データのサンプル数である。また、M
βはコスト行列であり、以下数式4において詳述する。M
β(y
n,・)はコスト行列M
βのy
n行目のコストベクトルを取得する操作を表す。y
nはサンプルnの正解クラスのインデックスを表す。例えば、y
nが1ならばA1を表し、y
nが2ならばA2を表す。p
nはC次元の予測確率のベクトルを表しており、1次元目はA1の予測確率、2次元目はA2の予測確率である。<Mβ(yn,・),p
n>は、正解がy
nであったときのコストベクトルと予測確率ベクトルp
nとの内積を表す。本システムでは、サンプル数が少ないクラスなど分類に困難性のあるサンプルの重要度を上げて学習させることを可能にするため、Focal Lossを用いるが、これに限られない。Focal Loss(L
FL)は数式3により求められる。
【0104】
【数3】
数式3では、Focal Loss(L
FL)が、サンプル数が少ないクラスなど分類に困難性のあるサンプルの重要度を上げて学習できるように、公知の損失関数であるCross Entropy Loss(交差エントロピー誤差)を拡張した損失関数であることを定義している。ここで、Nは学習データのサンプル数であり、CはCEFRレベル(A1,A2,…,C2)である。また、y
ncはサンプルnがクラスcに属する真の確率であり、サンプルnの正解クラスがA2のとき、yn1=0(A1)、yn2=1(A2)、・・・、yn6=0(C2)である。また、p
ncはサンプルnがクラスcに属する確率をモデルが予測した値である。また、γは分類が簡単なサンプルの重要度をどの程度下げるかを調節するハイパーパラメータである。また、M
β
ijは数式3により求められる。
【0105】
【数4】
数式4に示すM
β
ijは、クラス間の距離に応じてペナルティを大きくするためのコスト行列である。βは距離に応じたペナルティをどの程度大きくするかを調節するハイパーパラメータである。iとjとは二つのクラス間の距離であり、クラス間の距離が離れるほどペナルティが大きくなる。具体的には、正解がA1である場合、誤ってA2と予測した場合のペナルティよりも、誤ってC2と予測した場合のペナルティの方が大きくなる。
【0106】
本システムでは、数式1~数式4により求められる損失関数を用いてスコア計測用機械学習モデルの学習を行う。学習済みモデルは、入力データに対して合計が1となるようにA1~C2の各予測確率を出力する。本システムでは、一例として、この重み付き和をスコアとする。
【0107】
本システムにおいて、評価指標としてQWKを予め定めておき、スコア計測部133は、最もQWKが高くなるように(人間評価者の分類基準に最も合うように)、上記スコアをCEFRレベルに変換する際の境界、すなわち、A1とA2との境界、A2とB1との境界、・・・、及びC1とC2との境界を最適化する。
【0108】
図15は、スコアの境界が最適化された後の境界間の間隔が不均衡な状態のスコアを均等になるように正規化する手法の概念の一例を示す図である。本システムにおける正規化手法について
図15を用いて説明する。
図15の上部には、スコアの境界が最適になるように調整された後(正規化前)のCEFRレベルと連続値のスコアとの関係を例示し、下部には正規化後のCEFRレベルと連続値のスコアとの関係を例示する。
図15下部の正規化後のCEFRレベルと連続値のスコアとの関係は、上部の正規化前のCEFRレベルと連続値のスコアとの関係に対してレベルの境界の間隔が均等になるように正規化したものである。
【0109】
また、
図15中のA1~C2はCEFRレベルである。また、
図15中の“a”は正規化前のB1とB2の境界値(連続値)であり、“b”は正規化前のB2とC1の境界値である。また、
図15中の“a’”は正規化後のB1とB2の境界値であり、“b’”は正規化後のB2とC1の境界値である。また、
図15中の“1.00”や“2.10”等も正規化前後の各CEFRレベルの境界値を図示している。また、
図15中の“x”は正規化前のスコアであり、“x’”は正規化後のスコアである。ユーザには正規化後の“x’”のスコアが提示される。
【0110】
スコア計測用機械学習モデルから出力された確率のベクトルをスコアに変換し、不均衡な境界値を正規化する処理を数式5~数式7に基づき行う。
【0111】
【数5】
数式5は、複雑特徴モデルや単純特徴モデルの出力から得られた予測確率(CEFRレベルのA1~C2に対応する6次元のベクトル)をスコアに変換する式である。Cはクラス数、すなわち、CEFRレベルのA1~C2の6クラスを表す。p
cはクラスc(CEFRレベル)の予測確率を表す。p
cは数式6を満たす。
【0112】
【数6】
数式6は、複雑特徴モデルや単純特徴モデルのSoftmax関数で得られたCEFRレベルごとの予測確率の和が1であることを表す。数式5で得られたスコア“x”を数式7で正規化したスコア“x’”をユーザに提示する。
【0113】
【数7】
数式7は、上記最適化処理により不均衡となったレベル間の境界を均等に正規化し、正規化後のスコアを取得するための計算式である。なお、この数式5から数式7までの処理は、スコア変換器によって行われるものとするが、これに限られない。
【0114】
本システムでは、一例として、スコア計測部133が、CEFR指標ごとにアンサンブルモデル(Ensemble Model)の出力とコアモデル(
図16の各言語特徴のエンコーダからSoftmax関数までの構成)の出力とを比較し、性能が高い方の出力を採用するものとする。アンサンブルモデルは、コアモデルの各指標の出力を結合して公知のアンサンブル学習したモデルである。一例として、複雑特徴モデルのアンサンブルモデルおよびコアモデルは、人間評価者がアノテーションしたデータセットを訓練セットとテストセットに分割したうえで、各モデルを訓練セットで学習し、テストセットで性能(QWK)を評価する。このテストセット上でのCEFR指標ごとのQWKをアンサンブルモデルとコアモデルで比較し、例えば、語彙の豊富さの指標について、アンサンブルモデルのQWKがコアモデルのQWKよりも大きい場合、運用時の語彙の豊富さの指標については、アンサンブルモデルの出力を採用する。また、流暢さの指標について、コアモデルのQWKがアンサンブルモデルのQWKよりも大きい場合、運用時の流暢さの指標については、コアモデルの出力を採用する。なお、これは一例にすぎず、上記態様には限られない。
【0115】
本システムでは、公知のTeacher-Student学習に基づき、複雑特徴モデルをTeacherモデルとし、単純特徴モデルをStudentモデルとし、複雑特徴モデル(Teacherモデル)の出力を再現(模倣,近似)できるように単純特徴モデル(Studentモデル)を学習させておくものとする。なお、単純特徴モデル(Studentモデル)は、複雑特徴モデル(Teacherモデル)に比べて軽量である。つまり、単純特徴モデルは複雑特徴モデルよりもパラメータ数が少なく、実行時のメモリ消費量が小さく、特徴量が入力されてから出力を得るまでの処理時間が短い。また、単純特徴モデルに入力される特徴量は複雑特徴モデルと同じとは限らず、単純特徴モデル用の特徴抽出器から出力された特徴量を入力してもよい。
【0116】
図16は、スコア計測部133の複雑特徴モデルの概念の一例を示す図である。
図16を用いてスコア計測部133の複雑特徴モデルの概念の一例について説明する。
図16には、各種言語特徴をエンコードした各エンコーダからの出力を公知のTransformer Encoderに入力し、そのTransformer Encoderで各エンコーダから出力される異なる種類の言語特徴間の相互作用をとった後、CEFRの各指標の予測に特化したネットワーク(Self-Attentionと線形関数)を経て、各指標のCEFRレベルを予測する構造をもつコアモデルの出力を受け取り、再度各指標の予測を行うアンサンブルモデルを備える複雑特徴モデルを例示する。
【0117】
本システムにおいてCEFRを指標として用いる場合、一例として、複雑特徴モデルは、各種エンコーダとして、テキスト特徴エンコーダ(Interactive Text Feature Encoder)、マルチモーダル特徴エンコーダ(Multimodal Feature Encoder)、語彙難易度特徴エンコーダ(Vocabulary Difficulty Feature Encoder)、文法誤り特徴エンコーダ(Grammatical Error Feature Encoder)、発音特徴エンコーダ(Pronunciation Feature Encoder)、談話特徴エンコーダ(Discourse Feature Encoder)、共参照特徴エンコーダ(Coreference Feature Encoder)、常識特徴エンコーダ(Commonsense Feature Encoder)、及び人手設計特徴エンコーダ(SLA Inspired Feature Encoder)を備える。
【0118】
スコア計測部133の各エンコーダは言語特徴抽出部131が備える各種特徴抽出器と対応しており、例えば、テキスト特徴を出力する特徴抽出器からの出力は、テキスト特徴エンコーダに入力される。各種エンコーダは、言語特徴抽出部131の各種特徴抽出器が出力する言語特徴を受け取り、各言語特徴をエンコードしてベクトル列を出力するネットワークである。これらの各エンコーダについて
図17及び
図18を用いて説明する。
【0119】
マルチモーダル特徴エンコーダについて
図17を用いて説明する。
図17は、マルチモーダル特徴エンコーダの処理の流れの一例を示す図である。なお、点線で囲んでいる部分は言語特徴抽出部131のマルチモーダル特徴抽出器であり、実線で囲んでいる部分はスコア計測部133(言語能力計測部132)における複雑特徴モデルのマルチモーダル特徴エンコーダ(
図16参照)である。
図6を用いて上述したように、マルチモーダル特徴抽出器からは、発話節単位に分割された入力データ(文字情報、音声情報、及び映像情報)に関する特徴量が、時系列にマルチモーダル特徴エンコーダに入力される。なお、
図17に例示する最上位のTransformer Encoderからの出力は、
図16に例示した複雑特徴モデルのコアモデルのTransformer Encoderに入力される。マルチモーダル特徴エンコーダのネットワークの重みは、複雑特徴モデルの学習の中で更新される。
【0120】
図17に例示するように、マルチモーダル特徴エンコーダは、言語特徴抽出部131のマルチモーダル特徴抽出器におけるALBERTで取得した文字情報に関する特徴量(テキスト特徴、すなわち単語単位のベクトル列)と、AV-HuBERTで取得した音声情報と映像情報とに関する特徴量(音声映像特徴、すなわちフレーム単位のベクトル列)とを線形関数に入力する。ここで、テキスト特徴と音声映像特徴は同じ次元のベクトルに変換される。その後、公知の活性化関数であるGELUを経て、上述したCo-attention Transformer Layerと、その上層に設けたTransformer Encoderとによってテキスト特徴と音声映像特徴とを相互作用させたベクトル列が得られる。
【0121】
上述した過程を経て、
図17の下層のTransformer Encoderから得られたベクトル列に対し、公知のSelf-Attentionで一つのベクトルに変換する。ここまでの処理で、入力された発話節の文字情報、音声情報、及び映像情報の3つのモーダルの情報が融合されたベクトルが得られる。その後、各発話データから生成されたベクトルは時系列にPositional Encodingで順序を保持しつつ
図17における最上位のTransformer Encoderに入力する。マルチモーダル特徴エンコーダは、この最上位のTransformer Encoderまでの処理を経て、異なる発話節から得られた特徴量(発話節の文字情報、音声情報、及び映像情報が埋め込まれたベクトル)間で相互作用されたベクトル列を出力する。
【0122】
図18は、上述したマルチモーダル特徴エンコーダ以外のエンコーダの処理の流れの一例を示す図である。
図18において、点線で囲んでいる部分は、言語特徴抽出部131内のマルチモーダル特徴抽出器以外の特徴抽出器、すなわち、テキスト特徴抽出器、語彙難易度特徴抽出器、文法誤り特徴抽出器、発音特徴抽出器、談話特徴抽出器、共参照特徴抽出器、常識特徴抽出器、及び人手設計特徴抽出器である。実線で囲んでいる部分は、マルチモーダル特徴エンコーダ以外のエンコーダの構成である。これらのエンコーダは、それぞれ、スコア計測部133(言語能力計測部132)内の、マルチモーダル特徴エンコーダ以外のエンコーダ、すなわち、テキスト特徴エンコーダ、語彙難易度特徴エンコーダ、文法誤り特徴エンコーダ、発音特徴エンコーダ、語彙難易度特徴エンコーダ談話特徴エンコーダ、共参照特徴エンコーダ、常識特徴エンコーダ、及び人手設計特徴エンコーダである。
【0123】
本システムでは、同一の特徴抽出器から抽出された同一種類の特徴量の相互作用が各エンコーダ内部で行われる。具体的に、同一種類の特徴量間の相互作用は、マルチモーダル特徴であれば、
図17に例示した最上位のTransformer Encoderにて行われ、その他の特徴量であれば、
図18に例示するTransformer Encoderにて行われる。また、異なる特徴抽出器から抽出された異なる種類の特徴量間の相互作用は、
図16の複雑特徴モデルのコアモデルのTransformer Encoderによって行われる。
【0124】
図18に例示するように、マルチモーダル特徴エンコーダ以外のエンコーダ、すなわち、テキスト特徴エンコーダ、語彙難易度特徴エンコーダ、文法誤り特徴エンコーダ、発音特徴エンコーダ、談話特徴エンコーダ、共参照特徴エンコーダ、常識特徴エンコーダ、及び人手設計特徴エンコーダは、それぞれ、対応する特徴抽出器から特徴量に関するデータを受け取り、線形関数に入力する。そして、公知のGELUの活性化関数を経て、ベクトル列を公知のSelf-Attentionに入力する。そして、Self-Attentionから出力されたベクトルは、Positional Encodingで位置情報を付与した後、Transformer Encoderに入力される。なお、
図18に例示するTransformer Encoderからの出力は、
図16に例示した複雑特徴モデルのコアモデルのTransformer Encoderに入力される。各エンコーダのネットワークの重みは、複雑特徴モデルの学習の中で更新される。マルチモーダル特徴エンコーダ以外の各エンコーダについて説明する。
【0125】
テキスト特徴エンコーダは、上述したように、テキスト特徴抽出器から出力されるテキスト特徴(具体的には、システム発話およびユーザ発話に含まれる文をテキスト特徴抽出器に入力して得られた単語ベクトル列(ALBERTの出力)をすべての文から取得した単語ベクトル列の集合)を受け取り、時系列にベクトル列を線形関数に入力し、Self-Attentionまでの処理を終えた後、Positional Encodingで位置情報を付与し、Transformer Encoderにおいて特徴量間の相互作用が行われる。テキスト特徴エンコーダのネットワークの重みは、複雑特徴モデルの学習の中で更新される。
【0126】
語彙難易度特徴エンコーダは、上述したように、語彙難易度特徴抽出器から出力される語彙難易度特徴(具体的には、
図7に例示したユーザ発話における単語ごとの語彙難易度特徴抽出器の出力(ベクトル)をターン単位でまとめたベクトル列を、全てのユーザ発話から取得したベクトル列の集合)を受け取り、時系列にベクトル列を線形関数に入力し、Self-Attentionまでの処理を終えた後、Positional Encodingで位置情報を付与し、Transformer Encoderにおいて特徴量間の相互作用が行われる。語彙難易度特徴エンコーダのネットワークの重みは、複雑特徴モデルの学習の中で更新される。
【0127】
文法誤り特徴エンコーダでは、上述したように、文法誤り特徴抽出器から出力される文法誤り特徴(具体的には、ユーザ発話の文を文法誤り特徴抽出器に入力して得られた単語ベクトル列(GECToR中のRoBERTaの出力)をすべてのユーザ発話の文から取得したベクトル列の集合)を受け取り、時系列にベクトル列を線形関数に入力し、Self-Attentionまでの処理を終えた後、Positional Encodingで位置情報を付与し、Transformer Encoderにおいて特徴量間の相互作用が行われる。文法誤り特徴エンコーダのネットワークの重みは、複雑特徴モデルの学習の中で更新される。
【0128】
発音特徴エンコーダは、上述したように、発音特徴抽出器から出力される発音特徴(具体的には、
図8に例示したSelf-Attentionの出力(4つのベクトル、すなわちベクトル列)をすべての発話節から取得したベクトル列の集合)を受け取り、時系列にベクトル列を線形関数に入力し、Self-Attentionまでの処理を終えた後、Positional Encodingで位置情報を付与し、Transformer Encoderにおいて特徴量間の相互作用が行われる。発音特徴エンコーダのネットワークの重みは、複雑特徴モデルの学習の中で更新される。
【0129】
談話特徴エンコーダは、上述したように、談話特徴抽出器から出力される談話特徴(具体的には、
図9に例示した、例えば、文1-1と文1-2との間について、
図10に例示した26個の談話マーカークラスを予測した際のSelf-Attentionの出力(26個のベクトル、すなわちベクトル列)をすべてのユーザ発話の文間から取得したベクトル列の集合)を受け取り、時系列にベクトル列を線形関数に入力し、Self-Attentionまでの処理を終えた後、Positional Encodingで位置情報を付与し、Transformer Encoderにおいて特徴量間の相互作用が行われる。談話特徴エンコーダのネットワークの重みは、複雑特徴モデルの学習の中で更新される。
【0130】
共参照特徴エンコーダについて説明する。共参照特徴エンコーダは、上述したように、共参照特徴抽出器から出力される共参照特徴(具体的には、
図12に例示したように、トピック単位の文字情報を共参照特徴抽出器に入力して、共参照解析モデルで特定された共参照関係にある語句(単語列)の埋め込みベクトルを同じ共参照関係にある語句全体でまとめたベクトル列を、全ての共参照関係にある語句について取得したベクトル列の集合)を受け取り、時系列にベクトル列を線形関数に入力し、Self-Attentionまでの処理を終えた後、Positional Encodingで位置情報を付与し、Transformer Encoderにおいて特徴量間の相互作用が行われる。共参照特徴エンコーダのネットワークの重みは、複雑特徴モデルの学習の中で更新される。
【0131】
人手設計特徴エンコーダについて説明する。人手設計特徴エンコーダは、上述したように、人手設計特徴抽出器から出力される人手設計特徴(具体的には、例えば、フィラーの数であれば、あるターンのユーザ発話に含まれるフィラーの数がベクトルの特定の次元の数値となり、同様に全ての人手設計特徴についてベクトルの各次元の数値を埋めたベクトルを同一トピックの全ターンについてまとめたベクトル列をさらに全てのトピックについて取得したベクトル列の集合)を受け取り、時系列にベクトル列を線形関数に入力し、Self-Attentionまでの処理を終えた後、Positional Encodingで位置情報を付与し、Transformer Encoderにおいて特徴量間の相互作用が行われる。人手設計特徴エンコーダのネットワークの重みは、複雑特徴モデルの学習の中で更新される。
【0132】
図16に例示した通り、上述した各種エンコーダが出力するベクトル列は、Transformer Encoderに入力される。トランスフォーマエンコーダは、各種特徴抽出器から出力される言語特徴が相互に影響し合って得られたベクトル列を各CEFR指標に特化したそれぞれのネットワーク(Self-Attentionと線形関数との組み合わせ)に入力する。ネットワークは、ベクトル列を入力とし、Softmax関数を用いて各CEFR指標のレベルの確率を出力する。
【0133】
アンサンブルモデルは、コアモデルの各CEFR指標のレベルの予測確率を入力とし、特定のCEFR指標の予測に際し、コアモデルにおける他のCEFR指標の予測確率も考慮して再考した数値を出力する。
図19は、複雑特徴モデルにおける総合的な習熟度を出力するアンサンブルモデルの一例を示す図である。スコア計測部133の複雑特徴モデルにおいて、総合的な習熟度を出力するアンサンブルモデルの処理の流れについて
図19を用いて説明する。
図19に例示するように、本システムのスコア計測部133では、コアモデルからの各指標の出力を結合して、総合的な習熟度の予測確率を再計算する。例えば、本システムのスコア計測部133は、再計算した予測確率について、上述したGELUの活性化関数を用い、公知のドロップアウトで過学習を抑える。スコア計測部133は、公知のレイヤノーマライゼーション(Layer normalization; レイヤー正規化)を用いて、ドロップアウトからの入力データの平均と分散を正規化する。アンサンブルモデルは、最後に線形関数からの出力に対し、Softmax関数を適用して、再計算した総合的な習熟度の予測確率を出力する。語彙の豊富さや文法の正しさなどについても同様のアンサンブルモデルの構成をとる。
【0134】
図5に戻り、
図20を参照しながら、スコア計測部133の単純特徴モデルについて説明する。
図20は、単純特徴モデルの処理の流れの一例を示す図である。
図16に例示したように、複雑特徴モデルが、多種多様な言語特徴を入力とし、これらを相互作用させることで高い予測性能を獲得するのに対し、単純特徴モデルは厳選された特徴量(例えば、テキスト特徴のみや、人手設計特徴の中の特定の特徴量のみ)を入力とし、これに対するレベルを予測するものである。また、予測する指標も一つに絞られることがある。例えば、流暢さに効果がある特定の人手設計特徴を入力とし、流暢さ(Fluency)のCEFRレベルのみを予測する単純特徴モデルがある。具体的に、
図20には、CEFRの指標における語彙の豊富さ(Range)のレベル(A1~C2)を予測する単純特徴モデルを例示する。
図20に点線で囲んでいる部分は、単純特徴モデルの特徴抽出器、すなわち、テキスト特徴抽出器であり、実線で囲んでいる部分は単純特徴モデルである。単純特徴モデルの特徴抽出器は、対話エージェントとユーザ発話の対話テキスト全体の単語系列を入力として、Longformerの最終層の出力(単語単位のベクトル列)を言語特徴として出力する。
【0135】
図20に例示するように、単純特徴モデルは、この単純特徴モデルの特徴抽出器から出力された言語特徴(単語単位のベクトル列)を線形関数に入力する。この線形関数からの出力に対して公知のGELUを施し、得られたベクトル列に対してPositional Encodingで位置情報を付与した後、Transformer Encoderに入力する。そして、Transformer Encoderから出力されたベクトル列を公知のSelf-Attentionで一つのベクトルに変換する。単純特徴モデルは、Self-Attentionからの出力を線形関数に入力し、Softmax関数を経てCEFRレベル(A1, A2, …,C2)の予測確率を出力する。
【0136】
また、単純特徴モデルは、上述したように、公知のTeacher-Student学習に基づき、複雑特徴モデルをTeacherモデルとし、単純特徴モデルをStudentモデルとし、複雑特徴モデル(Teacherモデル)の出力を再現(模倣,近似)できるように単純特徴モデル(Studentモデル)を学習させてもよいし、人間評価者によるアノテーションデータで学習してもよい。また、上述した人間評価者による確認プロセスは、単純特徴モデルに対しても適用してもよい。なお、単純特徴モデルは、各モデルにつき一つの指標を出力する構成であってもよいし、各モデルにつき複数の指標を出力する構成、すなわち、マルチタスク学習の構成であってもよい。なお、モデルの構成やアルゴリズムはこれに限定されない。また、単純特徴モデルの最終出力や中間層出力(例えば、
図20のSelf-Attentionの出力)を複雑特徴モデルの特徴抽出器としたり、単純特徴モデル自体(例えば、
図20の実線部分)を複雑特徴モデルのエンコーダに追加したりしてもよい。
【0137】
スコア変換器は、複雑特徴モデル及び単純特徴モデルにて得られた多次元の確率(A1,A2,…,C2それぞれの確率)を実数(スカラー)のスコアに変換する。なお、スコア変換器によって変換されたスコアは、
図14の例示を参照されたい。
【0138】
根拠抽出部134は、スコア計測部133や言語特徴抽出部131で抽出した言語特徴を入力として、スコアの根拠を出力する。スコアの根拠については
図21~
図27を用いて後述する。根拠抽出部134は、単純特徴モデルや複雑特徴モデルを参照し、特徴量の出力スコアに対する貢献度を算出する。例えば、単語を特徴量として語彙の豊富さ(Range)のCEFRレベルを予測する単純特徴モデルにおいて、根拠は、単純特徴モデルの各CEFRレベルの予測確率に対するユーザ発話に含まれる各単語の貢献度であり、根拠の説明はこの貢献度を提示するなどして行う。また、複雑特徴モデルから根拠を抽出できる場合は、単純特徴モデルを介さずに複雑特徴モデルから直接根拠を抽出してもよい。特徴量の貢献度算出のために、一例として、Shapley value(シャープレイ値)を用いる。Shapley valueを用いる手法は、従来ゲーム理論においてプレイヤーの貢献度に応じて公正に利得を配分する手法である。本システムでは、Shapley valueのゲームを機械学習に置き換え、Shapley valueのプレイヤーを本システムの特徴量に置き換え、また、Shapley valueの利得を本システムの予測値に置き換えることで、機械学習モデルの予測値に対する特徴量の貢献度を求める。なお、特徴量の貢献度を算出するためのアルゴリズムはこれに限られない。
【0139】
Shapley valueを用いた手法では、特徴量の数が多くなると計算量も多くなる。そこで、本システムでは一例として、Shapley valueを近似的に求める手法として、公知のSHAP(SHapley Additive exPlanations)を用いる。対話エージェントとユーザの発話テキストの単語列を特徴量としてCEFRレベル(A1~C2)を識別する多クラス分類モデルにおいて、特徴量である各単語が各CEFRレベルの予測確率に対して、どの程度貢献しているか(SHAP値)をSHAPで求める。ここで求めたSHAP値から、各単語がA1~C2の各CEFRレベルの予測確率に対し、プラスに貢献(寄与)したか、マイナスに貢献したかがわかる。言い換えると、単純特徴モデルに対してSHAPを適用することで、どの特徴量がどの程度CEFRレベルの判定に貢献していたかを視覚的に確認することができる。
【0140】
可視化部135は、スコア計測部133によって求められたスコアとスコアの根拠とを可視化させる。
図21は、レーダーチャートの一例を示す図である。可視化部135によるスコア可視化の一手法としてレーダーチャートを用いる場合を例にとり、
図21を用いて説明する。可視化部135は、スコア計測部133が各指標について求めたユーザのスコアを、
図21に例示するようにレーダーチャート(
図21中の太線で示す部分)として表示する。このレーダーチャートから、ユーザの総合的な習熟度がC2であることがわかる。なお、可視化において、他の指標を追加したり、一つ以上の指標を省略してもよい。また、可視化の手法はレーダーチャートに限られない。
【0141】
可視化部135によるスコアの根拠の可視化について
図22及び
図23を用いて説明する。
図22は、CEFRの指標のうち語彙の豊富さのレベルがA2であり、確率(A1, A2, B1, B2, C1, C2)が(0.10, 0.50, 0.30, 0.09, 0.01)と判定された場合の、A2の確率0.50に対する各単語の貢献度(SHAP値)を可視化させた一例である。
図22において、“Speaker”の列は発話者を示しており、例えば“System”の場合には発話者が対話エージェントであり、“User”の場合には発話者がユーザであることを示している。
図22では説明のため、対話エージェントにより発話された文章は斜体で示す。“Sentence”の列は、同じ行の発話者により発話された文章を示している。“ID”の列は、同じ行の“Sentence”に記載された文章の識別子を示しており、ここでは、トピック番号-ターン番号からなる。
【0142】
図22では、SHAP値(連続値)に関して、正の値と負の値でそれぞれ閾値を定め、SHAP値が正の値を取り、閾値以上であったものを「大きなプラス」、閾値以下であったものを「小さなプラス」とし、同様にSHAP値が負の値を取り、閾値以下であったものを「大きなマイナス」、閾値以上であったものを「小さなマイナス」として可視化させている。判定結果A2に対し、貢献度が大きなマイナスになっている表現(単語列)を太字で表示し、貢献度が小さなマイナスになっている表現をドットの網掛けで表示し、貢献度が小さなプラスになっている表現をグレーで表示し、貢献度が大きなプラスになっている表現をアンダーラインで表示している。
図22に例示する表示の態様は一例にすぎず、これに限られない。
【0143】
図23は、CEFRの指標のうち語彙の豊富さのレベルがA2であり、確率(A1, A2, B1, B2, C1, C2)が(0.10, 0.50, 0.30, 0.09, 0.01)と判定された場合の、B1の確率0.30に対する各単語の貢献度(SHAP値)を可視化させた一例である。
図23の表示形態は
図22と同様であるため、説明を省略する。
図22は判定結果A2に対する貢献度を例示したが、
図23は、判定結果B1に対する貢献度を表示している。これらの
図22と
図23とをユーザに提示する(比較する)ことにより、判定結果がA2であったときに、
図22からはどこの表現(単語列)がどの程度A2の判定に貢献したか(判定確率A2に対する貢献度)を確認することができる。
【0144】
一方、
図23からは総合的な判定結果はA2だったものの、B1として評価された表現(単語列)およびその程度(判定確率B1に対する貢献度)を確認することができる。“ID”が3-4である発話のうち最後の文章(“In particular”から始まる文章)を例にとると、判定確率A2に対する貢献度は非常に低い(大きなマイナス)一方で、判定確率B1に対する貢献度は非常に大きい(大きなプラス)。この表示から、上記表現が、より習熟度が高い(B1)と判定された理由の一つであることがわかる。
【0145】
また、前述した言語特徴抽出部131は、言語能力計測部132を経ずとも言語特徴抽出部131単体で運用することもできる。その場合、可視化部135は、言語特徴抽出部131によって抽出された特徴量を表示してもよい。
図24は、ユーザ発話に含まれる語句のCEFRレベルの可視化の一例を示す図である。
図24では、“ID”がトピック番号-ターン番号-文番号からなる。
図24中の他の表示形態は上述した
図22と同様であるため、説明を省略する。
図24では、ユーザ発話に含まれる語句に対して、A1、A2、B1、B2、C1、及びC2のCEFRレベルが付与されている結果を可視化している。具体的に
図24では、表現のCEFRレベルが高くなる(習熟度が高くなる)につれて、当該表現がより濃いグレーで表示されている。この表示から、“ID”が4-3-2である発話のうち“stubbornness”がC2相当の表現であることが確認でき、語彙の豊富さ(Range)の習熟度が高いと判定された理由の一つであることがわかる。
【0146】
可視化部135は、言語特徴抽出部131の文法誤り特徴抽出器によって抽出された文法誤り特徴に基づき、文法誤り訂正の結果を表示してもよい。
図25は、文法誤り特徴の可視化の一例を示す図である。
図25では、文法誤り訂正処理後、削除された表現を打ち消し線で表示し、挿入された表現を太字で表示している。
図25の他の表示形態は上述した
図22及び
図24と同様であるため、説明を省略する。IDが2-3-1の文章において、“an”が太字で表示されていることから、ユーザ発話後に文法誤り訂正処理により“an”が挿入されたことがわかる。これは、ユーザ発話に対して、前置詞の誤りに対する訂正が施されたことを示している。例えば、正解としては前置詞(an)を付与すべきところ、ユーザが前置詞をつけずに、または正しくない前置詞を用いて発話したため、前置詞の観点から訂正後の文章を表示している。
【0147】
また、IDが2-5-1の文章において、“room”が削除され、且つ“rooms”が太字で表示されていることから、ユーザ発話後に文法誤り訂正処理により“room”のかわりに“rooms”が挿入されたことがわかる。これは、ユーザ発話に対して、単数形と複数形との文法誤りに対する訂正が施されたことを示している。例えば、正解としては“rooms”と複数形すべきところ、ユーザが“room”と単数形を用いて発話したため、単数形が複数形に修正された訂正後の文章を表示している。この表示により、ユーザは自身の文法的な間違えを視覚的に確認することができる。
【0148】
可視化部135は、言語特徴抽出部131の談話特徴抽出器によって抽出された談話特徴を表示してもよい。
図26は、談話特徴の可視化の一例を示す図である。
図26の表示形態は上述した
図25と同様であるため、説明を省略する。
図26の右側には、談話マーカーのクラス毎に推定値(
図9及び
図10を参照)が表示されている。この推定値は、各談話マーカークラスについてのモデルによる予測値であり、すなわち、対象の文と前の文を当該談話マーカークラスで接続できる確率である。
【0149】
“ID”が4-3-2の文章については、右側に表示される談話マーカーのクラスの推定値を参照すると、“However”などの逆接を表す談話マーカーが属するクラスである“CONFLICT”の値が最も高い。これは、文4-3-2は文4-3-1と逆接関係にあることを示している。また、“ID”が4-3-3の文章については、右側に表示される談話マーカーのクラスの推定値を参照すると、“Therefore”などの結果や結論を表す談話マーカーが属するクラスである“EFFECT”の値が最も高い。これは、文4-3-3は文4-3-2を受けての結論であることを示している。
【0150】
図26に例示する結果は、
図10に例示した各談話マーカークラスをモデルによって予測した結果、文4-3-1と文4-3-2の間に成り立つ談話関係について、CONFLICTクラスの予測値が閾値である確率0.5を超えたことを表す。また、文4-3-2と文4-3-3の間に成り立つ談話関係として、EFFECTクラスの予測値が閾値である確率0.5を超えたことを表す。この表示により、ユーザは自身が如何に上手に話を組み立て、論理的に話せているかを確認できる。なお、複数の談話マーカークラスの予測確率が閾値を超えた場合、複数の談話マーカークラスを可視化してもよいし、その中で最も予測確率の高い談話マーカークラスを一つ可視化してもよい。
【0151】
可視化部135は、言語特徴抽出部131の共参照特徴抽出器によって抽出された共参照特徴を表示してもよい。上述した
図13は、共参照特徴の可視化の一例を示す図でもある。
図13に例示した表示により、ユーザは、自身の過去の発言および対話相手の発言を参照しながら、話題を適切に管理し、筋の通った話し方ができているかを確認できる。
【0152】
可視化部135は、言語特徴抽出部131の発音特徴抽出器によって抽出された発音特徴をもとに発音の良さを表示してもよい。
図27では、“ID”がトピック番号-ターン番号-発話節番号からなる。
図27中の他の表示形態は上述した
図22と同様であるため、説明を省略する。
図27の右側には、モデル(
図8参照)による予測確率(0~10の11段階のレベルそれぞれの確率)をスコア変換器(数式5~数式7)で0~10(スカラー)に正規化した値を表示する。
【0153】
なお、
図27の右側に表示する値の解釈は、公知の学習データセットであるspeechocean762に準ずる。
図27には、発話を時系列に表示しているが、ユーザの発音が良かったものから順にランキングで表示してもよく、表示の形態はこれに限られない。この表示により、ユーザは、自身の発話における発音について、発音の正確さ、発音の流暢さ、イントネーションやリズム、及び総合的な発音の良さ、といった各指標において、良いと判断されたものや、あまりよくないと評価されたものを振り返ることができる。例えば、図中に例示する再生記号で示すボタンを用いて、ユーザは自身の発話音声を再生して確認できる。なお、この表示は一例であり、他の指標を基準にデータを並べてもよい。
【0154】
翻訳部136は、言語特徴抽出部131において多言語からなる入力データを扱う場合に入力データの言語を変換する。翻訳部136を設けることにより、言語特徴抽出部131が言語毎に異なる特徴抽出器を備えていなくとも、既存の特徴抽出器を用いて特徴抽出を実行することが可能となる。なお、この翻訳部136は省略してもよく、例えば、本システム外部の翻訳システムや翻訳アプリケーションを用いてもよい。
【0155】
<まとめ>
次に、本実施形態の作用並びに効果を説明する。
【0156】
本実施形態に係る情報処理方法によれば、ユーザ発話から取得した入力データが与えられると、入力データを所定の処理によって解析することでユーザの言語能力を診断する。具体的には、ユーザ発話から取得した入力データが与えられると、入力データから特徴量を抽出し、抽出した特徴量からユーザ発話を任意の指標で計測したスコアを出力する。したがって、ユーザのマルチモーダルな入力データに含まれる多様な言語特徴に基づき言語能力を診断することができる。
【0157】
本実施形態に係る情報処理方法によれば、根拠抽出部134と可視化部135とをさらに備え、スコア計測部133によって求められたスコアと、根拠抽出部134によって求められたスコアの根拠とを、可視化部135によって可視化させる。したがって、関係者に対してスコアを示すだけでなく、スコアの根拠をも説明することが可能となる。
【0158】
本実施形態に係る情報処理方法によれば、言語特徴抽出部131によって抽出された特徴量を可視化部135によって表示してもよい。これにより、ユーザの言語特徴を視覚的にフィードバックすることができるため、ユーザは、自身の発話および対話エージェントとの対話を振り返ることができる。
【0159】
本実施形態に係る情報処理方法によれば、スコア変換器によって複雑特徴モデル及び単純特徴モデルにて得られた多次元の確率を実数(スカラー)のスコアに変換する。これにより、学習するユーザが自身の成長を把握することが可能となる。例えば、CEFRレベルがA1のA2に以降したユーザに対して、言語能力計測結果としてA1→A1→A1→A1→A2と提示するよりも、A1(1.11)→A1(1.37)→A1(1.66)→A1(1.92)→A2(2.1)と提示した方が、より詳細に自身の成長を把握できる。
【0160】
本実施形態に係る情報処理方法によれば、本システムにおいて一例として用いたアルゴリズムや手法を記載したが、実装の形態はこれらに限られない。例えば、これらのアルゴリズムや手法にかえて、他のアルゴリズムなどを用いてもよい。
【0161】
<付記>
本実施形態は、以下の開示を含む。
【0162】
(付記1)
今回開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。また、本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【0163】
(付記2)
前記情報処理装置は、前記特徴量抽出処理において前記特徴量を抽出する特徴抽出器を少なくとも一つ備えることを特徴とする、
付記1に記載の情報処理方法。
【0164】
(付記3)
前記入力データは、文字情報、音声情報、及び映像情報のうち一以上を備え、
前記特徴量は、前記文字情報、前記音声情報、及び前記映像情報のうち一以上が数値情報に変換されたベクトルを含む、
付記1に記載の情報処理方法。
【0165】
(付記4)
前記特徴量抽出処理は、テキスト特徴、マルチモーダル特徴、語彙難易度特徴、文法誤り特徴、発音特徴、談話特徴、共参照特徴、常識特徴、及び人手設計特徴のすべてまたはいずれかを特徴量として出力する処理を含む、
付記1に記載の情報処理方法。
【0166】
(付記5)
前記スコア計測処理は、前記ユーザの言語能力に関する少なくとも一つ以上の指標に関して前記スコアを計測する処理を含む、
付記1に記載の情報処理方法。
【0167】
(付記6)
前記根拠抽出処理は、前記スコアの根拠を説明する各特徴量の貢献度を抽出する処理を含む、
付記1に記載の情報処理方法。
【0168】
(付記7)
前記根拠抽出処理において抽出された前記スコアの根拠を可視化する可視化部を有し、前記可視化部によって根拠を前記ユーザに視覚的に提示することを特徴とする、
付記1に記載の情報処理方法。
【0169】
(付記8)
ユーザによる発話を含む入力データを取得し、取得した前記入力データから特徴量を抽出する言語特徴抽出部と、
抽出した前記特徴量から、任意の指標に基づき前記ユーザの言語能力を計測する言語能力計測部と、を備え、
前記言語能力計測部は、スコアを計測するスコア計測部と、前記スコアの根拠を抽出する根拠抽出部と、を備える、
情報処理装置。
【0170】
(付記9)
コンピュータに、
ユーザによる発話を含む入力データを取得する取得処理と、
取得した前記入力データから特徴量を抽出する特徴量抽出処理と、
抽出した前記特徴量から、任意の指標に基づき前記ユーザの言語能力を計測する言語能力計測処理と、を含み、
前記言語能力計測処理は、スコアを算出するスコア計測処理と、前記スコアの根拠を抽出する根拠抽出処理と、を含む、
情報処理方法を実行させるためのプログラム。
【0171】
(付記10)
ユーザによる発話を含む入力データを取得し、取得した前記入力データから特徴量を抽出する言語特徴抽出部と、
抽出した前記特徴量から、任意の指標に基づき前記ユーザの言語能力を計測する言語能力計測部と、を備え、
前記言語能力計測部は、スコアを計測するスコア計測部と、前記スコアの根拠を抽出する根拠抽出部と、を備える
情報処理装置と、
前記ユーザによる発話を入力するユーザ端末と、を備え、
前記ユーザ端末から入力された前記ユーザによる発話から前記ユーザの言語能力を計測する、
言語能力診断システム。
【符号の説明】
【0172】
1:言語能力診断装置
2:ユーザ端末
11:通信部
12:記憶部
13:制御部
101:プロセッサ
102:メモリ
103:ストレージ
104:通信I/F
105:入出力I/F
106:ドライブ装置
107:入力装置
108:出力装置
109:記録メディア
131:言語特徴抽出部
132:言語能力計測部
133:スコア計測部
134:根拠抽出部
135:可視化部
136:翻訳部
201:プロセッサ
202:メモリ
203:ストレージ
204:通信I/F
205:入出力I/F
206:ドライブ装置
207:入力装置
208:出力装置
209:記録メディア
1000:情報処理システム
【要約】 (修正有)
【課題】ユーザのマルチモーダルな発話データに含まれる多様な言語特徴に基づき言語能力を複数の観点から診断する。
【解決手段】情報処理方法は、言語能力診断システムにおいて情報処理装置が実行する情報処理方法であって、ユーザによる発話を含む入力データを取得する取得処理と、取得した前記入力データから特徴量を抽出する特徴量抽出処理と、抽出した前記特徴量から、任意の指標に基づき前記ユーザの言語能力を計測する言語能力計測処理と、を含み、前記言語能力計測処理は、スコアを算出するスコア計測処理と、前記スコアの根拠を抽出する根拠抽出処理と、を含む。
【選択図】
図5