(57)【要約】【課題】低コストで、適切な質問文を生成することができるようにする。【解決手段】質問文候補生成部２９が、質問文から作成された、質問文に含まれる単語を空欄とし、空欄に単語の品詞及び意味属性を付与したテンプレートに対し、少なくとも１つのラベルを入力として、空欄に付与された品詞及び意味属性と対応する、入力されたラベルに特徴的な単語によって空欄を置き換えることにより、質問文候補を生成する。質問文評価部３０は、質問文候補の各々について、入力されたラベルに対応する言語モデルを用いて、尤もらしさを表すスコアを計算し、尤もらしさが高い質問文候補を、質問文として出力する。【選択図】図１
2017027233.tif 000002
【特許請求の範囲】
【請求項１】
質問の内容を表す複数のラベルの各々に対し、前記ラベルに対応する質問文から抽出された、前記ラベルに特徴的な単語を、前記単語の品詞及び意味属性と対応付けて記憶した特徴単語記憶部と、
質問文から作成された、前記質問文に含まれる単語を空欄とし、前記空欄に前記単語の品詞及び意味属性を付与したテンプレートに対し、少なくとも１つの前記ラベルを入力として、前記空欄に付与された品詞及び意味属性と対応する、前記入力されたラベルに特徴的な単語によって前記空欄を置き換えることにより、質問文候補を生成する質問文候補生成部と、
を含む質問文生成装置。
【請求項２】
質問文評価部を更に含み、
前記質問文候補生成部は、前記質問文候補を複数生成し、
前記質問文評価部は、前記質問文候補生成部によって生成された複数の質問文候補の各々について、前記入力されたラベルに対応する質問文の集合から予め構築された言語モデルを用いて、尤もらしさを表すスコアを計算し、尤もらしさが高い質問文候補を、質問文として出力する請求項１記載の質問文生成装置。
【請求項３】
前記テンプレートを、前記質問文に含まれる単語を空欄とし、前記空欄に、前記単語の品詞、及び前記単語の意味属性であって、かつ、意味属性の階層構造における上位ノードの意味属性を付与したテンプレートとした請求項１又は２記載の質問文生成装置。
【請求項４】
質問の内容を表す複数のラベルの各々に対し、前記ラベルに対応する質問文から抽出された、前記ラベルに特徴的な単語を、前記単語の品詞及び意味属性と対応付けて記憶した特徴単語記憶部と、質問文候補生成部とを含む質問文生成装置における質問文生成方法であって、
前記質問文候補生成部が、質問文から作成された、前記質問文に含まれる単語を空欄とし、前記空欄に前記単語の品詞及び意味属性を付与したテンプレートに対し、少なくとも１つの前記ラベルを入力として、前記空欄に付与された品詞及び意味属性と対応する、前記入力されたラベルに特徴的な単語によって前記空欄を置き換えることにより、質問文候補を生成する
質問文生成方法。
【請求項５】
前記質問文候補生成部が前記質問文候補を生成することでは、前記質問文候補を複数生成し、
質問文評価部が、前記質問文候補生成部によって生成された複数の質問文候補の各々について、前記入力されたラベルに対応する質問文の集合から予め構築された言語モデルを用いて、尤もらしさを表すスコアを計算し、尤もらしさが高い質問文候補を、質問文として出力することを更に含む請求項４記載の質問文生成方法。
【請求項６】
前記テンプレートを、前記質問文に含まれる単語を空欄とし、前記空欄に、前記単語の品詞、及び前記単語の意味属性であって、かつ、意味属性の階層構造における上位ノードの意味属性を付与したテンプレートとした請求項４又は５記載の質問文生成方法。
【請求項７】
コンピュータを、請求項１〜請求項３の何れか１項記載の質問文生成装置を構成する各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、質問文生成装置、方法、及びプログラムに係り、特に、質問文を生成する質問文生成装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
対話システムは大きく分けて二種類あり、タスク指向型対話システムと非タスク指向型対話システム（雑談対話システム）に分けられる。近年は、そのエンターテイメント性やロボットとの日常会話が注目されていることもあり、雑談対話システムの研究が盛んに行われている。
【０００３】
雑談において会話を進めるために質問をすることは有効である。たとえば、音楽の話題であれば、「何を聞くんですか」やペットの話題であれば「何か飼ってますか」などの質問をすることによって、会話を円滑に進めることができる。しかし、雑談のような様々な話題が話される場面において、システムが適切な質問文を作ることは容易ではない。
【０００４】
雑談対話システムの質問文はテンプレートや作り込みのルールによって作られることが多い。たとえば、非特許文献１では、手作業で作られた質問を含むルールセットが使用されている。近年では、非特許文献２のように、ツイッターから発話を検索するだけでなく、大規模テキストから述語項構造（述語とその項からなる構造）のデータベースを作成しておき、対話における現在の話題について、関連する述語項構造を検索し、検索された述語項構造から発話文を生成する手法も研究されている。「行く二各：レストラン」という述語項構造を質問に変換し、「レストランに行きますか？」という質問文が生成できる。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Richard S. Wallace, "The Anatomy of A.L.I.C.E.," A.L.I.C.E. Artificial  Intelligence Foundation, Inc, 2004.
【非特許文献２】Ryuichiro Higashinaka, Kenji Imamura, Toyomi Meguro, Chiaki Miyazaki, Nozomi Kobayashi, Hiroaki Sugiyama, Toru Hirano, Toshiro Makino, Yoshihiro Matsuo, Towards an open domain conversational system fully based on natural language processing, In Proc. COLING, pp.928-939, 2014.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、雑談におけるさまざまな話題について、手作業で質問を作ることはコストが高い。また、述語項構造から質問を生成する場合、述語項構造のデータベースが必要となる。多くの話題をカバーする述語項構造のデータベースを構築することはコストが高い。
【０００７】
本発明は、上記の事情を鑑みてなされたもので、低コストで、適切な質問文を生成することができる質問文生成装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために本発明に係る質問文生成装置は、質問の内容を表す複数のラベルの各々に対し、前記ラベルに対応する質問文から抽出された、前記ラベルに特徴的な単語を、前記単語の品詞及び意味属性と対応付けて記憶した特徴単語記憶部と、質問文から作成された、前記質問文に含まれる単語を空欄とし、前記空欄に前記単語の品詞及び意味属性を付与したテンプレートに対し、少なくとも１つの前記ラベルを入力として、前記空欄に付与された品詞及び意味属性と対応する、前記入力されたラベルに特徴的な単語によって前記空欄を置き換えることにより、質問文候補を生成する質問文候補生成部と、を含んで構成されている。
【０００９】
本発明に係る質問文生成方法は、質問の内容を表す複数のラベルの各々に対し、前記ラベルに対応する質問文から抽出された、前記ラベルに特徴的な単語を、前記単語の品詞及び意味属性と対応付けて記憶した特徴単語記憶部と、質問文候補生成部とを含む質問文生成装置における質問文生成方法であって、前記質問文候補生成部が、質問文から作成された、前記質問文に含まれる単語を空欄とし、前記空欄に前記単語の品詞及び意味属性を付与したテンプレートに対し、少なくとも１つの前記ラベルを入力として、前記空欄に付与された品詞及び意味属性と対応する、前記入力されたラベルに特徴的な単語によって前記空欄を置き換えることにより、質問文候補を生成する。
【００１０】
本発明に係るプログラムは、コンピュータを、上記の質問文生成装置の各部として機能させるためのプログラムである。
【発明の効果】
【００１１】
以上説明したように、本発明の質問文生成装置、方法、及びプログラムによれば、質問文から作成されたテンプレートに対し、少なくとも１つのラベルを入力として、空欄に付与された品詞及び意味属性と対応する、入力されたラベルに特徴的な単語によって空欄を置き換えることにより、低コストで、適切な質問文を生成することができる、という効果が得られる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態に係る質問文生成装置の構成を示す概略図である。
【図２】質問タイプの一例を示す図である。
【図３】対話行為の一例を示す図である。
【図４】形態素解析結果の一例を示す図である。
【図５】テンプレートの一例を示す図である。
【図６】クロス表の一例を示す図である。
【図７】質問タイプ「数量：時刻」のラベルに対する特徴的な単語の一例を示す図である。
【図８】拡張固有表現タイプ「Sports_Organization_Other」のラベルに対する特徴的な単語の一例を示す図である。
【図９】質問タイプ「質問_経験」のラベルが付与された質問文の一例を示す図である。
【図１０】分かち書きした質問文の一例を示す図である。
【図１１】言語モデルの一例を示す図である。
【図１２】質問文候補の一例を示す図である。
【図１３】scoreが上位１０件の質問文候補の一例を示す図である。
【図１４】scoreが下位１０件の質問文候補の一例を示す図である。
【図１５】本発明の実施の形態に係る質問文生成装置におけるテンプレート作成処理ルーチンの内容を示すフローチャートである。
【図１６】本発明の実施の形態に係る質問文生成装置における特徴単語抽出処理ルーチンの内容を示すフローチャートである。
【図１７】本発明の実施の形態に係る質問文生成装置における言語モデル構築処理ルーチンの内容を示すフローチャートである。
【図１８】本発明の実施の形態に係る質問文生成装置における質問文生成処理ルーチンの内容を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１４】
＜本発明の実施の形態の概要＞
質問の内容を表す、複数のラベルからなる抽象表現を入力とし、これらのラベルを表す質問文を自動生成する。具体的には、各ラベルとそのラベルに対応した質問文のデータから、各ラベルに特徴的な単語を品詞、意味属性とともに抽出する。そして、質問文集合中の質問文の単語を品詞、意味属性によって空欄化したテンプレートを作成し、テンプレートの空欄部分を入力ラベルに対応付いた単語によって置き換えることで質問文候補集合を生成する。最後に、各ラベルに対応した質問文の集合から構築された言語モデルによって質問文候補のスコアリングを行い、尤度の高いものを質問文として出力する。
【００１５】
＜システム構成＞
図１に示すように、本発明の実施の形態に係る質問文生成装置１００は、質問の内容を表す、少なくとも１つのラベルからなるラベル集合が入力され、質問文を生成する。この質問文生成装置１００は、ＣＰＵと、ＲＡＭと、後述するテンプレート作成処理ルーチン、特徴単語抽出処理ルーチン、言語モデル構築処理ルーチン、及び質問文生成処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図１に示すように、質問文生成装置１００は、入力部１０と、演算部２０と、出力部９０とを備えている。
【００１６】
入力部１０は、質問を生成するもととなる抽象表現として、一つ以上のラベルからなるラベル集合を受け付ける。本実施の形態では、ラベル集合として、質問タイプ、対話行為、カテゴリ、拡張固有表現タイプの４つのラベルを受け付けるとする。
【００１７】
質問タイプは質問の大まかな分類を表すラベルである。たとえば、真偽を聞いている質問（すなわちYes/No 質問）であるかや、人の名前を聞いているのか、理由を聞いているのかなどを表す。質問タイプのラベルは全部で図２に示す２４種類ある。
【００１８】
これらのラベルは以下の非特許文献３の分類に「その他:選択」を加えたものである。
【００１９】
［非特許文献3］：永田昌明，齋藤邦子，松尾義博，日本語自然文検索システムWeb Answers, 言語処理学会第12 回全国大会, 2006．
【００２０】
対話行為とは、質問の発話意図を表すラベルである。本実施の形態では、図３に示す１０種類を用いる。
【００２１】
これらのラベルの詳細は以下の非特許文献４に記述されている。
【００２２】
［非特許文献4］：目黒豊美, 東中竜一郎, 堂坂浩二, 南泰浩：聞き役対話の分析及び分析に基づいた対話制御部の構築，情報処理学会論文誌, Vol.52, No.12, pp.2787-2801 (2012).
【００２３】
たとえば、「質問_評価」は好き嫌いを尋ねる発話意図を表す。また、「質問経験」は経験を尋ねる発話意図を表す。
【００２４】
カテゴリは、質問文が関係するおおまかなジャンルを表すラベルである。カテゴリは１２２種類ある。カテゴリ数は多いので、ここではすべてを列挙しないが、たとえば、「アニメ・キャラクター」、「人生観・生き方・ポリシー」、「防災・災害」、「メンタルヘルス」、「宗教/信仰/寺・神社」、「デンタルケア」、「友達・仲間関係」などがある。
【００２５】
拡張固有表現タイプは、質問文がどのような固有表現（固有名詞や数量表現）を回答として求めているかを表すラベルである。固有表現として一般的なIREX の固有表現の体系を用いてもよいが、本実施の形態ではより細かな固有表現の分類である、関根らによる拡張固有表現の体系を用いる。拡張固有表現は全部で２００種類あり、以下の非特許文献５に詳述されている。
【００２６】
［非特許文献5］：S. Sekine，K. Sudo, and C. Nobata: \Extended named entity hierarchy，", In Proc. LREC，2002.
【００２７】
入力部１０は、たとえば、名称:固有物名、質問_評価、音楽、Musicの四つ組みのラベルからなるラベル集合を受け取る。これらのラベルの意味は、固有物の名称を聞いており、好き嫌いを聞いており、音楽についてであり、具体的な音楽名を聞いているという意味である。このような抽象表現から、「どんな曲が好きですか」といった質問文を自動的に生成することが本発明の目的である。
【００２８】
演算部２０は、質問文データベース２１、テンプレート作成部２２、テンプレート記憶部２３、ラベル付き質問文データベース２４、特徴単語抽出部２５、特徴単語記憶部２６、言語モデル構築部２７、言語モデル記憶部２８、質問文候補生成部２９、及び質問文評価部３０を備えている。
【００２９】
質問文データベース２１は、予め用意された質問文の集合を記憶している。
【００３０】
テンプレート作成部２２は、質問文データベース２１に記憶されている質問文の集合に基づいて、質問文を生成するためのテンプレートを作成し、テンプレート記憶部２３に格納する。
【００３１】
具体的には、まず、質問文データベース２１から質問文を一つずつ取り出し形態素解析を行う。たとえば、「世界で一番高い山は？」という質問文であれば、図４に示すような形態素解析結果が得られる。
【００３２】
上記図４の各行は単語の情報に対応しており、最初のカラムが単語表記である。以降、品詞、標準表記、基本形、読み、意味属性と続く。EOSは文末を表す。意味属性は３つのフィールドからなっており、名詞に関する意味属性、固有名詞に関する意味属性、用言に関する意味属性である。「世界」は名詞に関する意味属性として462と384を持つことが分かる。意味属性およびその階層構造については以下の非特許文献６に詳述されている。
【００３３】
［非特許文献6］：池原悟, 宮崎正弘, 白井諭, 横尾昭男, 中岩浩巳, 小倉健太郎, 大山芳史, 林良彦(1997) 日本語語彙大系. 岩波書店.
【００３４】
テンプレートを作成するには、まずテンプレートリストを空集合で初期化し、各質問文の形態素解析結果のそれぞれについて以下の（１）〜（３）の処理を行う。
【００３５】
（１）リストを初期化する。削除フラグを０にする。空欄の数を０にする。
【００３６】
（２）形態素解析結果の各行について以下の（ａ）〜（ｃ）の処理をループする。
【００３７】
(a) 当該単語の品詞が連体詞、連用詞、名詞、動詞語幹、及び形容詞語幹のいずれかであり、接尾辞でなく、単語表記が「こと」でなく、基本形が「する」、「ある」、「いる」でない場合、当該単語に紐付いた意味属性があれば、その先頭の意味属性と品詞とをセットにしてリストに追加する。意味属性の一般性を高めるために、日本語語彙大系に示された意味属性の階層構造を用いて、階層的に上位ノードの意味属性を用いることが好ましい。本実施の形態では、最上位ノードから数えて６階層よりも下に位置する意味属性については、上位ノードをたどり、最上位ノードから数えて６階層目にあたる意味属性を用いる。当該単語に紐付いた意味属性がない場合は、品詞をリストに追加する。このとき、空欄の数を1増やす。
(b) 当該単語の品詞がそれ以外の品詞の場合は、当該単語の単語表記をリストに追加する。
(c) 当該単語の品詞が固有名詞、もしくは、数値、未知語であれば、削除フラグを１にする。
【００３８】
（３）削除フラグが０、かつ、空欄の数が２以上の場合、テンプレートリストに、リストの内容を文字列化したものを追加する。ここでは、「｜」でリストの要素を連結する。空欄の数を２以上としたのはテンプレートに幅を持たせるためであり、１以上としてもよい。
【００３９】
最後にテンプレートリストに含まれているテンプレートを集計し、頻度が大きい上位N件のテンプレートを最終的なテンプレートリストとして出力する。たとえば、Ｎは500である。
【００４０】
図５は、実際に質問文の集合から作成したテンプレートの頻度上位10件である。
【００４１】
最初のカラムは頻度による順位であり、二つ目のカラムが頻度である。最後のカラムがテンプレートである。テンプレートの空欄の部分は[]で囲まれている。そして、空欄には品詞もしくは品詞と意味属性の組み合わせが付与されている。これは、これらの品詞もしくは品詞と意味属性の組み合わせに該当する単語によってこの空欄が埋められることを示している。
【００４２】
N838は意味属性の838を表す。Nは接頭辞である。838は食料を表す意味属性であり、1253は感情を表す意味属性である。このテンプレートのもととなった質問文は、たとえば「ラーメンは好きですか？」である。
【００４３】
ラベル付き質問文データベース２４は、上記のラベルが付与された質問文の集合が記憶されている。各質問文には、上記で説明したラベルが一つ以上付与されていればよい。本実施の形態では、各質問文には４種類のラベルのいずれか一つだけが付与されているとする。
【００４４】
特徴単語抽出部２５は、各ラベルに対し、ラベル付き質問文データベース２４に記憶されている、当該ラベルが付与された質問文の集合から、当該ラベルに特徴的な単語を抽出して、特徴単語記憶部２６に格納する。
【００４５】
特徴単語の抽出には共起に基づく手法を用いる。具体的には、対数尤度比検定を用いる。まず準備として、質問文をすべて形態素解析し、形態素解析結果の各行に対して、以下の（１）〜（２）の手続きを行う事で、質問文に含まれる単語リストを作成する。
【００４６】
（１）単語リストを空集合で初期化する。
【００４７】
（２）形態素解析結果の各行について以下の（ａ）〜（ｂ）の処理をループする。
【００４８】
(a) 当該単語の品詞が連体詞、連用詞、名詞、動詞語幹、及び形容詞語幹のいずれかであり、接尾辞でなく、単語表記が「こと」でなく、基本形が「する」、「ある」、「いる」でない場合、当該単語に紐付いた意味属性があれば、その先頭の意味属性と品詞と単語表記をセットにして単語リストに追加する。意味属性の一般性を高めるために、意味属性については、日本語語彙大系の階層構造に基づき上位ノードをたどり、最上位ノードから数えて６階層目にあたる意味属性を用いる。
(b) 当該単語に紐付いた意味属性がない場合は、品詞と単語表記をセットにして単語リストに追加する。
【００４９】
上記の処理により、＜質問文，ラベル，単語リスト＞のタプルのデータ集合が作成されるが、ここから、ラベルと単語の組み合わせの各々について、図６に示すクロス表を作成し、当該組み合わせのラベルＬと単語Ｗの共起度合いを計算する。
【００５０】
ここで、Ｍはすべての質問文の数である。c12は単語Wを含み、かつ、ラベルがLである質問文の数である。c1はラベルがLである質問文の数である。c2は単語Wを含む質問文の数である。
【００５１】
ここから、c12がどれほど偏った値かを対数尤度比を用いて計算する。対数尤度比は以下の式により算出する。
【００５２】
【数１】
2017027233.tif 000003
【００５３】
ここで、Oiは上記テーブル中の各セルの値で、すなわち｛c12, c1-c12, c2-c12, N-c2-c1+c12｝のことである。EiはOiの期待値である。たとえば、c12の期待値はc1＊(c2／N) のように求めればよい。このようにして求めた対数尤度比を関連度として用いる。対数尤度比以外にも共起を表す尺度であれば何でもよく、カイ二乗値やＴスコア、相互情報量などを用いてもよい。
【００５４】
こうすることで、各ラベルについて、共起する単語を列挙することができる。本実施の形態では、各ラベルについて対数尤度比の上位５単語を特に共起が高い特徴的な単語として抽出する。ここではノイズを減らすために特に共起が高そうな上位5単語としているが、より多くの単語を獲得してもよい。
【００５５】
たとえば、質問タイプの「数量：時刻」のラベルに共起する単語は、図７に示す通りである。
【００５６】
上記図７において二つ目のカラムが品詞と意味属性であり、三つ目のカラムが単語表記であり、四つ目のカラムが対数尤度比である。拡張固有表現タイプの「Sports_Organization_Other」のラベルの場合は、図８に示す通りであった。
【００５７】
このようにして得られた各ラベルに対する特徴的な単語リストの情報は、特徴単語記憶部２６に格納される。
【００５８】
言語モデル構築部２７は、各ラベルに対し、ラベル付き質問文データベース２４に記憶されている、当該ラベルが付与された質問文の集合から、当該ラベルに対応した言語モデルを構築し、言語モデル記憶部２８に格納する。具体的には、各ラベルに対し、当該ラベルに対応した質問文の集合を入力として、単語のN-gram 言語モデルを構築する。
【００５９】
言語モデルの構築には既存の言語モデル構築ツールを用いる。本実施の形態では、SRILM（The SRI Language Modeling Toolkit）を用いる。SRILM は分かち書きされたテキストデータからN-gram言語モデルを構築できる。そこで、各ラベルに対し、当該ラベルに対応付いた質問文をまずJTAG によって形態素解析し、単語表記の部分のみを取得し、空白区切りで連結することによって、分かち書きされた当該ラベルの質問文集合を作成する。そして、当該ラベルの質問文集合をSRILM の入力にすることにより当該ラベルの言語モデルを構築する。今回、5-gram の言語モデルを構築することとし，スムージングにはKneser-Ney スムージングを用いた。
【００６０】
図９は、「質問_経験」のラベルが付与された質問文の例である。
【００６１】
これらを分かち書きすると図１０のようになる。
【００６２】
このような分かち書きファイルからSLILM を用いて言語モデルを構築すると、図１１のような内容を持つファイルが作成される。これは言語モデルで一般的なARPA 形式である。
【００６３】

