(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022175437
(43)【公開日】2022-11-25
(54)【発明の名称】問題文作成装置、問題文作成方法及びプログラム
(51)【国際特許分類】
G09B 19/00 20060101AFI20221117BHJP
G06N 5/04 20060101ALI20221117BHJP
【FI】
G09B19/00 Z
G06N5/04
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021081813
(22)【出願日】2021-05-13
(71)【出願人】
【識別番号】899000079
【氏名又は名称】慶應義塾
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】今井 倫太
(72)【発明者】
【氏名】松森 匠哉
(72)【発明者】
【氏名】吉野 哲平
(72)【発明者】
【氏名】柴田 遼一
(57)【要約】
【課題】自然言語処理モデルを利用した穴埋め問題のための問題文作成技術を提供することである。
【解決手段】本発明の一態様は、データセットから学習対象の単語を含む第1の文を取得する文取得部と、前記第1の文において前記単語をマスクし、推測モデルを利用して、前記第1の文のマスク箇所における前記単語の確信度と前記マスク箇所に入り得る他の候補である候補単語の確信度とを算出する確信度算出部と、前記単語の確信度が前記候補単語の確信度よりも所定値以上大きい場合、前記マスクされた文を穴埋め問題として出力する問題文出力部と、を有する問題文作成装置に関する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
データセットから学習対象の単語を含む第1の文を取得する文取得部と、
前記第1の文において前記単語をマスクし、推測モデルを利用して、前記第1の文のマスク箇所における前記単語の確信度と前記マスク箇所に入り得る他の候補である候補単語の確信度とを算出する確信度算出部と、
前記単語の確信度が前記候補単語の確信度よりも所定値以上大きい場合、前記マスクされた文を穴埋め問題として出力する問題文出力部と、
を有する問題文作成装置。
【請求項2】
前記単語の確信度と前記候補単語の確信度との差分が所定値未満である場合、
前記文取得部は、前記第1の文に隣接する第2の文を取得し、
前記確信度算出部は、前記推測モデルを利用して、前記第1の文と前記第2の文とから構成される文章のマスク箇所における前記単語の確信度と候補単語の確信度とを算出し、
前記問題文出力部は、前記単語の確信度が前記候補単語の確信度よりも所定値以上大きい場合、前記マスクされた文章を前記単語の穴埋め問題として出力する、請求項1に記載の問題文作成装置。
【請求項3】
前記単語の確信度と前記候補単語の確信度との差分が所定値未満である場合、
前記文取得部は、第nの文に隣接する第n+1の文を取得し、nは1以上の整数であり、
前記確信度算出部は、前記推測モデルを利用して、前記第nの文と前記第n+1の文とから構成される文章のマスク箇所における前記単語の確信度と候補単語の確信度とを算出し、
前記問題文出力部は、前記単語の確信度が前記候補単語の確信度よりも所定値以上大きい場合、前記マスクされた文章を前記単語の穴埋め問題として出力する、請求項1に記載の問題文作成装置。
【請求項4】
前記問題文出力部は、前記穴埋め問題において前記単語と前記単語に付随する選択候補単語とを選択肢として出力する、請求項1から3のいずれか一項に記載の問題文作成装置。
【請求項5】
前記問題文出力部は、前記穴埋め問題において前記単語の1つ以上の文字を表示する、請求項1から4のいずれか一項に記載の問題文作成装置。
【請求項6】
前記問題文出力部は、前記穴埋め問題において前記マスクされた文と当該文に付随する文とを表示する、請求項1から5のいずれか一項に記載の問題文作成装置。
【請求項7】
前記問題文出力部は、前記穴埋め問題において前記マスクされた文と当該文に付随する画像とを表示する、請求項1から5のいずれか一項に記載の問題文作成装置。
【請求項8】
前記学習対象の単語を提供する単語提供部を更に有する、請求項1から7のいずれか一項に記載の問題文作成装置。
【請求項9】
データセットから学習対象の単語を含む第1の文を取得するステップと、
前記第1の文において前記単語をマスクし、推測モデルを利用して、前記第1の文のマスク箇所における前記単語の確信度と前記マスク箇所に入り得る他の候補である候補単語の確信度とを算出するステップと、
前記単語の確信度が前記候補単語の確信度よりも所定値以上大きい場合、前記マスクされた文を穴埋め問題として出力するステップと、
をコンピュータが実行する問題文作成方法。
【請求項10】
データセットから学習対象の単語を含む第1の文を取得する処理と、
前記第1の文において前記単語をマスクし、推測モデルを利用して、前記第1の文のマスク箇所における前記単語の確信度と前記マスク箇所に入り得る他の候補である候補単語の確信度とを算出する処理と、
前記単語の確信度が前記候補単語の確信度よりも所定値以上大きい場合、前記マスクされた文を穴埋め問題として出力する処理と、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、問題文作成装置、問題文作成方法及びプログラムに関する。
【背景技術】
【0002】
近年の情報技術の発展によって、様々な分野に情報技術が適用されてきている。例えば、情報技術を利用した各種学習支援ツールが開発されてきている。このような学習支援ツールの一例として、スマートフォン、タブレット、パーソナルコンピュータなどを操作して、学習支援アプリ等を利用して学習者は、学習支援アプリ上に表示された問題を解くことによって英語などを学習することができる。
【0003】
このような学習支援アプリによって提供される問題形式の一例として穴埋め問題があるが、このような穴埋め問題を自動生成するための問題文作成方法が提案されている。穴埋め問題とは、前後の文脈から空欄に入る単語や用語を学習者に推測させ、あるいは、選択肢から選択させる形式の問題である。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
近年、自然言語処理等の分野に人工知能が利用され、GoogleによるBERT(Bidirectional Encoder Representations from Transformers)などの様々な自然言語処理モデルが開発され、自然言語処理におけるこれらの自然言語処理モデルのパフォーマンスの高さが注目されている。
【0006】
本開示の課題は、自然言語処理モデルを利用した穴埋め問題のための問題文作成技術を提供することである。
【課題を解決するための手段】
【0007】
上記課題を解決するため、本発明の一態様は、データセットから学習対象の単語を含む第1の文を取得する文取得部と、前記第1の文において前記単語をマスクし、推測モデルを利用して、前記第1の文のマスク箇所における前記単語の確信度と前記マスク箇所に入り得る他の候補である候補単語の確信度とを算出する確信度算出部と、前記単語の確信度が前記候補単語の確信度よりも所定値以上大きい場合、前記マスクされた文を穴埋め問題として出力する問題文出力部と、を有する問題文作成装置に関する。
【発明の効果】
【0008】
本開示によると、自然言語処理モデルを利用した穴埋め問題のための問題文作成技術を提供することができる。
【図面の簡単な説明】
【0009】
【
図1】本開示の一実施例による問題文作成装置を示す概略図である。
【
図2】本開示の一実施例による学習支援システムによる学習者の学習を示す概略図である。
【
図3】本開示の一実施例による問題文作成処理を示す概略図である。
【
図4】本開示の一実施例による問題文作成装置のハードウェア構成を示すブロック図である。
【
図5】本開示の一実施例による問題文作成装置の機能構成を示すブロック図である。
【
図6】本開示の他の実施例による問題文作成処理を示す概略図である。
【
図7】本開示の他の実施例による問題文作成処理を示す概略図である。
【
図8】本開示の他の実施例による問題文作成装置の機能構成を示すブロック図である。
【
図9】本開示の一実施例による問題文作成処理を示すフローチャートである。
【発明を実施するための形態】
【0010】
<用語の説明>
・本明細書において、確信度とは、Mask予測課題(単語穴埋め課題)の正当(予測)確率であり、単語の確信度とは、その単語が文中の該当の箇所に入る確からしさ(確信度)である。「単語の確信度」は、文内にある他の一つ以上の単語に基づいて計算される。また、該当の文の前後の文内にある一つ以上の単語にも基づいて、「単語の確信度」が計算されてもよい。その値(つまり、確信度の値)が高いほど、他の単語から類推して該当の単語が用いられることが多いことを表す。なお、確信度は算出できればよく、特定の算出手段である必要はない。本実施例では、BERTが算出する確信度を用いて説明する。
【0011】
以下の実施例では、穴埋め問題のための問題文作成装置が開示される。
【0012】
本開示の一実施例による問題文作成装置100は、
図1に示されるように、学習対象の単語と当該単語を含む文とを入力として受け付けると、BERTなどの何れか適当な自然言語処理モデルを利用して、入力された単語に対する穴埋め問題を出力する。例えば、
図2に示されるように、学習者Aが学習支援システムによって運営される学習用アプリを用いて英語を学習するとき、学習支援システムは、学習者Aの学習履歴などから学習者Aが習得済みの英単語に関する情報を取得すると共に、データベースやウェブ上から取得した英文コンテンツから、未習得の英単語に対する穴埋め問題を作成する。
【0013】
具体的には、問題文作成装置100は、
図3に示されるように、データセット(
図3のS11、後述する
図7のS31)などから取得した文(
図3のS12、
図7のS32)において学習対象の英単語をマスク(
図3のS13、
図7のS33)し、マスク箇所を含む文をBERTなどの自然言語処理モデルに入力(
図3のS14、
図7のS34)し、当該マスク箇所に入るべき英単語の候補を推定する。本開示によると、問題文作成装置100は、自然言語処理モデルから推定される英単語の各候補の確信度を推定し、最も高い第1の確信度、すなわち、マスクされた学習対象の英単語の確信度と次に高い第2の確信度との間の差分が所定値以上である場合、当該マスク箇所を含む文を第1の確信度を有する英単語に対する穴埋め問題として出力する(
図3のS15、
図7のS35)。これにより、マスク箇所に入るべき英単語として、他の英単語候補よりも有意な差分を有する高い確信度の英単語を含む文を問題文として出力することが可能になり、学習対象の英単語のみを正解とする穴埋め問題を作成することができる。
【0014】
問題文作成装置100は、後述するように、学習用アプリなど介し学習者のスマートフォン、タブレット、パーソナルコンピュータ等に問題文を提供するサーバなどであってもよい。例えば、問題文作成装置100は、学習用アプリを運営する企業、業者等のサーバであってもよく、当該企業、業者等が保持する文をデータセットとして格納するデータベースから処理対象の文を取得し、後述するように問題文を作成する。好ましくは、当該データセットは、著作権管理された文から構成される。
【0015】
問題文作成装置100は、例えば、
図4に示されるように、CPU(Central Processing Unit)などのプロセッサ101、RAM(Random Access Memory)、フラッシュメモリなどのメモリ102、ハードディスクなどのストレージ103、及び入出力(I/O)インタフェース104によるハードウェア構成を有してもよい。
【0016】
プロセッサ101は、後述される問題文作成装置100の各種処理を実行する。
【0017】
メモリ102は、問題文作成装置100における各種データ及びプログラムを格納し、特に作業用データ、実行中のプログラムなどのためのワーキングメモリとして機能する。具体的には、メモリ102は、ストレージ103からロードされた後述される各種処理を実行及び制御するためのプログラムなどを格納し、プロセッサ101によるプログラムの実行中にワーキングメモリとして機能する。
【0018】
ストレージ103は、問題文作成装置100における各種データ及びプログラムを格納する。
【0019】
I/Oインタフェース104は、ユーザからの命令、入力データなどを受け付け、出力結果を表示、再生などすると共に、外部装置との間でデータを入出力するためのインタフェースである。例えば、I/Oインタフェース104は、USB(Universal Serial Bus)、通信回線、キーボード、マウス、ディスプレイ、マイクロフォン、スピーカなどの各種データを入出力するためのデバイスであってもよい。
【0020】
しかしながら、本開示による問題文作成装置100は、上述したハードウェア構成に限定されず、他の何れか適切なハードウェア構成を有してもよい。例えば、問題文作成装置100による各種処理の1つ以上は、これを実現するよう配線化された処理回路又は電子回路により実現されてもよい。
【0021】
次に、
図5~9を参照して、本開示の一実施例による問題文作成装置100をより詳細に説明する。問題文作成装置100は、学習対象の単語(例えば、英単語、用語、人名、場所など)と文とを入力として受け付け、当該単語を空欄とする穴埋め問題を出力する。以下の実施例では、学習対象の単語として英単語が適用され、当該英単語がマスクされた穴埋め問題が出力されるが、本開示はこれに限定されず、英語学習以外の他の任意の科目における用語の学習に適用されうる。
【0022】
図5は、本開示の一実施例による問題文作成装置100の機能構成を示すブロック図である。
図5に示されるように、問題文作成装置100は、文取得部110、確信度算出部120及び問題文出力部130を有する。
【0023】
文取得部110は、データセットから学習対象の単語を含む文を取得する。本明細書において、文とは句点「。」又はピリオド「.」で終わる1語以上の単語からなるものであり、文章はまとまった意味を有する複数の連続した文である。取得対象の文又は文章は、例えば、データベースやウェブ上から取得されてもよい。好ましくは、取得対象の文又は文章は、著作権が管理されているデータベースのデータセットから抽出されてもよい。
【0024】
確信度算出部120は、取得した文において学習対象の単語をマスクし、推測モデルを利用して、当該文のマスク箇所における学習対象の単語の確信度とマスク箇所に入り得る他の候補である候補単語の確信度とを算出する。具体的には、確信度算出部120は、学習対象の単語を含む文又は文章において、当該単語をマスクすることによってマスク箇所を空欄とする文又は文章に変換する。そして、確信度算出部120は、マスク箇所を含む文又は文章をBERTなどの何れか適切な自然言語処理モデルに入力する。BERTは、
図3に示されるように、マスク箇所に入るべき候補単語と、各候補単語の確信度とを出力する。
【0025】
図示された具体例では、マスクされた単語"continue"に対して、BERTは、"This city will cease to be and will ( ) to grow!"というマスク箇所を含む入力文から、マスク箇所の候補単語及び確信度"continue 0.9373・・・"、"cease 0.0506・・・"、"begin 0.0025・・・"を出力する。ここで、確信度は当該単語がマスク箇所に入る確率を示すものであり、例えば、マスクされた単語の確信度が最も高くなる。なお、マスクされた単語の確信度が最も高くならない場合もありうる。
【0026】
また、BERTは、マスクされた単語"hurt"に対して、"I apologize if my actions ( ) your pride."というマスク箇所を含む入力文から、マスク箇所の候補単語及び確信度"hurt 0.9465・・・"、"wounded 0.0167・・・"、"offended 0.0062・・・"を出力する。
【0027】
なお、マスクされた単語(例えば、上述した実施例の"continue"、"hurt")が、マスク箇所に入り得る候補として推測されなかった場合には、問題文作成装置100は、エラー処理であるとして、別の文を取得する。
【0028】
上述した実施例では、BERTに1つの文が入力されたが、本開示はこれに限定されず、一実施例では、連続した複数の文から構成される文章がBERTに入力されてもよい。例えば、確信度算出部120は、
図6に示されるように、学習対象の単語を含む文と当該文の前後の文とから構成される文章(
図6のS21、S22)に対して、学習対象の単語をマスク(
図6のS23)し、マスク箇所を含む文章をBERTに入力(
図6のS24)してもよい。同様にして、BERTは、マスク箇所を含む入力文からマスク箇所の候補単語及び確信度を出力する(
図6のS25)。
【0029】
問題文出力部130は、単語の確信度と候補単語の確信度との差分が所定値以上である場合、マスクされた文を穴埋め問題として出力する。具体的には、問題文出力部130は、マスク箇所の各候補単語の確信度を比較し、最も高い確信度(例えば、マスクされた単語の確信度)と次に高い確信度との差分を算出する。そして、最も高い確信度と次に高い確信度との差分が所定の閾値以上である場合、問題文出力部130は、入力文は当該単語の穴埋め問題として適していると判断し、マスクされた文を当該単語の穴埋め問題として出力する。他方、最も高い確信度と次に高い確信度との差分が所定の閾値未満である場合、問題文出力部130は、入力文は当該単語の穴埋め問題として適していないと判断し、マスクされた文を当該単語の穴埋め問題として出力しない。すなわち、これらの確信度に有意な差がない場合、入力文は穴埋め問題の正解を一意的に特定することが困難であり、穴埋め問題として適していないと考えられる。同様に、最も高い確信度がマスクされた単語の確信度でない場合も、入力文は穴埋め問題として適していないと考えられる。つまり、問題文出力部130は、最も高い確信度がマスクされた単語の確信度であり、かつ、マスクされた単語の確信度と候補単語の確信度との差分が所定値以上である場合に、マスクされた文を穴埋め問題として出力する。
【0030】
一実施例では、単語の確信度と候補単語の確信度との差分が所定値未満である場合、文取得部110は、取得した文(すなわち、データセットからの学習対象の単語を含む文)に隣接する文を取得し、確信度算出部120は、推測モデルを利用して、当該取得した文と当該取得した文に隣接する文とから構成される文章のマスク箇所における学習対象の単語の確信度と候補単語の確信度とを算出し、問題文出力部130は、学習対象の単語の確信度と各候補単語の確信度との差分が所定値以上である場合、マスクされた文章を当該単語の穴埋め問題として出力してもよい。例えば、BERTへの入力文が穴埋め問題として適していない場合、入力文の前後の文が探索され、入力文と前後の文とから構成される文章がBERTに入力されてもよい。一般に、文脈の範囲が拡大すると、マスク箇所に入るべき候補単語が絞られると考えられ、学習対象の単語の確信度と次に高い確信度との間の差分が大きくなると想定される。従って、入力文が穴埋め問題として適していない場合、文取得部110は、入力文の前後の文をデータセットから抽出し、確信度算出部120は、抽出した文章において学習対象の単語をマスクし、マスク箇所を含む文章をBERTに入力し、候補単語及び各候補単語の確信度を算出してもよい。そして、最も高い学習対象の単語の確信度と次に高い確信度との間の差分が所定値以上になった場合、問題文作成装置100は、当該文章を穴埋め問題として出力してもよい。つまり、第n(nは1以上の整数)の文において単語の確信度と候補単語の確信度との差分が所定値未満である場合、文取得部110は、第nの文に隣接する第n+1の文を取得し、確信度算出部120は、推測モデルを利用して、当該取得した文(第nの文)と当該取得した文に隣接する文(第n+1の文)とから構成される文章のマスク箇所における学習対象の単語の確信度と候補単語の確信度とを算出し、問題文出力部130は、学習対象の単語の確信度と各候補単語の確信度との差分が所定値以上である場合、マスクされた文章を当該単語の穴埋め問題として出力することができる(例えば、指定された回数まで、あるいは、学習対象の単語の確信度と各候補単語の確信度との差分が所定値以上になるまで、隣接する文の取得が繰り返されてもよい)。
【0031】
また、一実施例では、問題文出力部130は、穴埋め問題において単語と当該単語に付随する選択候補単語とを選択肢として出力してもよい。すなわち、問題文出力部130は、穴埋め問題の選択肢を自動生成してもよい。例えば、問題文出力部130は、空欄の選択肢として、当該学習対象の単語と当該単語の派生語や異なる品詞の単語とを穴埋め問題の空欄の選択肢として選択してもよい。具体的には、学習対象の単語が動詞である場合、問題文出力部130は、辞書データベースなどを参照して、当該動詞の対応する名詞、形容詞、副詞などを選択肢として決定してもよい。
【0032】
また、一実施例では、問題文出力部130は、穴埋め問題において単語の1つ以上の文字を表示してもよい。例えば、問題文出力部130は、穴埋め問題の空欄にヒントとして、正解の単語の最初の文字(例えば、正解の単語が"continue"の場合、最初の文字の"c")を表示してもよい。
【0033】
また、一実施例では、問題文出力部130は、穴埋め問題において文と当該文に付随する文とを表示してもよい。例えば、問題文出力部130は、
図7に示されるように、英語の穴埋め問題において、英文と当該英文の訳文とを表示してもよい。
【0034】
また、一実施例では、問題文出力部130は、穴埋め問題において文と当該文に付随する画像とを表示してもよい。例えば、"二酸化炭素は、1つの炭素原子と2つの( )とが結合したものである。"という穴埋め問題において、炭素原子と2つの酸素原子とが結合した図"O=C=O"が一緒に表示されてもよい。
【0035】
また、一実施例では、問題文作成装置100は更に、
図8に示されるように、学習対象の単語を提供する単語提供部140を有してもよい。例えば、単語提供部140は、学習者の学習履歴や習得レベルに基づき学習対象の単語を決定し、文取得部110、確信度算出部120及び/又は問題文出力部130に学習対象の単語を提供してもよい。
【0036】
なお、上述した各実施例は適宜組み合わされてもよい。
【0037】
図9は、本開示の一実施例による問題文作成処理を示すフローチャートである。問題文作成処理は、上述した問題文作成装置100によって実行され、特に問題文作成装置100のプロセッサがプログラムを実行することによって実現されうる。
【0038】
図9に示されるように、ステップS101において、問題文作成装置100は、データセットから学習対象の単語を含む文を取得する。例えば、問題文作成装置100は、著作権管理されたデータベースから学習対象の単語を含む文又は文章を抽出する。具体的には、学習対象の単語が高校受験用の英単語である場合、問題文作成装置100は、これらの英単語を含む英文をデータベースから抽出する。
【0039】
ステップS102において、問題文作成装置100は、取得した文において学習対象の単語をマスクする。例えば、学習対象の単語を含む文を取得すると、問題文作成装置100は、取得した文における当該単語の箇所を空欄にする。
【0040】
ステップS103において、問題文作成装置100は、推測モデルを利用して、マスクされた文のマスク箇所における当該単語の確信度と候補単語の確信度とを算出する。例えば、問題文作成装置100は、BERTにマスク箇所を含む文を入力し、当該マスク箇所に入りうる候補単語及び各候補単語の確信度を取得する。例えば、マスクされた単語の確信度が最も高くなる。
【0041】
ステップS104において、問題文作成装置100は、マスクされた単語の確信度と他の候補単語の確信度との差分が所定値以上である場合、マスクされた文を穴埋め問題として出力する。なお、所定値は、マスクされた単語と候補単語とを有意に区別しうる何れか適当な値に設定されてもよい。
【0042】
以上、本発明の実施例について詳述したが、本発明は上述した特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【0043】
100 問題文作成装置
110 文取得部
120 確信度算出部
130 問題文出力部
140 単語提供部