(57)【要約】【課題】対話ログからＦＡＱを作成するにあたり、膨大なテキストの中からＦＡＱに追加すべきＱＡ候補を効率良く抽出し、ＦＡＱの作成を省力化する。【解決手段】質問者と回答者との一連の通話をテキストとした対話ログを形態素解析したものについて、一連の通話を構成する個々の発話であるレコードごとに算出される素性のうち少なくとも１つを含む素性値を、レコードごとの入力とし、かつ、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを出力として、分類器を教師あり学習によりトレーニングしたパターン認識モデルを用いる。【選択図】図２
2020071690.tif 000002
【特許請求の範囲】
【請求項１】
質問者と回答者との一連の通話をテキストとした対話ログを形態素解析したものについて、一連の通話を構成する個々の発話であるレコードごとに算出される、
当該発話あたりの形態素数である発話長と、
当該発話の前後で共通する単語の出現回数である共通キーワード出現回数と、
当該発話あたりの周辺キーワードの重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
の素性のうち少なくとも１つを含む素性値を、レコードごとの入力とし、
かつ、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを出力として、
分類器を教師あり学習によりトレーニングしたパターン認識モデル。
【請求項２】
前記教師あり学習を、話者が質問者である発話部分のみを抜き出した質問者ログのレコード、又は話者が回答者である発話部分のみを抜き出した回答者ログのレコードのいずれかのみについて行った、請求項１に記載のパターン認識モデル。
【請求項３】
質問者と回答者との一連の通話をテキストとした対話ログを形態素解析したものについて、一連の通話を構成する個々の発話であるレコードごとに、
当該発話あたりの形態素数である発話長と、
当該発話の前後で共通する単語の出現回数である共通キーワード出現回数と、
当該発話あたりの周辺キーワードの重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
の素性のうち少なくとも１つを含む素性値を算出するステップ、
前記素性値を入力とし、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを出力として、教師あり学習によりパターン認識モデルをトレーニングするステップ、
を実行するパターン認識モデルの生成方法。
【請求項４】
前記教師あり学習は、話者が質問者である発話部分のみを抜き出した質問者ログ、又は話者が回答者である発話部分のみを抜き出した回答者ログのいずれかについて行う、請求項３に記載のパターン認識モデルの生成方法。
【請求項５】
請求項１又は２に記載のパターン認識モデルを用いて、
認識対象とする前記対話ログについて、前記Ｑ候補又は前記Ａ候補となるレコードを判定する、
ＦＡＱの抽出方法。
【請求項６】
前記パターン認識モデルが、前記質問者ログと前記回答者ログのいずれかについて生成したものであり、
認識対象とする前記対話ログは、それぞれのレコードの前記素性値について算出した後、前記質問者ログ、又は前記回答者ログを抽出して、対応する前記パターン認識モデルによって判定させる、
請求項５に記載のＦＡＱの抽出方法。
【請求項７】
質問者と回答者との一連の通話をテキストとした対話ログを形態素解析し、一連の通話を構成する個々の発話であるレコードごとに、
当該発話あたりの形態素数である発話長と、
当該発話の前後で共通する単語の出現回数である共通キーワード出現回数と、
当該発話あたりの周辺キーワードの重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
の素性のうち少なくとも１つを含む素性値を算出する素性値算出手段と、
前記素性値を入力とし、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを出力として、教師あり学習によりパターン認識モデルをトレーニングするパターン学習手段と、
を有するパターン学習装置。
【請求項８】
前記パターン学習手段は、話者が質問者である発話部分のみを抜き出した質問者ログ、又は話者が回答者である発話部分のみを抜き出した回答者ログのいずれかについて行う、請求項７に記載のパターン学習装置。
【請求項９】
請求項１又は２に記載のパターン認識モデルを用いて、認識対象とする前記対話ログについて、前記Ｑ候補又は前記Ａ候補となるレコードを判定する、パターン認識装置。
【請求項１０】
請求項７もしくは請求項８に記載のパターン学習装置又は請求項９に記載のパターン認識装置としてコンピュータを機能させるためのプログラム。
【請求項１１】
質問者と回答者との一連の通話をテキストとした対話ログであって、
一連のテキスト部分は形態素解析されており、
一連の通話を構成する個々の発話であるレコードごとに、
前記質問者と前記回答者とのいずれの発話であるかを示す発話者区分と、
当該発話あたりの形態素数である発話長と、
前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルと、
当該発話とその前後の発話との間における、共通の単語の出現回数である共通キーワード出現回数と、
前記通話中に複数回出現する名詞である中心キーワードと同じ発話内に出現する名詞である周辺キーワードに対して、下記式（１）からなるキーワード重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
を有する、構造有対話ログ。
・キーワード重要度＝（前記中心キーワードと前記周辺キーワードとが共に出現した発話数）／（中心キーワードが出現した発話数）          （１）
【請求項１２】
前記対話ログに対して、
テキスト部分を形態素解析するステップの後に、
前記発話長と、
前記共通キーワード出現回数と、
前記キーワード重要度総和と、
前記間投詞数と、
の少なくとも１つを計算し、一連の通話を構成する個々の発話であるレコードごとに設定するステップを実行する、
請求項１１に記載の構造有対話ログを作成する対話ログ作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、対話ログからＦＡＱを抽出する技術に関する。
【背景技術】
【０００２】
コンタクトセンタで利用される一問一答のＱＡ集（以下「ＦＡＱ」という）は、「よくある質問（Frequently Asked Questions）」とも呼ばれる、ユーザ側サポート側の双方にとって有益な情報群である。このＦＡＱは現状、手作業で追加、更新して整備されており、作業者の多大なリソースとノウハウを必要としている。
【０００３】
一方、近年の人工知能技術の進展により、商品マニュアル等を学習することで問い合わせに対して自動応答するシステムの導入が検討されている（例えば非特許文献１）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】“IBM Watson 活用例 - 具体的活用法や日本の導入事例を紹介 - Japan”、[online]、IBM、[平成３０年１０月１０日検索]、インターネット<URL:https://www.ibm.com/watson/jp-ja/use-cases/>
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、チャットボットのような自動応答システムはあるものの、その自動応答を支えるためのＦＡＱの作成には、膨大な量のテキストである対話ログから人力をもって整備することが必要であり、その効率化が求められていた。
【０００６】
そこでこの発明は、対話ログからＦＡＱを作成するにあたり、膨大なテキストの中からＦＡＱに追加すべきＱＡ候補を効率良く抽出し、ＦＡＱの作成を省力化することを目的とする。
【課題を解決するための手段】
【０００７】
この発明は、質問者と回答者との一連の通話をテキストとした対話ログを形態素解析したものについて、一連の通話を構成する個々の発話であるレコードごとに算出される、
当該発話あたりの形態素数である発話長と、
当該発話の前後で共通する単語の出現回数である共通キーワード出現回数と、
当該発話あたりの周辺キーワードの重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
の素性のうち少なくとも１つを含む素性値を、レコードごとの入力とし、
かつ、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを出力として、
分類器を教師あり学習によりトレーニングしたパターン認識モデルにより、上記の課題を解決したのである。
【０００８】
前記教師あり学習を、前記対話ログの全レコードについて行うだけでなく、話者が質問者である発話部分のみを抜き出した質問者ログのレコード、又は話者が回答者である発話部分のみを抜き出した回答者ログのレコードのいずれかのみについて行う実施形態を選択できる。
【０００９】
前記パターン認識モデルを用いて、認識対象とする前記対話ログについて、前記Ｑ候補又は前記Ａ候補となるレコードを判定するＦＡＱの抽出方法により、前記対話ログから前記Ｑ候補及び前記Ａ候補を抽出できる。前記パターン認識モデルが、前記質問者ログと前記回答者ログのいずれかについて生成したものである場合、認識対象とする前記対話ログは、それぞれのレコードの前記素性値について算出した後、前記質問者ログ、又は前記回答者ログを抽出して、対応する前記パターン認識モデルによって判定させる実施形態を選択して精度を向上させることができる。
【００１０】
前記パターン認識モデルの生成にあたって、
質問者と回答者との一連の通話をテキストとした対話ログであって、
一連のテキスト部分は形態素解析されており、
一連の通話を構成する個々の発話であるレコードごとに、
前記質問者と前記回答者とのいずれの発話であるかを示す発話者区分と、
当該発話あたりの形態素数である発話長と、
前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルと、
当該発話とその前後の発話との間における、共通の単語の出現回数である共通キーワード出現回数と、
前記通話中に複数回出現する名詞である中心キーワードと同じ発話内に出現する名詞である周辺キーワードに対して、下記式（１）からなるキーワード重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
を有する、構造有対話ログを用いることができる。
・キーワード重要度＝（前記中心キーワードと前記周辺キーワードとが共に出現した発話数）／（中心キーワードが出現した発話数）          （１）
【００１１】
前記構造有対話ログを作成するには、前記対話ログに対して、テキスト部分を形態素解析するステップの後に、
前記発話長と、
前記共通キーワード出現回数と、
前記キーワード重要度総和と、
前記間投詞数と、
の少なくとも一つを計算し、一連の通話を構成する個々の発話であるレコードごとに設定するステップを実行する形態が選択できる。
【発明の効果】
【００１２】
この発明により、コンタクトセンタで生じる応答の録音データを音声認識したり、チャット記録を保存したりして得られる膨大な量の対話ログの中から、ＦＡＱに登録する候補となるＱ候補とＡ候補を抽出することができる。これにより、ＦＡＱを作成する際の手間と時間を大幅に節約することができる。
【図面の簡単な説明】
【００１３】
【図１】この発明で解析対象とする対話ログのイメージ
【図２】この発明にかかるパターン認識モデルの実施形態例の生成手順の例を示すフローチャート
【図３】この発明にかかるパターン学習装置の実施形態例を示す機能ブロック図
【図４】この発明にかかるパターン認識装置の実施形態例を示す機能ブロック図
【図５】この発明にかかるパターン認識モデルの実施形態例を用いた判定手順の例を示すフローチャート
【図６】（ａ）この発明にかかるパターン認識モデルの他の実施形態例の生成手順の例を示すフローチャート、（ｂ）この発明にかかるパターン認識モデルの他の実施形態例を用いた判定手順の例を示すフローチャート
【発明を実施するための形態】
【００１４】
以下、この発明について具体的な実施形態とともに詳細に説明する。この発明は、対話ログからＦＡＱを抽出可能とするパターン認識モデル、その生成方法、それを用いたパターン認識装置、パターン認識装置としてコンピュータを動作させるためのプログラム、それらを用いたＦＡＱの抽出方法、及び、パターン認識モデルの生成に用いる構造を有するデータである構造有対話ログである。
【００１５】
この発明で用いる対話ログは、質問者と回答者との一連の通話をテキストとしたものである。チャットによる会話であればテキストデータをそのまま利用することができる。音声による通話であれば、音声認識によってテキスト化したものを利用できる。
【００１６】
前記対話ログは、テキストが発話の区切りごとのレコードになっているとよい。また、このレコードには、発話者が質問者と回答者のいずれかであるかを識別する項目が設けられているとよい。この発話者の識別は、チャットによる会話であればそれぞれのテキストの入力者に従って項目が登録されているとよい。音声による通話であれば、音声認識エンジンの話者分離機能を用いて識別されているとよい。
【００１７】
前記対話ログのイメージを図１に示す。ここで発話者は、「オペレータ」が回答者であり、「お客様」が質問者にあたる。発話者の右がそれぞれの発話のテキストである。一行のレコードを一つの発話として取り扱う。発話者が同一の発話が連続していても、まとめて取り扱うのではなく、別個のレコードとして取り扱う。
【００１８】
前記テキストの右に示されているのが、通話の中で質問に相当する可能性が高いＱ候補と、回答に相当するＡ候補とにあたるか否かを示す候補ラベルである。音声認識の場合、前記発話者の項目とテキストまでは音声認識エンジンが通話の音声を認識して生成する。前記候補ラベルは、学習段階で用いるデータでは人力でラベルを登録する。利用段階ではパターン認識モデルによる判定によって前記候補ラベルが付与される。
【００１９】
この発明におけるパターン認識モデルの作成と、パターン認識モデルの利用とのどちらも、上記の対話ログが持つ素性を利用する。前記素性とはテキストが通話の中で発揮する特徴量である。前記素性を求めるには、テキストを形態素解析し、テキストを構成する要素を解析して求める。ここで、形態素解析とはテキストを構成する語句を分かち書きし、それぞれの語句の品詞を求めることをいう。
【００２０】
上記素性としては、質問者と回答者の会話において重要なテキストを抽出する際に、パターン認識モデルにとってあるレコードが有益な情報であると判定する材料となりうる特徴量を適宜選択して用いることができる。適宜選択された素性を示す値である素性値を入力、前記候補ラベルを出力とする教師あり学習によりパターン認識モデルを学習させる。トレーニングしたパターン認識モデルを利用するにあたっては、その適宜選択した素性値を入力として、前記候補ラベルを出力とする。
【００２１】
このような素性としては例えば、発話長、共通キーワード出現回数、キーワード重要度総和、間投詞数が挙げられる。これらのうちの少なくとも３つは利用することが好ましい。また、その中に共通キーワード出現回数と、キーワード重要度総和とが含まれていることがより好ましい。さらに、上記した以外の素性を併せて用いていてもよい。
【００２２】
前記発話長とは、当該レコードの一発話あたりの形態素数を示す。処理としては、一レコードあたりの形態素数をカウントすることで数値を算出できる。長い発話文であるほど多くの情報を持っており、主要な話題を含む可能性が高くなると想定されるためである。例えば、「新規申し込みの件で電話したのだけど手続きにはお金いくらかかるの」という発話の場合、「新規／申し込み／の／件／で／電話／し／た／の／だけど／手続き／には／お金／いくら／かかる／の」というように形態素を分かち書きでき、発話長は１６とカウントされる。
【００２３】
前記共通キーワード出現回数とは、当該レコードの一つの発話の前後で共通する単語の出現回数を示す。ここで、カウントする単語としては名詞、動詞、形容詞のいずれか一つ又は複数であるとよい。これら名詞、動詞、形容詞の３つともカウントすると精度の点から望ましい。問合せと回答の間には、問合せ内容に関するキーワードが共通して含まれていると想定される。このため、該当発話とその前後の発話との間で共通して単語が出現していると、それは質問と回答に対応する可能性が高い。すなわち、この共通して出現する単語が多いほど、前記Ｑ候補又は前記Ａ候補として抽出すべき価値が高くなりやすい。なお、図１の例では発話の前後で共通する単語が出現したレコードはなく、いずれのレコードの発話も共通キーワード出現回数は０とカウントされる。
【００２４】
例えば、「はい」と回答者が頷いた発話（発話α）の後に、「家族でも申し込みとかはできるんですよね」という質問者の発話（発話β）があり、その後に「はいご家族の方でもお申し込みは承っております」という回答者の発話（発話γ）があった例について説明する。発話αと発話βとを比較すると、共通する単語がない。発話βにとって前の発話との間での共通する単語の出現回数は０となる。一方、発話βと発話γとを比較すると「家族」「申し込み」が共通する単語となり、共通する単語の出現回数は２となる。よって、発話βのレコードの共通キーワード出現回数は「０＋２＝２」となる。また、発話γの共通キーワード出現回数をカウントする際には、上記の通りの発話βと発話γとの間の共通する単語の出現回数２に、発話γと次の発話（発話δ）との間の共通する単語の出現回数を加算する。
【００２５】
前記キーワード重要度総和とは、当該レコードを構成するキーワード重要度の総和である。前記キーワード重要度は次のように定義される値である。まず、１通話全体で複数回出現する名詞を中心キーワードとして抽出する。中心キーワードは一つではなく、複数個設定されていてもよい。次に、同じ１通話全体で、前記中心キーワードと同じ発話内に出現する名詞を周辺キーワードとして抽出する。この周辺キーワードごとに、キーワード重要度＝（前記中心キーワードと前記周辺キーワードとが共に出現した発話数）／（中心キーワードが出現した発話数）を求める。
【００２６】
例えば図１の対話ログでは、複数回出現する名詞は「電話」であり、これが中心キーワードとして抽出される。この「電話」と同じ発話内に出現する名詞は「当社」「ビジネス」「αワン」「百年」「時間外」「担当」「女性」「人」「お客様」「場合時」「部分」「感じ」「小売り」「保留」「番号」「音」であり、これらが周辺キーワードとなる。中心キーワードである「電話」が出現した発話数は４回である。それぞれの周辺キーワードはいずれも一回しか出現していないため、どの周辺キーワードも「中心キーワードと周辺キーワードとが共に出現した発話数」は１となる。このため、図１の対話ログの例ではどの周辺キーワードも、キーワード重要度は１／４となる。以上から、キーワード重要度総和は４５９５のレコードの発話で４／４（当社、ビジネス、αワン、百年、の合計４つ）、７７４３のレコードの発話で３／４（時間外、担当、女性の合計３つ）、９２８５のレコードの発話で４／４（お客様、場合時、部分、感じの合計４つ）、１０８７５のレコードの発話で４／４（小売り、保留、番号、音の合計４つ）となる。それ以外のレコードの発話のキーワード重要度総和はいずれも０となる。
【００２７】
図１の対話ログでは「電話」の他に「設定」が複数回出現する。この設定と同じ発話内に出現する名詞は「インターネット」「システム」「一括」である。これらが周辺キーワードとなる。中心キーワードである「設定」が出現した発話数は２回である。それぞれの周辺キーワードはいずれも一回しか出現していないため、どの周辺キーワードも「中心キーワードと周辺キーワードとが共に出現した発話数」は１となる。このため、１３７９８のレコードの発話のキーワード重要度総和は３／２となる。
【００２８】
さらに、「私」も複数回出現しているが、これは名詞ではなく代名詞であるため中心キーワードとしてカウントしない。場合によっては、「弊社」「貴社」「御社」などの法人を指示する名詞も代名詞として扱ってもよい。上記の例では「当社」を代名詞として周辺キーワードから除外する運用としてもよい。ただし、その運用は学習によってトレーニングするパターン認識モデルごとに固定すべきである。これはそのパターン認識モデルを利用して判定する際に入力値を算出する場合も固定するということである。
【００２９】
この計算は、中心キーワードが複数ある場合には、中心キーワードと周辺キーワードとはセットで考える。ある中心キーワードＡに対して周辺キーワードとなった名詞が、別の中心キーワードＢに対しては周辺キーワードとならない場合もある。中心キーワードの数だけ周辺キーワードも抽出し、その中心キーワードごとに、周辺キーワードの重要度を求め、全ての中心キーワードに対応する周辺キーワードの重要度の総和を求める。図１の例では中心キーワードと周辺キーワードとが重ならないため、上記の「電話」と「設定」についての周辺キーワードのキーワード重要度総和を単純に加算して求める。
【００３０】
前記間投詞数とは、そのレコードの発話後方１以上５以下の発話内に存在する間投詞の数である。発話の後に「はい」「うん」「ええ」「ありがとう」などの相槌がされている場合には、主要な話題を含むことが想定される。このため、直近のいくつかの発話の中に間投詞が多いものほど重要であると認識する材料に用いることができる。この設定値は学習によってトレーニングするパターン認識モデルごとに固定すべきである。これはそのパターン認識モデルを利用して判定する際に入力値を算出する場合も固定するということである。この設定値は用いる対話ログにおける発話の分割の仕方によって調整するとよい。設定値が小さすぎると、間をおいて発言された間投詞をカウントできなくなる場合がある。一方で長すぎると、次の内容のある発話に対する間投詞を拾ってしまう場合がある。このため、多くの場合は設定値が２〜４であると好ましく、３が特に好ましい。例えば１０２８１のレコードの発話は、設定値が３であると間投詞数が３となるが、設定値が５だと１１１３６のレコードの発話の「はい」もカウントしてしまう。この「はい」はその直前のお客様の発言に対する応答であるため、この対話ログでは設定値５だと値が大きすぎ、３が適当であると推測される。
【００３１】
前記パターン認識モデルの生成、すなわち学習によるトレーニングを行うパターン学習装置では、前記対話ログを構成する各レコードにおいて、上記の素性値の複数を算出する。コンピュータによって処理する際に、この算出した素性値は、独立したテーブルとしてもよいし、前記対話ログと一体化したテーブルに記録してもよい。
【００３２】
前記パターン認識モデルをトレーニングするにあたっては、教師あり学習を用いてモデルを生成する。学習を行うパターン学習装置が実行するプログラムの手順を図２のフローチャートを例にして示す。まず、パターン学習装置は、教師データの元となる対話ログを取得する（Ｓ１０１）。この対話ログは別の装置又は別のステップで予め形態素解析されたものであると望ましい。形態素解析される前の対話ログを取得した場合は、Ｓ１０１の後に、テキストを形態素解析する形態素解析手段を実行する（図示せず）。
【００３３】
また、前記対話ログ及び対話ログから形成される構造有対話ログは、レコードごとに、前記質問者と前記回答者とのいずれの発話であるかを示す発話者区分を有していると好ましい。図１の例では「オペレータ」「お客様」として記述されている項目である。前記パターン認識モデルをトレーニングするにあたって、Ｑ候補とＡ候補とでは特徴に違いがあることが想定されるため、学習精度を向上させようとするのであれば、Ｑ候補専用のパターン認識モデル（図中「Ｑモデル」）と、Ａ候補専用のパターン認識モデル（図中「Ａモデル」）とを別個にトレーニングすることが望ましい。前記発話者区分を有していると、それを参照するだけで前記質問者と前記回答者のいずれかのみの発話を抽出できる。なお、前記発話者区分は、チャット由来のテキストであれば送信者ＩＤによってそのまま分類するとよく、音声通話を音声認識する場合には、音声認識エンジンが有する発話者区分機能によって音声認識と併せて前記発話者区分を付与しておくとよい。
【００３４】
また、前記対話ログ及び対話ログから形成される構造有対話ログは、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを有する。この候補ラベルは、手作業又はその他の手段によって付与する。手作業で処理する場合、当該言語に熟達した人間の思考によって、Ｑ候補又はＡ候補であろうと考えられる、重要度の高いレコードを選択して、候補ラベルを付与する。ただし、教師データとして用いる場合には人力となるため、Ｓ１０１で取得する前の段階で前記候補ラベルを付与しておくことが望ましい。
【００３５】
この対話ログから、この教師あり学習のための教師データとなる構造有対話ログを生成するにあたっては、元の通話の対話ログを構成する通話全体について、算出した前記素性をそれぞれのレコードごとに計算した素性を算出する素性値算出手段を実行する（Ｓ１０２）。具体的には、前記対話ログに対してテキスト部分を形態素解析するステップの後に、前記発話長、前記共通キーワード出現回数、前記キーワード重要度総和、前記間投詞数などの素性を算出し、個々の発話であるレコードごとに算出した値を設定する。
【００３６】
次に、通話全体について素性値を計算した後、前記発話者区分によって前記質問者と前記回答者のログを別個に抽出し、話者が質問者である発話部分のみを抜き出した質問者ログのレコード、又は話者が回答者である発話部分のみを抜き出した回答者ログのレコードを得る話者抽出手段を実行すると望ましい（Ｓ１０３）。これらを抜き出して別個に用いることで、質問者によるＱ候補専用のパターン認識モデルと、回答者によるＡ候補専用のパターン認識モデルを生成することができ、後述する判定時の判定精度を向上させることができる。
【００３７】
また、トレーニングに用いるのは前記素性値と前記候補ラベルのみで、前記発話者区分とテキスト自体は用いない。このため、前記発話者区分を参照して話者抽出手段（Ｓ１０３）を実行した後、前記発話者区分とテキストとをさらに除外して、前記素性値と前記候補ラベルのみの教師データを抽出する教師データ抽出手段を実行する（Ｓ１０４）。
【００３８】
前記パターン学習装置は、パターン認識モデルを生成するにあたって、前記素性値算出手段で算出した前記素性値を入力とし、前記候補ラベルを出力とする、教師あり学習によりパターン認識モデルをトレーニングするパターン学習手段を実行する（Ｓ１０５）。
【００３９】
このトレーニングするパターン認識モデルは、様々な教師あり学習による分類器を選択して適用することができる閾値や数式、又はそれらの集合体である。ベイズ分類、ロジスティック回帰、多層パーセプトロン、ニューラルネットワーク、サポートベクターマシンなどが選択できる。中でも入力する素性値の次元数と、出力における正否との適合性が高いサポートベクターマシンが最も好適である。いずれのパターン認識モデルでも、前記素性値の入力に対して、トレーニングされた閾値の集合体によって判定が可能となる。
【００４０】
このようなパターン認識モデルをトレーニングするパターン学習装置は、一般的なコンピュータ、サーバ等を用いることができる。また、独立したハードウェアである必要はなく、仮想マシンとして動作するものでもよい。このパターン学習装置１１として動作するサーバの実施形態例の機能ブロック図を図３に示す。
【００４１】
入出力部１２から外部のデータである前記対話ログを取り込む。入出力部１２は外部記憶媒体とのインターフェースでもよいし、有線又は無線のネットワークインターフェースでもよい。また、上記Ａ候補又は上記Ｑ候補の指定などを入力するマウスやタッチパネルなどのポインティングデバイスやキーボードでもよい。また、その入力結果を確認できるモニタやプリンタなどの出力装置が含まれていてもよい。
【００４２】
データ加工部１３は、取り込んだ前記対話ログを構造有対話ログとして利用できるように加工する。前記候補ラベルの付与や、前記形態素解析手段、前記素性値算出手段の実行などを行う。なお、実際の処理はサーバにおける演算装置が行い、データ加工部１３はそれを実行するソフトウェア群として作用する。加工された前記構造有対話ログは記憶部１４に記録される。これらの処理は一括して行うのではなく、一旦記憶部１４に記録したデータを適宜読み出して、段階的に加工を行ってもよい。
【００４３】
記憶部１４は、ハードウェアとしては、磁気ディスクや半導体ドライブなどの不揮発性記憶装置や、揮発性メモリなどを適宜用いることができる。
【００４４】
データ抽出部１５は、前記話者抽出手段（Ｓ１０３）を実行して、前記質問者ログと前記回答者ログのそれぞれを抽出する。また、抽出された前記対話ログのうち、トレーニングに用いる前記素性値及び前記候補ラベルのみを抽出し前記発話者区分及びテキストを除外する前記教師データ抽出手段を実行する（Ｓ１０４）。
【００４５】
解析部１６は、パターン認識モデルに対してトレーニングを行う。具体的には、前記素性値の次元数に合わせた入力と、前記候補ラベルに合わせた一の出力を有する、サポートベクターマシンなどの分類器を用意し、入力に対する出力が適正なものとなるようにトレーニングする前記パターン学習手段を実行する（Ｓ１０５）プログラムである。トレーニングは前記質問者ログ由来の前記素性値及び前記候補ラベルと、前記回答者ログ由来の前記素性値及び前記候補ラベルとを別個のデータセットとして扱う。前者でトレーニングしたパターン認識モデルはＱ候補を判定する性能に最適化され、後者でトレーニングしたパターン認識モデルはＡ候補を判定する性能に最適化される。
【００４６】
トレーニングされたパターン認識モデルを有し、このパターン認識モデルを用いて判定を行う装置は、認識対象とする前記対話ログについて、前記Ｑ候補又は前記Ａ候補となるレコードを判定するパターン認識装置として動作させることができる。このパターン認識装置は、前述のパターン学習装置１１をそのまま用いてもよいし、パターン学習装置１１でトレーニングされたパターン認識モデルをコピーして別途別のコンピュータに導入して実行可能としてもよい。
【００４７】
ここでは、パターン学習装置１１をそのままパターン認識装置２１として用いる場合を例にとって説明する。パターン認識装置２１の機能ブロック図を図４に、パターン認識装置２１を動作させてＦＡＱを抽出するプログラムのフローチャートを図５に示す。なお、ハードウェアの必要要件は基本的に同一であるが、同種のハードウェアである必要はなく、トレーニングされたパターン認識モデルを利用できるものであれば特に制限はされない。入出力部１２から、Ｑ候補及びＡ候補となるテキストを抽出しようとする対話ログを導入する（Ｓ２０１）。具体的には、コンタクトセンタなどの会話から生成される膨大な対話ログ群であり、その膨大なテキストの中から、Ｑ候補及びＡ候補としてＦＡＱに利用できる可能性の高いテキストを抽出するため、パターン認識を行う。解析用データであるこれらの対話ログは、形態素解析と発話者区分とは既に完了しているものを導入する。特に発話者区分は予めされていないものを後から付与することは難しいため、発話者区分が付与されたものが望ましい。形態素解析についてはデータ加工部１３にて導入後に実行する実施形態としてもよい。
【００４８】
いずれにしても、データ加工部１３において、導入した前記対話ログについて通話ごとに前記素性値を算出する素性値算出手段を実行する（Ｓ２０２）。
【００４９】
データ抽出部１５は、前記話者抽出手段（Ｓ２０３）を実行して、前記質問者ログと前記回答者ログのそれぞれを抽出する。また、抽出された前記対話ログのうち、トレーニングに用いる前記素性値のみを抽出する素性値抽出手段を実行する（Ｓ２０４）。この素性値抽出手段は、前記候補ラベルを含めない点でトレーニング段階における前記教師データ抽出手段（Ｓ１０４）とは異なる。ただし、判定後に元のテキストと対応させてＱ候補又はＡ候補となるテキストを抽出しなければならない。このため、判定結果を元のテキストに対応できるように、レコードを識別する識別ＩＤを前記素性値とともに残しておいてもよいし、レコードデータの行番号によって後から対応できるようにしておいてもよい。
【００５０】
解析部１６は、抽出した前記素性値を、前記パターン認識モデルによる分類器によってＱ候補又はＡ候補であるレコードを判定する候補認定手段を実行する（Ｓ２０５）。このとき用いるパターン認識モデルは、前記質問者ログの前記素性値については、前記質問者ログでトレーニングしたパターン認識モデル（図中「Ｑモデル」）を用いてＱ候補であるか否かを判定する。前記回答者ログの前記素性値については、前記回答者ログでトレーニングしたパターン認識モデル（図中「Ａモデル」）を用いてＡ候補であるか否かを判定する。
【００５１】
判定結果は、前記素性値の算出元となった前記質問者ログ又は前記回答者ログに対応させる。これにより、Ｑ候補又はＡ候補となるレコードが判別可能となる。後日ＦＡＱを作成する際には、元の対話ログ全てをチェックするのではなく、Ｑ候補又はＡ候補の判定がされたレコードのみをチェックすることで、ＦＡＱに登録すべき情報を効率的に選別することができる。
【００５２】
別の実施形態として、発話者区分による前記話者抽出手段を使用しない実施形態について説明する。この場合のフローを図６（ａ）（ｂ）に示す。すなわち、パターン認識モデルの生成にあたってＳ１０３の前記話者抽出手段を実行せず、前記質問者と前記回答者のテキストを分類しないまま、まとめて前記素性値と前記候補ラベルとのセットを抽出し（Ｓ１０４）、一つのパターン認識モデルに導入してトレーニングを行う（Ｓ１０５）。生成するパターン認識モデルは、Ｑ候補及びＡ候補のどちらにも閾値が対応したものとなる。生成したパターン認識モデルを利用したＱ候補及びＡ候補の判定においても、パターン認識モデルに導入するデータは、話者でテキストを分離せず（Ｓ２０３なし）、まとめて前記素性値を抽出して（Ｓ２０４）、判定を行う（Ｓ２０５）。判定結果はＡ候補又はＱ候補の区別がない候補ラベルの有無となる。このため、元の対話ログに含まれている前記発話者区分と対比して、前記質問者の発話によるレコードであればＱ候補とし、前記回答者の発話によるレコードであればＡ候補とする、候補発話者分類手段を実行しておくとよい。ただし、判定の精度の点からは話者を分離したものに比べると低くなる傾向にある。
【実施例】
【００５３】
この発明を具体的に実施した例を示す。サポートセンターに掛かってきた電話による応答について、話者を識別しながら音声認識させてテキストとし、対話ログを作成した。このうち、３分以上５分以下でサポートが完了した通話の対話ログを２０件選び出した。一通話あたりの発話数は４２．１５であった。それぞれの対話ログについて、Ａ候補とＱ候補と判断される発話のレコードに、候補ラベルとなるフラグを手作業で付与した。
【００５４】
全ての通話について、形態素解析を行った上で、発話長、共通キーワード出現回数、キーワード重要度総和、間投詞数、を全ての発話のレコードについて算出した。算出後、話者ごとにレコードを抽出し、質問者ログと回答者ログとに分離した。質問者ログと回答者ログとのそれぞれについて、４つの素性値を入力とし、候補ラベル（Ｑ候補又はＡ候補）を示す１ビットを出力とする教師データ群を抽出した。すなわち、テキストと発話者は教師データ群から除外している。この教師データ群を用いて質問者ログ由来の教師データ群と回答者ログ由来の教師データ群とのそれぞれについて、サポートベクターマシンを学習させて、Ｑ候補用のパターン認識モデルとＡ候補用のパターン認識モデルをそれぞれ得た。
【００５５】
次に、候補ラベルを付与していない対話ログの、全ての通話について、形態素解析を行った上で、発話長、共通キーワード出現回数、キーワード重要度総和、間投詞数、を全ての発話のレコードについて算出した。算出後、話者ごとにレコードを抽出し、質問者ログと回答者ログとに分離した。質問者ログと回答者ログとのそれぞれについて、４つの素性値を抽出し、質問者ログ由来の素性値をＱ候補用のパターン認識モデルに、回答者ログ由来の素性値をＡ候補用のパターン認識モデルに導入して、全レコードの候補ラベルの判定を行った。判定後、判定結果を元の質問者ログ及び回答者ログと対応させて、Ｑ候補又はＡ候補として候補ラベルが付与されたレコードのみを抽出した。
【００５６】
第一の実施例では、元の対話ログは１７０つの発話のレコードからなるものであったが、Ｑ候補の候補ラベルがありと判定されたレコードは１つ、Ａ候補の候補ラベルがありと判定されたレコードは１６つにまで絞り込むことができた。
【００５７】
第二の実施例では、元の対話ログは同じく１７０つの発話のレコードからなるものであったが、元の対話ログはＱ候補の候補ラベルがありと判定されたレコードは１つ、Ａ候補の候補ラベルがありと判定されたレコードは７つにまで絞り込むことができた。
【００５８】
いずれも、全文に比べて抽出されたレコードのテキスト量は十分に絞り込みがされたものとなり、ＦＡＱの作成にあたり全文を読み込む場合に比べて大幅な省力化が可能となった。
【符号の説明】
【００５９】
１１  パターン学習装置
１２  入出力部
１３  データ加工部
１４  記憶部
１５  データ抽出部
１６  解析部
２１  パターン認識装置
【図１】
2020071690.tif 000003
【図２】
2020071690.tif 000004
【図３】
2020071690.tif 000005
【図４】
2020071690.tif 000006
【図５】
2020071690.tif 000007
【図６】
2020071690.tif 000008
【手続補正書】
【提出日】令和1年9月24日(2019.9.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
質問者と回答者との一連の通話をテキストとした対話ログを形態素解析したものについて、一連の通話を構成する個々の発話であるレコードごとに算出される、
当該発話あたりの形態素数である発話長と、
当該発話の前後で共通する単語の出現回数である共通キーワード出現回数と、
当該発話あたりの周辺キーワードの重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
の４つの素性を含む素性値を、レコードごとの入力とし、
かつ、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを出力として、
分類器を教師あり学習によりトレーニングしたパターン認識モデル。
【請求項２】
前記教師あり学習を、話者が質問者である発話部分のみを抜き出した質問者ログのレコード、又は話者が回答者である発話部分のみを抜き出した回答者ログのレコードのいずれかのみについて行った、請求項１に記載のパターン認識モデル。
【請求項３】
質問者と回答者との一連の通話をテキストとした対話ログを形態素解析したものについて、一連の通話を構成する個々の発話であるレコードごとに、
当該発話あたりの形態素数である発話長と、
当該発話の前後で共通する単語の出現回数である共通キーワード出現回数と、
当該発話あたりの周辺キーワードの重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
の４つの素性を含む素性値を算出するステップ、
前記素性値を入力とし、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを出力として、教師あり学習によりパターン認識モデルをトレーニングするステップ、
を実行するパターン認識モデルの生成方法。
【請求項４】
前記教師あり学習は、話者が質問者である発話部分のみを抜き出した質問者ログ、又は話者が回答者である発話部分のみを抜き出した回答者ログのいずれかについて行う、請求項３に記載のパターン認識モデルの生成方法。
【請求項５】
請求項１又は２に記載のパターン認識モデルを用いて、
認識対象とする前記対話ログについて、前記Ｑ候補又は前記Ａ候補となるレコードを判定する、
ＦＡＱの抽出方法。
【請求項６】
前記パターン認識モデルが、前記質問者ログと前記回答者ログのいずれかについて生成したものであり、
認識対象とする前記対話ログは、それぞれのレコードの前記素性値について算出した後、前記質問者ログ、又は前記回答者ログを抽出して、対応する前記パターン認識モデルによって判定させる、
請求項５に記載のＦＡＱの抽出方法。
【請求項７】
質問者と回答者との一連の通話をテキストとした対話ログを形態素解析し、一連の通話を構成する個々の発話であるレコードごとに、
当該発話あたりの形態素数である発話長と、
当該発話の前後で共通する単語の出現回数である共通キーワード出現回数と、
当該発話あたりの周辺キーワードの重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
の４つの素性を含む素性値を算出する素性値算出手段と、
前記素性値を入力とし、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを出力として、教師あり学習によりパターン認識モデルをトレーニングするパターン学習手段と、
を有するパターン学習装置。
【請求項８】
前記パターン学習手段は、話者が質問者である発話部分のみを抜き出した質問者ログ、又は話者が回答者である発話部分のみを抜き出した回答者ログのいずれかについて行う、請求項７に記載のパターン学習装置。
【請求項９】
請求項１又は２に記載のパターン認識モデルを用いて、認識対象とする前記対話ログについて、前記Ｑ候補又は前記Ａ候補となるレコードを判定する、パターン認識装置。
【請求項１０】
請求項７もしくは請求項８に記載のパターン学習装置又は請求項９に記載のパターン認識装置としてコンピュータを機能させるためのプログラム。
【請求項１１】
質問者と回答者との一連の通話をテキストとした対話ログであって、
一連のテキスト部分は形態素解析されており、
一連の通話を構成する個々の発話であるレコードごとに、
前記質問者と前記回答者とのいずれの発話であるかを示す発話者区分と、
当該発話あたりの形態素数である発話長と、
前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルと、
当該発話とその前後の発話との間における、共通の単語の出現回数である共通キーワード出現回数と、
前記通話中に複数回出現する名詞である中心キーワードと同じ発話内に出現する名詞である周辺キーワードに対して、下記式（１）からなるキーワード重要度の総和であるキーワード重要度総和と、
当該発話の後方１以上５以下の発話内に存在する間投詞の数である間投詞数と、
を有し、
コンピュータに、前記発話長、前記共通キーワード出現回数、前記キーワード重要度総和、及び前記間投詞数の４つの素性を含む素性値を入力とし、前記質問者による質問に相当するＱ候補、又は前記回答者による回答に相当するＡ候補であるか否かを示す候補ラベルを出力とする、教師データ群によりパターン認識モデルをトレーニングするために用いられる構造有対話ログ。
・キーワード重要度＝（前記中心キーワードと前記周辺キーワードとが共に出現した発話数）／（中心キーワードが出現した発話数）          （１）
【請求項１２】
前記対話ログに対して、
テキスト部分を形態素解析するステップの後に、
前記発話長と、
前記共通キーワード出現回数と、
前記キーワード重要度総和と、
前記間投詞数と、
の少なくとも１つを計算し、一連の通話を構成する個々の発話であるレコードごとに設定するステップを実行する、
請求項１１に記載の構造有対話ログを作成する対話ログ作成方法。