(57)【特許請求の範囲】
【請求項１】
自動対話システム用のシナリオの作成を支援する自動対話シナリオ作成支援装置であって、
複数のシナリオに関するシナリオ情報であって、前記複数のシナリオの各々の種類を特定する種類特定情報と、前記複数のシナリオの各々を構成する複数の会話文と、前記複数のシナリオの各々における会話の段階を示すフェーズを特定するフェーズ特定情報とを、相互に関連付けて構成されたシナリオ情報、を格納するシナリオ情報格納手段と、
前記複数の会話文に含まれる単語と、前記種類特定情報と、当該単語が当該種類特定情報にて特定される種類のシナリオの会話文で使用された場合における当該単語の重みを示す単語ウェイトとを、相互に関連付けて構成された単語ウェイト情報、を格納する単語ウェイト情報格納手段と、
前記複数の会話文に含まれる単語と、前記種類特定情報と、前記フェーズ特定情報と、当該単語が当該種類特定情報にて特定される種類のシナリオにおいて当該フェーズ特定情報で特定されるフェーズの会話文で使用された場合における当該単語の重みを示すフェーズウェイトとを、相互に関連付けて構成されたフェーズウェイト情報、を格納するフェーズウェイト情報格納手段と、
シナリオの作成対象になる複数の会話文である対象会話文が所定方法で特定された場合に、当該特定された対象会話文から単語を抽出する単語抽出手段と、
前記単語抽出手段にて抽出された単語の出現回数を計数し、当該単語に対応する単語ウェイトであって前記種類特定情報毎の単語ウェイトを前記単語ウェイト情報格納手段から取得し、当該取得した単語ウェイトに前記出現回数を乗じることによって前記種類特定情報毎の単語スコアを算定し、前記単語抽出手段にて抽出された単語に対応するフェーズウェイトであって前記種類特定情報毎及び前記フェーズ特定情報毎のフェーズウェイトを前記フェーズウェイト情報格納手段から取得し、当該取得したフェーズウェイトに前記出現回数を乗じることによって前記種類特定情報毎及び前記フェーズ特定情報毎のフェーズスコアを算定し、当該算定した単語スコアと当該算定したフェーズスコアを前記種類特定情報毎に合算することによってシナリオスコアを算定し、当該算定されたシナリオスコアに基づいて前記対象会話文に合致するシナリオの種類を決定する種類決定手段と、
前記種類決定手段にて決定されたシナリオの種類を特定する種類特定情報に対応するシナリオ情報を前記シナリオ情報格納手段から取得し、当該取得したシナリオ情報に基づいて、前記対象会話文に対応するシナリオを作成するシナリオ作成手段と、
を備える自動対話シナリオ作成支援装置。
【請求項２】
前記単語抽出手段にて抽出された単語の重要度を所定方法にて決定し、重要であると判定された単語に対応するシナリオ情報が、前記シナリオ作成手段によって前記シナリオ情報格納手段から取得されたシナリオ情報には含まれていない場合であって、前記シナリオ情報格納手段から取得可能である場合には、当該シナリオ情報を前記シナリオ情報格納手段から取得し、当該取得したシナリオ情報に基づいて、前記シナリオ作成手段によって前記シナリオ情報格納手段から取得されたシナリオ情報を補完する、第１シナリオ補完手段を備える、
請求項１に記載の自動対話シナリオ作成支援装置。
【請求項３】
前記単語抽出手段にて抽出された単語の重要度を所定方法にて決定し、重要であると判定された単語に対応するシナリオ情報が、前記シナリオ作成手段によって前記シナリオ情報格納手段から取得されたシナリオ情報には含まれていない場合であって、前記シナリオ情報格納手段から取得可能でない場合には、当該シナリオ情報を対象会話文から取得し、当該取得したシナリオ情報に基づいて、前記シナリオ作成手段によって前記シナリオ情報格納手段から取得されたシナリオ情報を補完する、第２シナリオ補完手段を備える、
請求項１又は２に記載の自動対話シナリオ作成支援装置。
【請求項４】
自動対話システム用のシナリオの作成を支援する自動対話シナリオ作成支援プログラムであって、
複数のシナリオに関するシナリオ情報であって、前記複数のシナリオの各々の種類を特定する種類特定情報と、前記複数のシナリオの各々を構成する複数の会話文と、前記複数のシナリオの各々における会話の段階を示すフェーズを特定するフェーズ特定情報とを、相互に関連付けて構成されたシナリオ情報、をシナリオ情報格納手段に格納するシナリオ情報格納手段と、
前記複数の会話文に含まれる単語と、前記種類特定情報と、当該単語が当該種類特定情報にて特定される種類のシナリオの会話文で使用された場合における当該単語の重みを示す単語ウェイトとを、相互に関連付けて構成された単語ウェイト情報、を格納する単語ウェイト情報格納手段と、
前記複数の会話文に含まれる単語と、前記種類特定情報と、前記フェーズ特定情報と、当該単語が当該種類特定情報にて特定される種類のシナリオにおいて当該フェーズ特定情報で特定されるフェーズの会話文で使用された場合における当該単語の重みを示すフェーズウェイトとを、相互に関連付けて構成されたフェーズウェイト情報、を格納するフェーズウェイト情報格納手段と、
を備えるコンピュータを、
シナリオの作成対象になる複数の会話文である対象会話文が所定方法で特定された場合に、当該特定された対象会話文から単語を抽出する単語抽出手段と、
前記単語抽出手段にて抽出された単語の出現回数を計数し、当該単語に対応する単語ウェイトであって前記種類特定情報毎の単語ウェイトを前記単語ウェイト情報格納手段から取得し、当該取得した単語ウェイトに前記出現回数を乗じることによって前記種類特定情報毎の単語スコアを算定し、前記単語抽出手段にて抽出された単語に対応するフェーズウェイトであって前記種類特定情報毎及び前記フェーズ特定情報毎のフェーズウェイトを前記フェーズウェイト情報格納手段から取得し、当該取得したフェーズウェイトに前記出現回数を乗じることによって前記種類特定情報毎及び前記フェーズ特定情報毎のフェーズスコアを算定し、当該算定した単語スコアと当該算定したフェーズスコアを前記種類特定情報毎に合算することによってシナリオスコアを算定し、当該算定されたシナリオスコアに基づいて前記対象会話文に合致するシナリオの種類を決定する種類決定手段と、
前記種類決定手段にて決定されたシナリオの種類を特定する種類特定情報に対応するシナリオ情報を前記シナリオ情報格納手段から取得し、当該取得したシナリオ情報に基づいて、前記対象会話文に対応するシナリオを作成するシナリオ作成手段と、
として動作させる、
自動対話シナリオ作成支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動対話システム用のシナリオの作成を支援する自動対話シナリオ作成支援装置及び自動対話シナリオ作成支援プログラムに関する。
【背景技術】
【０００２】
近年、顧客からの音声による注文の自動受付等を目的とした対話型の音声自動応答システム（ＩＶＲ：Interactive Voice Response）が普及し始めている。この音声自動応答システムでは、記憶手段に記憶させたシナリオ情報に沿って音声出力を行い、発話者からの応答音声が入力された場合には当該応答音声を音声認識し、この音声認識結果に基づいてシナリオ情報を参照して次の音声出力を行い、以降同様に対話を進めることで、顧客に対して情報を提供し、あるいは顧客から情報を収集する（例えば、特許文献１参照）。
【０００３】
このような音声対話の精度を高めるためには、対話の流れを極力正確に想定してシナリオを作成することが必要になる。このため、従来、新規な種類のシナリオを作成する場合には、熟練者が過去のシナリオを参照しながら自己の経験を加味して、シナリオを手動で作成していた。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−０６２３９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来は熟練者がシナリオを手動で作成していたので、シナリオの作成に時間と手間を要し、自動対話システムの運用コストを上昇させたり、新規な種類のシナリオを迅速に作成してその運用を開始したりすることが困難であった。また、このようなシナリオの作成方法が確立されていなかったので、シナリオの品質が安定しない等の問題もあった。
【０００６】
本発明は、上記に鑑みてなされたものであって、自動対話システム用のシナリオの自動的な作成を支援することにより、自動対話システムの運用コストを低減でき、新規な種類のシナリオを迅速に作成してその運用を開始したりすることができ、かつ、シナリオの品質を向上させることが可能になる、自動対話シナリオ作成支援装置及び自動対話シナリオ作成支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
請求項１に記載の自動対話シナリオ作成支援装置は、自動対話システム用のシナリオの作成を支援する自動対話シナリオ作成支援装置であって、複数のシナリオに関するシナリオ情報であって、前記複数のシナリオの各々の種類を特定する種類特定情報と、前記複数のシナリオの各々を構成する複数の会話文と、前記複数のシナリオの各々における会話の段階を示すフェーズを特定するフェーズ特定情報とを、相互に関連付けて構成されたシナリオ情報、を格納するシナリオ情報格納手段と、前記複数の会話文に含まれる単語と、前記種類特定情報と、当該単語が当該種類特定情報にて特定される種類のシナリオの会話文で使用された場合における当該単語の重みを示す単語ウェイトとを、相互に関連付けて構成された単語ウェイト情報、を格納する単語ウェイト情報格納手段と、前記複数の会話文に含まれる単語と、前記種類特定情報と、前記フェーズ特定情報と、当該単語が当該種類特定情報にて特定される種類のシナリオにおいて当該フェーズ特定情報で特定されるフェーズの会話文で使用された場合における当該単語の重みを示すフェーズウェイトとを、相互に関連付けて構成されたフェーズウェイト情報、を格納するフェーズウェイト情報格納手段と、シナリオの作成対象になる複数の会話文である対象会話文が所定方法で特定された場合に、当該特定された対象会話文から単語を抽出する単語抽出手段と、前記単語抽出手段にて抽出された単語の出現回数を計数し、当該単語に対応する単語ウェイトであって前記種類特定情報毎の単語ウェイトを前記単語ウェイト情報格納手段から取得し、当該取得した単語ウェイトに前記出現回数を乗じることによって前記種類特定情報毎の単語スコアを算定し、前記単語抽出手段にて抽出された単語に対応するフェーズウェイトであって前記種類特定情報毎及び前記フェーズ特定情報毎のフェーズウェイトを前記フェーズウェイト情報格納手段から取得し、当該取得したフェーズウェイトに前記出現回数を乗じることによって前記種類特定情報毎及び前記フェーズ特定情報毎のフェーズスコアを算定し、当該算定した単語スコアと当該算定したフェーズスコアを前記種類特定情報毎に合算することによってシナリオスコアを算定し、当該算定されたシナリオスコアに基づいて前記対象会話文に合致するシナリオの種類を決定する種類決定手段と、前記種類決定手段にて決定されたシナリオの種類を特定する種類特定情報に対応するシナリオ情報を前記シナリオ情報格納手段から取得し、当該取得したシナリオ情報に基づいて、前記対象会話文に対応するシナリオを作成するシナリオ作成手段とを備える。
【０００８】
請求項２に記載の自動対話シナリオ作成支援装置は、請求項１に記載の自動対話シナリオ作成支援装置において、前記単語抽出手段にて抽出された単語の重要度を所定方法にて決定し、重要であると判定された単語に対応するシナリオ情報が、前記シナリオ作成手段によって前記シナリオ情報格納手段から取得されたシナリオ情報には含まれていない場合であって、前記シナリオ情報格納手段から取得可能である場合には、当該シナリオ情報を前記シナリオ情報格納手段から取得し、当該取得したシナリオ情報に基づいて、前記シナリオ作成手段によって前記シナリオ情報格納手段から取得されたシナリオ情報を補完する、第１シナリオ補完手段を備える。
【０００９】
請求項３に記載の自動対話シナリオ作成支援装置は、請求項１又は２に記載の自動対話シナリオ作成支援装置において、前記単語抽出手段にて抽出された単語の重要度を所定方法にて決定し、重要であると判定された単語に対応するシナリオ情報が、前記シナリオ作成手段によって前記シナリオ情報格納手段から取得されたシナリオ情報には含まれていない場合であって、前記シナリオ情報格納手段から取得可能でない場合には、当該シナリオ情報を対象会話文から取得し、当該取得したシナリオ情報に基づいて、前記シナリオ作成手段によって前記シナリオ情報格納手段から取得されたシナリオ情報を補完する、第２シナリオ補完手段を備える。
【００１０】
請求項４に記載の自動対話シナリオ作成支援プログラムは、自動対話システム用のシナリオの作成を支援する自動対話シナリオ作成支援プログラムであって、複数のシナリオに関するシナリオ情報であって、前記複数のシナリオの各々の種類を特定する種類特定情報と、前記複数のシナリオの各々を構成する複数の会話文と、前記複数のシナリオの各々における会話の段階を示すフェーズを特定するフェーズ特定情報とを、相互に関連付けて構成されたシナリオ情報、をシナリオ情報格納手段に格納するシナリオ情報格納手段と、前記複数の会話文に含まれる単語と、前記種類特定情報と、当該単語が当該種類特定情報にて特定される種類のシナリオの会話文で使用された場合における当該単語の重みを示す単語ウェイトとを、相互に関連付けて構成された単語ウェイト情報、を格納する単語ウェイト情報格納手段と、前記複数の会話文に含まれる単語と、前記種類特定情報と、前記フェーズ特定情報と、当該単語が当該種類特定情報にて特定される種類のシナリオにおいて当該フェーズ特定情報で特定されるフェーズの会話文で使用された場合における当該単語の重みを示すフェーズウェイトとを、相互に関連付けて構成されたフェーズウェイト情報、を格納するフェーズウェイト情報格納手段と、を備えるコンピュータを、シナリオの作成対象になる複数の会話文である対象会話文が所定方法で特定された場合に、当該特定された対象会話文から単語を抽出する単語抽出手段と、前記単語抽出手段にて抽出された単語の出現回数を計数し、当該単語に対応する単語ウェイトであって前記種類特定情報毎の単語ウェイトを前記単語ウェイト情報格納手段から取得し、当該取得した単語ウェイトに前記出現回数を乗じることによって前記種類特定情報毎の単語スコアを算定し、前記単語抽出手段にて抽出された単語に対応するフェーズウェイトであって前記種類特定情報毎及び前記フェーズ特定情報毎のフェーズウェイトを前記フェーズウェイト情報格納手段から取得し、当該取得したフェーズウェイトに前記出現回数を乗じることによって前記種類特定情報毎及び前記フェーズ特定情報毎のフェーズスコアを算定し、当該算定した単語スコアと当該算定したフェーズスコアを前記種類特定情報毎に合算することによってシナリオスコアを算定し、当該算定されたシナリオスコアに基づいて前記対象会話文に合致するシナリオの種類を決定する種類決定手段と、前記種類決定手段にて決定されたシナリオの種類を特定する種類特定情報に対応するシナリオ情報を前記シナリオ情報格納手段から取得し、当該取得したシナリオ情報に基づいて、前記対象会話文に対応するシナリオを作成するシナリオ作成手段と、として動作させる。
【発明の効果】
【００１１】
請求項１に記載の自動対話シナリオ作成支援装置又は請求項４に記載の自動対話シナリオ作成支援プログラムによれば、シナリオ情報格納手段から取得したシナリオ情報に基づいて対象会話文に対応するシナリオを作成することができるので、従来のように熟練者がシナリオを手動で作成していた場合に比べて、自動対話システムの運用コストを低減でき、新規な種類のシナリオを迅速に作成してその運用を開始したりすることができ、さらに、シナリオの品質を向上させることが可能になる。
【００１２】
請求項２に記載の自動対話シナリオ作成支援装置によれば、重要であると判定された単語に対応するシナリオ情報を、シナリオ情報格納手段から取得して補完することができるので、ベースとなるシナリオ情報に対して重要な単語に対応するシナリオ情報を付加することで、対象会話文に合致した新規なシナリオを作成することができる。
【００１３】
請求項３に記載の自動対話シナリオ作成支援装置によれば、重要であると判定された単語に対応するシナリオ情報を、対象会話文から取得して補完することができるので、ベースとなるシナリオ情報に対して重要な単語に対応するシナリオ情報を付加することで、対象会話文に合致した新規なシナリオを作成することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態に係る自動対話シナリオ作成支援装置を機能概念的に示すブロック図である。
【図２】シナリオ情報の構成例を示す図である。
【図３】不要語情報の構成例を示す図である。
【図４】単語ウェイト情報の構成例を示す図である。
【図５】フェーズウェイト情報の構成例を示す図である。
【図６】自動対話シナリオ作成処理のフローチャートである。
【図７】単語抽出処理のフローチャートである。
【図８】対象会話文を例示する図である。
【図９】種類決定処理のフローチャートである。
【図１０】スコア集計表を例示する図である。
【図１１】シナリオスコア集計表を例示する図である。
【図１２】シナリオ作成処理のフローチャートである。
【図１３】自動作成されたシナリオ情報を例示する図である。
【図１４】情報が一部更新されたシナリオ情報を例示する図である。
【発明を実施するための形態】
【００１５】
以下に添付図面を参照して、この発明に係る自動対話シナリオ作成支援装置及び自動対話シナリオプログラムの実施の形態を詳細に説明する。まず、本実施の形態の基本的概念について説明した後、本実施の形態の具体的内容を説明し、最後に本実施の形態に対する変形例について説明する。ただし、本実施の形態によって本発明が限定されるものではない。
【００１６】
〔本実施の形態の基本的概念〕
最初に、本実施の基本的概念について説明する。本実施の形態に係る自動対話シナリオ作成支援装置及び自動対話シナリオプログラムは、自動対話システム用のシナリオの作成を支援するためものである。ここで、「自動対話システム」とは、複数の対話者の相互間における対話を自動的に行うためのシステムである。「複数の対話者」とは、代表的には、１人の人間と１台の自動対話装置であるが、少なくとも１台の自動対話装置が含まれていればよく、複数の人間が含まれる場合や、複数台の自動対話装置が含まれる場合がある。「自動対話」とは、対話の少なくとも一部分を自動的に（機械的）に行うことを意味しており、代表的には、１人の人間と１台の自動対話装置との対話において、自動対話装置の対話部分を自動的に行うことを意味するが、例えば、２台の自動対話装置の相互間の対話の場合のように、対話の全部分を自動的に行うことを含む。「対話」とは、代表的には、音声対話であるが、テキスト表示を介して対話を行うような表示（画像）対話を含む。「自動対話システム用のシナリオ（以下、単に「シナリオ」）」とは、少なくとも、自動対話を行う対話者と、各対話者が行うことが予想される会話文と、当該会話文の順序とを、特定するための情報である。「シナリオの作成を支援する」とは、シナリオの全部を自動的に生成する場合のみならず、シナリオの一部を自動的に生成する場合を含む。
【００１７】
〔本実施の形態の具体的内容〕
次に、本実施の形態の具体的内容について説明する。最初に、本実施の形態に係る自動対話シナリオ作成支援装置の構成について説明し、その後に、自動対話シナリオ作成支援装置で行われる処理について説明する。
【００１８】
（構成）
まず、本実施の形態に係る自動対話シナリオ作成支援装置（以下、支援装置）の構成について説明する。図１は、本実施の形態に係る支援装置を機能概念的に示すブロック図である。この支援装置１は、機能概念的に、入力部２、出力部３、制御部４、及び記憶部５を接続して構成されており、例えば、公知のデスクトップコンピュータ、ノートブックコンピュータ、タブレット型コンピュータ、あるいはスマートフォンを用いて構成されている。
【００１９】
入力部２は、各種の情報を支援装置１に入力するための入力手段である。この入力部２の具体的な構成は任意であり、例えば、マウス、キーボード、あるいはタッチパネルとして構成することができる。
【００２０】
出力部３は、各種の情報を支援装置１から出力するための出力手段である。この出力部３の具体的な構成は任意であり、例えば、公知の液晶ディスプレイや有機ＥＬディスプレイの如きフラットパネルディスプレイとして構成することができる。
【００２１】
制御部４は、ＣＰＵ（Central Processing Unit）や、このＣＰＵ上で解釈実行される各種のプログラム（ＯＳなどの制御プログラムや各種の処理手順などを規定したプログラム）、及び、所要プログラムや所要データを格納するためのキャッシュメモリを備えて構成される。このＣＰＵ上で解釈実行される各種のプログラムには自動対話シナリオ作成支援プログラム（以下、支援プログラム）が含まれ、この支援プログラムは、例えば、ＣＤ−ＲＯＭやＤＶＤを含む任意の記憶媒体に記憶された後、インストールされて記憶部５に不揮発的に記憶され、ＣＰＵにて解釈実行されることで制御部４の実質的機能を構成する。
【００２２】
この制御部４は、機能概念的に、単語抽出部６、種類決定部７、シナリオ作成部８、第１シナリオ補完部９、及び第２シナリオ補完部１０を備えて構成されている。単語抽出部６は、シナリオの作成対象になる複数の会話文である対象会話文が所定方法で特定された場合に、当該特定された対象会話文から単語を抽出する単語抽出手段である。種類決定部７、単語抽出部６にて抽出された単語の出現回数を計数し、当該単語に対応する単語ウェイトであって種類特定情報毎の単語ウェイトを後述する単語ウェイト情報ＤＢ１３から取得し、当該取得した単語ウェイトに出現回数を乗じることによって種類特定情報毎の単語スコアを算定し、単語抽出部６にて抽出された単語に対応するフェーズウェイトであって種類特定情報毎及びフェーズ特定情報毎のフェーズウェイトを後述するフェーズウェイト情報ＤＢ１４から取得し、当該取得したフェーズウェイトに出現回数を乗じることによって種類特定情報毎及びフェーズ特定情報毎のフェーズスコアを算定し、当該算定した単語スコアと当該算定したフェーズスコアを種類特定情報毎に合算することによってシナリオスコアを算定し、当該算定されたシナリオスコアに基づいて対象会話文に合致するシナリオの種類を決定する種類決定手段である。シナリオ作成部８は、種類決定部７にて決定されたシナリオの種類を特定する種類特定情報に対応するシナリオ情報を後述するシナリオ情報ＤＢ１１から取得し、当該取得したシナリオ情報に基づいて、対象会話文に対応するシナリオを作成するシナリオ作成手段である。第１シナリオ補完部９は、単語抽出部６にて抽出された単語の重要度を所定方法にて決定し、重要であると判定された単語に対応するシナリオ情報が、シナリオ作成部８によってシナリオ情報ＤＢ１１から取得されたシナリオ情報には含まれていない場合であって、シナリオ情報ＤＢ１１から取得可能である場合には、当該シナリオ情報をシナリオ情報ＤＢ１１から取得し、当該取得したシナリオ情報に基づいて、シナリオ作成部８によってシナリオ情報ＤＢ１１から取得されたシナリオ情報を補完する、第１シナリオ補完手段である。第２シナリオ補完部１０は、単語抽出部６にて抽出された単語の重要度を所定方法にて決定し、重要であると判定された単語に対応するシナリオ情報が、シナリオ作成部８によってシナリオ情報ＤＢ１１から取得されたシナリオ情報には含まれていない場合であって、シナリオ情報ＤＢ１１から取得可能でない場合には、当該シナリオ情報を対象会話文から取得し、当該取得したシナリオ情報に基づいて、シナリオ作成部８によってシナリオ情報ＤＢ１１から取得されたシナリオ情報を補完する、第２シナリオ補完手段である。これら各部の機能については、各処理と併せて説明する。
【００２３】
記憶部５は、支援装置１で実行される各種処理に必要な情報やパラメータを不揮発的に格納する格納手段であり、例えば、ＨＤ（Hard Disk）や半導体メモリにより構成される。この記憶部５には、シナリオ情報データベース（以下、データベースをＤＢと称する）１１、不要語情報ＤＢ１２、単語ウェイト情報ＤＢ１３、及びフェーズウェイト情報ＤＢ１４が格納されている。
【００２４】
シナリオ情報ＤＢ１１は、複数のシナリオに関するシナリオ情報を格納するシナリオ情報格納手段である。このシナリオ情報は、図２の構成例に示すように、項目「対話者」に対応する情報と、項目「会話文」に対応する情報と、項目「シナリオの種類」に対応する情報と、項目「フェーズ」に対応する情報と、項目「変数」に対応する情報を、相互に関連付けて構成されている。項目「対話者」に対応する情報は、会話文の対話者を特定するための対話者特定情報である。本実施の形態においては、対話者が、人間である１人の顧客と１台の自動対話装置とである場合を想定しており、図２において、顧客は「ＣＵ」、「自動対話装置」は「ＯＰ」として、それぞれ示されている。項目「会話文」に対応する情報は、複数のシナリオの各々を構成する複数の会話文である。項目「シナリオの種類」に対応する情報は、複数のシナリオの各々の種類を特定する種類特定情報である。このシナリオの種類の設定方法は任意であるが、本実施の形態においては、シナリオが顧客からの商品注文を受け付けるためのシナリオである場合を想定しており、この商品の種類によってシナリオの種類を設定している。例えば、図２において、「シューズ受注１」は、シナリオの種類が、シューズ（靴）の注文を受け付けるためのシナリオの種類であることを示している。また、同一又は類似の商品注文を受け付けるためのシナリオであっても、種類が異なる複数のシナリオが存在する場合があることを想定し、例えば、「シューズ受注１」と「シューズ受注２」は、相互に異なる種類のシナリオであることを意味する。項目「フェーズ」に対応する情報は、複数のシナリオの各々における会話の段階（フェーズ）を特定するフェーズ特定情報である。このフェーズの設定方法は任意であるが、例えば、「フェーズ名」又は「フェーズ名（フェーズ変数）」により設定されている。「フェーズ名」とは、フェーズの名称であり、「フェーズ変数」とは、フェーズにおいて、会話文によって提供又は取得すべき情報である。具体的として、図２には、フェーズとして、「ＳＴＡＲＴ」、「顧客確認（注文履歴）」、「顧客確認（名前）」等が設定されている。フェーズ＝「顧客確認（注文履歴）」においては、フェーズ名＝「顧客確認」であり、フェーズ変数＝「注文履歴」である。なお、異なる種類のシナリオに対しては、異なるフェーズが設定されることがある。項目「変数」に対応する情報は、会話文によって提供又は取得すべき情報であり、例えば、シナリオが顧客からの商品注文を受け付けるためのシナリオである場合には、当該注文された商品を特定するための情報（商品名、数量、サイズ等）、当該注文を行った顧客を特定するための情報（名前や電話番号等）、当該注文の支払い方法を特定するための情報（支払方法等）を含む。このようにシナリオ情報を構成する各レコードは、会話の順序に沿って格納されており、従って、各レコードのフェーズも、会話の順序に沿って整列されている。このように構成されるシナリオ情報は、支援装置１の導入当初においては従来と同様に熟練者が手動で作成してシナリオ情報ＤＢ１１に格納し、その後は後述する処理によって自動生成されてシナリオ情報ＤＢ１１に蓄積される。
【００２５】
不要語情報ＤＢ１２は、不要語情報を格納するシナリオ情報格納手段である。この不要語情報は、図３の構成例に示すように、項目「不要語」に対応する情報と、項目「区分」に対応する情報とを、相互に関連付けて構成されている。項目「不要語」に対応する情報は、不要語を特定するための情報である。「不要語」とは、後述する対象会話文に含まれ得る単語であって、シナリオには不要であると考えられる単語である。例えば、不要語を特定するための情報としては、シナリオには不要であると考えられる単語自体（図３の例では「センター」や「電話」）や、このような不要な単語の品詞属性（形態素解析の結果。図３の例では「接頭詞」や「感動詞」等）が格納される。項目「区分」に対応する情報は、不要語の区分を示す情報である。このような区分を示す情報として、図３の例では、「属性」と「名詞」を示している。不要語の区分＝「属性」は、項目「不要語」に対応する情報として、単語そのものではなく、品詞属性（形態素解析の結果）が格納されていることを示しており、当該品詞属性を有する単語はシナリオには不要である旨を示している。不要語の区分＝「名詞」は、項目「不要語」に対応する情報として、単語そのものが格納されていることを示しており、当該単語はシナリオには不要である旨を示している。このように構成される不要語情報は、支援装置１の管理者によって任意に設定され不要語情報ＤＢ１２に格納される。
【００２６】
単語ウェイト情報ＤＢ１３は、単語ウェイト情報を格納する単語ウェイト情報格納手段である。この単語ウェイト情報は、図４の構成例に示すように、項目「単語」に対応する情報と、項目「シナリオの種類」に対応する情報と、項目「単語ウェイト」に対応する情報を、相互に関連付けて構成されている。項目「単語」に対応する情報は、会話文に含まれ得るものとして設定された単語である。項目「シナリオの種類」に対応する情報は、図３の同一項目名に対応する情報と同じである。項目「単語ウェイト」に対応する情報は、単語ウェイトである。「単語ウェイト」とは、種類特定情報にて特定される種類のシナリオの会話文で使用された場合における単語の重みを示す単語重み特定情報である。例えば、図４の一番上のレコードは、単語＝「サイズ」が、シナリオの種類＝「シューズ受注１」のシナリオの中で使用された場合には、当該単語＝「サイズ」の単語ウェイト＝「１．００」であることを示している。本実施の形態では、単語ウェイトの数値が大きい程、単語の重み付けが大きい（単語の重要性が大きい）ことを示すものとする。なお、この図４に示すように、同一の単語であっても、当該単語が使用されるシナリオの種類によっては単語ウェイトが異なり得るため、同一の単語に対して、種類特定情報毎に同一又は異なる複数の単語ウェイトが設定されている。このように構成される単語ウェイト情報は、支援装置１の管理者によって任意に設定され単語ウェイト情報ＤＢ１３に格納される。
【００２７】
フェーズウェイト情報ＤＢ１４は、フェーズウェイト情報を格納するフェーズウェイト情報格納手段である。このフェーズウェイト情報は、図５の構成例に示すように、項目「単語」に対応する情報と、項目「シナリオの種類」に対応する情報と、項目「フェーズ」に対応する情報と、項目「フェーズウェイト」に対応する情報を、相互に関連付けて構成されている。項目「単語」に対応する情報、項目「シナリオの種類」に対応する情報、及び項目「フェーズ」に対応する情報は、図３、４の同一項目名に対応する情報と同じである。項目「フェーズウェイト」に対応する情報は、単語が種類特定情報にて特定される種類のシナリオにおいてフェーズ特定情報で特定されるフェーズの会話文で使用された場合における当該単語の重みを示すフェーズ重み特定情報である。例えば、図５の一番上のレコードは、単語＝「サイズ」が、シナリオの種類＝「シューズ受注１」のシナリオにおけるフェーズ＝「ＳＴＡＲＴ」で使用された場合、当該単語＝「サイズ」のフェーズウェイト＝「０．００」であることを示している。本実施の形態では、フェーズウェイトの数値が大きい程、単語の重み付けが大きい（単語の重要性が大きい）ことを示すものとする。なお、この図５に示すように、同一の単語であっても、当該単語が使用されるシナリオの種類やフェーズによってはフェーズウェイトが異なり得るため、同一の単語に対して、種類特定情報毎及びフェーズ毎に同一又は異なるフェーズウェイトが設定されている。このように構成されるフェーズウェイト情報は、支援装置１の管理者によって任意に設定されフェーズウェイト情報ＤＢ１４に格納される。
【００２８】
（処理）
次に、このように構成された支援装置１において行われる自動対話シナリオ作成処理について説明する。以下の説明においては、特記する主体を除いて制御部４にて処理が行われるものとする。また、「ステップ」を「Ｓ」と略記する。図６は、自動対話シナリオ作成処理のフローチャートである。この処理は、支援装置１の入力部２を介して所定方法で起動される。
【００２９】
（処理−単語抽出処理）
最初に、単語抽出処理（ＳＡ１）が実行される。図７は、単語抽出処理のフローチャートである。この処理において、単語抽出部６は、対象会話文が特定されるまで待機する（ＳＢ１）。対象会話文とは、シナリオの作成対象になる複数の会話文であり、例えば、顧客と注文受付オペレータとの電話による会話文を録音し、この録音をテキストに書き起すことによって、対象会話文が作成される。そして、このような対象会話文が所定形式で入力部２を介して支援装置１に入力された場合に、単語抽出部６は、対象会話文が特定されたものと判定する。図８は、このような対象会話文を例示する図である。この対象会話文は、項目「対話者」に対応する情報と、項目「会話文」に対応する情報を、相互に関連付けて構成されている。これら項目「対話者」に対応する情報と項目「会話文」に対応する情報は、図２の同一項目名に対応する情報と同じである。
【００３０】
対象会話文が特定された場合（ＳＢ１、Ｙｅｓ）、単語抽出部６は、当該特定された対象会話文から単語を抽出する（ＳＢ２）。具体的には、対象会話文に対して公知の形態素解析や係受け解析を行い、対象会話文に含まれる単語を抽出する。この際、各単語の品詞属性についても、公知の形態素解析や係受け解析により特定する。
【００３１】
次いで、単語抽出部６は、ＳＢ２で抽出した単語の中から不要語を除外する（ＳＢ３）。具体的には、単語抽出部６は、ＳＢ２で抽出した単語の中に、不要語情報ＤＢ１２に格納された不要語が含まれるか否かを判定し、含まれる場合には当該不要語を削除する。例えば、対象会話文に「お電話有難うございます。ＡＢＣ株式会社受注センターです。ご注文でしょうか。」という文が含まれており、この文を対象としてＳＢ２で抽出された単語が、「お（接頭詞）」「電話（名詞）」「有難う（感動詞）」「ござい（助動詞）」「ます（助動詞）」「。（記号）」「ＡＢＣ株式会社（固有名詞）」「受注（名詞）」「センター（名詞）」「です（助動詞）」「。（記号）」「ご（接頭詞）」「注文（名詞）」「でしょ（助動詞）」「う（助動詞）」「か（助詞）」「。（記号）」である場合を考える（なお、括弧内は各単語の品詞属性）。この場合、図３に例示した不要語情報を参照すると、不要語情報には不要語＝「接頭詞」及び区分＝「属性」のレコードが含まれており、品詞属性として接頭詞を有する単語はシナリオには不要である旨が判るため、「お（接頭詞）」は不要であると判定されて削除される。同様の理由により、「有難う（感動詞）」「ござい（助動詞）」「ます（助動詞）」「。（記号）」「ＡＢＣ株式会社（固有名詞）」「です（助動詞）」「。（記号）」「ご（接頭詞）」「でしょ（助動詞）」「う（助動詞）」「か（助詞）」「。（記号）」が不要であると判定されて削除される。また、図３に例示した不要語情報を参照すると、不要語情報には不要語＝「電話」及び区分＝「名詞」のレコードが含まれており、「電話」という単語はシナリオには不要である旨が判るため、「センター（名詞）」は不要であると判定されて削除される。同様の理由により、「センター（名詞）」が不要であると判定されて削除される。この結果、「受注（名詞）」「注文（名詞）」のみが削除されることなく残ることとなる。これにて単語抽出処理が終了する。
【００３２】
（処理−種類決定処理）
次に、図６の種類決定処理（ＳＡ２）が実行される。図９は、種類決定処理のフローチャートである。この処理において、種類決定部７は、単語抽出処理にて抽出された単語の出現回数を算定する（ＳＣ１）。具体的には、種類決定部７は、単語抽出処理にて抽出された各単語毎に、当該各単語の抽出数を計数し、抽出数＝出現回数とする。例えば、種類決定部７は、単語＝「サイズ」が対象会話文の全体から３つ抽出された場合には、単語＝「注文」の出現回数＝「３」と計数する。
【００３３】
次いで、種類決定部７は、単語抽出処理にて抽出された単語に対応する単語ウェイトであって、種類特定情報毎の単語ウェイトを単語ウェイト情報ＤＢ１３から取得する（ＳＣ２）。具体的には、種類決定部７は、単語ウェイト情報ＤＢ１３に格納された単語ウェイトの中から、単語抽出処理にて最終的に抽出された単語に対応する単語ウェイトを取得する。この際、同一の単語に対して、種類特定情報毎に複数の単語ウェイトが単語ウェイト情報ＤＢ１３に格納されている場合には、全ての単語ウェイトを種類特定情報と共に取得する。例えば、図４の単語ウェイト情報の例において、単語＝「サイズ」に関しては、シナリオの種類＝「シューズ受注１」の単語ウェイト＝「１．００」、シナリオの種類＝「シューズ受注２」の単語ウェイト＝「１．００」、シナリオの種類＝「アパレル受注１」の単語ウェイト＝「１．００」、シナリオの種類＝「アパレル受注２」の単語ウェイト＝「１．００」、及びシナリオの種類＝「スイーツ受注」の単語ウェイト＝「０．６０」を取得する。
【００３４】
次いで、種類決定部７は、当該取得した単語ウェイトに出現回数を乗じることによって、種類特定情報毎の単語スコアを算定する（ＳＣ３）。具体的には、種類決定部７は、単語抽出処理にて抽出された各単語毎に、ＳＣ２で取得した単語ウェイトに対して、ＳＣ１で取得した出現回数を乗じることで、当該単語の単語スコアを算定する。ここで、同一の単語に対して、種類特定情報毎に同一又は異なる複数の単語ウェイトが設定されている場合には、当該複数の単語ウェイトにそれぞれ出現回数を乗じる。例えば、単語＝「サイズ」に関して、ＳＣ１で算定された出現回数＝「３」であり、ＳＣ２で取得された単語ウェイトが、シナリオの種類＝「シューズ受注１」の単語ウェイト＝「１．００」、シナリオの種類＝「シューズ受注２」の単語ウェイト＝「１．００」、シナリオの種類＝「アパレル受注１」の単語ウェイト＝「１．００」、シナリオの種類＝「アパレル受注２」の単語ウェイト＝「１．００」、及びシナリオの種類＝「スイーツ受注」の単語ウェイト＝「０．６０」である場合、シナリオの種類＝「シューズ受注１」の単語スコア＝１．００×３＝「３．００」、シナリオの種類＝「シューズ受注２」の単語スコア＝「３．００」、シナリオの種類＝「アパレル受注１」の単語スコア＝「３．００」、シナリオの種類＝「アパレル受注２」の単語スコア＝「３．００」、及びシナリオの種類＝「スイーツ受注」の単語スコア＝０．６０×３＝「１．８０」を算定する。
【００３５】
次に、種類決定部７は、単語抽出処理にて抽出された単語に対応するフェーズウェイトであって種類特定情報毎及びフェーズ特定情報毎のフェーズウェイトをフェーズウェイト情報ＤＢ１４から取得する（ＳＣ４）。具体的には、種類決定部７は、フェーズウェイト情報ＤＢ１４に格納されたフェーズウェイトの中から、単語抽出処理にて最終的に抽出された単語に対応するフェーズウェイトを取得する。この際、同一の単語に対して、種類特定情報毎及びフェーズ毎に複数のフェーズウェイトがフェーズウェイト情報ＤＢ１４に格納されている場合には、全てのフェーズウェイトを種類特定情報及びフェーズ特定情報と共に取得する。例えば、図５のフェーズウェイト情報の例において、単語＝「サイズ」に関しては、シナリオの種類＝「シューズ受注１」のフェーズ＝「ＳＴＡＲＴ」のフェーズウェイト＝「０．００」、シナリオの種類＝「シューズ受注１」のフェーズ＝「顧客確認（名前）」のフェーズウェイト＝「０．００」等や、シナリオの種類＝「シューズ受注２」のフェーズ＝「ＳＴＡＲＴ」のフェーズウェイト＝「０．００」、シナリオの種類＝「シューズ受注２」のフェーズ＝「顧客確認（名前）」のフェーズウェイト＝「０．００」等を取得する。
【００３６】
次いで、種類決定部７は、当該取得したフェーズウェイトに単語抽出処理にて抽出された単語の出現回数を乗じることによって、種類特定情報毎及びフェーズ特定情報毎のフェーズスコアを算定する（ＳＣ５）。具体的には、種類決定部７は、単語抽出処理にて抽出された各単語毎に、ＳＣ４で取得したフェーズウェイトに対して、ＳＣ１で取得した出現回数を乗じることで、当該単語のフェーズスコアを算定する。ここで、同一の単語に対して、種類特定情報毎及びフェーズ特定情報毎に同一又は異なる複数のフェーズウェイトが設定されている場合には、当該複数のフェーズウェイトにそれぞれ出現回数を乗じることにより、種類特定情報毎及びフェーズ特定情報毎にフェーズスコアを算定する。例えば、単語＝「サイズ」に関して、ＳＣ１で算定された出現回数＝「３」であり、ＳＣ４で取得されたフェーズウェイトが、シナリオの種類＝「シューズ受注１」のフェーズ＝「ＳＴＡＲＴ」のフェーズウェイト＝「０．００」、シナリオの種類＝「シューズ受注１」のフェーズ＝「顧客確認（名前）」のフェーズウェイト＝「０．００」等である場合、シナリオの種類＝「シューズ受注１」のフェーズ＝「ＳＴＡＲＴ」のフェーズスコア＝０．００×３＝「０．００」、シナリオの種類＝「シューズ受注１」のフェーズ＝「顧客確認（名前）」のフェーズスコア＝「０．００」を算定する。
【００３７】
次に、種類決定部７は、ＳＣ３で算定した単語スコア及びＳＣ５で算定したフェーズスコアに基づいて、単語別シナリオスコアを算定する（ＳＣ６）。具体的には、種類決定部７は、ＳＣ３で算定した単語スコアを、この単語スコアを算定した際に使用した単語ウェイトが設定されているシナリオの種類毎に集計すると共に、ＳＣ５で算定したフェーズスコアを、このフェーズスコアを算定した際に使用したフェーズウェイトが設定されているシナリオの種類毎に集計し、これら単語スコアの集計結果とフェーズウェイトの集計結果とを、さらにシナリオの種類毎に集計する。例えば、ＳＣ３において、単語＝「サイズ」の単語スコアとして、シナリオの種類＝「シューズ受注１」の単語スコア＝「３．００」が算定されると共に、単語＝「サイズ」のフェーズスコアとして、シナリオの種類＝「シューズ受注１」のフェーズ＝「商品確認（サイズ）」のフェーズスコア＝「３．００」が算定された場合、単語＝「サイズ」のシナリオの種類＝「シューズ受注１」の単語別シナリオスコア＝３．００＋３．００＝６．００が算定される。なお、実際には、単語の数、シナリオの種類の数、及びフェーズの数に応じて、多数の組み合わせが存在し得るため、膨大な数の組み合わせについて、単語別シナリオスコアが算定される。
【００３８】
次いで、種類決定部７は、単語の中から、重要度の高い単語のみを抽出する（ＳＣ７）。例えば、種類決定部７は、単語抽出処理にて抽出された各単語の中から、ＳＣ１で算定した出現回数が所定の閾値以上である単語を、重要度の高い単語として抽出する。
【００３９】
そして、種類決定部７は、ＳＣ７で抽出した単語を対象としてスコア集計表を作成する（ＳＣ８）。具体的には、種類決定部７は、ＳＣ７で抽出した単語に関して、ＳＣ１で算定した出現回数、ＳＣ３で算定した単語スコア、ＳＣ５で算定したフェーズスコア、及びＳＣ６で算定した単語別シナリオスコアから、スコア集計表を作成する（ＳＣ８）。図１０は、スコア集計表を例示する図である。このスコア集計表は、項目「単語」に対応する情報、項目「出現回数」に対応する情報、項目「単語スコア」に対応する情報、項目「フェーズスコア」に対応する情報、項目「シナリオの種類」に対応する情報、項目「フェーズ」に対応する情報、及び項目「単語別シナリオスコア」に対応する情報を、相互に関連付けて構成されている。項目「単語」に対応する情報は、図７のＳＢ２で抽出された単語であって、図７のＳＢ３で不要語として除外されずに残った単語である。項目「出現回数」に対応する情報は、ＳＣ１で算定した出現回数である。項目「単語スコア」に対応する情報は、ＳＣ３で算定した単語スコアである。項目「フェーズスコア」に対応する情報は、ＳＣ５で算定したフェーズスコアである。項目「シナリオの種類」に対応する情報は、ＳＣ５でフェーズスコアを算定した際に使用したフェーズウェイトが設定されているシナリオの種類である。項目「フェーズ」に対応する情報は、ＳＣ５でフェーズスコアを算定した際に使用したフェーズウェイトが設定されているフェーズである。項目「単語別シナリオスコア」に対応する情報は、ＳＣ６で算定した単語別シナリオスコアである。このように作成したスコア集計表は、例えば、出力部３を介して表示出力され、ユーザによって参照される。
【００４０】
その後、種類決定部７は、ＳＣ８で作成したスコア集計表に基づいて、シナリオスコアを算定する（ＳＣ９）。具体的には、種類決定部７は、スコア集計表に含まれている単語別シナリオスコア（ＣＳ６で算定した単語別シナリオスコア）を、シナリオの種類毎に集計する。例えば、ＣＳ６で算定した単語別シナリオスコアとして、単語＝「サイズ」のシナリオの種類＝「シューズ受注１」の単語別シナリオスコア＝「６．００」があり、単語＝「注文」のシナリオの種類＝「シューズ受注１」の単語別シナリオスコア＝「５．００」がある場合、シナリオの種類＝「シューズ受注１」のシナリオスコア＝６．００＋５．００＝１１．００が算定される。
【００４１】
そして、種類決定部７は、ＳＣ９で算定したシナリオスコアに基づいて、シナリオスコア集計表を作成する（ＳＣ１０）。図１１は、シナリオスコア集計表を例示する図である。このシナリオスコア集計表は、項目「シナリオの種類」に対応する情報、及び項目「シナリオスコア」に対応する情報を、相互に関連付けて構成されている。項目「シナリオの種類」に対応する情報は、ＳＣ５でフェーズスコアを算定した際に使用したフェーズウェイトが設定されているシナリオの種類である。項目「シナリオスコア」に対応する情報は、ＳＣ９で算定したシナリオスコアである。このシナリオスコア対応度集計表の各レコードは、シナリオスコアの高い順に整列されている。例えば、シナリオの種類＝「シューズ受注−１」のシナリオスコア＝３５２．５０は、他のシナリオの種類のシナリオスコアよりも高いため、最も上の位置に表示されている。このように作成したシナリオスコア集計表は、例えば、出力部３を介して表示出力され、ユーザによって参照される。
【００４２】
そして、種類決定部７は、ＳＣ１０で作成したシナリオスコア集計表に基づいて、対象会話文に合致するシナリオの種類を決定する（ＳＣ１１）。具体的には、最も高いシナリオスコアを有するシナリオの種類（シナリオスコア対応度集計表で最も上の位置に表示されているシナリオの種類）を、対象会話文に合致するシナリオの種類として決定する。例えば、図１１の例では、対象会話文に合致するシナリオの種類「シューズ受注１」と決定する。なお、最も高いシナリオスコアに対応する種類特定情報が複数存在する場合には、当該複数の種類特定情報の中から任意の方法により一つの種類特定情報を特定する。これにて種類決定処理が終了する。
【００４３】
（処理−シナリオ作成処理）
次に、図６のシナリオ作成処理（ＳＡ３）が実行される。図１２は、シナリオ作成処理のフローチャートである。この処理において、シナリオ作成部８は、種類決定処理にて決定されたシナリオの種類を特定する種類特定情報に対応するシナリオ情報を、シナリオ情報ＤＢ１１から取得する（ＳＤ１）。例えば、種類決定処理にて決定されたシナリオの種類＝「シューズ受注−２」である場合には、当該シナリオの種類＝「シューズ受注−２」を含むシナリオ情報をシナリオ情報ＤＢ１１からコピーし、当該コピーしたシナリオ情報を、対象会話文に対応するシナリオのベースとする。
【００４４】
その後、第１シナリオ補完部９は、重要度の高い単語に対応するシナリオ情報であって、ＳＤ１で取得されたシナリオ情報には含まれていないが、シナリオ情報ＤＢ１１に含まれているシナリオ情報があるか否かを判定する。そして、このようなシナリオ情報がある場合には、当該シナリオ情報も対象会話文に対応するシナリオに含めるべきシナリオ情報であるとして、当該シナリオ情報に基づいて、ＳＤ１で取得されたシナリオ情報を補完する（ＳＤ２）。例えば、単語「色」が、重要度の高い単語としてＳＣ７で抽出され図１０のスコア集計表に含められている場合において、かつ、単語「色」に対応するシナリオ情報が、ＳＤ１で取得されたシナリオ情報に含まれていない場合には、この単語「色」に対応するシナリオ情報が、シナリオ情報ＤＢ１１における他のシナリオ情報（種類決定処理にて決定されたシナリオの種類に対応するシナリオ情報以外のシナリオ情報）に含まれているか否かを判定する。そして、含まれている場合には、当該シナリオ情報をシナリオ情報ＤＢ１１から取得して、ＳＤ１で取得されたシナリオ情報に追加することにより、ＳＤ１で取得されたシナリオ情報を補完する。この追加位置は、例えば、当該追加するシナリオ情報のフェーズと同一のフェーズの最後尾とする。例えば、シナリオ情報ＤＢ１１から取得した単語「色」に対応するシナリオ情報のフェーズ＝「商品確認（色）」である場合には、ＳＤ１で取得したシナリオ情報の各レコードの中で、フェーズ＝「商品確認（変数）」に対応するレコードを特定し、当該特定したレコードの一番最後に、シナリオ情報ＤＢ１１から取得したシナリオ情報のレコードを追加する。なお、フェーズがフェーズ名のみで設定されている場合には、同一のフェーズ名を有するレコードの最後尾に追加する。
【００４５】
図１３には、このように補完を行ったシナリオ情報の例を示す。この例では、種類決定処理にて決定されたシナリオの種類＝「シューズ受注１」であり、ＳＤ１において、図２の例に示したシナリオ情報が取得された場合を示している。この図１３のシナリオ情報では、図２のシナリオ情報に対して、レコードＬ１、Ｌ２が補完されている。レコードＬ１は、シナリオの種類＝「アパレル受注１」のシナリオ情報のレコードであり、フェーズ＝「商品確認（色）」のレコードであるため、フェーズ＝「商品確認」のレコードの最後尾（フェーズ＝「商品確認（商品名）」のレコードやフェーズ＝「商品確認（サイズ）」のレコードの直後）に追加されている。また、レコードＬ２は、シナリオの種類＝「スイーツ受注１」のシナリオ情報のレコードであり、フェーズ＝「顧客質問」のレコードであるため、フェーズ＝「顧客質問」のレコードの最後尾に追加されている。
【００４６】
次いで、第２シナリオ補完部１０は、重要度の高い単語に対応するシナリオ情報であって、ＳＤ１で取得されたシナリオ情報には含まれておらず、シナリオ情報ＤＢ１１にも含まれているシナリオ情報があるか否かを判定する。そして、このようなシナリオ情報がある場合には、当該シナリオ情報も対象会話文に対応するシナリオに含めるべきシナリオ情報であるとして、対象会話文から抽出した当該シナリオ情報に基づいて、ＳＤ１で取得されたシナリオ情報を補完する（ＳＤ３）。例えば、単語「支払」が、重要度の高い単語としてＳＣ７で抽出され図１０のスコア集計表に含められている場合において、単語「支払」に対応するシナリオ情報は、ＳＤ１で取得されたシナリオ情報に含まれていない場合において、この単語「支払」に対応するシナリオ情報がシナリオ情報ＤＢ１１に含まれているか否かを判定する。
【００４７】
そして、含まれていない場合には、当該シナリオ情報を対象会話文から抽出してＳＤ１で取得されたシナリオ情報に追加することにより、ＳＤ１で取得されたシナリオ情報を修正する。このことにより、実際に必要になるシナリオ情報を予測する。この追加位置は、例えば、一番最後尾とする。ただし、一番最後尾よりも前に行うべきフェーズの会話文が特定されている場合には、当該会話文を除いた一番最後尾を追加位置とする。このように一番最後尾よりも前に行うべきフェーズの会話文としては、例えば、「顧客質問」フェーズの会話文がある。この際、追加するシナリオ情報のシナリオの種類は、種類決定処理にて決定されたシナリオの種類とする。また、追加するシナリオ情報のフェーズは、当該シナリオ情報の追加要否を決定する際に重要度の高い単語であると判定された当該単語に、「確認」を付加することによって設定する。例えば、当該単語が「支払」である場合には、追加するシナリオ情報のフェーズ＝「支払確認」と設定する。また、追加するシナリオ情報の変数は、当該シナリオ情報の追加要否を決定する際に重要度の高い単語であると判定された当該単語が設定される。例えば、当該単語が「支払」である場合には、変数＝「支払」と設定する。
【００４８】
なお、この際、これら新規に設定したフェーズ及び変数には、新規に設定された情報（予測された情報）であることが容易に識別できるような識別記号（ここでは、［］）を付加する。また、変数にはセット段階識別子を付与する。セット段階識別子とは、シナリオ実行装置によりシナリオを自動実行する場合に、シナリオ実行装置が変数をセットする上で、会話のどの段階でセットすればよいのかを判断するものための情報であり、本実施の形態では「ｐ」又は「ｄ」である。セット段階識別子＝「ｐ」は、顧客の返答を直接セットすることを示している。例えば、変数＝「注文履歴」である場合、「ＯＰ：はじめてのご注文ですか。」「ＣＵ：はい。」という会話では、変数＝「はい」が顧客の返答により直接セットされるため、セット段階識別子＝「ｐ」が付与される。セット段階識別子＝「ｄ」は、対話型で得た返答をセットすることを示している。例えば、変数＝「支払方法」である場合、「ＯＰ：お支払方法はどうされますか。」「ＣＵ：どんな支払方法がありますか。」「ＯＰ：代引支払、クレジットカード決済、コンビニ支払があります。」「ＣＵ：代引支払の手数料はいくらですか。」「ＯＰ：３１５円です。」「ＣＵ：じゃ、コンビニ支払でいいです。」「ＯＰ：お支払方法はコンビニ支払でよろしいですか。」「ＣＵ：はい。」という会話では、変数＝「コンビニ支払」が対話型で得た返答によりセットされるため、セット段階識別子＝「ｄ」が付与される。ただし、このようなセット段階を無視できる場合には、セット段階識別子を省略したり、全て「ｐ」を付与する等してもよい。
【００４９】
図１３のシナリオ情報では、図２のシナリオ情報に対して、レコードＬ３が補完されている。このレコードＬ３は、「顧客質問」を除くシナリオ情報の最後尾に追加されており、シナリオの種類には「シューズ受注１」が設定され、フェーズには「支払確認」が設定され、変数には「支払」が設定されている。より具体的には、これらフェーズ＝「支払確認」及び変数＝「支払」は、識別記号が付加され、フェーズ＝「［支払確認］」及び変数＝「［支払］」と設定されている。
【００５０】
最後に、シナリオ作成部８は、ＳＤ３で修正されたシナリオ情報をシナリオ情報ＤＢ１１に格納する（ＳＤ４）。この際、ＳＤ３で修正されたシナリオ情報にシナリオ名を付与した上で格納する。一般的には、シナリオを自動生成しようとする際、担当者（支援装置のユーザー）は、対象会話文が何の業務に関する会話文であるかを知っているため、自動対話シナリオ作成処理の最初の段階等において、この担当者が入力部を介してシナリオ名を入力し、当該入力されたシナリオ名がシナリオ情報に付与される。なお、図８の対象会話文は「アパレル（パジャマ）受注」の業務に関する会話文であるため、図１３のシナリオ情報にはシナリオ名＝「アパレル（パジャマ）受注」が付与される。ただし、このシナリオ名は、例えば、シナリオ情報を構文解析等して自動的に取得するようにしてもよい。また、この際、ＳＤ３で修正されたシナリオ情報における項目「シナリオの種類」を、当該設定したシナリオ名により統一的に更新する。このように更新した後のシナリオ情報を図１４に例示する。これにてシナリオ作成処理が終了する。以降同様に、新規な対象会話文が特定される毎に、シナリオ情報が生成されてシナリオ情報ＤＢ１１に格納されるので、シナリオ情報ＤＢ１１におけるシナリオ情報が自動的に学習される。また、このように作成したシナリオ情報は、例えば、出力部３を介して表示出力され、ユーザによって参照される。
【００５１】
その後、対話型の音声自動応答システムにおいて、シナリオ情報ＤＢ１１からシナリオ情報が呼び出され、公知の技術により、音声自動応答に使用される。
【００５２】
〔変形例〕
以上、本発明に係る実施の形態について説明したが、本発明の具体的な構成及び手段は、特許請求の範囲に記載した各発明の技術的思想の範囲内において、任意に改変及び改良することができる。以下、このような変形例について説明する。
【００５３】
（解決しようとする課題や発明の効果について）
まず、発明が解決しようとする課題や発明の効果は、前記した内容に限定されるものではなく、本発明によって、前記に記載されていない課題を解決したり、前記に記載されていない効果を奏することもでき、また、記載されている課題の一部のみを解決したり、記載されている効果の一部のみを奏することがある。例えば、自動対話システムの運用コストや、新規な種類のシナリオの作成に要する時間が、従来と同程度の場合であっても、従来と異なる方法にてシナリオを作成できている場合には、本願発明の課題が解決されている。
【００５４】
（分散や統合について）
また、上述した各電気的構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散又は統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散したり統合したりして構成できる。例えば、支援装置１の機能を、複数のサーバに分散することもできる。また、支援装置１の記憶部５に記憶されたデータベースについても、任意に分散したり統合したりすることが可能である。
【００５５】
（スコア集計表やシナリオスコア集計表について）
上記実施の形態では、スコア集計表やシナリオスコア集計表を作成する場合について説明したが、これら集計表自体をユーザが利用する必要がない場合には、これら集計表の作成を省略しつつ、上記と同様に、シナリオスコアの算定や、シナリオスコアに基づく、シナリオの種類の決定のみを行ってもよい。
【００５６】
（単語の重要度について）
上記実施の形態では、単語の重要度を、単語の出現回数に基づいて判定しているが、単語ウェイトやフェーズウェイトに基づいて判定してもよく、あるいは、これらの基準を組み合わせて判定してもよい。
【００５７】
（補完や予測について）
第１シナリオ補完部９やシナリオ予測のいずれか一方又は両方を省略してもよく、あるいは、この他の方法によりシナリオの補完や予測を行ってもよい。
【符号の説明】
【００５８】
１  自動対話シナリオ作成支援装置
２  入力部
３  出力部
４  制御部
５  記憶部
６  単語抽出部
７  種類決定部
８  シナリオ作成部
９  第１シナリオ補完部
１０  第２シナリオ補完部
１１  シナリオ情報ＤＢ
１２  不要語情報ＤＢ
１３  単語ウェイト情報ＤＢ
１４  フェーズウェイト情報ＤＢ
【図１】
0005897389.tif 000002
【図２】
0005897389.tif 000003
【図３】
0005897389.tif 000004
【図４】
0005897389.tif 000005
【図５】
0005897389.tif 000006
【図６】
0005897389.tif 000007
【図７】
0005897389.tif 000008
【図８】
0005897389.tif 000009
【図９】
0005897389.tif 000010
【図１０】
0005897389.tif 000011
【図１１】
0005897389.tif 000012
【図１２】
0005897389.tif 000013
【図１３】
0005897389.tif 000014
【図１４】
0005897389.tif 000015