とはSLILM によって付与される文末を表す記号である。最初のカラムが二つ目のカラムで示される単語列が生起する確率（対数）である。
【００６４】
すべてのラベルについて、上記の言語モデルを作成する。
【００６５】
質問文候補生成部２９は、入力部１０が受け付けたラベル集合について、以下の（１）〜（３）の手続きにより質問文候補リストを生成する。
【００６６】
（１）質問文候補リストを空集合で初期化する。
【００６７】
（２）ラベル集合の各ラベルに対応する特徴単語を、特徴単語記憶部２６から読み込む。
【００６８】
（３）テンプレート記憶部２３からランダムにテンプレートを一つ取り出し、以下の（ａ）〜（ｃ）の処理を行う。この処理は所定の回数（例えば，100 回）繰り返される。
【００６９】
(a) 空欄の部分のそれぞれについて、入りうる単語を列挙する。具体的には、空欄の部分に付与された品詞と意味属性情報と特徴単語の品詞と意味属性情報が同一であれば、その特徴単語が空欄の部分に入りうる単語として列挙される。
(b) 一つ以上の特徴単語が列挙されたら、ランダムに一つの特徴単語を選びその単語を空欄に入れる。これをすべての空欄について繰り返す。
(c) すべての空欄が特徴単語によって埋められたら、その空欄が埋められたテンプレートを質問文候補として候補文リストに追加する。空欄に入る単語が列挙できない場合は、候補文リストには何も追加しない。
【００７０】
たとえば、「名称:固有物名」「質問_評価」「音楽」「Music」が入力されるラベル集合とすると、図１２に示す質問文候補が生成される。
【００７１】
質問文評価部３０は、質問文候補生成部２９が生成した質問文候補リストのそれぞれについて、言語モデル記憶部２８に記憶されているラベル集合の各ラベルに対する言語モデルに基づいて評価を行う。具体的には、入力部１０が受け付けたラベル集合のそれぞれに対応した言語モデルを用いて、質問文候補のそれぞれのN-gram 確率を計算することで評価する。具体的には以下の式で評価する。
【００７２】
【数２】
2017027233.tif 000004
【００７３】
ただし、cand は質問文候補である。score は質問文候補のスコアを返す関数である。labels は入力されたラベル集合であり、model はラベルに対して対応する言語モデルを返す関数である。len は質問文候補に含まれる単語の数を返す関数である。logprob は質問文に対して、言語モデルを適用した時の対数尤度を求める関数である。最初の引数が質問文、第二引数が言語モデルである。言語モデルを質問候補文に適用して対数尤度を求めるには、質問候補文を単語に分かち書きし、対数尤度を求めるには、SRILM ツールキットのngram コマンドを用いればよい。
【００７４】
ラベル集合「名称:固有物名」「質問_評価」「音楽」「Music」で得られた質問文候補について、尤もらしさを表すscore を求め、スコアの大きなものから（尤度の高い物から）並び替えた上位10件は、図１３に示す通りである。
【００７５】
ラベル集合に対して適切な質問文候補が生成されていることが分かる。なお、下位10 件は図１４に示す通りである。名称を聞いていないものなどが含まれており、不適切なものが多く含まれている。このことから、適切に質問文候補が評価されていることが分かる。
【００７６】
質問文候補集合とこれらのscoreの値が出力部９０に送られる。
【００７７】
質問文候補はscoreの値の降順によってソートされ、上位のものについて必要に応じた数の質問文が出力部９０により出力される。たとえば、最上位の質問を出力したり、上位N 件を出力したり、上位N件からランダムに出力する。対話システムにおいて、ユーザ発話に対する次の質問が取得できればよい場合は、最上位のものを用いればよい。対話システムの出力にバリエーションを持たせたい場合は、上位N件から一つをランダムに選んで用いればよい。
【００７８】
＜質問文生成装置の作用＞
次に、本実施の形態に係る質問文生成装置１００の作用について説明する。まず、質問文生成装置１００によって、図１５に示すテンプレート作成処理ルーチンが実行される。
【００７９】
まず、ステップＳ１００において、質問文データベース２１から、質問文を取り出し、ステップＳ１０２において、上記ステップＳ１００で取り出した質問文に対して、形態素解析を行う。
【００８０】
次のステップＳ１０４では、上記ステップＳ１０２で得られた形態素解析結果に基づいて、テンプレートを作成し、テンプレートリストに格納する。
【００８１】
ステップＳ１０６では、質問文データベース２１に記憶されている全ての質問文について、上記ステップＳ１００〜Ｓ１０４の処理を実行したか否かを判定し、上記ステップＳ１００〜Ｓ１０４の処理を実行していない質問文が存在する場合には、上記ステップＳ１００へ戻り、当該質問文を取り出す。一方、質問文データベース２１に記憶されている全ての質問文について、上記ステップＳ１００〜Ｓ１０４の処理を実行した場合には、ステップＳ１０８へ移行し、テンプレートリストに含まれているテンプレートを集計する。
【００８２】
ステップＳ１１０では、上記ステップＳ１０８の集計結果に基づいて、頻度の高い上位Ｎ件のテンプレートを、テンプレート記憶部２３に格納し、テンプレート作成処理ルーチンを終了する。
【００８３】
また、質問文生成装置１００によって、図１６に示す特徴単語抽出処理ルーチンが実行される。
【００８４】
ステップＳ１２０において、ラベル付き質問文データベース２４に記憶されている全ての質問文に対して、形態素解析を行う。ステップＳ１２２では、上記ステップＳ１２０の形態素解析結果に基づいて、＜質問文，ラベル，単語リスト＞のタプルのデータ集合を作成する。
【００８５】
そして、ステップＳ１２４において、上記ステップＳ１２２で作成されたタプルのデータ集合に基づいて、ラベルと単語の組み合わせの各々について、上記図６に示したクロス表を作成する。次のステップＳ１２６では、ラベルと単語の組み合わせの各々について、上記ステップＳ１２４で作成されたクロス表に基づいて、対数尤度比を計算する。
【００８６】
そして、ステップＳ１２８において、各ラベルに対し、上記ステップＳ１２６で計算された対数尤度比に基づいて、当該ラベルに対する特徴的な単語を抽出し、特徴単語記憶部２６に格納し、特徴単語抽出処理ルーチンを終了する。
【００８７】
また、質問文生成装置１００によって、図１７に示す言語モデル構築処理ルーチンが実行される。
【００８８】
ステップＳ１３０において、ラベル付き質問文データベース２４に記憶されている全ての質問文に対して、形態素解析を行う。
【００８９】
そして、ステップＳ１３２では、上記ステップＳ１２０の形態素解析結果に基づいて、各ラベルに対し、上記ステップＳ１３０で得られた当該ラベルが付与された各質問文の形態素解析結果に基づいて、当該ラベルに対する言語モデルを構築し、言語モデル記憶部２８に格納し、言語モデル構築処理ルーチンを終了する。
【００９０】
また、入力部１０により、ラベル集合を受け付けると、質問文生成装置１００によって、図１８に示す質問文生成処理ルーチンが実行される。
【００９１】
まず、ステップＳ１４０において、入力されたラベル集合の各ラベルに対する特徴単語を、特徴単語記憶部２６から読み込む。
【００９２】
そして、ステップＳ１４２において、テンプレート記憶部２３に記憶されているテンプレートからランダムに１つ取り出す。ステップＳ１４４では、上記ステップＳ１４０で読み込んだ特徴単語から、上記ステップＳ１４２で取り出したテンプレートの空欄部分の各々について、入りうる特徴単語を列挙する。
【００９３】
そして、ステップＳ１４６において、テンプレートの空欄部分の各々について、上記ステップＳ１４４で列挙した特徴単語からランダムに単語を選び、空欄部分に入れて、質問文候補を作成する。
【００９４】
次のステップＳ１４８では、予め定めた繰り返し回数まで、上記ステップＳ１４２〜Ｓ１４６の処理を繰り返したか否かを判定する。予め定めた繰り返し回数に到達していない場合には、上記ステップＳ１４２へ戻る。一方、予め定めた繰り返し回数に到達した場合には、ステップＳ１５０へ移行する。
【００９５】
ステップＳ１５０では、上記ステップＳ１４６で作成された質問候補文の各々について、言語モデル記憶部２８に記憶されている、入力されたラベル集合の各ラベルに対する言語モデルに基づいて、当該質問文候補の尤もらしさを表すscoreを計算する。
【００９６】
そして、ステップＳ１５２において、上記ステップＳ１５０で計算したscoreに基づいて、上記ステップＳ１４６で作成された質問候補文から、上位の質問文を選択して、出力部９０により出力して、質問文生成処理ルーチンを終了する。
【００９７】
以上説明したように、本実施の形態に係る質問文生成装置によれば、質問文から作成されたテンプレートに対し、少なくとも１つのラベルを入力として、空欄に付与された品詞及び意味属性と対応する、入力されたラベルに特徴的な単語によって空欄を置き換えることにより、低コストで、適切な質問文を生成することができる。
【００９８】
また、低コストで質問文が生成でき、対話システムが雑談において様々な質問が実現できるようになる。会話が進み、システムとユーザとの対話が円滑になり、人間とコンピュータとの共同的作業が促進される。
【００９９】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【０１００】
例えば、質問評価部３０で評価せずに、質問文候補生成部２９で生成した全ての質問候補文を出力してもよい。
【０１０１】
また、テンプレート作成部２２によるテンプレート作成、特徴単語抽出部２５による特徴単語の抽出、言語モデル構築部２７による言語モデルの構築を、質問文生成装置１００とは別の装置で行っても良い。
【０１０２】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【０１０３】
１０   入力部
２０   演算部
２１   質問文データベース
２２   テンプレート作成部
２３   テンプレート記憶部
２４   質問文データベース
２５   特徴単語抽出部
２６   特徴単語記憶部
２７   言語モデル構築部
２８   言語モデル記憶部
２９   質問文候補生成部
３０   質問文評価部
９０   出力部
１００ 質問文生成装置
【図１】
2017027233.tif 000005
【図２】
2017027233.tif 000006
【図３】
2017027233.tif 000007
【図４】
2017027233.tif 000008
【図５】
2017027233.tif 000009
【図６】
2017027233.tif 000010
【図７】
2017027233.tif 000011
【図８】
2017027233.tif 000012
【図９】
2017027233.tif 000013
【図１０】
2017027233.tif 000014
【図１１】
2017027233.tif 000015
【図１２】
2017027233.tif 000016
【図１３】
2017027233.tif 000017
【図１４】
2017027233.tif 000018
【図１５】
2017027233.tif 000019
【図１６】
2017027233.tif 000020
【図１７】
2017027233.tif 000021
【図１８】
2017027233.tif 000022