(57)【要約】【課題】対話中の現在の発話と過去の発話との類似関係を把握することができる。【解決手段】単語類似度マトリクス計算部３０が、現在の発話と、過去の発話系列とを入力として、単語類似度モデルに基づいて、現在の発話の単語の各々と、過去の発話系列に含まれる単語の各々との組み合わせの各々の類似度を計算した単語類似度マトリクスを作成する。類似領域抽出部３２が、領域抽出モデルに基づいて、単語類似度マトリクスにおける領域を抽出し、過去の発話系列のうちの、抽出された領域に対応する発話を、現在の発話に類似する発話として出力し、領域が抽出されなかった場合に、現在の発話が新たな話題であることを出力する。【選択図】図２
2018185574.tif 000002
【特許請求の範囲】
【請求項１】
対話における現在の発話と、過去の発話系列とを入力として、単語について予め学習された単語類似度モデルに基づいて、前記現在の発話の単語の各々と、前記過去の発話系列に含まれる単語の各々との組み合わせの各々の類似度を計算した単語類似度マトリクスを作成する単語類似度マトリクス計算部と、
前記単語類似度マトリクスを入力として、現在の発話と類似関係を有する発話の領域を抽出するための予め学習された領域抽出モデルに基づいて、前記単語類似度マトリクスにおける領域を抽出し、前記過去の発話系列のうちの、抽出された領域に対応する発話を、現在の発話に類似する発話として出力する類似領域抽出部と、
を含む対話理解装置。
【請求項２】
前記領域抽出モデルは、発話と発話系列との類似関係を学習データとして学習されたCNN（Convolutional Neural Network）とする請求項１に記載の対話理解装置。
【請求項３】
前記類似領域抽出部は、前記領域が抽出されなかった場合に、前記現在の発話が新たな話題であることを出力する請求項１又は請求項２に記載の対話理解装置。
【請求項４】
単語類似度マトリクス計算部が、対話における現在の発話と、過去の発話系列とを入力として、単語について予め学習された単語類似度モデルに基づいて、前記現在の発話の単語の各々と、前記過去の発話系列に含まれる単語の各々との組み合わせの各々の類似度を計算した単語類似度マトリクスを作成するステップと、
類似領域抽出部が、前記単語類似度マトリクスを入力として、現在の発話と類似関係を有する発話の領域を抽出するための予め学習された領域抽出モデルに基づいて、前記単語類似度マトリクスにおける領域を抽出し、前記過去の発話系列のうちの、抽出された領域に対応する発話を、現在の発話に類似する発話として出力するステップと、
を含む対話理解方法。
【請求項５】
前記領域抽出モデルは、発話と発話系列との類似関係を学習データとして学習されたCNN（Convolutional Neural Network）とする請求項４に記載の対話理解方法。
【請求項６】
前記類似領域抽出部が抽出するステップでは、前記領域が抽出されなかった場合に、前記現在の発話が新たな話題であることを出力する請求項４又は請求項５に記載の対話理解方法。
【請求項７】
コンピュータを、請求項１〜請求項３のいずれか１項に記載の対話理解装置の各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対話理解装置、方法、及びプログラムに係り、特に、対話中の発話を解析するための対話理解装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
従来より、対話システムにおいて、Recurrentニューラルネット等のモデルによって、各発話の意味をベクトル化し、対話システムの次の発話予測等に用いる技術がある。対話システムの技術には、例えば、１対１の単語対の類似度を求める技術がある。また、質問文と回答文候補の対を行列で表現し、類似度が最も高くなる回答文候補を回答とする技術がある。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Mikolov, Tomas, et al. "Efficient estimation of word representations in vector space." arXiv preprint arXiv:1301.3781(2013).
【非特許文献２】Liu Yang, Qingyao Ai,Jiafeng Guo and W. Bruce Croft“aNMM: Ranking short answer texts with attention-based neural matching model” （CIKM2016)
【非特許文献３】S. Xie et al. Holistically-nested edge detection. In ICCV, 2015
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、従来の技術では、対話における各発話をベクトル化する際、対話が長くなってくると、各発話を抽象化する際に粗く抽象化されることになる。このとき、過去の重要な発話があった場合であっても、重要な発話の内容についても粗く抽象化されて、内容が失われてしまう場合があるという問題があった。
【０００５】
本発明は、上記問題点を解決するために成されたものであり、対話中の現在の発話と過去の発話との類似関係を把握することができる対話理解装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、第１の発明に係る対話理解装置は、対話における現在の発話と、過去の発話系列とを入力として、単語について予め学習された単語類似度モデルに基づいて、前記現在の発話の単語の各々と、前記過去の発話系列に含まれる単語の各々との組み合わせの各々の類似度を計算した単語類似度マトリクスを作成する単語類似度マトリクス計算部と、前記単語類似度マトリクスを入力として、現在の発話と類似関係を有する発話の領域を抽出するための予め学習された領域抽出モデルに基づいて、前記単語類似度マトリクスにおける領域を抽出し、前記過去の発話系列のうちの、抽出された領域に対応する発話を、現在の発話に類似する発話として出力する類似領域抽出部と、を含んで構成されている。
【０００７】
また、第１の発明に係る対話理解装置において、前記領域抽出モデルは、発話と発話系列との類似関係を学習データとして学習されたCNN（Convolutional Neural Network）とするようにしてもよい。
【０００８】
また、第１の発明に係る対話理解装置において、前記類似領域抽出部は、前記領域が抽出されなかった場合に、前記現在の発話が新たな話題であることを出力するようにしてもよい。
【０００９】
第２の発明に係る対話理解方法は、入力部が、単語類似度マトリクス計算部が、対話における現在の発話と、過去の発話系列とを入力として、単語について予め学習された単語類似度モデルに基づいて、前記現在の発話の単語の各々と、前記過去の発話系列に含まれる単語の各々との組み合わせの各々の類似度を計算した単語類似度マトリクスを作成するステップと、類似領域抽出部が、前記単語類似度マトリクスを入力として、現在の発話と類似関係を有する発話の領域を抽出するための予め学習された領域抽出モデルに基づいて、前記単語類似度マトリクスにおける領域を抽出し、前記過去の発話系列のうちの、抽出された領域に対応する発話を、現在の発話に類似する発話として出力するステップと、を含んで実行することを特徴とする。
【００１０】
また、第２の発明に係る対話理解方法において、前記領域抽出モデルは、発話と発話系列との類似関係を学習データとして学習されたCNN（Convolutional Neural Network）とするようにしてもよい。
【００１１】
また、第２の発明に係る対話理解方法において、前記類似領域抽出部が抽出するステップでは、前記領域が抽出されなかった場合に、前記現在の発話が新たな話題であることを出力するようにしてもよい。
【００１２】
また、第３の発明に係るプログラムにおいて、コンピュータを、第１の発明に係る対話理解装置の各部として機能させるためのプログラムである。
【発明の効果】
【００１３】
本発明の対話理解装置、方法、及びプログラムによれば、現在の発話と、過去の発話系列とを入力として、単語類似度モデルに基づいて、現在の発話の単語の各々と、過去の発話系列に含まれる単語の各々との組み合わせの各々の類似度を計算した単語類似度マトリクスを作成し、領域抽出モデルに基づいて、単語類似度マトリクスにおける領域を抽出し、過去の発話系列のうちの、抽出された領域に対応する発話を、現在の発話に類似する発話として出力し、領域が抽出されなかった場合に、現在の発話が新たな話題であることを出力することにより、対話中の現在の発話と過去の発話との類似関係を把握することができる、という効果が得られる。
【図面の簡単な説明】
【００１４】
【図１】対話における話題の転換の一例を示す図である。
【図２】本発明の実施の形態に係る対話理解装置の構成を示すブロック図である。
【図３】単語類似度マトリクスにおける類似度の一例を示す図である。
【図４】単語類似度マトリクスから抽出される領域の一例を示す図である。
【図５】本発明の実施の形態に係る対話理解装置における対話理解処理ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１６】
＜本発明の実施の形態に係る概要＞
【００１７】
まず、本発明の実施の形態における概要を説明する。
【００１８】
図１に本発明の実施の形態で解く問題における対話の一例を示す。図１の例では、Ａ、Ｂ、Ｃ、及びＤの４人の対話において、話題の転換が起きてことを示している。具体的には、１発話目では、Ａが「猫が好き」と言い、それに対し２発話目でＢが「私は犬が良い」と答えている。このように、１発話目及び２発話目では「動物」の話題について話している。しかし、次の３発話目ではＣが「そういえば近くに新しいコンビニができるらしい」と発言し、「動物」に関する話題から「コンビニ」に関する話題へと話題に転換が起きている。そして話題が転換された３発話目に続いて、４発話目ではＢが「にぎやかになるかもしれない」と答えている。次に、５発話目ではＡが「うちの猫が最近うるさい」と発言し、また「動物」の話題に戻る話題の転換が起きている。続く６発話目でＢが「うちの犬もそうだ」と答えている。そして７発話目ではＤが「うるさいものは嫌いだ」と発言をしており、これまでの「動物」、及び「コンビニ」の話題をまとめて「うるいさい」という新たな話題に転換している。
【００１９】
上記の対話では、例えば、５発話に対しては、１発話目、及び２発話目が同じ話題を扱っており、１発話目、及び２発話目が発話サブセットとなる。
【００２０】
このように現実の対話では様々な話題が転換しながら対話が続いており、現在の発話に類似する過去の発話を抽出して、話題の転換を特定できれば、対話中の現在の発話の話題を把握し、対話システムにおける応答の精度の向上に役立てることができる。
【００２１】
＜本発明の実施の形態に係る対話理解装置の構成＞
【００２２】
次に、本発明の実施の形態に係る対話理解装置の構成について説明する。図２に示すように、本発明の実施の形態に係る対話理解装置１００は、ＣＰＵと、ＲＡＭと、後述する対話理解処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この対話理解装置１００は、機能的には図２に示すように入力部１０と、演算部２０と、出力部５０とを備えている。
【００２３】
入力部１０は、対話における現在の発話と、過去の発話系列とを受け付ける。
【００２４】
演算部２０は、単語類似度モデル２２と、領域抽出モデル２４と、単語類似度マトリクス計算部３０と、類似領域抽出部３２とを含んで構成されている。
【００２５】
単語類似度モデル２２は、単語について学習されたモデルである。本実施の形態では、単語を入力とし、単語と単語の意味的な類似度を得ることができるword2vecのモデルを用いる。なお、単語と単語の類似関係を得ることができれば他のモデルを用いてもよい。
【００２６】
領域抽出モデル２４は、現在の発話と類似関係を有する発話の領域を抽出するための学習されたモデルである。本実施の形態では、発話と発話系列との類似関係を学習データとして学習されたCNN（Convolutional Neural Network）をモデルとして用いる。CNNの学習に用いる学習データは、ある発話と、過去の発話との話題の対応関係が紐づけられており、すなわち正解となる領域情報が与えられたものである。CNNを用いることにより、発話と発話系列をマトリクスと捉えたときにマトリクス中の類似関係のある領域が抽出できる。なお、類似関係のある領域を抽出できれば他のモデルを用いてもよい。
【００２７】
単語類似度マトリクス計算部３０は、入力部１０で受け付けた対話における現在の発話と、過去の発話系列とを入力として、単語類似度モデル２２に基づいて、現在の発話の単語の各々と、過去の発話系列に含まれる単語の各々との組み合わせの各々の類似度を計算した単語類似度マトリクスを作成する。具体的には、過去の発話系列における発話の各々の発話中の各単語を単語類似度マトリクスの列方向にとり、現発話中の各単語を単語類似度マトリクスの行方向にとり、行列が交差する箇所に単語と単語の類似度を入れる。類似度の計算には単語類似度モデル２２を用いて求めることができる。例えば、図３の単語類似度マトリクスは、現発話として「うちの猫が最近うるさい」を行方向にとり、それに対する対話中の過去の発話系列が列方向にとった行列である。図３に示すように、行列の一番左上の「私」-「猫」という単語間の組み合わせには、類似度が0.1のとき、一番左上の値に0.1を入れる。
【００２８】
類似領域抽出部３２は、単語類似度マトリクス計算部３０で作成された単語類似度マトリクスを入力として、領域抽出モデル２４に基づいて、単語類似度マトリクスにおける領域を抽出し、過去の発話系列のうちの、抽出された領域に対応する発話を、現在の発話に類似する発話として出力する。また、類似領域抽出部３２は、領域が抽出されなかった場合に、現在の発話が新たな話題であることを出力する。例えば、図４に示す例では、現発話が「うちの猫が最近うるさい」であるので、現発話に対応する領域が抽出され、抽出された領域に対応する発話として「猫が好き」、及び「私は犬が良い」という２つの過去の発話（発話サブセット）が出力されることがわかる。このように領域が抽出された縦方向に関する単語列は、現在の発話の話題に関連する部分発話列とみなすことが可能である。なお、一例として１つの領域を抽出し１つの発話サブセットを出力する場合を説明したが、複数の領域が抽出され過去の発話系列から複数の発話サブセットが出力される場合もある。
【００２９】
＜本発明の実施の形態に係る対話理解装置の作用＞
【００３０】
次に、本発明の実施の形態に係る対話理解装置１００の作用について説明する。入力部１０において対話における現在の発話と、過去の発話系列とを受け付けると、対話理解装置１００は、図５に示す対話理解処理ルーチンを実行する。
【００３１】
まず、ステップＳ１００では、入力部１０で受け付けた対話における現在の発話と、過去の発話系列とを入力として、単語類似度モデル２２に基づいて、現在の発話の単語の各々と、過去の発話系列に含まれる単語の各々との組み合わせの各々の類似度を計算した単語類似度マトリクスを作成する。
【００３２】
次に、ステップＳ１０２では、ステップＳ１００で作成された単語類似度マトリクスを入力として、領域抽出モデル２４に基づいて、単語類似度マトリクスにおける領域を抽出し、過去の発話系列のうちの、抽出された領域に対応する発話を、現在の発話に類似する発話として出力する。また、領域が抽出されなかった場合に、現在の発話が新たな話題であることを出力する。
【００３３】
以上説明したように、本発明の実施の形態に係る対話理解装置によれば、現在の発話と、過去の発話系列とを入力として、単語類似度モデルに基づいて、現在の発話の単語の各々と、過去の発話系列に含まれる単語の各々との組み合わせの各々の類似度を計算した単語類似度マトリクスを作成し、領域抽出モデルに基づいて、単語類似度マトリクスにおける領域を抽出し、過去の発話系列のうちの、抽出された領域に対応する発話を、現在の発話に類似する発話として出力し、領域が抽出されなかった場合に、現在の発話が新たな話題であることを出力することにより、対話中の現在の発話と過去の発話との類似関係を把握することができる。
【００３４】
また、対話システムにおいて、ある発話が、過去の対話系列中のどの部分発話列に類似しているかを判定することに用いることができる。また、トピックが飛躍しすぎることにより新しい話題が生じていることの検出に用いることができる。また、過去の発話系列と、現在の発話と組み合わせである単語類似度マトリクスを用いて類似領域を抽出することで、詳細に対話の流れを追うことが可能となる。また、現在の発話と類似する、任意の適切な発話サブセットにおける発話を１つのまとまりとみなし、発話サブセットによる動的な話題の範囲を扱うことができる。
【００３５】
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【符号の説明】
【００３６】
１０   入力部
２０   演算部
２２   単語類似度モデル
２４   領域抽出モデル
３０   単語類似度マトリクス計算部
３２   類似領域抽出部
５０   出力部
１００ 対話理解装置
【図１】
2018185574.tif 000003
【図２】
2018185574.tif 000004
【図３】
2018185574.tif 000005
【図４】
2018185574.tif 000006
【図５】
2018185574.tif 000007