(57)【要約】【課題】雑談であっても自然な展開の会話を実現する対話システムのためのフレームを作成することができるようにする。【解決手段】質問文抽出部３０が、入力された発話集合から質問文を抽出する。ラベル推定部４０が、質問文の各々について、質問文の内容を表す少なくとも１つのラベルを推定する。単語抽出部６０が、質問文の各々から、質問文に含まれる単語を抽出する。ラベル集計部７０が、単語の各々に対し、単語が抽出された質問文の各々についてラベル推定部４０によって推定された少なくとも１つのラベルを集計し、頻度が高いラベルをスロット名とし、スロット名とスロット値との組み合わせの各々からなるフレームを作成する。【選択図】図１
2017027234.tif 000002
【特許請求の範囲】
【請求項１】
入力された発話集合から質問文を抽出する質問文抽出部と、
前記質問文抽出部によって抽出された質問文の各々について、前記質問文の内容を表す少なくとも１つのラベルを推定するラベル推定部と、
前記質問文抽出部によって抽出された質問文の各々から、前記質問文に含まれる単語を抽出する単語抽出部と、
前記単語の各々に対し、前記単語が抽出された前記質問文の各々について前記ラベル推定部によって推定された前記少なくとも１つのラベルを集計し、頻度が高い前記少なくとも１つのラベルをスロット名とし、前記スロット名とスロット値との組み合わせの各々からなるフレームを作成するラベル集計部と、
を含むフレーム作成装置。
【請求項２】
前記ラベル推定部は、
前記質問文抽出部によって抽出された質問文の各々について、前記質問文の質問タイプを推定する質問タイプ推定部と、
前記質問文抽出部によって抽出された質問文の各々について、前記質問文の対話行為を推定する対話行為推定部と、
前記質問文抽出部によって抽出された質問文の各々について、前記質問文のカテゴリを推定するカテゴリ推定部と、
前記質問文抽出部によって抽出された質問文の各々について、前記質問文が求める回答の拡張固有表現タイプを推定する拡張固有表現タイプ推定部と、
の少なくとも１つを含む請求項１記載のフレーム作成装置。
【請求項３】
前記質問文の各々は、前記ラベル推定部によって前記質問文から推定された前記少なくとも１つのラベルもしくは２つ以上のラベルの組み合わせに応じてフィルタされる請求項１又は２記載のフレーム作成装置。
【請求項４】
前記質問文の各々について、前記質問文から推定された前記少なくとも１つのラベルを統合するラベル統合部を更に含み、
前記ラベル集計部は、前記単語の各々に対し、前記単語が抽出された前記質問文の各々について前記ラベル統合部によって統合された前記少なくとも１つのラベルを集計する請求項１〜請求項３の何れか１項記載のフレーム作成装置。
【請求項５】
前記ラベル集計部は、前記単語の各々に対し、前記スロット名とスロット値との組み合わせの各々からなるフレームを作成し、前記スロット名である前記少なくとも１つのラベルに応じて、前記スロット値に入りうる値を特定する請求項１〜請求項４の何れか１項記載のフレーム作成装置。
【請求項６】
質問文抽出部が、入力された発話集合から質問文を抽出し、
ラベル推定部が、前記質問文抽出部によって抽出された質問文の各々について、前記質問文の内容を表す少なくとも１つのラベルを推定し、
単語抽出部が、前記質問文抽出部によって抽出された質問文の各々から、前記質問文に含まれる単語を抽出し、
ラベル集計部が、前記単語の各々に対し、前記単語が抽出された前記質問文の各々について前記ラベル推定部によって推定された前記少なくとも１つのラベルを集計し、頻度が高い前記少なくとも１つのラベルをスロット名とし、前記スロット名とスロット値との組み合わせの各々からなるフレームを作成する
フレーム作成方法。
【請求項７】
前記ラベル推定部がラベルを推定することでは、
質問タイプ推定部が、前記質問文抽出部によって抽出された質問文の各々について、前記質問文の質問タイプを推定すること、
対話行為推定部が、前記質問文抽出部によって抽出された質問文の各々について、前記質問文の対話行為を推定すること、
カテゴリ推定部が、前記質問文抽出部によって抽出された質問文の各々について、前記質問文のカテゴリを推定すること、及び
拡張固有表現タイプ推定部が、前記質問文抽出部によって抽出された質問文の各々について、前記質問文が求める回答の拡張固有表現タイプを推定すること
の少なくとも１つを含む請求項６記載のフレーム作成方法。
【請求項８】
コンピュータを、請求項１〜請求項５の何れか１項記載のフレーム作成装置を構成する各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フレーム作成装置、方法、及びプログラムに係り、特に、対話システムのためのフレームを作成するフレーム作成装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
対話システムは大きく分けて二種類あり、タスク指向型対話システムと非タスク指向型対話システムに分けられる。
【０００３】
タスク指向型対話システムは特定のタスクをシステムとの対話により達成するものであり、たとえば、フライトの予約システムや天気情報案内システムに用いられている。これらのシステムでは、一般的にフレーム（スロット名とスロット値からなるスロットから構成される）という構造を持ち、フレームに基づいて対話が進行する。非特許文献１には、フレームに基づく天気情報案内システムが詳述されている。
【０００４】
非特許文献１におけるフレームは図１２のようなものであり、place（場所）、date（日付）、info（情報種別）というスロットがある。
【０００５】
これらのスロット値をユーザからの発話によって埋めることで、対話が進行する。たとえば、ユーザが「大阪の天気なんですけど」と発話したとすると、図１３のように、placeのスロット値が「大阪」、infoが「天気」で埋められる。
【０００６】
dateのスロット値が空であるので、対話システムはdateについての質問をするとする。たとえば、「いつですか」とシステムが質問をする。もしユーザが「明日」と答えたとすると、図１４のように、date が「明日」で埋められる。
【０００７】
スロットがすべて埋まったら、対話システムはこの情報をもとに、アクセス可能な天気情報のデータベースから明日の大阪の天気を検索し、その情報をユーザに伝えることができる。以上が、一般的なタスク指向型対話システムの挙動である。
【０００８】
一方、非タスク指向型対話システムでは、目的のない対話を扱い、対話の内容はいわゆる雑談である。雑談はさまざまな話題が話される。雑談を行う対話システムの構築の仕方は主に二つあり、一つはルールベースの手法で、大量の応答ルールを手作業で記述する手法である（非特許文献2）。もう一つは、抽出ベースの手法で、ウェブやツイッター（登録商標）などの文章をデータベース化しておき、ユーザ発話に関連するものを選択することで発話する（非特許文献3）。
【０００９】
近年では、非特許文献４のように、ツイッター（登録商標）から発話を検索するだけでなく、大規模テキストから述語項構造（述語とその項からなる構造）のデータベースを作成しておき、対話における現在の話題について、関連する述語項構造を検索し、検索された述語項構造から発話文を生成する手法も研究されている。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】Ryuichiro Higashinaka, Katsuhito Sudoh, Mikio Nakano, "Incorporating Discourse Features into Confidence Scoring of Intention Recognition Results in Spoken Dialogue Systems", Speech Communication, Volume 48, Issues 3-4, pp.417-436, 2006.
【非特許文献２】R. S. Wallace, The Anatomy of A.L.I.C.E. A.L.I.C.E. Artificial Intelligence Foundation, Inc., 2004.
【非特許文献３】Bessho, F., Harada, T., and Kuniyoshi, Y. (2012). "Dialog System Using Real-Time Crowdsourcing and Twitter Large-Scale Corpus." In Proc. SIGDIAL, pp. 227-231.
【非特許文献４】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.
【発明の概要】
【発明が解決しようとする課題】
【００１１】
人間同士が「ペット」についての会話をする場合には、最初はペットが好きかどうかという話をし、その後、ペットを飼っているかどうか、そして、飼っているならどんなペットを飼っているかというように話が進行するだろう。しかし、現在の雑談対話システムでは、このような構造を知識として持っていないため、自然な展開の会話ができない。
【００１２】
たしかに、ルールベースの雑談対話システムでは、手作業で会話の流れを作り込むことにより、少数の話題であれば自然な展開の会話も実現できるかもしれない。しかし、雑談のような広い話題に対応することは、コスト面から非現実的である。また、抽出ベースの手法でも、現在の話題についての構造を持たず、ユーザ入力毎に発話の検索を行うため、反射的な反応ばかりをしてしまうという問題がある。
【００１３】
本発明は、上記の事情を鑑みてなされたもので、雑談であっても自然な展開の会話を実現する対話システムのためのフレームを作成することができるフレーム作成装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記の目的を達成するために本発明に係るフレーム作成装置は、入力された発話集合から質問文を抽出する質問文抽出部と、前記質問文抽出部によって抽出された質問文の各々について、前記質問文の内容を表す少なくとも１つのラベルを推定するラベル推定部と、前記質問文抽出部によって抽出された質問文の各々から、前記質問文に含まれる単語を抽出する単語抽出部と、前記単語の各々に対し、前記単語が抽出された前記質問文の各々について前記ラベル推定部によって推定された前記少なくとも１つのラベルを集計し、頻度が高い前記少なくとも１つのラベルをスロット名とし、前記スロット名とスロット値との組み合わせの各々からなるフレームを作成するラベル集計部と、を含んで構成されている。
【００１５】
本発明に係るフレーム作成方法は、質問文抽出部が、入力された発話集合から質問文を抽出し、ラベル推定部が、前記質問文抽出部によって抽出された質問文の各々について、前記質問文の内容を表す少なくとも１つのラベルを推定し、単語抽出部が、前記質問文抽出部によって抽出された質問文の各々から、前記質問文に含まれる単語を抽出し、ラベル集計部が、前記単語の各々に対し、前記単語が抽出された前記質問文の各々について前記ラベル推定部によって推定された前記少なくとも１つのラベルを集計し、頻度が高い前記少なくとも１つのラベルをスロット名とし、前記スロット名とスロット値との組み合わせの各々からなるフレームを作成する。
【００１６】
本発明に係るプログラムは、コンピュータを、上記のフレーム作成装置の各部として機能させるためのプログラムである。
【発明の効果】
【００１７】
以上説明したように、本発明のフレーム作成装置、方法、及びプログラムによれば、単語の各々に対し、単語が抽出された質問文の各々について推定された少なくとも１つのラベルを集計し、頻度が高いラベルをスロット名とし、スロット名とスロット値との組み合わせの各々からなるフレームを作成することにより、雑談であっても自然な展開の会話を実現する対話システムのためのフレームを作成することができる、という効果が得られる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態に係るフレーム作成装置の構成を示す概略図である。
【図２】学習に用いた質問文と質問タイプの一例である。
【図３】質問タイプの一例を示す図である。
【図４】形態素解析結果の一例を示す図である。
【図５】対話行為の一例を示す図である。
【図６】ラベルの推定結果の一例を示す図である。
【図７】ラベルの推定結果の一例を示す図である。
【図８】質問文と統合されたラベルとの一例を示す図である。
【図９】ラベルの集計結果の一例を示す図である。
【図１０】フレームの一例を示す図である。
【図１１】本発明の実施の形態に係るフレーム作成装置におけるフレーム作成処理ルーチンの内容を示すフローチャートである。
【図１２】従来技術におけるフレームの一例を示す図である。
【図１３】従来技術におけるフレームの一例を示す図である。
【図１４】従来技術におけるフレームの一例を示す図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００２０】
＜本発明の実施の形態の概要＞
多くの話題について、タスク指向型対話システムと同様のフレームを、大規模なユーザ発話の集合から自動的に構築する。具体的には、大規模な発話の集合（今回はツイッター（登録商標）のデータを用いる）から、質問文のみを抽出する。そして、これらの質問文について、質問文の内容を表す一つ以上のラベルを推定する。本発明の実施の形態では、質問タイプ、対話行為、カテゴリ、拡張固有表現タイプのラベルをそれぞれ推定する。ラベル推定器は別途用意した学習用データから学習しておいたものを用いる。これにより、各質問文について一つ以上のラベルからなるラベル集合が得られる。最後に、すべての質問文中に含まれる単語を列挙した上、各単語についてラベル集合を集計する。ラベル集合を頻度が多いもの順にソートし、頻度が一定値以上のもの、もしくは、その上位を用いることで、その単語についてのフレームとする。このフレームにしたがって対話システムを構成することで、人間がよく質問するものについて尋ねるといった、自然な展開の会話が実現できる。
【００２１】
＜システム構成＞
図１に示すように、本発明の実施の形態に係るフレーム作成装置１００は、大規模発話データベース１０から、発話集合が入力され、対話システムのためのフレーム９０を生成する。このフレーム作成装置１００は、ＣＰＵと、ＲＡＭと、後述するフレーム作成処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図１に示すように、フレーム作成装置１００は、入力部２０と、質問文抽出部３０と、ラベル推定部４０と、ラベル統合部５０と、単語抽出部６０と、ラベル集計部７０とを備えている。
【００２２】
入力部２０は、大規模発話データベース１０から発話集合を受け付ける。ここで、大規模発話データベース１０は別途用意されたものであり、本実施の形態ではツイッター（登録商標）から取得したツイートの集合である。発話集合は質問文抽出部３０に渡される。ツイートはノイズが多いため、たとえば、文字列長が極端に短かったり（例えば、５文字未満）長かったりする（例えば、２０文字を超える）場合や、日本語以外の文字列のみの発話などはフィルタして質問文抽出部３０に渡す。
【００２３】
質問文抽出部３０は、入力部２０から発話集合を受け取り、質問文のみからなる質問文集合を抽出する。具体的には、文末がクエスチョンマーク（「？」）であるもののみを抽出する。なお、質問文とそうでない文を学習データとして作成した上、質問文を判定する装置を一般的な文書分類の手法により構築し、この出力によって質問文かどうかを判定しても良い（判定の一例は質問タイプ推定部４２の説明で詳述する）。質問文集合は後述する質問タイプ推定部４２、対話行為推定部４４、カテゴリ推定部４６、及び拡張固有表現タイプ推定部４８に送られる。
【００２４】
ラベル推定部４０は、質問タイプ推定部４２、対話行為推定部４４、カテゴリ推定部４６、及び拡張固有表現タイプ推定部４８を備えている。
【００２５】
ラベル推定部４０は、質問文集合に含まれる質問文の各々について、出願人の形態素解析器ＪＴＡＧによって形態素解析を行う。
【００２６】
質問タイプ推定部４２は、質問文抽出部３０によって抽出された質問文集合に含まれる質問文の各々について、自然言語処理において一般的な文書分類の手法によって質問タイプを推定する。具体的には、質問タイプが付与された質問文を大量に準備し、質問文に含まれる単語や意味情報などから、最も尤もらしい質問タイプを推定する推定器を機械学習の手法により構築しておく。そして、この推定器を用いて質問文の質問タイプ推定を行う。図２は、学習に用いた質問文とそれに付与された質問タイプの例を示す。
【００２７】
質問タイプとしては図３に示す２４種類を用いる。
【００２８】
質問タイプ推定部４２は、質問文集合の各質問文の形態素解析結果に基づいて、各質問文から単語N-gramを抽出する。ここでは、unigram、bigram、trigram、4-gram、5-gramを抽出する。Ｎは１以上であればよい。また、ＪＴＡＧは、単語に対して意味属性（意味情報を表すラベル）を出力するため、これらの意味属性を抽出する。具体的には、「世界で一番高い山は？」という文であれば、図４に示すように形態素解析される。
【００２９】
各行は単語の情報に対応しており、最初のカラムが単語表記である。以降、品詞、標準表記、基本形、読み、意味属性と続く。EOSは文末を表す。意味属性は３つのフィールドからなっており、名詞に関する意味属性、固有名詞に関する意味属性、用言に関する意味属性である。「世界」は名詞に関する意味属性として462 と384 を持つことが分かる。なお、意味属性を用いないのであれば、形態素解析に、フリーソフトのChasen やMecab を用いてもよい。
【００３０】
各質問文について抽出したunigram〜5-gramおよび意味属性のそれぞれが存在するかどうかをバイナリの素性として機械学習に用いる。たとえば、「世界で一番高い山は？」であれば、unigram として、「世界」「で」「一番」「高」「い」「山」「は」「？」が得られるが、このそれぞれが素性となり、これらの素性値が１（存在する）となる。bigram〜5-gram および意味属性についても同様である。素性と素性値の集合を素性ベクトルと呼ぶ。
【００３１】
このようにして質問文のそれぞれについて素性ベクトルを抽出したら、この素性ベクトルから質問タイプを推定する推定器を教師あり機械学習の手法によって構築する。具体的には、ロジスティック回帰分析に基づくマルチクラス分類を行う。この分類手法は文書分類において一般的なものである。ここでは、実装として、LIBLINEAR(http://www.csie.ntu.edu.tw/~cjlin/liblinear/) を用いる。マルチクラス分類のアルゴリズムとして、サポートベクトルマシンなど他の一般的な分類アルゴリズムを用いてもよい。
【００３２】
たとえば、「誰誘います？」という質問文に対してこの推定器は「名称:人名 0.651149」のように出力する。推定された質問タイプは「名称：人名」（人名を聞く質問であるという意味）であり、その確信度は0.651149 であるという意味である。
【００３３】
質問タイプ推定部４２は、質問文抽出部３０から受け取った質問文集合に含まれる質問文のそれぞれについて推定を行い、その結果をラベル統合部５０に送る。
【００３４】
対話行為推定部４４は、質問文集合の各質問文の形態素解析結果に基づいて、質問文抽出部３０によって抽出された質問文集合に含まれる質問文の各々について、当該質問文の対話行為（発話意図）を推定する。ここでの方法は、質問タイプ推定部４２と全く同様の方法のものを用いる。つまり、質問文と対話行為が付与されたデータを大量の準備し、質問文を形態素解析することによって得られる素性ベクトルから対話行為を推定する推定器を学習しておく。
【００３５】
対話行為は、図５に示す１０種類を用いる。
【００３６】
学習データについては、質問文について対話行為を人手で付与したものを準備する。データから学習された推定器は「誰誘います？」について「質問_事実 0.37933」と出力する。0.37933 は先の例と同様、確信度である。
【００３７】
対話行為推定部４４は、質問文抽出部３０から受け取った質問文集合に含まれる質問文のそれぞれについて推定を行い、その結果をラベル統合部５０に送る。
【００３８】
カテゴリ推定部４６は、質問文集合の各質問文の形態素解析結果に基づいて、質問文抽出部３０によって抽出された質問文集合に含まれる質問文の各々について、当該質問文のカテゴリ（質問文が関係するおおまかなジャンル）を推定する。ここでの方法は、質問タイプ推定部４２、対話行為推定部４４と全く同様である。つまり、質問文と対話行為が付与されたデータを大量の準備し、質問文を形態素解析することによって得られる素性ベクトルからカテゴリを推定する推定器を学習しておく。
【００３９】
カテゴリは１２２種類ある。カテゴリ数は多いので、ここではすべてを列挙しないが、たとえば、「アニメ・キャラクター」、「人生観・生き方・ポリシー」、「防災・災害」、「メンタルヘルス」、「宗教/信仰/寺・神社」、「デンタルケア」、「友達・仲間関係」などである。
【００４０】
学習データについては、質問文についてカテゴリを人手で付与したものを準備する。データから学習された推定器は「誰誘います？」について「友達・仲間関係 0.0779089」と出力する。0.0779089 は確信度である。
【００４１】
カテゴリ推定部４６は、質問文抽出部３０から受け取った質問文集合に含まれる質問文のそれぞれについて推定を行い、その結果をラベル統合部５０に送る。
【００４２】
拡張固有表現タイプ推定部４８は、質問文集合の各質問文の形態素解析結果に基づいて、質問文抽出部３０によって抽出された質問文集合に含まれる質問文の各々について、当該質問文が求める回答の拡張固有表現タイプを推定する。拡張固有表現タイプは、質問文がどのような固有表現（固有名詞や数量表現）を回答として求めているかを表すタイプである。固有表現として一般的なIREXの固有表現の体系を用いてもよいが、本実施の形態では、より細かな固有表現の分類である、関根らによる拡張固有表現の体系を用いて拡張固有表現質問タイプとする。拡張固有表現は全部で200種類ある。200種類については、以下の非特許文献に詳述されている。
【００４３】
［非特許文献５］：S. Sekine，K. Sudo, and C. Nobata: "Extended named entity hierarchy，", In Proc. LREC，2002.
【００４４】
推定法は、質問タイプ推定部４２、対話行為推定部４４、及びカテゴリ推定部４６と全く同様である。つまり、質問文と固有表現タイプが付与されたデータを大量の準備し、質問文を形態素解析することによって得られる素性ベクトルから拡張固有表現タイプを推定する推定器を学習しておく。
【００４５】
学習データについては、質問文について拡張固有表現タイプを人手で付与したものを準備する。データから学習された推定器は「誰誘います？」について「Person 0.211636」と出力する。Person が拡張固有表現タイプであり、0.211636 は確信度である。
【００４６】
拡張固有表現タイプ推定部４８は、質問文抽出部３０から受け取った質問文集合に含まれる質問文のそれぞれについて推定を行い、その結果をラベル統合部５０に送る。
【００４７】
ラベル統合部５０は、質問文抽出部３０が抽出した質問文集合に含まれる質問文について、質問タイプ推定部４２、対話行為推定部４４、カテゴリ推定部４６、及び拡張固有表現タイプ推定部４８が出力した結果を統合して、ラベルを付与する。
【００４８】
たとえば、「誰誘います？」について、質問タイプ推定部４２、対話行為推定部４４、カテゴリ推定部４６、及び拡張固有表現タイプ推定部４８の各々の推定結果を統合すると図６のようになる。
【００４９】
ラベル統合部５０は、各質問文についての推定結果を統合した上で、これらの結果に対して、１つのラベルもしくは２つ以上のラベルの組み合わせに応じて、以下の（１）〜（３）のフィルタ処理を行う。
【００５０】
（１）質問タイプが「名称」で始まる、「数量」で始まる、もしくは、「その他:選択」の場合、質問タイプ、対話行為、カテゴリ、及び拡張固有表現タイプの確信度のいずれか一つでも閾値を下回っている場合は、この質問文とその統合結果をフィルタする。たとえば、閾値は0.5である。
【００５１】
（２）上記（１）以外の場合、拡張固有表現タイプの情報は削除する。その上で、質問タイプ、対話行為、及びカテゴリの確信度のいずれか一つでも閾値を下回っている場合は、この質問文とその統合結果をフィルタする。たとえば、閾値は0.5である。
【００５２】
（３）すべての場合において、質問タイプが「その他」の場合は、この質問文をフィルタする。「その他」は情報を持たないためである。そして、対話行為が「確認」「質問_自問」の場合も、この質問文をフィルタする。これらは「確認」は直前の発話に依存し、「質問_自問」は相手から情報を得る発話ではないことを示すからである。
【００５３】
ラベル統合部５０は、フィルタされなかった質問文について、確信度以外の推定結果の部分を文字列として連結し、当該質問文について統合されたラベルとして付与する。
【００５４】
たとえば、「一番好きなミスチルの歌は何ですか？」であれば、図７に示すような、質問タイプ推定部４２、対話行為推定部４４、カテゴリ推定部４６、及び拡張固有表現タイプ推定部４８の推定結果が得られる。
【００５５】
この結果はフィルタ処理によってフィルタされないため、「一番好きなミスチルの歌は何ですか？」についてはラベルとして「名称:固有物名｜質問評価｜音楽｜Music」が得られる。「｜」は推定結果を結合する際に用いる連結記号である。
【００５６】
なお、質問文「誰誘います？」については上記フィルタ処理によってフィルタされる．
【００５７】
ラベル統合部５０によってフィルタされなかった質問文は、そのラベルが付与されて単語抽出部６０に送られる。
【００５８】
図８は、単語抽出部６０に送られる質問文とそのラベルの例である。なお、質問文には固有のIDが振られるものとする。
【００５９】
単語抽出部６０は、ラベル付きの質問文集合を入力として、各質問文に対して形態素解析を行う。ここでは、形態素解析器にＪＴＡＧを用いる。そして、形態素解析結果に基づいて、質問文集合の各質問文に対し、当該質問文に含まれる単語を抽出する。
【００６０】
本実施の形態では特に、名詞句を抽出することにする。処理としては、質問文中の連続した、品詞が名詞の単語を連結することで、名詞句を抽出する。たとえば、「パンを横須賀食堂で食べましたか？」であれば、「パン」と「横須賀食堂」が名詞句として抽出される。そして、名詞句と質問文ＩＤの対応を表に記録する。すべての質問文を処理し終えたとき、この表を参照することで、どの名詞句がどの質問文に含まれているかが分かる。ラベル集計部７０には、この対応表を送る。
なお、名詞句のみならず、固有表現抽出技術を用いて固有表現を抽出し、名詞句の代わりに用いてもよいし、名詞句とともに用いてもよい。固有表現抽出は文章から固有名詞や数値表現を抽出する一般的な技術であり、Conditional Random Fieldsといった系列ラベリングの技術を用いて実現される。
【００６１】
ラベル集計部７０は、ラベル付きの質問文集合に基づいて、単語抽出部６０から送られる対応表に含まれる各名詞句について以下の処理を行う。
【００６２】
まず、当該名詞句に対応付いているすべての質問ＩＤについて、ラベル付きの質問文集合から、ラベルを取得し、そのラベルの頻度を集計する。
【００６３】
そして、ラベルを頻度の降順でソートする。ここで、頻度が一定の閾値以下のものは削除する。もしくは、上位Ｎ個のラベルのみを残しそれ以外は削除する。この処理によって、名詞句について頻度が多く重要と考えられるラベル集合が得られる。たとえば、「ミスチル」については、図９に示すラベル集合が得られる。最後のカラムの数値はそのラベルの頻度である。ここでは、ラベルの頻度が２以上のもののみを残している。
【００６４】
ここで得られるラベル集合は名詞句（この場合「ミスチル」）についてよく質問される項目を表しており、タスク指向型対話におけるフレームとみなすことが可能である。たとえば、一つ目のスロットのスロット名は「名称:固有物名｜質問評価｜音楽｜Music」である。
【００６５】
なお、ラベルはスロット名に対応するが、スロット値に入りうる値は、ラベル情報から特定される。スロット名「名称:固有物名｜質問評価｜音楽｜Music」であれば、拡張固有表現タイプの情報から、このスロットのスロット値はMusic（音楽名）によって埋められることが分かる。また、２番目〜７番目のスロットの質問タイプは真偽であるため、スロット値としてYes/Noの値が入ることになる。８番目のスロットのスロット値には一つ目のスロットと同じくMusicが入り、最後のスロットは質問タイプが「説明:意味」であるため、のスロット値には、任意の文字列表現が入ることを特定することができる。
【００６６】
最終的に、「ミスチル」についてのフレーム９０として図１０が自動作成できる。
【００６７】
このようなフレーム９０があれば、これに基づいて自然な展開の会話が実現できる。たとえば、最初のスロットに基づいて、「ミスチルの曲は何が好きですか？」と発話した後、二番目のスロットに基づいて「ミスチルは聴きますか」と尋ね、三つ目のスロットに基づいてミスチルについての情報についての真偽を尋ねていくといった流れを持った会話をすることができるようになる。
【００６８】
本発明の実施の形態では、ラベル集計部７０は、このようなフレーム９０を質問文集合に含まれるすべての名詞句について作成できる。よって、広い話題について自然な展開の会話が実現できるようになる。
【００６９】
＜フレーム作成装置の作用＞
次に、本実施の形態に係るフレーム作成装置１００の作用について説明する。まず、入力部２０によって、大規模発話データベース１０から発話集合を受け付けると、フレーム作成装置１００によって、図１１に示すフレーム作成処理ルーチンが実行される。
【００７０】
まず、ステップＳ１００において、大規模発話データベース１０から受け付けた発話集合を読み込む。ステップＳ１０２において、上記ステップＳ１００で読み込んだ発話集合から、質問文集合を抽出する。
【００７１】
次のステップＳ１０４では、上記ステップＳ１０２で得られた質問文集合の各質問文に対して、形態素解析を行う。
【００７２】
ステップＳ１０６では、上記ステップＳ１０２で得られた質問文集合の各質問文に対して、上記ステップＳ１０４で得られた形態素解析結果に基づいて、質問タイプを推定する。
【００７３】
ステップＳ１０８では、上記ステップＳ１０２で得られた質問文集合の各質問文に対して、上記ステップＳ１０４で得られた形態素解析結果に基づいて、対話行為を推定する。
【００７４】
ステップＳ１１０では、上記ステップＳ１０２で得られた質問文集合の各質問文に対して、上記ステップＳ１０４で得られた形態素解析結果に基づいて、カテゴリを推定する。
【００７５】
ステップＳ１１２では、上記ステップＳ１０２で得られた質問文集合の各質問文に対して、上記ステップＳ１０４で得られた形態素解析結果に基づいて、拡張固有表現タイプを推定する。
【００７６】
そして、ステップＳ１１４において、質問文集合から、上記ステップＳ１０６〜Ｓ１１２で得られた各推定結果の関係に応じて質問文をフィルタし、フィルタされなかった各質問文に対して、上記ステップＳ１０６〜Ｓ１１２で得られた各推定結果を統合して、ラベルを付与する。
【００７７】
次のステップＳ１１６では、上記ステップＳ１１４でラベルが付与された質問文集合の各質問文から、名詞句を抽出する。
【００７８】
そして、ステップＳ１１８において、上記ステップＳ１１４でラベルが付与された質問文集合と、上記ステップＳ１１６での各質問文からの名詞句の抽出結果とに基づいて、各名詞句についてラベルを集計し、各名詞句について、ラベルの集計結果に基づいてフレームを作成し、スロット名のラベルに応じて、スロット値に入りうる値を特定してフレームに付与し、各名詞句について作成したフレームを出力して、フレーム作成処理ルーチンを終了する。
【００７９】
以上説明したように、本実施の形態に係るフレーム作成装置によれば、質問文集合から抽出された名詞句の各々に対し、名詞句が抽出された質問文の各々について付与された、統合されたラベルを集計し、頻度が高いラベルをスロット名とし、スロット名とスロット値との組み合わせの各々からなるフレームを作成することにより、雑談であっても自然な展開の会話を実現する対話システムのためのフレームを作成することができる。
【００８０】
また、対話システムの会話の展開が自然になり、ユーザにとって理解しやすいものになる。それにより、システムとユーザの意思疎通がしやすくなり、システムとユーザのインタラクションが円滑になる。
【００８１】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００８２】
例えば、ラベル推定部４０は、質問タイプ推定部４２、対話行為推定部４４、カテゴリ推定部４６、及び拡張固有表現タイプ推定部４８の少なくとも１つを備えていればよい。ラベル推定部４０が、質問タイプ推定部４２、対話行為推定部４４、カテゴリ推定部４６、及び拡張固有表現タイプ推定部４８のいずれか１つのみを備える場合には、ラベル統合部５０は不要である。
【００８３】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【００８４】
１０   大規模発話データベース
２０   入力部
３０   質問文抽出部
４０   ラベル推定部
４２   質問タイプ推定部
４４   対話行為推定部
４６   カテゴリ推定部
４８   拡張固有表現タイプ推定部
５０   ラベル統合部
６０   単語抽出部
７０   ラベル集計部
９０   フレーム
１００ フレーム作成装置
【図１】
2017027234.tif 000003
【図２】
2017027234.tif 000004
【図３】
2017027234.tif 000005
【図４】
2017027234.tif 000006
【図５】
2017027234.tif 000007
【図６】
2017027234.tif 000008
【図７】
2017027234.tif 000009
【図８】
2017027234.tif 000010
【図９】
2017027234.tif 000011
【図１０】
2017027234.tif 000012
【図１１】
2017027234.tif 000013
【図１２】
2017027234.tif 000014
【図１３】
2017027234.tif 000015
【図１４】
2017027234.tif 000016