(57)【要約】【課題】発話が対話を破綻させる程度を示す対話破壊力を推定するために用いることができる対話破壊特徴量を抽出する技術を提供する。【解決手段】一連の発話からなる対話から、対話が破綻しているか否かの特徴を示す特徴量である第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部１１０とを含む対話破壊特徴量抽出装置であって、対話破壊特徴量抽出部１１０は、1≦j≦Jを満たす各jについて対話から第j種特徴量を計算する第j種特徴量計算部を含み、対話破壊特徴量は、頻出単語列特徴量、発話間類似度特徴量、文長特徴量、ターン数特徴量、単語ベクトル特徴量、質問タイプ特徴量、質問クラス特徴量、話題繰り返し数特徴量のうち、いずれか1つ以上の特徴量を含む組合せである。【選択図】図１
2018147288.tif 000002
【特許請求の範囲】
【請求項１】
Jを1以上の整数、第j種特徴量（1≦j≦J）を対話が破綻しているか否かの特徴を示す特徴量とし、
一連の発話からなる対話から、前記第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部と
を含む対話破壊特徴量抽出装置であって、
前記対話破壊特徴量抽出部は、1≦j≦Jを満たす各jについて、前記対話から前記第j種特徴量を計算する第j種特徴量計算部を含み、
頻出単語列特徴量を、対話内に所定の頻度以上出現する単語Ngramの文字列を要素とする特徴量、
発話間類似度特徴量を、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量、
文長特徴量を、対話内の最後の発話の単語長および文字長を表す特徴量、
ターン数特徴量を、対話開始からの経過ターン数を表す特徴量、
単語ベクトル特徴量を、対話に含まれる各発話の単語N-gramを表すベクトルから生成されるベクトルとして表現される特徴量、
質問タイプ特徴量を、対話内の最後の発話の直前の発話が質問である場合、推定される質問タイプを表す特徴量、
質問クラス特徴量を、対話内の最後の発話の直前の発話が質問である場合、質問が回答に要求していると推定される単語クラスを表すベクトル、最後の発話に含まれる単語クラスを表すベクトル、それらの差分ベクトル、それらの２つのベクトルが表す単語クラスが一致しているか否かを表す真偽値のうち、いずれか１つ以上からなる特徴量、
話題繰り返し数特徴量を、対話内での話題の繰り返し数を表す特徴量とし、
前記対話破壊特徴量は、頻出単語列特徴量、発話間類似度特徴量、文長特徴量、ターン数特徴量、単語ベクトル特徴量、質問タイプ特徴量、質問クラス特徴量、話題繰り返し数特徴量のうち、いずれか1つ以上の特徴量を含む組合せであることを特徴とする対話破壊特徴量抽出装置。
【請求項２】
Jを1以上の整数、第j種特徴量（1≦j≦J）を対話が破綻しているか否かの特徴を示す特徴量とし、
一連の発話からなる対話から、前記第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部と
を含む対話破壊特徴量抽出装置であって、
前記対話破壊特徴量抽出部は、1≦j≦Jを満たす各jについて、前記対話から前記第j種特徴量を計算する第j種特徴量計算部を含み、
対話行為特徴量を、対話に含まれる発話が表す対話行為から生成される特徴量、
発話間類似度特徴量を、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量、
単語特徴量を、対話に含まれる各発話の単語N-gramを並べたBag-of-wordsベクトルとして表現される特徴量、
単語クラス特徴量を、対話に含まれる各発話の単語に対応する単語クラスを並べたBag-of-classesベクトルとして表現される特徴量、
単語組合せ特徴量を、対話内の最後の発話とそれ以外の発話との間または最後の発話内において共起している単語Ngram、単語クラスNgram、単語集合、述語項構造のいずれかの組合せの出現結果を要素とするBag-of-wordsベクトルとして表現される特徴量、
頻出単語列特徴量を、対話内に所定の頻度以上出現する単語Ngramの文字列を要素とする特徴量とし、
前記対話破壊特徴量は、対話行為特徴量、発話間類似度特徴量を含み、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量のうち少なくともいずれか1つの特徴量を含まない組合せであることを特徴とする対話破壊特徴量抽出装置。
【請求項３】
請求項２に記載の対話破壊特徴量抽出装置であって、
文長特徴量を、対話内の最後の発話の単語長および文字長を表す特徴量とし、
前記対話破壊特徴量は、更に文長特徴量を含む組合せであることを特徴とする対話破壊特徴量抽出装置。
【請求項４】
請求項３に記載の対話破壊特徴量抽出装置であって、
ターン数特徴量を、対話開始からの経過ターン数を表す特徴量とし、
前記対話破壊特徴量は、更にターン数特徴量を含む組合せであることを特徴とする対話破壊特徴量抽出装置。
【請求項５】
請求項４に記載の対話破壊特徴量抽出装置であって、
前記対話破壊特徴量は、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量のいずれも含まない組合せであることを特徴とする対話破壊特徴量抽出装置。
【請求項６】
請求項５に記載の対話破壊特徴量抽出装置であって、
文字列共起特徴量を、対話内の最後の発話とそれ以外の発話との間において共起している文字列Ngramの組合せの出現結果を要素とするBag-of-wordsベクトルとして表現される特徴量とし、
前記対話破壊特徴量は、更に文字列共起特徴量を含む組合せであることを特徴とする対話破壊特徴量抽出装置。
【請求項７】
請求項４に記載の対話破壊特徴量抽出装置であって、
パープレキシティ特徴量を、対話に含まれる各発話について言語モデルを用いて計算したパープレキシティを表す特徴量とし、
前記対話破壊特徴量は、更にパープレキシティ特徴量を含む組合せであることを特徴とする対話破壊特徴量抽出装置。
【請求項８】
Jを1以上の整数、第j種特徴量（1≦j≦J）を対話が破綻しているか否かの特徴を示す特徴量とし、
一連の発話からなる対話から、前記第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部と
を含む対話破壊特徴量抽出装置であって、
前記対話破壊特徴量抽出部は、1≦j≦Jを満たす各jについて、前記対話から前記第j種特徴量を計算する第j種特徴量計算部を含み、
発話間類似度特徴量を、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量、
頻出単語列特徴量を、対話内に所定の頻度以上出現する単語Ngramの文字列を要素とする特徴量、
対話行為特徴量を、対話に含まれる発話が表す対話行為から生成される特徴量、
文長特徴量を、対話内の最後の発話の単語長および文字長を表す特徴量、
単語組合せ特徴量を、対話内の最後の発話とそれ以外の発話との間または最後の発話内において共起している単語Ngram、単語クラスNgram、単語集合、述語項構造のいずれかの組合せの出現結果を要素とするBag-of-wordsベクトルとして表現される特徴量とし、
前記対話破壊特徴量は、発話間類似度特徴量、頻出単語列特徴量、対話行為特徴量、文長特徴量、単語組合せ特徴量を含む組合せであることを特徴とする対話破壊特徴量抽出装置。
【請求項９】
Jを1以上の整数、第j種特徴量（1≦j≦J）を対話が破綻しているか否かの特徴を示す特徴量とし、
一連の発話からなる対話から、前記第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部と
を含む対話破壊特徴量抽出装置であって、
前記対話破壊特徴量抽出部は、1≦j≦Jを満たす各jについて、前記対話から前記第j種特徴量を計算する第j種特徴量計算部を含み、
対話行為特徴量を、対話に含まれる発話が表す対話行為から生成される特徴量、
発話間類似度特徴量を、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量、
単語特徴量を、対話に含まれる各発話の単語N-gramを並べたBag-of-wordsベクトルとして表現される特徴量、
単語クラス特徴量を、対話に含まれる各発話の単語に対応する単語クラスを並べたBag-of-classesベクトルとして表現される特徴量とし、
前記対話破壊特徴量は、対話行為特徴量、発話間類似度特徴量を含み、更に単語特徴量、単語クラス特徴量のうちいずれか1つ以上の特徴量を含む組合せであることを特徴とする対話破壊特徴量抽出装置。
【請求項１０】
請求項１ないし９のいずれか１項に記載の対話破壊特徴量抽出装置であって、
前記対話破壊特徴量が発話間類似度特徴量を含む場合、当該発話間類似度特徴量は、word2vecの平均ベクトル間距離を用いて計算される類似度、WordMoversDistance距離を用いて計算される類似度、BLEUスコアを用いて計算される類似度、ROUGEスコアを用いて計算される類似度のいずれか1つ以上の類似度を要素として並べたベクトルであることを特徴とする対話破壊特徴量抽出装置。
【請求項１１】
請求項２ないし９のいずれか１項に記載の対話破壊特徴量抽出装置であって、 
対話行為列特徴量を、対話に含まれる各発話が表す対話行為を推定した結果を要素とするベクトルとして表現される特徴量、
予測対話行為特徴量を、対話に含まれる発話から最後の発話が持つべき対話行為を予測した結果を表す予測結果ベクトル、前記予測結果ベクトルと前記最後の発話が表す対話行為を推定した結果を表す推定結果ベクトルを並べたベクトル、前記予測結果ベクトルと前記推定結果ベクトルの差分ベクトル、前記予測結果ベクトルと前記推定結果ベクトルの1bestが一致しているか否かの真偽値のうち、いずれか１つ以上からなる特徴量とし、
前記対話行為特徴量は、対話行為列特徴量または予測対話行為特徴量であることを特徴とする対話破壊特徴量抽出装置。
【請求項１２】
請求項１ないし１１のいずれか１項に記載の対話破壊特徴量抽出装置を用いて、一連の発話からなる対話から、前記対話の対話破壊特徴量を抽出する対話破壊特徴量抽出部と、
前記対話破壊特徴量と前記対話が破綻しているか否かを示す正解データの組から、対話が破綻しているか否かの程度を示す対話破壊力を推定するために用いる対話破壊モデルを生成するモデル生成部と
を含む対話破壊モデル学習装置。
【請求項１３】
一連の発話からなる対話から、前記対話が破綻しているか否かの特徴を示す特徴量の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部と、
請求項１２に記載の対話破壊モデル学習装置が生成した対話破壊モデルを用いて、前記対話破壊特徴量から、前記対話が破綻しているか否かの程度を示す対話破壊力を計算する対話破壊力計算部と
を含む対話破壊力推定装置。
【請求項１４】
Jを1以上の整数、第j種特徴量（1≦j≦J）を対話が破綻しているか否かの特徴を示す特徴量とし、
対話破壊特徴量抽出装置が、一連の発話からなる対話から、前記第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出ステップと
を含む対話破壊特徴量抽出方法であって、
前記対話破壊特徴量抽出ステップは、1≦j≦Jを満たす各jについて、前記対話から前記第j種特徴量を計算する第j種特徴量計算ステップを含み、
頻出単語列特徴量を、対話内に所定の頻度以上出現する単語Ngramの文字列を要素とする特徴量、
発話間類似度特徴量を、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量、
文長特徴量を、対話内の最後の発話の単語長および文字長を表す特徴量、
ターン数特徴量を、対話開始からの経過ターン数を表す特徴量、
単語ベクトル特徴量を、対話に含まれる各発話の単語N-gramを表すベクトルから生成されるベクトルとして表現される特徴量、
質問タイプ特徴量を、対話内の最後の発話の直前の発話が質問である場合、推定される質問タイプを表す特徴量、
質問クラス特徴量を、対話内の最後の発話の直前の発話が質問である場合、質問が回答に要求していると推定される単語クラスを表すベクトル、最後の発話に含まれる単語クラスを表すベクトル、それらの差分ベクトル、それらの２つのベクトルが表す単語クラスが一致しているか否かを表す真偽値のうち、いずれか１つ以上からなる特徴量、
話題繰り返し数特徴量を、対話内での話題の繰り返し数を表す特徴量とし、
前記対話破壊特徴量は、頻出単語列特徴量、発話間類似度特徴量、文長特徴量、ターン数特徴量、単語ベクトル特徴量、質問タイプ特徴量、質問クラス特徴量、話題繰り返し数特徴量のうち、いずれか1つ以上の特徴量を含む組合せであることを特徴とする対話破壊特徴量抽出方法。
【請求項１５】
請求項１ないし１１のいずれか１項に記載の対話破壊特徴量抽出装置、請求項１２に記載の対話破壊モデル学習装置、請求項１３に記載の対話破壊力推定装置のいずれかの装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、雑談対話技術に関し、特にある発話がどの程度対話を破綻させる不適切さを持つかを推定する対話破壊力推定技術に関する。
【背景技術】
【０００２】
近年、特定のタスクを目的としないオープンドメインな雑談を行う雑談対話システムへのニーズが高まっている。雑談対話システムでは、例えば、人手で構築した対話知識を利用して発話する方法（非特許文献１）、Ｗｅｂの情報を利用して発話を構築する方法（非特許文献２）が利用されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】目黒豊美，杉山弘晃，東中竜一郎，“ルールベース発話生成と統計的発話生成の融合に基づく対話システムの構築”，人工知能学会全国大会論文集，pp.1-4，2014．
【非特許文献２】杉山弘晃，目黒豊美，東中竜一郎，南泰浩，“任意の話題を持つユーザ発話に対する係り受けと用例を利用した応答文の生成”，人工知能学会論文誌，vol.30, no.1, pp.183-194, 2015．
【発明の概要】
【発明が解決しようとする課題】
【０００４】
雑談対話システムは、ユーザの発話に含まれる非常に幅広い話題に応答する必要がある。そのため、適切な応答を出力し続けることは難しく、現在の雑談対話システムでは対話を破綻させるような発話がしばしば生成される（参考非特許文献１）。
（参考非特許文献１：東中竜一郎，船越孝太郎，“Project Next NLP対話タスクにおける雑談対話データの収集と対話破綻アノテーション”，人工知能学会  言語・音声理解と対話処理研究会 第72回，pp.45-50, 2014．）
こうした対話を破綻させる可能性のある発話を実際に発話する前に予め検出し、出力を抑制することができれば、雑談対話システムにおける対話の継続が容易になると考えられる。
【０００５】
そこで本発明は、発話が対話を破綻させる程度を示す対話破壊力を推定するために用いることができる対話破壊特徴量を抽出する技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様は、Jを1以上の整数、第j種特徴量（1≦j≦J）を対話が破綻しているか否かの特徴を示す特徴量とし、一連の発話からなる対話から、前記第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部とを含む対話破壊特徴量抽出装置であって、前記対話破壊特徴量抽出部は、1≦j≦Jを満たす各jについて、前記対話から前記第j種特徴量を計算する第j種特徴量計算部を含み、頻出単語列特徴量を、対話内に所定の頻度以上出現する単語Ngramの文字列を要素とする特徴量、発話間類似度特徴量を、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量、文長特徴量を、対話内の最後の発話の単語長および文字長を表す特徴量、ターン数特徴量を、対話開始からの経過ターン数を表す特徴量、単語ベクトル特徴量を、対話に含まれる各発話の単語N-gramを表すベクトルから生成されるベクトルとして表現される特徴量、質問タイプ特徴量を、対話内の最後の発話の直前の発話が質問である場合、推定される質問タイプを表す特徴量、質問クラス特徴量を、対話内の最後の発話の直前の発話が質問である場合、質問が回答に要求していると推定される単語クラスを表すベクトル、最後の発話に含まれる単語クラスを表すベクトル、それらの差分ベクトル、それらの２つのベクトルが表す単語クラスが一致しているか否かを表す真偽値のうち、いずれか１つ以上からなる特徴量、話題繰り返し数特徴量を、対話内での話題の繰り返し数を表す特徴量とし、前記対話破壊特徴量は、頻出単語列特徴量、発話間類似度特徴量、文長特徴量、ターン数特徴量、単語ベクトル特徴量、質問タイプ特徴量、質問クラス特徴量、話題繰り返し数特徴量のうち、いずれか1つ以上の特徴量を含む組合せである。
【０００７】
本発明の一態様は、Jを1以上の整数、第j種特徴量（1≦j≦J）を対話が破綻しているか否かの特徴を示す特徴量とし、一連の発話からなる対話から、前記第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部とを含む対話破壊特徴量抽出装置であって、前記対話破壊特徴量抽出部は、1≦j≦Jを満たす各jについて、前記対話から前記第j種特徴量を計算する第j種特徴量計算部を含み、対話行為特徴量を、対話に含まれる発話が表す対話行為から生成される特徴量、発話間類似度特徴量を、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量、単語特徴量を、対話に含まれる各発話の単語N-gramを並べたBag-of-wordsベクトルとして表現される特徴量、単語クラス特徴量を、対話に含まれる各発話の単語に対応する単語クラスを並べたBag-of-classesベクトルとして表現される特徴量、単語組合せ特徴量を、対話内の最後の発話とそれ以外の発話との間または最後の発話内において共起している単語Ngram、単語クラスNgram、単語集合、述語項構造のいずれかの組合せの出現結果を要素とするBag-of-wordsベクトルとして表現される特徴量、頻出単語列特徴量を、対話内に所定の頻度以上出現する単語Ngramの文字列を要素とする特徴量とし、前記対話破壊特徴量は、対話行為特徴量、発話間類似度特徴量を含み、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量のうち少なくともいずれか1つの特徴量を含まない組合せである。
【０００８】
本発明の一態様は、Jを1以上の整数、第j種特徴量（1≦j≦J）を対話が破綻しているか否かの特徴を示す特徴量とし、一連の発話からなる対話から、前記第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部とを含む対話破壊特徴量抽出装置であって、前記対話破壊特徴量抽出部は、1≦j≦Jを満たす各jについて、前記対話から前記第j種特徴量を計算する第j種特徴量計算部を含み、発話間類似度特徴量を、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量、頻出単語列特徴量を、対話内に所定の頻度以上出現する単語Ngramの文字列を要素とする特徴量、対話行為特徴量を、対話に含まれる発話が表す対話行為から生成される特徴量、文長特徴量を、対話内の最後の発話の単語長および文字長を表す特徴量、単語組合せ特徴量を、対話内の最後の発話とそれ以外の発話との間または最後の発話内において共起している単語Ngram、単語クラスNgram、単語集合、述語項構造のいずれかの組合せの出現結果を要素とするBag-of-wordsベクトルとして表現される特徴量とし、前記対話破壊特徴量は、発話間類似度特徴量、頻出単語列特徴量、対話行為特徴量、文長特徴量、単語組合せ特徴量を含む組合せである。
【０００９】
本発明の一態様は、Jを1以上の整数、第j種特徴量（1≦j≦J）を対話が破綻しているか否かの特徴を示す特徴量とし、一連の発話からなる対話から、前記第j種特徴量（1≦j≦J）の組合せである対話破壊特徴量を抽出する対話破壊特徴量抽出部とを含む対話破壊特徴量抽出装置であって、前記対話破壊特徴量抽出部は、1≦j≦Jを満たす各jについて、前記対話から前記第j種特徴量を計算する第j種特徴量計算部を含み、対話行為特徴量を、対話に含まれる発話が表す対話行為から生成される特徴量、発話間類似度特徴量を、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量、単語特徴量を、対話に含まれる各発話の単語N-gramを並べたBag-of-wordsベクトルとして表現される特徴量、単語クラス特徴量を、対話に含まれる各発話の単語に対応する単語クラスを並べたBag-of-classesベクトルとして表現される特徴量とし、前記対話破壊特徴量は、対話行為特徴量、発話間類似度特徴量を含み、更に単語特徴量、単語クラス特徴量のうちいずれか1つ以上の特徴量を含む組合せである。
【発明の効果】
【００１０】
本発明によれば、発話が対話を破綻させる程度を示す対話破壊力を推定するために用いることができる対話破壊特徴量を抽出することができる。
【図面の簡単な説明】
【００１１】
【図１】対話破壊モデル学習装置１００の構成の一例を示す図。
【図２】対話破壊モデル学習装置１００の動作の一例を示す図。
【図３】対話破壊力推定装置２００の構成の一例を示す図。
【図４】対話破壊力推定装置２００の動作の一例を示す図。
【図５】対話破壊力推定装置２００の入出力の一例を示す図。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【００１３】
＜用語＞
まず、各実施形態で用いる用語について簡単に説明する。
対話とは、過去Ｎ個（Ｎは１以上の整数）の一連の発話のことをいう。つまり、発話とはユーザとシステムによる発話の時系列のことである。
【００１４】
対話破壊力とは、発話が対話を破綻させる程度のことをいう。過去Ｎ個の一連の発話（対話）において、最後の発話がこの対話を破綻させる程度のことである。なお、最後の発話は未発話となっていても構わない。対話破壊力は、破綻している、破綻していない、どちらでもないのいずれかを示すラベルとして表現してもよいし、破綻している、破綻していない、それ以外を確率変数とする確率分布として表現してもよい。また、対話破壊力は、対話の破綻の程度を示す実数値として表現してもよい。対話破壊力を実数値として表現する場合は、閾値との比較で対話が破綻している、破綻していない、どちらでもないなどの状態を判断すればよい。
【００１５】
＜特徴量＞
対話の破綻に影響を及ぼす要因は様々あり、各要因に関連する特徴量も多様である。以下、対話が破綻しているか否かの特徴を示す特徴量について説明していく。その際、各特徴量の定義に加えて、各特徴量がどのような観点で対話破壊力に影響しているかについても説明する。なお、一般に、特徴量は、対話に含まれるいくつかの発話から抽出されるものであり、ベクトルとして表現される。
【００１６】
以下、各特徴量の説明の中で、具体的な例を挙げることもあるが、これらはあくまでも一例であってその他のベクトル表現であっても構わない。
【００１７】
［話題の結束性］
現在の対話システムでは、ユーザの発話と関係のない話題の発話を生成してしまい、対話を破綻させてしまう場合がある。また逆に、１つの話題に固執し何度も同じ内容や話題の発話を繰り返すことで、対話を破綻させてしまう場合もある。
【００１８】
そこで、話題の遷移パターンの出現頻度、ユーザの発話の話題とシステムによる発話の話題の近さ、話題の繰り返し回数などを測ることにより、話題の結束性を考慮した対話破壊力推定が可能になる。以下、単語組合せ特徴量、発話間類似度特徴量、話題繰り返し数特徴量の３つの特徴量について説明する。
【００１９】
(1-1)単語組合せ特徴量
単語組合せ特徴量とは、対話内の最後の発話とそれ以外の発話との間または最後の発話内において共起している単語Ngram、単語クラスNgram、単語集合、述語項構造のいずれかの組合せ（以下、単語組合せという）の出現結果を要素とするBag-of-wordsベクトルとして表現される特徴量である。
【００２０】
なお、単語Ngram、単語クラスNgram、単語集合、述語項構造は、形態素解析することにより対話に含まれる発話を単語に分割し、得ることができる。形態素解析の対象となる発話は、対話破壊力推定対象となる最後の発話を含む直前のM個の発話である。なお、Mは1〜4程度が好ましい。
【００２１】
単語Ngram、単語クラスNgramのNは1〜4程度が好ましい。また、単語クラスとは、word2vec（詳細は後述する）を用いて得られる単語ベクトル表現をクラスタリングした結果得られる単語ベクトルの集合、または日本語語彙大系のような辞書で付与されている、単語を抽象化して表現したものでよい。例えば、自動車の単語クラスは、乗り物・人工物などと表現される。また、単語集合は、順序を考慮するNgramとは異なり、文（例えば、直前のM個の発話）に含まれる単語と単語が離れていてもよい。
【００２２】
通常、このような単語組合せとして得られるものの数は、非常に膨大となり、効率的なモデル学習の妨げとなる。そこで、単語組合せ特徴量の定義に用いる単語組合せを、学習対象となる対話からなるコーパスにおける出現数、TF-IDF値などを用いて上位K個（Kは数十個から数万個程度）に限定するとよい。また、取りうる単語組合せの範囲を各発話内の係り受け関係があるもの、述語項構造内のみの共起に限定してもよい。さらに、考慮する単語を内容語のみに限定し、助詞や句読点などの話題に関わらない単語を除いてもよい。その他、考慮する単語を名詞に比べて種類が少ない述語のみに限定してもよい。このようにすると、名詞の多様性に対して頑健に推定することができる。
【００２３】
このように、単語組合せ特徴量を用いることで、ある対話システムに特有の破綻パターンを捉えたり、逆に一般的にあり得る話題の遷移パターンを捉えたりすることが可能になる。
【００２４】
以下の対話例１を用いて、単語組合せ特徴量の例について説明する。
（対話例１）
１  ユーザ: こんにちは/。/旅行/は/好き/です/か/？
２  システム: はい/。/先日/京都/に/行き/まし/た/。
ただし、記号“/”は単語の区切りを表す。
例えば、対話例１において、ユーザ発話からは「こんにちは」「。」「旅行」「は」「好き」「です」「か」「？」の８個の単語が得られ、システム発話からは「はい」「。」「先日」「京都」「に」「行き」「まし」「た」「。」の９個の単語が得られた場合、単語Ngram(N=1)の組合せとして、ユーザ発話とシステム発話の間で「はい-こんにちは」「はい-。」「はい-旅行」…「。-？」の9x8=72通りの組合せが得られ、システム発話内で9C2=9x8/2=36通りの組合せが得られる。つまり、対話内の最後の発話とそれ以外の発話との間において共起している単語Ngramの組合せが72通り、最後の発話内において共起している単語Ngramの組合せが36通り得られる。
【００２５】
このように、学習に用いる訓練データ内に現れるすべての組合せを列挙し、それぞれの組合せがある次元の要素に対応するベクトルを構成しておく。ベクトルの各次元の要素の値は、ある組合せが出現している場合は対応するベクトルの次元の要素を1、出現しない場合は0とする。例えば、上記により構成されるベクトルの次元数が5で、2次元目の要素に対応する組合せのみが出現していた場合、得られる単語組合せ特徴量は(0,1,0,0,0)となる。
【００２６】
(1-2)発話間類似度特徴量
発話間類似度特徴量とは、対話内の最後の発話とそれ以外の発話がどの程度似ているかを表す特徴量であり、後述する類似度のうち、１つ以上の類似度を要素として並べたベクトルである。ここで用いる各類似度は、発話と発話の間の類似の程度を測るものである。
【００２７】
特定の遷移パターンをとらえる単語組合せ特徴量と異なり、発話間類似度特徴量は、対話中に現れない組合せであっても、発話間の関連性を類似度に基づいて評価することができる。
【００２８】
なお、直前のユーザの発話と最後の発話との間で発話間類似度特徴量を計算した場合は、不連続な話題の遷移を検出することができる。また、直前のシステムによる発話と最後の発話との間で発話間類似度特徴量を計算した場合は、特定の話題への固執を検出することができる。
【００２９】
類似度の計算には、単語コサイン距離、word2vecの平均ベクトル間距離（参考非特許文献２）、WordMoversDistance距離（参考非特許文献３）を用いることができる。また、BLEUスコア、ROUGEスコア（参考非特許文献４）のような、単語の組合せ（BLEUスコア及びROUGEスコアの場合は単語Ngram）を考慮したものを用いることもできる。つまり、類似度は単語間の距離や単語の共起関係に基づいて算出される発話間の距離といえる。
【００３０】
word2vecは、単語を意味ベクトルへ変換する手法であり、各単語に対応する意味ベクトルは、コーパス（ここでは対話）内で共起する単語が似ている単語としてベクトル間距離が近くなるように計算される。これにより、word2vecの平均ベクトル間距離は、単語コサイン距離より、ネコと猫、ネコと子猫などのような表記のゆれや小さな違いに対して頑健になる。
（参考非特許文献２：T. Mikolov, K. Chen, G. Corrado, J. Dean, “Efficient Estimation of Word Representations in Vector Space”, arXiv preprint arXiv:1301.3781, 2013.）
【００３１】
WordMoversDistanceは、ある文Sに含まれている単語wについて、文Sとは別の文S’に含まれる単語vとの距離d(w,v)を調べ、最も近い距離d’(w)を計算し、文Sのすべての単語についての総和Σd’(w)を取ったものである。WordMoversDistanceは、個々の単語の類似性をword2vecの平均ベクトル間距離よりも詳細に評価することができる。
（参考非特許文献３：M. J. Kusner, Y. Sun, N. I. Kolkin, K. Q. Weinberger, “From Word Embeddings To Document Distances”, Proceedings of the 32nd International Conference on Machine Learning (ICML-15), pp.957-966, 2015.）
【００３２】
BLEUスコア及びROUGEスコアは、機械翻訳などで用いられる、２文間の距離を単語Ngramの一致率を利用して計算するものである。
（参考非特許文献４：平尾努，磯崎秀樹，須藤克仁，Duh Kevin，塚田元，永田昌明，“語順の相関に基づく機械翻訳の自動評価法”，自然言語処理，vol.21, no.3, pp.421-444, 2014．）
【００３３】
なお、単語をそのまま用いて類似度を計算する代わりに、日本語語彙大系（参考非特許文献５）のような辞書を用いて、単語を単語クラスに抽象化したうえで類似度を計算してもよい。
（参考非特許文献５：池原悟，宮崎正弘，白井諭，横尾昭男，中岩浩巳，小倉健太郎，大山芳史，林良彦，“日本語語彙大系”，岩波書店，1997.）
【００３４】
さらに、類似度を計算するときに考慮する単語を内容語に限定してもよい。
【００３５】
以下の対話例２を用いて、発話間類似度特徴量の例について説明する。
（対話例２）
１  ユーザ: こんにちは/。/旅行/は/好き/です/か/？ 
２  システム: はい/。/先日/京都/に/行き/まし/た/。
例えば、対話例２において、内容語（名詞・動詞・形容詞・独立詞など）に限定したword2vecの平均ベクトル間距離を考える。ユーザ発話からは、「こんにちは」「旅行」「好き」の３個の内容語が得られ、システム発話からは「はい」「先日」「京都」「行き」の４個の内容語が得られる。word2vecを用いて得られた単語をベクトルへ変換する。例えば、3次元のベクトルとして、「こんにちは」は(0.1,0.7,0.2)、「旅行」は(0.8,0.1,0.1)、「好き」は(0.3,0.4,0.3)、「はい」は(0.2,0.6,0.2)、「先日」は(0.1,0.1,0.8)、「京都」は(0.6,0.3,0.1)、「行き」は(0.7,0.2,0.1)が得られたとする。このとき、ユーザ発話の平均ベクトルは((0.1,0.7,0.2)+(0.8,0.1,0.1)+(0.3,0.4,0.3))/3 = (0.4,0.4,0.2)、システム発話の平均ベクトルは((0.2,0.6,0.2)+(0.1,0.1,0.8)+(0.6,0.3,0.1)+(0.7,0.2,0.1))/4 = (0.4,0.3,0.3)となる。これらのコサイン類似度（≒0.97）などを計算することで、上記ユーザ発話１と上記システム発話２との間の類似度を得ることができる。こうして得られた類似度を1つ以上並べたベクトル(0.97,…)が発話間類似度特徴量となる。
【００３６】
(1-3)話題繰り返し数特徴量
話題繰り返し数特徴量とは、対話内での話題の繰り返し数を表す特徴量である。ここで、話題とは、焦点となっている単語、焦点となっている述語項構造のことである。
【００３７】
ある特定の話題が連続して発話されるのは、一般的に不自然な振る舞いであるため、ユーザが違和感を覚えたり、ユーザの対話意欲が減退したりし、その結果対話が破綻することが多い。したがって、ある話題の繰り返し数を調べることにより、対話の破綻を検知することができる。
【００３８】
以下の対話例３を用いて、話題繰り返し数特徴量の例について説明する。
（対話例３）
１  システム: こんにちは。熱中症に気をつけて。
２  ユーザ: はい。ありがとう。あなたも気を付けて。
３  システム: 熱中症に気をつけないんですか？
４  ユーザ: 小まめに水を飲んだりして、気を付けていますよ。
５  システム：熱中症に気をつけたいんでしょう？
対話例３の場合、システムは「熱中症」という単語や「熱中症に気をつける」という述語項構造を繰り返して発話している。このとき、最後の発話である５のシステム発話における話題繰り返し数特徴量は3として計算する。
【００３９】
［対話行為のつながり］
対話行為特徴量とは、対話に含まれる発話が表す対話行為から生成される特徴量である。ここで、対話行為とは、質問・挨拶・自己開示・賞賛・謝罪などのユーザ等の発話意図のことである（参考非特許文献６）。対話行為は、後述するようにBag-of-wordsベクトルとして表すことができる。
（参考非特許文献６：T. Meguro, Y. Minami, R. Higashinaka, K. Dohsaka, “Controlling listening-oriented dialogue using partially observable Markov decision processes”, Proceedings of the 23rd international conference on computational linguistics. Association for Computational Linguistics (COLING 10), pp.761-769, 2010.）
【００４０】
対話行為特徴量には、以下に説明する対話行為列特徴量と予測対話行為特徴量がある。
【００４１】
(2-1)対話行為列特徴量
対話行為列特徴量とは、対話に含まれる各発話が表す対話行為を推定した結果（以下、推定対話行為という）を要素とするベクトルとして表現される特徴量である。推定結果（推定対話行為）はBag-of-wordsベクトルとして表すことができる。具体的には、各発話の推定対話行為に対応するBag-of-wordsベクトルは、1bestの対話行為の値を1、それ以外の対話行為の値を0とする1-of-Kベクトルとしたり、推定された対話行為らしさを表す確率分布（確率分布ベクトル）としたりすることで表現できる。なお、対話行為を推定する最後の発話を含み発話は、最後の発話を含む直前のM個の発話である。なお、Mは1〜4程度が好ましい。
【００４２】
例えば、推定する対話行為を質問・挨拶・自己開示・賞賛・謝罪の５つとし、対話行為列を最後の発話を含む４つの直前の発話から生成する場合、４つの発話の対話行為の1bestが「挨拶⇒挨拶⇒自己開示⇒称賛」であるとき、Bag-of-wordsベクトルのベクトルである対話行為列特徴量は、((0,1,0,0,0), (0,1,0,0,0), (0,0,1,0,0), (0,0,0,1,0))となる。
【００４３】
各発話の推定対話行為を表すBag-of-wordsベクトルの生成には、単語を特徴量とするSVM(Support Vector Machine)を用いる。なお、人があらかじめ発話に対応する対話行為を付与した対話データベースを利用して、事前にSVMの学習を行っておく必要がある。
【００４４】
(2-2)予測対話行為特徴量
予測対話行為特徴量とは、対話に含まれる発話から最後の発話が持つべき対話行為を予測した結果（以下、予測対話行為という）を表す予測結果ベクトル、予測結果ベクトルと最後の発話が表す対話行為を推定した結果を表す推定結果ベクトルを並べたベクトル、予測結果ベクトルと推定結果ベクトルの差分ベクトル、予測結果ベクトルと推定結果ベクトルの1bestが一致しているか否かの真偽値のうち、いずれか１つ以上からなる特徴量である。予測結果ベクトルと推定結果ベクトルの1bestが一致するとは、各ベクトルの要素のうち最大となる要素の次元が一致することをいう。
【００４５】
なお、予測結果（予測対話行為）は、(2-1)の推定結果と同様、Bag-of-wordsベクトルとして表すことができる。具体的には、最後の発話の予測対話行為に対応するBag-of-wordsベクトルは、1bestの対話行為の値を1、それ以外の対話行為の値を0とする1-of-Kベクトルとしたり、予測された対話行為らしさを表す確率分布（確率分布ベクトル）としたりすることで表現できる。
【００４６】
最後の発話の予測対話行為を表すBag-of-wordsベクトル（予測結果ベクトル）の生成には、単語や直前の発話の対話行為を特徴量とするSVMやPOMDP(Partially Observable Markov Decision Process)を用いる（参考非特許文献６）。なお、人があらかじめ発話に対応する対話行為を付与した対話データベースを利用して、事前にSVMやPOMDPの学習を行っておく必要がある。
【００４７】
例えば、対話行為を質問・挨拶・自己開示・賞賛・謝罪の５つとし、最後の発話から対話行為として“質問”が予測されたとするとき、予測した結果を表すBag-of-wordsベクトルと最後の発話が表す対話行為を推定した結果を表すBag-of-wordsベクトルを並べたベクトルは((1,0,0,0,0),(0,0,0,1,0))となる。また、それらの差分ベクトルは(1,0,0,-1,0)、一致しているかの真偽値は偽（0）となる。例えば、これらのベクトルを結合したベクトルを予測対話行為特徴量とすると、ベクトル(1,0,0,0,0,0,0,0,1,0,1,0,0,-1,0,0)が予測対話行為特徴量として得られることになる。
【００４８】
(2-3)文字列共起特徴量
文字列共起特徴量とは、対話内の最後の発話とそれ以外の発話との間において共起している文字列Ngram（ただし、Nは3以上の整数）の組合せの出現結果を要素とするBag-of-wordsベクトルとして表現される特徴量である。
語尾の文字列は対話行為を表すことが多いため、それらの共起を見ることにより、対話行為の共起関係をとらえることができる。
【００４９】
以下の対話例４を用いて、文字列共起特徴量の例について説明する。
（対話例４）
１  ユーザ： どこから来たんですか？
２  システム：  フォレストアドベンチャーと竹田城跡なら、どちらに関心がありますか？
例えば、N=3として文字列Ngramを抽出すると、ユーザ発話からは「どこか」「こから」「から来」…「すか？」が得られ、システム発話からは「フォレ」「ォレス」…「すか？」が得られる。ここで、特に語尾に着目して共起を取ると、「すか？-すか？」という組合せが得られる。
【００５０】
このように、学習に用いる訓練データ内に現れるすべての組合せを列挙し、それぞれの組合せがある次元の要素に対応するベクトルを構成しておく。ベクトルの各次元の要素の値は、ある組合せが出現している場合は対応するベクトルの次元の要素を1、出現しない場合は0とする。例えば、上記により構成されるベクトルの次元数が5で、2次元目の要素に対応する組合せのみが出現していた場合、得られる文字列共起特徴量は(0,1,0,0,0)となる。
【００５１】
［論理的なつながり］
(3-1)質問タイプ特徴量
質問タイプ特徴量とは、対話内の最後の発話の直前の発話が質問である場合、推定される質問タイプを表す特徴量である。質問タイプの例として、話者の具体的な嗜好や経験を問うパーソナリティ質問、具体的な事物を問うファクトイド質問、（ニュースなど）ある事象の５Ｗ１Ｈを問う質問などが挙げられる。また、“レストランの場所”のように、話題に紐付いた形で質問タイプを定義してもよい。
【００５２】
質問タイプの推定には、単語を特徴量とするSVMを用いる。なお、人があらかじめ質問タイプを分類したデータベースを利用して、事前にSVMの学習を行っておく必要がある。
【００５３】
対話システムには、上記質問タイプの一部に対する応答ができない（応答を苦手とする）ものもあるため、質問タイプ特徴量を用いると、そうしたシステム特性を反映した対話破壊力推定が可能になる。
【００５４】
例えば、天気案内を行う対話システムは、ある特定の場所の天気についての質問には答えられるものの、その場所の観光情報やシステム自身のパーソナリティに関する質問には答えられないことが多い。そのため、質問タイプを“天気に関する質問”と“それ以外の質問”の2タイプとして定義し、ユーザからの質問がいずれの質問タイプかを推定して、(1,0)のように1-of-K表現を用いてベクトル化することで、質問タイプ特徴量を得る。
【００５５】
(3-2)質問クラス特徴量
質問クラス特徴量とは、対話内の最後の発話の直前の発話が質問である場合、質問が回答に要求していると推定される単語クラスを表すベクトル、回答（最後の発話）に含まれる単語クラスを表すベクトル、それらの差分ベクトル、それらの２つのベクトルが表す単語クラスが一致しているか否かを表す真偽値のうち、いずれか１つ以上からなる特徴量である。推定される単語クラスを表すベクトル、回答に含まれる単語クラスを表すベクトルは、確率分布ベクトルや1-of-Kベクトルとして表現することができる。
【００５６】
ENE（拡張固有表現）抽出技術を用いて、推定した単語クラス（つまり、質問クラス特徴量が表す単語クラス）が最後の発話に含まれるか否かを調べることにより、質問とその答えについての対応関係を調べることができる。
【００５７】
以下の対話例５を用いて、質問クラス特徴量の例について説明する。
（対話例５）
１  ユーザ： どこから来たんですか？
２  システム：京都から来ました
例えば、対話例５において、ユーザ発話が回答に要求している単語クラスが「場所」であると推定され、システム発話に「場所」の単語クラスが含まれていると推定された場合を考える。単語クラスの集合を固有物、場所、数量としたとき、ユーザ発話から得られる1-of-Kベクトル（つまり、質問が回答に要求していると推定される単語クラスを表すベクトル）は(0,1,0)となり、システム発話から得られる1-of-Kベクトル（つまり、回答（最後の発話）に含まれる単語クラスを表すベクトル）は(0,1,0)となる。例えば、これらのベクトルを結合したベクトルを質問クラス特徴量とすると、ベクトル(0,1,0,0,1,0)が質問クラス特徴量として得られることになる。
【００５８】
なお、ユーザ発話からの単語クラスの推定には質問分類と呼ばれる技術が、システム発話からの単語クラスの推定にはENE抽出と呼ばれる技術が用いられることが多い。
【００５９】
［発話自体の適切さ］
(4-1)パープレキシティ特徴量
パープレキシティ特徴量とは、対話に含まれる各発話について言語モデルを用いて計算したパープレキシティを表す特徴量である。パープレキシティは、単語間の連なりの自然さを表現しており、文法的に不自然な発話を検出することができる。また、言語モデルは、単語Ngramや文字Ngram（Nは1〜7程度が多い）を利用したもの、Recurrent Neural Networkを利用したものが知られている。パープレキシティを計算できるものであればどのような言語モデルを用いてもよい。パープレキシティ特徴量は、パープレキシティの値そのものを直接特徴量とする方法のほか、適当な個数に量子化した1-of-Kベクトルを特徴量としてもよい。
【００６０】
なお、単語自体の出現確率に依らず文の流暢さを重視して表現するために、上記のように計算されるパープレキシティの代わりに、パープレキシティを各単語の出現確率で正規化した値（パープレキシティを単語の出現確率で割った値、以下、正規化パープレキシティという）を用いてもよい。
【００６１】
例えば、システム発話「どこのご出身ですか？」のパープレキシティとシステム発話「の出身ですどこごか？」のパープレキシティとでは使われている単語は同一であるが、「どこのご出身ですか？」の方が流暢な表現であり、パープレキシティが低下することが期待される。
【００６２】
(4-2)単語特徴量
単語特徴量とは、対話に含まれる各発話の単語N-gram（Nは1〜5程度）を並べたBag-of-wordsベクトルとして表現される特徴量である。
単語特徴量を利用することにより、ある対話システムが出力しやすい誤りパターンをとらえることが可能になる。
【００６３】
単語特徴量に用いる単語は、対話内出現数やTF-IDF値を用いて上位N個に足切りして用いてもよい。また、考慮する単語を内容語のみに限定し、助詞などの話題に関わらない単語を除外するようにしてもよい。その他、考慮する単語を名詞に比べて種類が少ない述語のみに限定してもよい。このようにすると、名詞の多様性に対して頑健に推定することができる。
【００６４】
以下の対話例６を用いて、単語特徴量の例について説明する。
（対話例６）
１  ユーザ: こんにちは/。/旅行/は/好き/です/か/？
２  システム: はい/。/先日/京都/に/行き/まし/た/。
例えば、対話例６において、ユーザ発話からは、「こんにちは」「。」「旅行」「は」「好き」「です」「か」「？」の８個の単語が得られ、システム発話からは「はい」「。」「先日」「京都」「に」「行き」「まし」「た」「。」の９個の単語が得られた場合、単語Ngram(N=1)のBag-of-wordsベクトルは、ユーザ発話からは「こんにちは」「。」「旅行」「は」「好き」「です」「か」「？」に対応する次元の要素が1、それ以外が0となるベクトルが単語特徴量として得られる。一方、システム発話からは「はい」「。」「先日」「京都」「に」「行き」「まし」「た」「。」に対応する次元の要素が1、それ以外が0となるベクトルが単語特徴量として得られる。
【００６５】
(4-3)単語クラス特徴量
単語クラス特徴量とは、対話に含まれる各発話の単語に対応する単語クラスを並べたBag-of-classesベクトルとして表現される特徴量である。単語クラスとは、その単語のおおまかな意味を表すものである。
【００６６】
単語クラスの構成方法には、Wordnetや日本語語彙大系などの辞書に付与されたクラス情報を用いる辞書ベースの方法、Word2vecのベクトルをK-meansでクラスタリングし、単語の集合を生成する方法などがある。
【００６７】
単語クラス特徴量に用いる単語クラスは、対話内出現数、TF-IDF値を用いて上位N個に足切りして用いてもよい。
【００６８】
以下の対話例７を用いて、単語クラス特徴量の例について説明する。
（対話例７）
１  ユーザ： どこから来たんですか？
２  システム：  京都から来ました
例えば、対話例７において、単語クラスを人名、場所、金額に限定した場合を考える。このとき、ユーザ発話には単語クラスに変換可能な単語が含まれていないため、(0,0,0)が単語クラス特徴量として得られる。一方、システム発話には「場所」の単語クラスが含まれていると推定されるため、(0,1,0)が単語クラス特徴量として得られる。
【００６９】
(4-4)単語ベクトル特徴量
単語ベクトル特徴量とは、対話に含まれる各発話の単語N-gram（Nは1〜5程度）を表すベクトルから生成されるベクトルとして表現される特徴量である。例えば、重み付き平均や要素ごとの掛け合わせを用いて生成することができる。
【００７０】
重み付き平均を用いる場合、単語ベクトル特徴量は、対話に含まれる各発話の単語N-gramを表すベクトルを重み付き平均として構成したベクトルで表される特徴量となる。
【００７１】
単語N-gramを表すベクトルは、例えば、Word2vecで抽出すればよい。重み付き平均の重みには、TF-IDF値を用いてもよいし、すべて等しくしてもよい。
【００７２】
また、重み付き平均の算出に用いる単語N-gramを表すベクトルの数をTF-IDF値を用いて足切りし、上位M個のみを用いるようにしてもよい。
【００７３】
ベクトルの要素ごとの掛けあわせを用いる場合、単語ベクトル特徴量は、対話に含まれる各発話の単語N-gramを表すベクトルの各要素を掛け合わせて構成したベクトルで表される特徴量となる。
【００７４】
以下の対話例８を用いて、単語ベクトル特徴量の例について説明する。
（対話例８）
１  ユーザ: こんにちは/。/旅行/は/好き/です/か/？
２  システム: はい/。/先日/京都/に/行き/まし/た/。
例えば、対話例８において、内容語（名詞・動詞・形容詞・独立詞など）に限定したword2vecの平均ベクトルを単語ベクトル特徴量として考える。ユーザ発話からは、「こんにちは」「旅行」「好き」の３個の内容語が得られ、システム発話からは、「はい」「先日」「京都」「行き」の４個の内容語が得られる。word2vecを用いて得られた単語をベクトルへ変換する。例えば、3次元のベクトルとして、「こんにちは」は(0.1,0.7,0.2)、「旅行」は(0.8,0.1,0.1)、「好き」は(0.3,0.4,0.3)、「はい」は(0.2,0.6,0.2)、「先日」は(0.1,0.1,0.8)、「京都」は(0.6,0.3,0.1)、「行き」は(0.7,0.2,0.1)が得られたとする。このとき、ユーザ発話の平均ベクトル（単語ベクトル特徴量）は、((0.1,0.7,0.2)+(0.8,0.1,0.1)+(0.3,0.4,0.3))/3 = (0.4,0.4,0.2)、システム発話の平均ベクトル（単語ベクトル特徴量）は((0.2,0.6,0.2)+(0.1,0.1,0.8)+(0.6,0.3,0.1)+(0.7,0.2,0.1))/4 = (0.4,0.3,0.3)となる。
【００７５】
(4-5)文長特徴量
文長特徴量とは、対話内の最後の発話の単語長および文字長を表す特徴量である。
現在の対話システムでは、ユーザ発話の内容とシステム発話の内容との一貫性を誤りなく推定することは困難である。そのため、システム発話が長ければ長いほど、無関係な部分が含まれる可能性が多くなってしまうという問題がある。これを対話破壊力の推定に反映させるため、文長特徴量を用いることができる。
例えば、対話内の最後の発話が“買い物は一緒が楽しいですね”である場合、単語長は7、文字長は13となり、文長特徴量は(7,13)となる。
【００７６】
(4-6)ターン数特徴量
ターン数特徴量とは、対話開始からの経過ターン数を表す特徴量である。
これは、いずれの対話システムも対話の冒頭部分では比較的適切な発話を生成しているものの、対話が経過するごとに不適切な発話の割合が増えていく傾向がみられるという特徴を表すためのものである。
例えば、図５の入力にある対話の場合、ターン数は5であるため、ターン数特徴量は(5)となる。
【００７７】
［想定シナリオ内］
(5-1)頻出単語列特徴量
頻出単語列特徴量とは、対話内に所定の頻度T以上出現する単語Ngramの文字列を要素とする特徴量である。ここで、Nは4〜7程度、Tは10以上が好ましい。
【００７８】
この特徴量は、文Aと文Bのどちらを発話するかのような、あらかじめ想定されたシナリオに誘導するシステム発話を入れ込んで対話システムを構成する場合を考慮したものである。シナリオに誘導した直後は、比較的それまでの文脈から切り離された形でシステムが応答できるため、適切な応答を生成しやすい。また、シナリオに誘導した直後は、他の部分とは評価傾向が異なると想定される。そのため、シナリオに誘導した直後か否かを推定するための特徴として頻出単語列特徴量を用いる。
【００７９】
例えば、対話内に単語2gramである“買い物は”が所定の頻度3以上出現する場合、頻出単語列特徴量は、“買い物は”を要素として含み、(“買い物は”)のようにベクトルとして表現される。
【００８０】
＜第一実施形態＞
［対話破壊モデル学習装置１００］
以下、図１〜図２を参照して対話破壊モデル学習装置１００について説明する。図１に示すように対話破壊モデル学習装置１００は、対話破壊特徴量抽出部１１０、モデル生成部１２０、記録部１９０を含む。記録部１９０は、対話破壊モデル学習装置１００の処理に必要な情報を適宜記録する構成部である。例えば、学習中の対話破壊モデル（対話破壊モデルパラメータ）を記録する。
【００８１】
また、対話破壊特徴量抽出部１１０は、第1種特徴量計算部１１０１、…、第J種特徴量計算部１１０Ｊを含む（ただし、Jは1以上の整数）。第j種特徴量計算部１１０j(1≦j≦J)は、対話から第j種特徴量を計算するものである。第j種特徴量は、＜特徴量＞にて説明した特徴量のいずれかである。
【００８２】
学習開始前に、一連の発話からなる対話と当該対話が破綻しているか否かを示す正解データの組である訓練データを複数用意しておく。対話が破綻しているか否かを示す正解データは、破綻している、破綻していない、どちらでもないのいずれかを示すラベルでもよいし、破綻している、破綻していない、それ以外を確率変数とする確率分布であってもよい。また、正解データは、破綻の程度を示す実数値であってもよい。訓練データには、参考非特許文献１にある、人手であらかじめ対話の破綻を示すラベルや確率分布を付与した対話破綻データを利用することができる。
【００８３】
対話破壊モデル学習装置１００は、訓練データである対話と正解データの組から、対話破壊モデルを学習する。対話破壊モデルは、対話が破綻しているか否かの程度を示す対話破壊力を推定するために用いる。
【００８４】
図２に従い対話破壊モデル学習装置１００の動作について説明する。対話破壊特徴量抽出部１１０は、入力された対話から、最後の発話により対話が破綻しているか否かの特徴を示す対話破壊特徴量を抽出する（Ｓ１１０）。対話破壊特徴量は、第1種特徴量、…、第J種特徴量の組合せである。特徴量の組合せである対話破壊特徴量の例として、以下のようなものがある。
【００８５】
1)  頻出単語列特徴量、発話間類似度特徴量、文長特徴量、ターン数特徴量、単語ベクトル特徴量、質問タイプ特徴量、質問クラス特徴量、話題繰り返し数特徴量のうち、いずれか1つ以上の特徴量を含む組合せ。
ここでの発話間類似度特徴量は、単語コサイン距離以外の類似度をベクトルの要素とする。
【００８６】
2)  対話行為特徴量、発話間類似度特徴量を含み、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量のうち少なくともいずれか1つの特徴量を含まない組合せ。
この組合せは、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量の４つの特徴量のうち、少なくともいずれか1つの特徴量を含まない。例えば、対話行為特徴量、発話間類似度特徴量に加えて、単語特徴量、単語クラス特徴量、単語組合せ特徴量の３つを含む組合せは対話破壊特徴量として適切であるが、対話行為特徴量、発話間類似度特徴量に加えて、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量の４つすべてを含む組合せは適切ではない。したがって、この組合せを用いると、特徴量数を押さえつつ、対話行為の不自然な遷移による破綻と話題の急激な遷移による破綻を効果的に推定することが可能になる。
【００８７】
3)  対話行為特徴量、発話間類似度特徴量、文長特徴量を含み、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量のうち少なくともいずれか1つの特徴量を含まない組合せ。
この組合せを用いると、特徴量数を押さえつつ、対話行為の不自然な遷移による破綻、話題の急激な遷移による破綻、長過ぎる発話による無関係な話題の混入による破綻を効果的に推定することが可能になる。つまり、2)よりも好ましい特徴を備えた組合せになる。
【００８８】
4)  対話行為特徴量、発話間類似度特徴量、文長特徴量、ターン数特徴量を含み、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量のうち少なくともいずれか1つの特徴量を含まない組合せ。
この組合せを用いると、対話開始時の破綻しにくさを反映しかつ特徴量数を押さえつつ、対話行為の不自然な遷移による破綻、話題の急激な遷移による破綻、長過ぎる発話による無関係な話題の混入による破綻を効果的に推定することが可能になる。つまり、3)よりも好ましい特徴を備えた組合せになる。
【００８９】
5)  対話行為特徴量、発話間類似度特徴量、文長特徴量、ターン数特徴量を含む一方、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量を含まない組合せ。
この組合せは、4)の組合せをより制限したものになっている。
【００９０】
6)  対話行為特徴量、発話間類似度特徴量、文長特徴量、ターン数特徴量、文字列共起特徴量を含む一方、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量を含まない組合せ。
この組合せは、5)の組合せをより制限したものになっている。
【００９１】
7)  対話行為特徴量、発話間類似度特徴量、文長特徴量、ターン数特徴量、パープレキシティ特徴量を含み、単語特徴量、単語クラス特徴量、単語組合せ特徴量、頻出単語列特徴量のうち少なくともいずれか1つの特徴量を含まない組合せ
この組合せを用いると、対話開始時の破綻しにくさ及び発話自体の構文の自然さを反映しかつ特徴量数を押さえつつ、対話行為の不自然な遷移による破綻、話題の急激な遷移による破綻、長過ぎる発話による無関係な話題の混入による破綻を効果的に推定することが可能になる。つまり、4)よりも好ましい特徴を備えた組合せになる。
【００９２】
8)  発話間類似度特徴量、頻出単語列特徴量、対話行為特徴量、文長特徴量、単語組合せ特徴量を含む組合せ。
この組合せは、シナリオに基づいて動作する対話システムの固有の振る舞いを捉えるために頻出単語列特徴量を、効率的な話題遷移を捉えるために単語組合せ特徴量を利用する。
【００９３】
9)  対話行為特徴量、発話間類似度特徴量を含み、更に単語特徴量、単語クラス特徴量のうちいずれか1つ以上の特徴量を含む組合せ。
少なくとも、単語特徴量、単語クラス特徴量のいずれかを特徴量として含むことにより、この組合せはデータ量を十分に確保できる場合により性能を高めることが可能となる。
【００９４】
モデル生成部１２０は、Ｓ１１０で抽出した対話破壊特徴量と入力された正解データを用いて、対話破壊モデルを生成する（Ｓ１２０）。ここで、対話破壊モデルの学習アルゴリズムには、どのようなアルゴリズムを用いてもよい。例えば、ディープニューラルネットワーク（DNN: Deep Neural Networks）、SVM、ExtraTreesClassifierを用いることができる。
【００９５】
これらの学習アルゴリズムにより獲得される対話破壊モデルを用いて構成される対話破壊力推定装置には、それぞれ以下のような特徴がある。DNNを用いた場合、特徴量の組合せを自動的に考慮した推定ができる点において優れている（実際、実験的に優れた結果を示している）が、訓練データの量が少ない場合に挙動が安定しないという問題がある。SVMを用いた場合、推定精度のピーク値ではDNNに劣るものの、少量の訓練データでも効率的に学習できる。ExtraTreesClassifierを用いた場合、訓練データの量が少ない場合でも特徴量の組合せを考慮した推定が可能であるが、特徴量が多くなると、モデル学習に時間がかかり、推定精度も低下するという問題がある。
【００９６】
なお、正解データが確率分布として与えられる場合（つまり、対話破壊力推定装置が対話の破綻を確率分布として推定する場合）は、SVMの代わりにSupport Vector Regressorを、ExtraTreesClassifierの代わりにExtraTreesRegressorを用いるとよい。
【００９７】
生成した対話破壊モデルは、フィードバックされ、次の訓練データを用いた学習に利用される。
【００９８】
モデル生成部１２０は、学習アルゴリズムに基づく計算を実行する構成部である。したがって、対話破壊モデル学習装置１００は、学習開始までに、記録部１９０に記録した対話破壊モデルの初期値をモデル生成部１２０に設定する。また、対話破壊モデル学習装置１００は、学習中、モデル生成部１２０が対話破壊モデルを生成する都度、生成した対話破壊モデルをモデル生成部１２０に設定する。
【００９９】
対話破壊モデル学習装置１００は、Ｓ１１０〜Ｓ１２０の処理を訓練データの数だけ繰り返し、最終的に生成された対話破壊モデルを学習結果として出力する。
【０１００】
なお、対話破壊特徴量を抽出する対話破壊特徴量抽出部１１０を対話破壊モデル学習装置１００の一部としてではなく、独立した装置（以下、対話破壊特徴量抽出装置という）として扱うこともできる。この場合、対話破壊特徴量抽出装置は、対話破壊特徴量抽出部１１０と記録部１９０を含む。対話破壊特徴量抽出装置は、対話を入力として、当該対話が破綻しているか否かの特徴を示す特徴量の組合せである対話破壊特徴量を抽出、出力するものとなる。
【０１０１】
［対話破壊力推定装置２００］
以下、図３〜図４を参照して対話破壊力推定装置２００について説明する。図３に示すように対話破壊力推定装置２００は、対話破壊特徴量抽出部１１０、対話破壊力計算部２２０を含む。
【０１０２】
また、対話破壊力推定装置２００は、学習結果記録部２９０と接続している。学習結果記録部２９０は、対話破壊モデル学習装置１００が学習した対話破壊モデルを記録している。なお、学習結果記録部２９０は、対話破壊力推定装置２００に含まれる構成部としてもよい。
【０１０３】
対話破壊力推定装置２００は、一連の発話である対話から、当該対話の最後の発話が対話を破綻させる程度である対話破壊力を推定する。図５は、対話破壊力推定装置２００の入出力の例を示す。一連の発話（“買い物は一人が楽です”というシステムによる発話から“買い物は一緒が楽しいですね”というシステムによる発話まで）が入力である。“買い物は一緒が楽しいですね”というシステムによる発話が、最後の発話であり、対話破壊力を推定する対象となる。また、破綻していない（○）、破綻している（×）、どちらでもない（△）の確率分布として対話破壊力が推定されている。なお、ここでは確率値が最も大きいのが（つまり、1bestが）×であることからこの最後の発話により当該対話は破綻していると考えられる。
【０１０４】
対話破壊力推定装置２００は、推定開始までに、学習結果記録部２９０に記録した対話破壊モデルを対話破壊力計算部２２０に設定する。
【０１０５】
図４に従い対話破壊力推定装置２００の動作について説明する。対話破壊特徴量抽出部１１０は、入力された対話から、最後の発話により対話が破綻しているか否かの特徴を示す対話破壊特徴量を抽出する（Ｓ１１０）。なお、最後の発話はユーザの発話であっても、システムによる発話であってもよい。
【０１０６】
対話破壊力計算部２２０は、Ｓ１１０で抽出した対話破壊特徴量から、最後の発話が対話を破綻させる程度である対話破壊力を計算する（Ｓ２２０）。その際、対話破壊モデル学習装置１００が学習した対話破壊モデルを用いる。推定結果である対話破壊力は、生成した対話破壊モデルに応じて、ラベル、確率分布、実数値のいずれかとして計算される。
【０１０７】
本実施形態の発明によれば、対話を破綻させる様々な要因を踏まえた特徴量の組合せとして対話破壊特徴量を計算することができる。また、組合せに用いる各特徴量の特徴を考慮した対話破壊特徴量とすることにより、少量の訓練データから対話破壊モデルを学習することが可能となる。
【０１０８】
システムによる発話に対して対話破壊力を推定することにより、対話破壊力が高い発話の出力を抑制することができる。その結果、対話の継続が容易になる。
【０１０９】
また、実際の人とシステムが行った対話を対象に対話破壊力を推定することにより、対話が破綻している可能性の高い箇所を見つけることができ、システムの改善に活用することができる。
【０１１０】
さらに、音声対話では、ユーザによる発話の音響特徴のみから音声認識エラーを検出することは難しいため、認識エラーを含んだ発話からシステムが発話を生成してしまうことがある。このような場合、ユーザ発話の音声認識結果と直前のシステム発話との間の対話的なつながりの自然性をユーザ発話の対話破壊力として推定することにより、認識エラーの検出、音声認識候補のリランキングが可能となり、スムースな音声対話が可能になる。
【０１１１】
＜変形例＞
この発明は上述の実施形態に限定されるものではなく、この発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。上記実施形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【０１１２】
＜補記＞
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置（例えば通信ケーブル）が接続可能な通信部、ＣＰＵ（Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい）、メモリであるＲＡＭやＲＯＭ、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、ＣＰＵ、ＲＡＭ、ＲＯＭ、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、ＣＤ−ＲＯＭなどの記録媒体を読み書きできる装置（ドライブ）などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
【０１１３】
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている（外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるＲＯＭに記憶させておくこととしてもよい）。また、これらのプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に記憶される。
【０１１４】
ハードウェアエンティティでは、外部記憶装置（あるいはＲＯＭなど）に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にＣＰＵで解釈実行・処理される。その結果、ＣＰＵが所定の機能（上記、…部、…手段などと表した各構成要件）を実現する。
【０１１５】
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【０１１６】
既述のように、上記実施形態において説明したハードウェアエンティティ（本発明の装置）における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
【０１１７】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【０１１８】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【０１１９】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【０１２０】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【図１】
2018147288.tif 000003
【図２】
2018147288.tif 000004
【図３】
2018147288.tif 000005
【図４】
2018147288.tif 000006
【図５】
2018147288.tif 000007