(57)【要約】      （修正有）【課題】作成すべきシナリオ内容に応じたコンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを生成可能な装置及び方法を提供する。【解決手段】対話シナリオ生成装置は、対話シナリオを利用し、発話毎にコンテキスト情報が紐づけられたユーザの対話ログ群から、想定発話と類似する発話を含む複数の対話ログである類似対話ログ群を抽出する類似対話ログ抽出手段と、抽出された類似対話ログ群に含まれる単語のうち、所定条件を満たす高い特徴度合いを有する単語を、コンテキストとして抽出するコンテキスト抽出手段と、抽出されたコンテキストを、想定発話からの遷移条件又は遷移条件候補として、対話遷移パターンを生成する対話遷移パターン生成手段とを有する。【選択図】図１
2019101619.tif 000002
【特許請求の範囲】
【請求項１】
コンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを生成する装置であって、
対話シナリオを利用したユーザについての対話ログ群であって、発話毎にコンテキスト情報が紐づけられた対話ログの集合である対話ログ群から、想定発話と類似する発話を含む複数の対話ログを抽出する類似対話ログ抽出手段と、
抽出された当該複数の対話ログに含まれる単語のうち、所定条件を満たす高い特徴の度合いを有する単語を、コンテキストとして抽出するコンテキスト抽出手段と、
抽出された当該コンテキストを、生成すべきシナリオにおける当該想定発話からの遷移条件又は遷移条件候補として、対話遷移パターンを生成する対話遷移パターン生成手段と
を有することを特徴とする対話シナリオ生成装置。
【請求項２】
前記類似対話ログ抽出手段は、当該対話ログ群の各対話ログに含まれる発話の特徴ベクトル又は分散表現と、当該想定発話の特徴ベクトル又は分散表現との類似度を算出し、所定条件を満たす高い類似度を有する発話を含む複数の対話ログを抽出することを特徴とする請求項１に記載の対話シナリオ生成装置。
【請求項３】
前記コンテキスト抽出手段は、当該複数の対話ログの各対話ログに含まれる発話の特徴ベクトル又は分散表現に対して主成分分析を行い、所定条件を満たす大きい主成分負荷量を係数とする変数に係る単語を、コンテキストとして抽出することを特徴とする請求項１又は２に記載の対話シナリオ生成装置。
【請求項４】
前記コンテキスト抽出手段は、抽出された当該複数の対話ログに含まれる単語のうち、自身の含まれる対話ログの数が所定条件を満たす大きい数である単語を、コンテキストとして抽出することを特徴とする請求項１又は２に記載の対話シナリオ生成装置。
【請求項５】
抽出されたコンテキストと、該コンテキストに対応する発話であるコンテキスト対応発話とを、選択可能なように提示させるユーザインタフェース制御手段を更に有し、
前記対話遷移パターン生成手段は、選択された当該コンテキスト対応発話を用いて対話遷移パターンを生成する
することを特徴とする請求項１から４のいずれか１項に記載の対話シナリオ生成装置。
【請求項６】
過去に生成された対話シナリオから生成される、コンテキスト毎に発話が紐づけられた対話シナリオデータベースから抽出した、当該コンテキストに紐づけられた発話を、選択された当該コンテキスト対応発話として採用するコンテキスト対応発話決定手段を更に有することを特徴とする請求項５に記載の対話シナリオ生成装置。
【請求項７】
前記ユーザインタフェース制御手段は、抽出されたコンテキストを、当該コンテキストの特徴の度合いの高い順に提示させることを特徴とする請求項５又は６に記載の対話シナリオ生成装置。
【請求項８】
コンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを生成する装置に搭載されたコンピュータを機能させるプログラムであって、
対話シナリオを利用したユーザについての対話ログ群であって、発話毎にコンテキスト情報が紐づけられた対話ログの集合である対話ログ群から、想定発話と類似する発話を含む複数の対話ログを抽出する類似対話ログ抽出手段と、
抽出された当該複数の対話ログに含まれる単語のうち、所定条件を満たす高い特徴の度合いを有する単語を、コンテキストとして抽出するコンテキスト抽出手段と、
抽出された当該コンテキストを、生成すべきシナリオにおける当該想定発話からの遷移条件又は遷移条件候補として、対話遷移パターンを生成する対話遷移パターン生成手段と
してコンピュータを機能させることを特徴とする対話シナリオ生成プログラム。
【請求項９】
コンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを生成する装置に搭載されたコンピュータにおいて実施される対話シナリオ生成方法であって、
対話シナリオを利用したユーザについての対話ログ群であって、発話毎にコンテキスト情報が紐づけられた対話ログの集合である対話ログ群から、想定発話と類似する発話を含む複数の対話ログを抽出するステップと、
抽出された当該複数の対話ログに含まれる単語のうち、所定条件を満たす高い特徴の度合いを有する単語を、コンテキストとして抽出するステップと、
抽出された当該コンテキストを、生成すべきシナリオにおける当該想定発話からの遷移条件又は遷移条件候補として、対話遷移パターンを生成するステップと
を有することを特徴とする対話シナリオ生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザとの間で対話を行う対話システムの技術に関する。
【背景技術】
【０００２】
近年、ユーザと対話を行い、当該ユーザに種々のサービスを提供可能な対話システムの開発が盛んに進められている。例えば、現在普及しているスマートフォンには、ユーザの発話による問合せに音声で回答し、検索結果等の情報を提供する対話応答機能が常備されているものも少なくない。
【０００３】
また、この対話システムで使用される対話シナリオを作成するためのオーサリングツールも、現在盛んに改良が進められている。例えば、対話遷移を可視化することによって、シナリオ作成者の作成作業を容易化するツールが数多く開発されている。
【０００４】
このような対話システムの具体例として、特許文献１には、ユーザの問合せに対し網羅的に回答を提供できるようなエージェントの技術が開示されている。このエージェントは、ユーザとエージェントとの対話の発話単位をノードとするリスト構造を形成し、ノードの情報に基づいてリスト構造の対話を結合させ、対話を分岐木構造として記録する対話データベースを有している。このエージェントは、ユーザ又は自身が要求する所定の条件に基づき、この対話データベースに記録された分岐木構造の対話を検索して応答を行う。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２０５５５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載されたような従来技術では、対話の相手が置かれた状況に応じた対話を実現することが、依然大きな課題となっている。
【０００７】
実際、対話における発話から発話への移り変わり（対話遷移）は、発話を構成する言語の情報（言語情報）によって変化するだけでなく、例えば場所や時刻、季節等の、対話の相手が置かれた状況、すなわち「コンテキスト」によっても大きく変わり得るのである。
【０００８】
一方で、このようなコンテキストを考慮した対話シナリオの作成は容易ではない。具体的には、対話遷移における複数の分岐やターンの条件にコンテキストを含めることになるが、この場合、これらのコンテキストを含む条件に相応する応答、すなわち状態遷移の適切な記述が必要となってしまう。
【０００９】
また、シナリオ作成者が想定したシナリオ通りにコンテキストをカバーすることも容易ではない。すなわち、対話シナリオを作成する際、どのようなコンテキストを想定して条件分岐を準備しておくかを決めることは相当に困難となっている。実際、対話遷移を可視化してシナリオ作成者が容易に対話を作成可能なように工夫されたオーサリングツールは開発されているが、依然として、如何にコンテキストを考慮して適切な対話遷移を含む対話シナリオの作成を進めるかが重大な問題となっているのである。
【００１０】
そこで、本発明は、作成すべきシナリオ内容に応じたコンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを生成可能な装置、プログラム及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明によれば、コンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを生成する装置であって、
対話シナリオを利用したユーザについての対話ログ群であって、発話毎にコンテキスト情報が紐づけられた対話ログの集合である対話ログ群から、想定発話と類似する発話を含む複数の対話ログを抽出する類似対話ログ抽出手段と、
抽出された当該複数の対話ログに含まれる単語のうち、所定条件を満たす高い特徴の度合いを有する単語を、コンテキストとして抽出するコンテキスト抽出手段と、
抽出された当該コンテキストを、生成すべきシナリオにおける当該想定発話からの遷移条件又は遷移条件候補として、対話遷移パターンを生成する対話遷移パターン生成手段と
を有する対話シナリオ生成装置が提供される。
【００１２】
この本発明による対話シナリオ生成装置において、類似対話ログ抽出手段は、当該対話ログ群の各対話ログに含まれる発話の特徴ベクトル又は分散表現と、当該想定発話の特徴ベクトル又は分散表現との類似度を算出し、所定条件を満たす高い類似度を有する発話を含む複数の対話ログを抽出することも好ましい。
【００１３】
また、本発明による対話シナリオ生成装置において、コンテキスト抽出手段は、当該複数の対話ログの各対話ログに含まれる発話の特徴ベクトル又は分散表現に対して主成分分析を行い、所定条件を満たす大きい主成分負荷量を係数とする変数に係る単語を、コンテキストとして抽出することも好ましい。
【００１４】
またはその変更態様として、コンテキスト抽出手段は、抽出された当該複数の対話ログに含まれる単語のうち、自身の含まれる対話ログの数が所定条件を満たす大きい数である単語を、コンテキストとして抽出することも好ましい。
【００１５】
さらに、本発明による対話シナリオ生成装置の一実施形態として、本装置は、抽出されたコンテキストと、このコンテキストに対応する発話であるコンテキスト対応発話とを、選択可能なように提示させるユーザインタフェース制御手段を更に有し、
対話遷移パターン生成手段は、選択された当該コンテキスト対応発話を用いて対話遷移パターンを生成することも好ましい。
【００１６】
また、このユーザインタフェース制御手段を有する実施形態において、本対話シナリオ生成装置は、過去に生成された対話シナリオから生成される、コンテキスト毎に発話が紐づけられた対話シナリオデータベースから抽出した、当該コンテキストに紐づけられた発話を、選択された当該コンテキスト対応発話として採用するコンテキスト対応発話決定手段を更に有することも好ましい。
【００１７】
さらにこの実施形態において、このユーザインタフェース制御手段は、抽出されたコンテキストを、当該コンテキストの特徴の度合いの高い順に提示させることも好ましい。
【００１８】
本発明によれば、また、コンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを生成する装置に搭載されたコンピュータを機能させるプログラムであって、
対話シナリオを利用したユーザについての対話ログ群であって、発話毎にコンテキスト情報が紐づけられた対話ログの集合である対話ログ群から、想定発話と類似する発話を含む複数の対話ログを抽出する類似対話ログ抽出手段と、
抽出された当該複数の対話ログに含まれる単語のうち、所定条件を満たす高い特徴の度合いを有する単語を、コンテキストとして抽出するコンテキスト抽出手段と、
抽出された当該コンテキストを、生成すべきシナリオにおける当該想定発話からの遷移条件又は遷移条件候補として、対話遷移パターンを生成する対話遷移パターン生成手段と
してコンピュータを機能させる対話シナリオ生成プログラムが提供される。
【００１９】
本発明によれば、さらに、コンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを生成する装置に搭載されたコンピュータにおいて実施される対話シナリオ生成方法であって、
対話シナリオを利用したユーザについての対話ログ群であって、発話毎にコンテキスト情報が紐づけられた対話ログの集合である対話ログ群から、想定発話と類似する発話を含む複数の対話ログを抽出するステップと、
抽出された当該複数の対話ログに含まれる単語のうち、所定条件を満たす高い特徴の度合いを有する単語を、コンテキストとして抽出するステップと、
抽出された当該コンテキストを、生成すべきシナリオにおける当該想定発話からの遷移条件又は遷移条件候補として、対話遷移パターンを生成するステップと
を有する対話シナリオ生成方法が提供される。
【発明の効果】
【００２０】
本発明の対話シナリオ生成装置、プログラム及び方法によれば、作成すべきシナリオ内容に応じたコンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを生成することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明による対話シナリオ生成装置の一実施形態における機能構成を示す機能ブロック図である。
【図２】対話ログデータベース（ＤＢ）に保存・管理された対話ログ群の一実施例を示すテーブルである。
【図３】対話シナリオ生成装置における対話作成のための想定発話入力画面の一実施例を示す模式図である。
【図４】本発明に係る特徴ベクトル生成部及び類似度算出部での処理における２つの実施形態を説明するための模式図である。
【図５】対話シナリオ生成装置における対話作成のためのコンテキスト候補提示画面の一実施例を示す模式図である。
【図６】本発明による対話シナリオ生成方法の一実施形態を概略的に示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下では、本発明の実施形態について、図面を用いて詳細に説明する。
【００２３】
［対話シナリオ生成装置］
図１は、本発明による対話シナリオ生成装置の一実施形態における機能構成を示す機能ブロック図である。
【００２４】
図１によれば、本発明の一実施形態としての対話シナリオ生成装置１は、シナリオ作成者との間で、キーボード（ＫＢ）１０２及びディスプレイ（ＤＰ）１０３を介して情報の入出力（やり取り）を行いながら、対話シナリオを生成するオーサリングツールである。
【００２５】
この対話シナリオ生成装置１は、本実施形態において通信インタフェース１０１を備えており、対話ログデータベース（ＤＢ）３から通信ネットワークを介して、対話シナリオを利用したユーザについての「対話ログ群」を取得する。
【００２６】
ここで、対話ログＤＢ３は、例えば対話エンジン２１１を搭載した多数のスマートフォン２において実施されたユーザ・装置間の対話情報を収集してデータベース化し、発話毎にコンテキスト情報が紐づけられた対話ログの集合である「対話ログ群」を提供可能となっている。この「対話ログ群」については、後に図２を用いて具体的に説明する。
【００２７】
対話シナリオ生成装置１は、このような「対話ログ群」を利用することによって、「コンテキスト」を遷移条件とした対話遷移パターンを含む対話シナリオを生成可能となっている。具体的に、対話シナリオ生成装置１は、その特徴として、
（Ａ）「対話ログ群」から、想定発話と類似する発話を含む複数の対話ログを抽出する類似対話ログ抽出部１１１と、
（Ｂ）抽出された複数の対話ログに含まれる単語のうち、所定条件を満たす高い特徴の度合いを有する単語を、「コンテキスト」として抽出するコンテキスト抽出部１１２と、
（Ｃ）抽出された「コンテキスト」を、生成すべきシナリオにおける想定発話からの遷移条件又は遷移条件候補として、対話遷移パターンを生成する対話遷移パターン生成部１１５と
を有している。
【００２８】
ここで、「コンテキスト」とは、対話の相手が置かれた状況（例えば場所、時刻や、季節等）のことである。実際、対話シナリオを作成する場合、対話における発話から発話への移り変わり（対話遷移）は、発話を構成する言語の情報（言語情報）によって変化するだけでなく、この「コンテキスト」によっても大きく変わり得る。すなわち、「コンテキスト」は非常に重要な遷移条件の１つとなっている。しかしながら、従来、このような「コンテキスト」を考慮した対話シナリオの作成は非常に困難であった。
【００２９】
これに対し、対話シナリオ生成装置１によれば、取得した「対話ログ群」から、遷移条件となり得る「コンテキスト」を決定し、この好適に決定された「コンテキスト」を遷移条件又は遷移条件候補とした対話遷移パターンを含む対話シナリオを生成することが可能となるのである。
【００３０】
また、「対話ログ群」から動的に「コンテキスト」を抽出するので、網羅すべき遷移条件となり得る「コンテキスト」を決定することができ、最終的に、生成した対話シナリオにおける応答のバリエーションや応答の網羅性をより向上させることが可能となる。
【００３１】
なお当然に、「対話ログ群」は、外部のデータベースから取得されるものに限定されない。例えば、対話シナリオ生成装置１で若しくは他のツールで作成された対話シナリオを搭載した対話エンジン２１１を備えた多数のスマートフォン２から、実施されたユーザ・装置間の対話情報を、装置１自体が収集してもよい。この場合、装置１内に設けられた対話ログＤＢ１０４が、「対話ログ群」を保存・管理することになる。
【００３２】
また、対話シナリオ生成装置１が取得する「対話ログ群」は、特定のユーザ又はユーザ集合についての対話ログ群や、特定のシナリオ作成者が作成した対話シナリオを利用したユーザ・装置間対話についての対話ログ群に限定してもよい。この場合、特定のユーザ（集合）にカスタマイズされた対話シナリオや、特定のシナリオ作成者の特徴が反映された対話シナリオを生成することも可能となる。
【００３３】
また、対話シナリオ生成装置１は、決定した「コンテキスト」を遷移条件や遷移条件候補としてディスプレイ１０３に表示したり、表示した「コンテキスト」に合った発話の候補や、生成した対話遷移パターン、さらには対話シナリオデータをディスプレイ１０３に表示したりし、これらの情報をシナリオ作成者に提示することも好ましい。また、これらの情報を、通信インタフェース１０１を介して外部の情報処理装置へ送信してもよい。
【００３４】
さらに例えば、遷移条件候補としての「コンテキスト」や、それに合った「発話候補」を提示されたシナリオ作成者が、いずれの「コンテキスト」や「発話候補」を採用するかについての指示を、例えばキーボード１０２を介して装置１に入力可能となっていることも好ましい。また、シナリオ作成者が当初、想定発話（文）を例えばキーボード１０２を介して装置１に入力可能となっていることも好ましい。この場合、対話シナリオ生成装置１は、コンテキストの付与された「対話ログ群」に基づいて、入力された想定発話に対し自動的にコンテキストを提示するのである。
【００３５】
いずれにしても本発明によれば、シナリオ作成者との間のユーザインタフェースを、上述したように充実させることも可能となる。この場合、コンテキストを考慮した対話シナリオ作成に好適なユーザインタフェース環境を提供することができるので、そのような対話シナリオ作成の際の作業の煩雑さを軽減し、また、シナリオ作成者が熟練者でなくとも容易に、そのような対話シナリオを作成することが可能となるのである。
【００３６】
［装置機能構成］
同じく図１の機能ブロック図によれば、対話シナリオ生成装置１は、通信インタフェース１０１と、キーボード（ＫＢ）１０２と、ディスプレイ（ＤＰ）１０３と、対話ログデータベース（ＤＢ）１０４と、対話シナリオＤＢ１０５と、タイトルテキスト保存部１０６と、プロセッサ・メモリとを有する。
【００３７】
ここで、このプロセッサ・メモリは、本発明による対話シナリオ生成プログラムの一実施形態を保存しており、また、コンピュータ機能を有していて、この対話シナリオ生成プログラムを実行することによって、対話シナリオ生成処理を実施する。このことから、対話シナリオ生成装置１は、本発明による対話シナリオ生成プログラムを搭載した、例えばパーソナル・コンピュータ（ＰＣ）、ノート型若しくはタブレット型コンピュータ、又はスマートフォン等であってもよい。
【００３８】
さらに、このプロセッサ・メモリは、機能構成部として、特徴ベクトル生成部１１１ａ及び類似度算出部１１１ｂを含む類似対話ログ抽出部１１１と、特徴ベクトル生成部１１２ａ及び主成分分析部１１２ｂを含むコンテキスト抽出部１１２と、コンテキスト対応発話決定部１１３と、ユーザインタフェース制御部１１４と、対話遷移パターン生成部１１５と、通信制御部１２１とを有する。なお、これらの機能構成部は、プロセッサ・メモリに保存された対話シナリオ生成プログラムの機能と捉えることができる。また、図１における対話シナリオ生成装置１の機能構成部間を矢印で接続して示した処理の流れは、本発明による対話シナリオ生成方法の一実施形態としても理解される。
【００３９】
同じく図１の機能ブロック図において、対話ログＤＢ１０４は、対話シナリオを利用したユーザについての対話ログ群であって、発話毎にコンテキスト情報が紐づけられた対話ログの集合である対話ログ群を保存・管理している。勿論、この対話ログＤＢ１０４に代えて、外部の対話ログＤＢ３がこのような対話ログ群を保存・管理しることも好ましい。
【００４０】
図２は、対話ログＤＢ（３，１０４）に保存・管理された対話ログ群の一実施例を示すテーブルである。
【００４１】
図２によれば、対話ログＤＢ（３，１０４）では、ユーザの発話毎に、（ａ）当該発話が行われた年月日、（ｂ）当該発話が行われた時刻、（ｃ）当該発話が行われた場所の区分、ｄ）当該発話が行われた場所の市町村別、（ｅ）当該発話を行ったユーザの識別子（ＩＤ）、及び（ｆ）当該発話が行われた際の天気区分、が対応付けられて記録されている。
【００４２】
このうち、（ｅ）ユーザＩＤ以外は全て、抽出すべきコンテキストの候補となり得るのである。ちなみに、ここで、特定のユーザＩＤの発話のみを対話ログとして採用することも可能である。これにより、特定のユーザにカスタマイズされた対話シナリオを生成することも可能となる。次に、対話ログ群からのコンテキスト抽出処理を実施するにあたって必要となる、想定発話の入力を説明する。
【００４３】
図３は、対話シナリオ生成装置１における対話作成のための想定発話入力画面の一実施例を示す模式図である。
【００４４】
図３によれば、シナリオ作成者は最初に、ディスプレイ１０３に表示されたユーザ入力画面の想定発話入力ボックスに、想定発話テキストデータ「おはよう。」を入力する。なおこの想定発話は、キーボード１０２を介して入力されてもよく、（図示していない）マイクから音声入力されてもよく、または、外部の端末等から装置１へ送信されてくるデータとすることも可能である。
【００４５】
図１に戻って、類似対話ログ抽出部１１１は、シナリオ作成者が入力した想定発話（テキストデータ）を取得し、対話ログＤＢ３から取得した対話ログ群から、この想定発話と類似する発話を含む複数の対話ログ（類似対話ログ集合）を抽出する。
【００４６】
具体的に、類似対話ログ抽出部１１１の特徴ベクトル生成部１１１ａは、
（ａ）取得された想定発話の特徴ベクトル又は分散表現と、
（ｂ）取得された対話ログ群の各対話ログに含まれる発話の特徴ベクトル又は分散表現と
を算出する。次いで、類似度算出部１１１ｂは、上記（ａ）の特徴ベクトル又は分散表現と、上記（ｂ）の特徴ベクトル又は分散表現との類似度を算出する。
【００４７】
ここで、類似対話ログ抽出部１１１は、算出された類似度に基づき、所定条件を満たす高い類似度（例えば所定閾値以上の類似度）を有する発話を含む類似対話ログ集合を抽出するのである。
【００４８】
図４は、特徴ベクトル生成部１１１ａ及び類似度算出部１１１ｂでの処理における２つの実施形態を説明するための模式図である。
【００４９】
図４（Ａ）に示した実施形態では、取得された想定発話、及び対話ログ群における１つの対話ログとしてそれぞれ、
S1：「おはようございます！」
S2：「やあ、おはよう」
を設定し、両者の類似度を算出している。ここで、形態素解析等を用いて上記の両文を単語列にすると、例えば下記の通りとなる。
S1:「おはよう」「ござい」「ます」「！」
S2:「やあ」「おはよう」
【００５０】
本実施形態では、
（ａ）このような想定発話S1及び対話ログS2のそれぞれにおいて、Bag Of Wordsを用いて発話文に出現する各単語の出現数を導出し、
（ｂ）これら単語毎の出現数をベクトル要素とした（単語毎の出現数を基底とした）特徴ベクトルV1及びV2（図４（Ａ））を生成して、
（ｃ）ベクトルV1及びV2のcos類似度Cos(V1,V2)（図４（Ａ））を算出し、
算出されたcos類似度Cos(V1,V2)を、想定発話S1及び対話ログS2の類似度とするのである。
【００５１】
一方、図４（Ｂ）に示した実施形態では、Word2Vecを利用している。具体的には、
（ａ）想定発話S1及び対話ログS2のそれぞれにおいて、Word2Vecを用い、文中に含まれる単語毎の分散表現のベクトルV1及びV2（図４（Ｂ））を生成し、
（ｂ）分散表現V1及びV2のcos類似度Cos(V1,V2)（図４（Ｂ））から、想定発話S1及び対話ログS2の類似度を算出する。
【００５２】
ちなみに、いずれの実施形態を採用するにしても、類似度値（スコア）は、図４（Ａ）及び（Ｂ）のCos(V1,V2)のように、0（類似の度合いが最低）から1（類似の度合いが最高）までの値に規格化されることも好ましい。この場合、対話ログ群から類似対話ログ集合を抽出する際に用いる類似度の閾値Thは、0と1との間の値、例えば0.5とすることができる。例えば、算出された類似度がこの類似度閾値Thを超えている対話ログを対話ログ群から抽出して、類似対話ログ集合とするのである。
【００５３】
図１に戻って、コンテキスト抽出部１１２は、類似対話ログ抽出部１１１で抽出された類似対話ログ集合（類似する複数の対話ログ）に含まれる単語のうち、所定条件を満たす高い特徴の度合いを有する単語を、コンテキストとして抽出する。このコンテキストとしての単語の抽出方法としては、例えば、
（ａ）主成分分析を用いて、主成分負荷量の大きい単語を抽出してもよく、または、
（ｂ）対話ログにおける出現数の大きい単語を抽出してもよい。
【００５４】
このうち上記（ａ）では、抽出された類似対話ログ集合の各対話ログに含まれる発話の(正規化された)特徴ベクトル又は分散表現に対して主成分分析を行い、所定条件を満たす大きい主成分負荷量を係数とする変数に係る単語を、コンテキストとして抽出する。
【００５５】
具体的には例えば、類似対話ログ集合におけるN個の対話ログの各々を構成する各単語を変数Xとした合成変数（主成分）Zを設定して主成分分析処理を行い、次式
（１）  Zi＝ai1X1＋ai2X2＋・・＋aijXj＋・・  （i＝1, 2, ・・・, N）
における主成分負荷量a（aij）を算出する。次いで、算出された主成分負荷量aから大きい順に所定数（例えば３つ）だけマークし、マークされた主成分負荷量を係数とする変数Xに係る単語を、コンテキストとして抽出する。
【００５６】
ここで、主成分負荷量aは、変数（単語）Xの主成分Zに対する寄与の程度を示す指標となっており、主成分負荷量aが大きいほど、その単語の類似対話ログ群に対する特徴の度合いがより高いと判断されるのである。
【００５７】
一方、上記（ｂ）では、抽出された類似対話ログ集合に含まれる単語のうち、自身の含まれる対話ログの数が所定条件を満たす大きい数（例えば所定閾値を超える数）である単語を、コンテキストとして抽出する。
【００５８】
いずれにしても、類似対話ログ集合から特徴的な付加情報ともいえるコンテキストを抽出することができる。例えば具体的に、以下のようなコンテキストが取得される。
・時間に係るコンテキスト：「朝」
・場所に係るコンテキスト：「自宅」
・天候に係るコンテキスト：「晴れ」
【００５９】
以上説明したように、コンテキスト抽出部１１２は、現実の対話実績である対話ログ群から想定発話に関連するコンテキストを取り出すので、このように取り出されたコンテキストを考慮することによって、実際に起こり得る様々なコンテキスト下での対話遷移をカバーすることが可能となるのである。
【００６０】
同じく図１において、コンテキスト対応発話決定部１１３は、
（ａ）過去に生成された対話シナリオから生成される、コンテキスト毎に発話が紐づけられた対話シナリオデータベースから、コンテキスト抽出部１１２で抽出されたコンテキストに紐づけられた発話を取り出し、
（ｂ）取り出した発話を、抽出されたコンテキスト毎に対応付け、コンテキスト対応発話として出力する。
【００６１】
ここで、上記（ａ）の対話シナリオデータベースは、対話シナリオ保存部１０５が、本装置１で生成された対話シナリオや、通信インタフェース１０１を介して外部から取得された対話シナリオを、発話内容毎に管理して保存しているものとすることができる。
【００６２】
また変更態様として、コンテキスト対応発話決定部１１３は、タイトルテキスト保存部１０６から「タイトルテキスト」を取得し、この「タイトルテキスト」から「固有表現」及び「発話に係る情報」を抽出して、抽出されたコンテキスト相当の「固有表現」に対応する「発話に係る情報」を、コンテキスト対応発話としてもよい。
【００６３】
ここで、「固有表現」の抽出（named entity extraction）とは、人名、地名等の固有名詞・名詞や、日付、時間等の数値表現等を抽出することである。「固有表現」は、例えば具体的に、組織名、人名、地名・場所名、固有物名、日付表現、時間表現、金額表現、及び割合表現の計８種類のカテゴリに分類し、データベース化することが可能となっている。さらに、様々な粒度での分類を可能にする階層構造を備えた拡張固有表現として整理することも可能である。
【００６４】
また、「タイトルテキスト」は、対話シナリオの内容を要約した文（テキスト）であってもよく、対話シナリオの内容を象徴するタイトル的なテキストとすることもできる。タイトルテキスト保存部１０６は、例えばシナリオ作成者からキーボード１０２を介して入力された、作成すべき対話シナリオに関連する「タイトルテキスト」を取得して保存する。
【００６５】
ユーザインタフェース制御部１１４は、ディスプレイ１０３に対し、
（ａ）コンテキスト抽出部１１２で抽出されたコンテキストと、
（ｂ）当該コンテキストに対応するコンテキスト対応発話と
を、それぞれコンテキスト候補及び発話候補として、選択可能なようにシナリオ作成者に提示（表示）させる。
【００６６】
図５は、対話シナリオ生成装置１における対話作成のためのコンテキスト候補提示画面の一実施例を示す模式図である。
【００６７】
図５によれば、ディスプレイ１０３には、入力された想定発話「「おはよう。」」（図３）からの対話遷移の遷移条件として設定すべき、３つのコンテキスト（群）候補が、候補リストボックスに表示されている。ここで好適な態様として、これらのコンテキスト候補は、コンテキストの特徴の度合いの高い順に提示されている。具体的には、
（ａ）コンテキスト抽出部１１２において、主成分分析処理を行ってコンテキストを抽出した場合における主成分負荷量（寄与度）、又は
（ｂ）コンテキスト抽出部１１２において、対話ログにおける出現数の大きい単語を抽出した場合における当該出現数（出現頻度）
の大きい（高い）順に表示されているのである。
【００６８】
さらに変更態様として、シナリオ作成者が予めコンテキスト候補の重み（優先度）を設定し、上記（ａ）又は（ｂ）のようなスコアを、設定した重み（優先度）で再計算して表示順を決定することも可能である。
【００６９】
また、ディスプレイ１０３には、各コンテキスト候補に対応する形で、コンテキスト対応発話が発話候補として発話リストボックスに表示されている。これにより、シナリオ作成者は、起こり得る対話遷移の遷移条件としての種々のコンテキストを漏れなく考慮しながら、コンテキスト対応発話を対話システム側発話として選択したり、当該コンテキスト対応発話を参考にして（調整して）、好適な対話システム側発話を作成したりすることができる。
【００７０】
いずれにしても、以上に説明したようなユーザインタフェースの提供によって、シナリオ作成者は、作成すべきシナリオ内容に応じたコンテキストを遷移条件とした対話遷移パターンを含む対話シナリオを、より容易に作成することができるのである。また、遷移条件としてシナリオ作成者も気付き難いような複数のコンテキストを提示することも可能であり、最終的に、生成した対話シナリオにおける対話遷移パターンの網羅性をより向上させることも可能となる。
【００７１】
ちなみに、図５に示したようなコンテキスト候補提示画面に対し、シナリオ作成者の選択・入力処理が終了した際、図３に示したような想定発話入力画面に戻って再度、想定発話の入力処理から始め、全ての想定発話に対する処理が終わった段階で、次に述べる対話遷移パターン生成処理・対話シナリオ生成処理に移行してもよい。
【００７２】
対話遷移パターン生成部１１５は、抽出され（且つシナリオ作成者によって選択された）コンテキストを、生成すべきシナリオにおける想定発話からの遷移条件（候補）として、対話遷移パターンを生成し、対話シナリオを生成する。この際、（同じくシナリオ作成者によって選択された）コンテキスト対応発話を用いて対話遷移パターン（の発話部分）を構成することも好ましい。
【００７３】
ここで、生成された対話シナリオは、対話シナリオＤＢ１０５に保存され、適宜利用されることも好ましい。さらに、通信制御部１２１によって通信インタフェース１０１を介し、外部の情報処理装置、例えばスマートフォン２に提供されてもよい。
【００７４】
［対話シナリオ生成方法］
図６は、本発明による対話シナリオ生成方法の一実施形態を概略的に示すフローチャートである。このフローは、以上に説明した各機能構成部での処理の流れの大筋をまとめたものとなっている。
【００７５】
（Ｓ１０１）例えばユーザによるキーボード１０２を介した入力によって、想定発話を取得する。
（Ｓ１０２）コンテキストの付与された対話ログ群を取得する。
（Ｓ１０３）想定発話及び各対話ログの特徴ベクトル／分散表現を生成する。
【００７６】
（Ｓ１０４）想定発話と各対話ログとのcos類似度を算出する。
（Ｓ１０５）所定閾値以上のcos類似度を有する発話を含む類似対話ログを抽出する。
（Ｓ１０６）抽出された類似対話ログの集合である類似対話ログ群から、主成分分析等の手法によってコンテキスト候補を抽出する。
【００７７】
（Ｓ１０７）抽出された各コンテキスト候補に対応したコンテキスト対応発話を生成する。
（Ｓ１０８）抽出されたコンテキスト候補、及び当該コンテキスト候補に対応したコンテキスト対応発話を、例えばディスプレイ１０３に表示した対話作成画面をもって提示する。
（Ｓ１０９）（例えば表示された対話作成画面を見た）シナリオ作成者によって決定されたコンテキスト及びコンテキスト対応発話に基づき、対話遷移パターンを生成して対話シナリオを生成する。
【００７８】
以上詳細に説明したように、従来、コンテキストは非常に重要な対話遷移の遷移条件となり得るにもかかわらず、コンテキストを考慮した対話シナリオの作成が困難であった。これに対し、本発明によれば、取得した対話ログ群から、遷移条件となり得るコンテキストを決定し、この好適に決定されたコンテキストを遷移条件又は遷移条件候補とした対話遷移パターンを含む対話シナリオを生成することが可能となるのである。
【００７９】
また、対話ログ群から動的にコンテキストを抽出するので、網羅すべき遷移条件となり得るコンテキストを決定することができ、最終的に、生成した対話シナリオにおける応答のバリエーションや応答の網羅性がより向上することになる。
【００８０】
さらに、このような本発明の技術を用いて、ユーザの置かれた状況（コンテキスト）によって発話内容を動的に選択し、その状況に合った発話を行う対話システム、対話プラットフォームや、対話エージェントを実現することも可能となるのである。
【００８１】
以上に述べた本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【００８２】
１  対話シナリオ生成装置
１０１  通信インタフェース
１０２  キーボード（ＫＢ）
１０３  ディスプレイ（ＤＰ）
１０４、３  対話ログデータベース（ＤＢ）
１０５  対話シナリオＤＢ
１０６  タイトルテキスト保存部
１１１  類似対話ログ抽出部
１１１ａ  特徴ベクトル生成部
１１１ｂ  類似度算出部
１１２  コンテキスト抽出部
１１２ａ  特徴ベクトル生成部
１１２ｂ  主成分分析部
１１３  コンテキスト対応発話決定部
１１４  ユーザインタフェース制御部
１１５  対話遷移パターン生成部
１２１  通信制御部
２  スマートフォン
２１１  対話エンジン
【図１】
2019101619.tif 000003
【図２】
2019101619.tif 000004
【図３】
2019101619.tif 000005
【図４】
2019101619.tif 000006
【図５】
2019101619.tif 000007
【図６】
2019101619.tif 000008