(57)【要約】【課題】ユーザの音声入力文に対し統一感ある応答を比較的簡易な構成で返すこと。【解決手段】音声認識システム１は、音声入力文を認識する音声認識部１１と、音声入力文の認識結果と所定の情報とに基づいて、音声入力文が自システムに向けて入力された音声であるかを判定する判定部１２と、音声入力文を複数の入力文種別のいずれかに分類する入力文分類部１３と、音声入力文が分類された入力文種別と判定部による判定結果とに基づいて、音声入力文に対する反応レベルを決定する反応レベル決定部１４と、決定した反応レベルに基づいて音声入力文に対する応答を決定する応答決定部１５と、決定した応答を出力する応答出力部１６とを備える。【選択図】図１
2014240864.tif 000002
【特許請求の範囲】
【請求項１】
音声を認識して応答する音声認識システムであって、
音声入力部から入力される音声入力文を認識する音声認識部と、
前記音声認識部による前記音声入力文の認識結果と所定の情報とに基づいて、前記音声入力文が自システムに向けて入力された音声であるかを判定する判定部と、
前記音声入力文を予め用意されている複数の入力文種別のいずれかに分類する入力文分類部と、
前記音声入力文が分類された入力文種別と前記判定部による前記音声入力文についての判定結果とに基づいて、前記入力文種別毎に予め用意されている複数の反応レベルの中から前記音声入力文に対する反応レベルを決定する反応レベル決定部と、
前記決定した反応レベルに基づいて、予め定義されている応答の中から前記音声入力文に対する応答を決定する応答決定部と、
前記決定した応答を出力する応答出力部と、
を備える音声認識システム。
【請求項２】
前記入力文分類部は、前記音声入力文を、文意に応じて予め用意される複数の文意グループのいずれかに分類し、さらに、一つまたは複数の文意グループに対応付けられている複数の入力文種別のうち、前記音声入力文の分類先である文意グループに対応する入力文種別に分類する、
請求項１に記載の音声認識システム。
【請求項３】
自システム周辺の所定範囲の画像を出力する画像出力部を備え、
前記反応レベル決定部は、前記入力文種別と前記判定結果と前記画像出力部の出力する画像の解析結果とに基づいて、前記複数の反応レベルの中から前記音声入力文に対する反応レベルを決定する、
請求項１または請求項２のいずれかに記載の音声認識システム。
【請求項４】
前記応答決定部は、前記決定した反応レベルと前記画像出力部の出力する画像の解析結果とに基づいて、前記音声入力文に対する前記応答を決定する、
請求項３に記載の音声認識システム。
【請求項５】
前記所定の情報には、前記画像出力部による画像の解析結果および／または前記音声入力文の入力方向を示す音源方位情報が含まれており、
前記判定部は、前記音声認識部で認識した最新の音声入力文に関する解析結果から得られる第１パラメータと、前記音声認識部で認識された認識結果履歴から得られる第２パラメータと、前記画像の解析結果および／または前記音源方位情報から得られる第３パラメータとに基づいて判定する、
請求項３または請求項４のいずれかに記載の音声認識システム。
【請求項６】
前記第１パラメータには、所定のキーワードが前記最新の入力文に含まれる割合を示すキーワード率、前記最新の入力文を構成する各単語の音の強さ、前記最新の入力文を構成する各単語の音の長さ、のいずれか少なくとも一つが含まれる、
請求項５に記載の音声認識システム。
【請求項７】
前記第２パラメータには、周囲でユーザからの音声指示と無関係な会話が行われているかを示す可能性が含まれており、
前記第３パラメータには、ユーザの顔が検出されたか否か、検出された顔の向き、のいずれかが少なくとも一つ含まれる、
請求項５または請求項６に記載の音声認識システム。
【請求項８】
音声を認識して応答する音声認識システムの制御方法であって、
音声入力部から入力される音声入力文を認識する音声認識ステップと、
前記音声認識ステップによる前記音声入力文の認識結果と所定の情報に基づいて、前記音声入力文が自システムに向けて入力された音声であるかを判定する判定ステップと、
前記音声入力文を予め用意されている複数の入力文種別のいずれかに分類する入力文分類ステップと、
前記音声入力文が分類された入力文種別と前記判定ステップによる前記音声入力文についての判定結果とに基づいて、前記入力文種別毎に予め用意されている複数の反応レベルの中から前記音声入力文に対する反応レベルを決定する反応レベル決定ステップと、
前記決定した反応レベルに基づいて、予め定義されている応答の中から前記音声入力文に対する応答を決定する応答決定ステップと、
前記決定した応答を出力する応答出力ステップと、
を実行する音声認識システムの制御方法。
【請求項９】
コンピュータを、音声を認識して応答する音声認識システムとして機能させるためのコンピュータプログラムであって、
前記コンピュータに接続した音声入力部から入力される音声入力文を認識する音声認識部と、
前記音声認識部による前記音声入力文の認識結果と所定の情報とに基づいて、前記音声入力文が自システムに向けて入力された音声であるかを判定する判定部と、
前記音声入力文を予め用意されている複数の入力文種別のいずれかに分類する入力文分類部と、
前記音声入力文が分類された入力文種別と前記判定部による前記音声入力文についての判定結果とに基づいて、前記入力文種別毎に予め用意されている複数の反応レベルの中から前記音声入力文に対する反応レベルを決定する反応レベル決定部と、
前記決定した反応レベルに基づいて、予め定義されている応答の中から前記音声入力文に対する応答を決定する応答決定部と、
前記決定した応答を出力する応答出力部と、
を前記コンピュータ上に実現するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識システムおよび音声認識システムの制御方法に関する。
【背景技術】
【０００２】
人同士の対話では、一つの言葉に対して応答（返事）は一通りでなく、状況に応じて多様な応答が行われる。そこで、人とロボットとの対話においても、一つの言葉に対して多様な応答をできるよう工夫されている（特許文献１−４）。
【０００３】
特許文献１では、ユーザからの入力文を分類し、分類ごとのルールに従って応答文を生成する。特許文献１に記載の従来技術では、入力文を単語で分類し、例えば、「こんにちは」「ハロー」は、その時の感情に応じて返事を変える（特許文献１の図８）。また、入力文を「挨拶」「質問」「感想」などに分類し、ユーザからの質問に対し質問を返さないようにすることもできる（特許文献１の図２１）。
【０００４】
特許文献２では、入力文の構造を解析して、入力文から抽出した単語が、感情、頻度、並列目的語を尋ねることが適切な単語であるか否かを判断し、適切であると判断した場合、応答文を生成する。
【０００５】
特許文献３では、対話相手の発話に対し応答生成ルールに従って複数の応答を生成し、生成された応答の中から１つの応答を所定の規則に基づいて選択する。
【０００６】
特許文献４では、応答文に、位置関係に対応して使い分けられる言葉が含まれる場合、現在の位置関係に対応する言葉を選択して応答文を生成する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００９−１５１３１４号公報
【特許文献２】特開２０１０−２２４６０８号公報
【特許文献３】特開２００３−２５５９９０号公報
【特許文献４】特開２００１−１８８５５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１の従来技術は、入力文を「挨拶」「質問」「感想」などの種類に分類しているが、その分類は入力文と応答文の係り受けを保つために使用しているに過ぎず、自然な応答を実現するのは難しい。
【０００９】
特許文献２に記載の従来技術は、抽出単語に応じて質問形式を分類し、質問形式に合った応答文を生成しているが、文の構造に依存した応答となるため、自然な応答を実現するのは難しい。
【００１０】
特許文献３に記載の従来技術は、確率で応答を選択しているため、対話の状況を反映した自然な応答を実現するのは難しい。
【００１１】
特許文献４に記載の従来技術は、単に位置関係を考慮して応答するに過ぎず、自然な応答を実現するのは難しい。
【００１２】
このように、一つの言葉に対して予め登録されている複数の応答の中から確率で応答を選択する技術では、状況を正しく反映して応答することはできない。また、シナリオに従って応答する技術では、様々な状況に対応するシナリオを予め作成する必要があり、その作業に大変手間がかかる。
【００１３】
ところで、応答の表現が異なっても、その文意および状況が同じであれば同じ反応をする方が、統一感があるので自然に感じられる。
【００１４】
本発明は、上記の問題に鑑みてなされたもので、その目的は、音声入力文に応じて統一感のある多様な応答ができるシステムを比較的簡単に実現できるようにした音声認識システムおよび音声認識システムの制御方法を提供することにある。本発明の他の目的は、音声入力文の文意および種別に応じて統一感のある応答をできるようにした音声認識システムおよび音声認識システムの制御方法を提供することにある。
【課題を解決するための手段】
【００１５】
本発明の一つの観点に係るシステムは、音声を認識して応答する音声認識システムであって、音声入力部から入力される音声入力文を認識する音声認識部と、音声認識部による音声入力文の認識結果と所定の情報とに基づいて、音声入力文が自システムに向けて入力された音声であるかを判定する判定部と、音声入力文を予め用意されている複数の入力文種別のいずれかに分類する入力文分類部と、音声入力文が分類された入力文種別と判定部による音声入力文についての判定結果とに基づいて、入力文種別毎に予め用意されている複数の反応レベルの中から音声入力文に対する反応レベルを決定する反応レベル決定部と、決定した反応レベルに基づいて、予め定義されている応答の中から音声入力文に対する応答を決定する応答決定部と、決定した応答を出力する応答出力部と、を備える。
【００１６】
入力文分類部は、音声入力文を、文意に応じて予め用意される複数の文意グループのいずれかに分類し、さらに、一つまたは複数の文意グループに対応付けられている複数の入力文種別のうち、音声入力文の分類先である文意グループに対応する入力文種別に分類することができる。
【００１７】
自システム周辺の所定範囲の画像を出力する画像出力部を備え、反応レベル決定部は、入力文種別と判定結果と画像出力部の出力する画像の解析結果とに基づいて、複数の反応レベルの中から音声入力文に対する反応レベルを決定することもできる。
【００１８】
応答決定部は、決定した応答レベルと画像出力部の出力する画像の解析結果とに基づいて、音声入力文に対する応答を決定することもできる。
【図面の簡単な説明】
【００１９】
【図１】音声認識システムの構成を示すブロック図。
【図２】ユーザの発話の信頼度を評価するための複数のパラメータを抽出する方法を示す説明図。
【図３】キーワードと動詞との関連づけ（ａ）、および、キーワード間の関連性（ｂ）を示す説明図。
【図４】入力文を分類するためのデータベースの例を示す説明図。
【図５】入力文の種別と信頼度などに応じて応答の反応レベルを決定するデータベースの例を示す説明図。
【図６】入力文の文意と反応レベルなどに応じて応答内容を決定するデータベースの例を示す説明図。
【図７】音声を認識して応答するまでの全体処理を示すフローチャート。
【図８】入力文を分類する処理を示すフローチャート。
【発明を実施するための形態】
【００２０】
本実施形態では、以下に詳述する通り、音声入力文の種類（例えば、挨拶、話しかけ、会話など）を状況に応じて分類し、状況に応じてされる一般的な反応の度合い（強弱）を定義する。本実施形態では、さらに、音声入力文を文意でグループ化し、文意グループごとに、反応の度合い（および画像解析結果を利用した状況）に応じた応答を事前に定義しておく。これにより、本実施形態の音声認識システムは、音声入力文の種類及び状況に応じて、適切な反応の度合いで、かつ、多様に応答できる。
【００２１】
さらに、本システムは、個別の場面毎にシナリオなどを用意する必要がなく、比較的簡単なプログラムで実現可能であり、本システムの構築コストを低減できる。
【００２２】
また、本実施形態では、音声入力文を文意に応じてグループ化し、さらに文意毎に入力文の種別を決定するため、新たな単語が登場した場合でも、その文意に合ったグループに新単語を登録するだけで対応することができる。
【実施例１】
【００２３】
図１は、本実施例の音声認識システム１の全体構成を示すブロック図である。音声認識システム１は、コンピュータシステムとして構成される。音声認識システム１は、例えばロボット形状または筒型や直方体等の種々の形状を有するオブジェクト２に搭載することができる。さらに、音声認識システム１は、例えば、ディスプレイ装置、掃除機、冷蔵庫、携帯電話、携帯情報端末、家庭内エネルギー管理システム（ＨＥＭＳ）、洗濯機等の各種電気製品３に搭載することもできる。本実施例では、音声認識システム１を人型ロボット２に搭載する場合を例に挙げて説明する。
【００２４】
なお、音声認識システム１の全部をロボット２内に設けてもよいし、音声認識システム１の一部をロボット２の外部に設けてもよい。さらには、音声認識システム１のほぼ全体を外部サーバに設け、ユーザとの情報を交換するマンマシンインターフェース（音声入力部２１、カメラ２３、音声出力部４１、表示部４２）をロボット２に設ける構成でもよい。但し、音声認識システム１の全体をロボット２に設けることで、ユーザとの会話にタイムラグが生じるのを防止し、より自然なコミュニケーションを実現することができる。
【００２５】
音声認識システム１は、例えば、音声認識部１１、発話信頼度判定部１２、入力文分類部１３、反応レベル決定部１４、応答決定部１５、応答出力部１６を備える。さらに、音声認識システム１は、音声入力部２１、画像解析部２２、カメラ２３、音響モデルデータベース２４、文法データベース２５、辞書データベース２６、キーワード−動詞データベース２７、認識結果履歴データベース２８、音声出力部４１、表示部４２、動作機構４３を備える。
【００２６】
音声入力部２１は、例えば一つまたは複数のマイクロフォン装置とＡ／Ｄ（Analog/Digital）変換回路等を含んで構成される。本実施例では、音源の方位を検出することのできる音源方位マイクも音声入力部２１に含まれているものとする。
【００２７】
画像解析部２２は、「画像出力部」の一例であるカメラ２３で撮影した画像データを解析して、解析結果を出力する。画像解析部２２は、例えば、撮影した画像データに顔が写っているか、写っている顔は正面の顔か横顔か、写っている顔はシステム１に登録済みのユーザの顔と一致するか否か、などを解析する。画像解析結果は、発話信頼度判定部１２、反応レベル決定部１４、応答決定部１５で利用される。
【００２８】
カメラ２３は、例えばロボット２の頭部または胸部などに取り付けられており、ロボット２の周囲に存在するユーザ等を撮影し、画像データを出力する。なお、カメラ２３はロボット２に取り付けられている必要は必ずしもない。ロボット２から離れた場所にカメラ２３を設け、カメラ２３で撮影した画像情報を無線通信等を介して音声認識システム１に送信する構成でもよい。なお、カメラ２３で撮影した画像データ、および／または、画像解析部２２の画像解析結果は、所定時間分蓄積することができる。
【００２９】
音声認識部１１は、音声入力部２１から入力される音声を、音響モデルデータベース２４と文法データベース２５および辞書データベース２６を用いて解析し、単語に変換する機能である。
【００３０】
音響モデルデータベース２４は、テキスト（読み）とテキストを発音したときの波形とを対応づけて記憶したデータベースであり、どのような波形の音がどのような単語として認識されるかを定義している。文法データベース２５は、単語の並べ方（文法）などを記憶したデータベースである。辞書データベース２６には、所定のキーワードを含む種々の単語がその読みと共に登録されている。音声認識部１１による音声認識結果の履歴は、認識結果履歴データベース２８に記憶される。
【００３１】
発話信頼度判定部１２は、発話信頼度を判定するための情報となる所定パラメータを抽出する。発話信頼度判定部１２は、音声認識部１１の認識結果と、カメラ２３の撮影した画像情報と、音源方位情報と、キーワード−動詞データベース２７と、認識結果履歴データベース２８を用いて、所定パラメータを取得する。
【００３２】
さらに、発話信頼度判定部１２は、所定パラメータに基づいて、音声認識部１１による認識結果が自システムに向けられたユーザからの音声であるか判定する。詳しくは、発話信頼度判定部１２は、ユーザから自システムへの音声入力であるか、自システムへの音声指示であるかを判定する。音声指示とは、基本的に、所定のキーワードと所定の動詞との組合せとして構成される。しかし、これに限らず、所定のキーワードのみでも音声指示であると判定することができる。
【００３３】
入力文分類部１３は、音声認識部１１で認識され、発話信頼度判定部１２で下限値以上の発話信頼度を有すると判断された音声入力文を、入力文分類データベース２９に予め用意されている複数の入力文分類のうちのいずれかに分類する。
【００３４】
反応レベル決定部１４は、音声入力文の分類結果と発話信頼度とに基づいて反応レベルデータベース３０を検索することで、予め用意されている反応レベルの中から音声入力文に対応する反応レベルを一つ選択する。
【００３５】
応答決定部１５は、反応レベル決定部１４で決定された反応レベルと音声入力文に基づいて応答定義データベース３１を検索することで、予め定義されている応答の中から音声入力文に対する応答を決定する。
【００３６】
応答出力部１６は、応答決定部１５で決定された応答を実行する。応答出力部１６は、例えば、音声出力部４１、表示部４２、動作機構４３のいずれか一つまたは複数を用いて、ユーザに応答することができる。
【００３７】
音声出力部４１は、例えば合成音声出力装置とスピーカ等から構成されており、ユーザに音声で返事をする。表示部４２は、例えばロボット２に設けられるランプ、ディスプレイから構成され、メッセージを表示したり、ランプを点灯させたりする。動作機構４３は、例えば、ロボットの首、手足等を動かすための機構である。なお、音声出力、表示出力、動作以外に、プリンタ等への出力を行ってもよい。
【００３８】
図２を用いて、発話信頼度判定部１２が抽出する所定パラメータについて説明する。発話信頼度判定部１２は、以下に述べるように、第１パラメータ、第２パラメータおよび第３パラメータの全部または一部を抽出することができる。発話信頼度判定部１２は、第１〜第３パラメータを常に全て検出する必要はない。また、以下に述べる発話信頼度の判定方法は一例であって、本発明は下記の方法に限定されない。以下、音声入力文を入力文と略記する場合がある。
【００３９】
図２（１）に示す第１パラメータは、音声入力部２１から音声認識部１１に入力された最新の入力文を解析することで得られる。第１パラメータは、さらに複数の（例えば３つの）サブパラメータ（１Ａ）〜（１Ｃ）を含むことができる。
【００４０】
第１サブパラメータ（１Ａ）は、最新入力文に占める所定のキーワード（および所定の動詞）の率である。音声認識部１１は、音声入力部２１に入力された音声（ユーザの音声指示、周囲の会話、周囲の雑音等）を辞書データベース２６に当てはめて認識する。その認識された単語群の中に所定のキーワード（および所定の動詞）が含まれている割合から、発話信頼度の高低を判断できる。
【００４１】
所定のキーワードとは、一般的なキーワードのうち、音声認識システム１が提供可能なサービス（詳しくは音声認識システム１が搭載されているシステム（ここではロボット２）で提供可能なサービス）を示すキーワードである。さらに、所定のキーワードには、ユーザがサービスの利用に際して発する可能性のあるキーワード、例えば、「はい」、「いいえ」等の返事に相当するキーワードも含む。
【００４２】
所定のキーワードは、サービスを利用する際の音声指示となるキーワードとして、音声認識システム１に予め登録されている。具体的には、音声認識システム１が搭載されるロボット２がユーザに提供可能なサービスに関するキーワードが、所定のキーワードとして音声認識システム１に登録されている。
【００４３】
例えば、ロボット２がダンスを踊ったり、ニュースや物語を読んだり、クイズを出題したり、天気を予測したり、占ったりするサービスを提供可能である場合、それらサービスを特定するためのキーワード（「ダンス」、「ニュース」、「物語」、「クイズ」、「天気」、「占い」）が所定のキーワードとして登録される。
【００４４】
先に図３を参照する。図３（ａ）は、所定のキーワードと所定の動詞との対応付けを管理するテーブルＴ１０の例である。このテーブルＴ１０は、例えば図１に示すキーワード−動詞データベース２７の例である。
【００４５】
所定のキーワードには、それぞれのキーワードに関連する所定の動詞が予め対応付けられている。例えばキーワード「ダンス」の場合、そのキーワードと共に使用される頻度の高い所定の動詞としては「やって」、「みせて」、「おどって」等が考えられる。キーワード「ニュース」の場合は、所定の動詞として「よんで」、「きかせて」、「おしえて」等が考えられる。
【００４６】
図２に戻る。第１サブパラメータ（１Ａ）として抽出される、最新入力文を構成する単語に占める所定のキーワードの比率から、発話信頼度を判定することができる。
【００４７】
例えば、所定のキーワードと所定の動詞の両方が最新入力文に含まれている場合、発話信頼度は高いと判定できる。例えば、所定のキーワードだけが最新入力文に含まれており、所定の動詞は存在しない場合、発話信頼度は中程度であると判定できる。例えば、所定のキーワードが含まれていない場合、または、所定のキーワード以外の無意味な単語（非キーワード）の占める割合が所定の基準値より大きい場合、発話信頼度は低いと判定できる。
【００４８】
第１パラメータの第２サブパラメータ（１Ｂ）を説明する。第２サブパラメータ（１Ｂ）では、最新入力文全体の音の強さの平均値と単語ごとの音の強さとの関連性に基づいて、所定のキーワードが含まれているかを判定する。
【００４９】
図２（１）に示す「ううう」は、例えば空調機、冷蔵庫、洗濯機等の発する機械音（サーボ音）であり、無意味な非キーワードである。音声認識部１１は、入力された音声データをできる限り何らかの単語に変換しようとするため、単なる機械音であっても例えば「ううう」のように何らかの単語に認識する。
【００５０】
しかし、機械音はユーザの発した言葉ではなく、単なる環境雑音であるため、音のレベルは弱い。これに対し、ユーザの発する言葉は比較的音のレベルが強い。特に、ユーザがロボット２の応答を期待して所定のキーワードを発する場合は、その音のレベルは相対的に強くなると考えられる。
【００５１】
そこで、第２サブパラメータ（１Ｂ）では、入力文全体の単語の音の強さの平均値と単語毎の音の強さとを比較して、強く発せられた所定のキーワードだけを所定のキーワードであると判定する。図示の例では、「ダンス」の音のレベルは３０００であり、「やって」の音のレベルは１０００であり、いずれも、他の単語の音の強さ（４５０〜６００）よりも明らかに強い。これに対し、所定のキーワードとして認識された単語であっても、その音のレベルが入力文全体の音の強さの平均値に比べて弱い場合は無視する。音のレベルが弱いキーワードは、周囲の雑音等が組み合わさって偶然に誤認識されたものであると考えられるためである。
【００５２】
第１パラメータの第３サブパラメータ（１Ｃ）を説明する。第３サブパラメータ（１Ｃ）では、最新入力文を構成する各単語の音の長さ（フレーム長）に基づいて、ユーザの発した言葉であるか否かを判定する。換言すれば、第３サブパラメータ（１Ｃ）は、音の長さに基づいて、雑音等の認識結果を取り除く。１フレームの長さは、音声入力部２１のサンプリング周波数から求められる。
【００５３】
ユーザが或る所定のキーワードを発声する場合、肉声の特性上、所定の時間を要する。これに対し、周囲の雑音等が偶然組み合わさり、所定のキーワードであると誤認識された場合は、人の発声可能な時間よりも短い時間しか有さない場合が多い。そこで、第３サブパラメータ（１Ｃ）では、最新入力文の認識結果の中から不自然な長さの単語を除去し、自然な長さを有する単語をユーザの発した単語であると判定する。
【００５４】
図２（２）は、第２パラメータを示す。第２パラメータは、現在から所定期間（例えば数秒〜十数秒程度）の認識結果を分析して得られる。所定期間内の認識結果を均等に考慮してもよいし、過去の認識結果となるほど重みを下げて判断してもよい。例えば、所定期間を７秒間とすると、７秒前から５秒前までに認識した単語は０．４、４秒前から２秒前までに認識した単語は０．７、１秒前および最後に認識した単語は１．０を乗じて、判定してもよい。
【００５５】
第２パラメータは、以下に述べるように、複数の（例えば４つの）サブパラメータ（２Ａ）〜（２Ｄ）を含むことができる。
【００５６】
第２パラメータの第１サブパラメータ（２Ａ）では、「ううう」等の機械音が連続した後で所定のキーワードが検出された場合、ユーザから話しかけられたと判断する。つまり、機械音しか聞こえなかった環境下で、所定のキーワードが発せられた場合は、ユーザからの言葉であると判定する。
【００５７】
第２パラメータの第２サブパラメータ（２Ｂ）では、無関係な単語が連続して認識された場合に、それはユーザの音声指示ではなく、ロボット２の周囲で行われている会話であると判定する。周囲の会話としては、例えば、人間同士の会話、人間と他の機械（音声指示で制御可能な他の機械）との会話、テレビまたはラジオ等からの音声を挙げることができる。
【００５８】
図３（ｂ）は、キーワード間の関連を模式的に示す。所定のキーワードの周辺には、その所定のキーワードと意味的に関連する関連キーワードが一つまたは複数存在する。例えば、所定のキーワード「クイズ」の場合、その周辺には「問題」、「答え」等の関連キーワードが存在する。さらに、所定のキーワード「クイズ」と関連性の少ない他のキーワードも存在する。関連性の少ない他のキーワードには、他の所定のキーワード、他の所定のキーワードに関連するキーワード等が含まれる。このように、キーワード同士（単語同士）の関連性を予め分析しておくことで、無関係な単語が連続して入力されたか否かを判定することができる。
【００５９】
図２に戻る。第２パラメータの第３サブパラメータ（２Ｃ）では、同一の所定のキーワードの出現頻度が大きい場合、発話信頼度が高いと判定する。例えば、「ダンス」、「ダンス」、「ダンス」のように、同一の所定のキーワードが高頻度で出現する場合は、ユーザが話している可能性が高い。特に、幼児、老人等の発話が不明瞭なユーザの場合、動詞を伴わずに所定のキーワードだけを連呼する可能性がある。
【００６０】
第２パラメータの第４サブパラメータ（２Ｄ）では、所定の無音期間が経過した後で、所定のキーワードが検出された場合に、ユーザからロボット２への音声指示であると判定する。つまり、第４サブパラメータ（２Ｄ）は、第１サブパラメータ（２Ａ）の変形例であり、比較的静かな環境下で所定のキーワードが検出された場合は、ユーザからの音声指示であると判定する。
【００６１】
第３パラメータを説明する。図２（３）に示す第３パラメータは、カメラ２３の撮影した画像情報、および、音声入力部２１に含まれる音源方位マイクで特定される音源方位情報から抽出される。第３パラメータは、複数の（例えば３つの）サブパラメータを含むことができる。
【００６２】
第１サブパラメータ（３Ａ）は、顔の有無である。カメラ２３が人間の顔を撮影した場合、そのときの認識結果はユーザからの音声指示である可能性が高い。第２サブパラメータ（３Ｂ）は、顔の向きである。ユーザの正面の顔がカメラ２３で撮影された場合、ユーザがロボット２に向けて話しかけている可能性が高い。第３サブパラメータ（３Ｃ）は、音源方位である。音声がロボット２の正面方向から発せられている場合、ユーザからの音声指示である可能性が高い。
【００６３】
発話信頼度判定部１２は、上述した各パラメータの全てを考慮して発話信頼度を算出してもよいし、各パラメータのうちの一つまたは複数のパラメータのみに基づいて発話信頼度を算出してもよい。各パラメータでの判定結果に重み付けして発話信頼度を算出してもよいし、単純に判定結果の合計と判定総数の比として求めてもよい。例えば、発話信頼度を、自システムへの音声入力であると判定したパラメータの数ｐｎと使用したパラメータの総数ｔｐとの比として算出してもよい（発話信頼度＝ｐｎ／ｔｐ）。
発話信頼度は、所定の複数の判定値と比較されてる。システム１は、予め設定される第１判定値としての下限値未満の発話信頼度しか持たない入力文を、自システムへの入力ではなく、処理対象外の入力文として扱う。システム１は、入力文の発話信頼度が、予め設定された第２判定値としての通常値以上である場合、その入力文の発話信頼度は「通常」であると判定する。システム１は、入力文の発話信頼度が前記第２判定値未満の場合、その入力文の発話信頼度は「低」であると判定する。このように、本実施例では、入力文の発話信頼度を、「対象外」、「低」、「通常」のいずれかに区別して扱うが、これに限らず、例えば、「対象外」、「低」、「中」、「高」のようにより細かくランクを分けて扱う構成としてもよい。
【００６４】
図４は、入力文分類部１３の使用する入力文分類データベース２９の一例を示す。図４中の左端には、音声認識結果である入力文がカタカナで表示されている。図４の右側には、入力文の種別を示す入力文種別が例えば「話しかけ１」、「話しかけ２」、「コマンド１」などとして表示されている。入力文と入力文種別との間には、入力文の文意でグループ化するための文意ラベルが表示されている。文意ラベルは、入力文の意味で分類した意味的グループなどと呼び変えることもできる。入力文種別は、応答レベルを決定するためのグループであるから、応答レベル決定用グループまたは応答制御用グループなどと呼び変えることもできる。
【００６５】
例えば、入力文「ナマエハ」、「オナマエハ」、「ナンテナマエ」は、いずれも呼びかけ先の名を問うものであるため、「名前は？」という文意ラベルが設定される。入力文「アナタダレ」、「ダレデスカ」、「ダレ」は、いずれも呼びかけ先が誰であるのかを問うものでるから、「誰？」という文意ラベルが設定される。そして、文意ラベル「名前は？」と「誰？」とは、その上位概念グループである「話しかけ１  「名前は？」」に対応付けられる。
入力文種別は、文意ラベルを応答レベルに応じて分類するための種別名（例えば、話しかけ、コマンド、挨拶など）と、その種別に属する一つまたは複数の文意ラベルのうち代表する文意ラベルとを対応付けて定義されている。上記の例では、文意ラベル「名前は？」と「誰？」とはいずれも、「話しかけ１」という種別の中の代表文意ラベル「名前は？」に属するものとして定義されている。
【００６６】
入力文「ヘンジシテ」、「ムシシナイデ」、「ハナシキイテ」は、文意ラベル「返事して」に対応付けられている。入力文「ハンノウシテ」、「ハンノウハ」は、文意ラベル「反応して」に対応付けられている。そして、文意ラベル「返事して」と「反応して」は、いずれも入力文種別「話しかけ１  「返事して」」に対応付けられている。
【００６７】
入力文「アタマイイ」、「リコウ」、「カシコイ」は、文意ラベル「頭良い」に対応付けられており、その文意ラベルは入力文種別「話しかけ２  「頭良い」」に対応付けられている。
【００６８】
「話しかけ１」に属する入力文と「話しかけ２」に属する入力文とは、いずれもユーザから自システムに話しかけられた言葉であるが、応答レベルが異なるため別々の種別として定義している。
【００６９】
入力文「キョウナンニチ」、「ヒニチオシエテ」は、文意ラベル「今日何日？」に対応付けられており、その文意ラベルは入力文種別「コマンド１  「今日何日？」」に対応付けられている。種別「コマンド」は、ロボット２に搭載されているサービス（例えばダンス、ニュース読み上げ、日にち回答など）を利用するための音声指示であることを示す種別である。
【００７０】
入力文「ダンスオドッテ」、「ダンスミセテ」、「ダンスヤッテ」は、文意ラベル「ダンス踊って」に対応付けられており、その文意ラベルは入力文種別「コマンド２  「ダンス踊って」」に対応付けられている。「コマンド１」に属する入力文と「コマンド２」に属する入力文とは、いずれもロボット２のサービスを利用するための音声指示であるが、応答レベルが異なるため（応答レベルを変えるため）、それぞれ別々の種別として定義している。
【００７１】
図４の下に示す入力文「ハジメマシテ」、「オハツデス」は、文意ラベル「初めまして」に対応付けられており、その文意ラベルは入力文種別「挨拶１  「初めまして」」に対応付けられている。
【００７２】
図４は、システム１で認識可能な入力文の一部を示しており、認識可能な入力文は、原則的にいずれかの文意ラベルに対応付けられる。本実施例では、音声認識結果である入力文を、文意ラベルごとにグループ化し、さらに文意ラベルを介していずれかの入力文種別に分類する。入力文分類データベース２９に登録されていない入力文は、応答せずに無視してもよいし、初期値として設定される入力文種別に分類してもよい。
【００７３】
新たな入力文（単語だけの場合もある）を入力文分類データベース２９に登録する場合は、複数の文意ラベルのいずれかに対応付けるだけでよい。新たな入力文は、設定された文意ラベルを介して、所定の入力文種別に分類される。新たな入力文に適切な文意ラベルが見当たらない場合、新たな文意ラベルを生成してそこに対応付け、その新たな文意ラベルをいずれかの入力文種別に対応付ければよい。
【００７４】
登録済みの入力文に対する反応レベルを変えたい場合には、その入力文の属する文意ラベルを、希望する反応レベルの入力文種別に対応付ければよい。例えば、「ヘンジシテ」という入力文の反応レベルを変えたい場合、その入力文に設定されている文意ラベル「返事して」を入力文種別「話しかけ１」から「話しかけ２」に変更できる。あるいは、新たな入力文種別を定義して、変更対象の文意ラベルを新たに定義した入力文種別に対応付けてもよい。
【００７５】
入力文分類データベース２９では、複数の入力文を文意でグループ化した上で、入力文種別に対応付けるため、表現が異なる入力文であっても、その文意が同じか似通っていれば、同一の反応レベルで応答できる。これにより、似たような意味合いの入力文に対して同一の反応レベルで応答できるため、統一感のある応答を実現することができる。なお、似通った文意とは、例えば、同一の入力文種別に対応付けられる異なる複数の文意ラベル（「名前は？」と「誰？」、「返事して」と「反応して」など）である。
【００７６】
さらに、新たな入力文に文意ラベルを設定するだけで適切な入力文種別に分類することができるため、入力文ごとに反応レベルを直接定義する必要がなく、新たな単語や表現に柔軟かつ速やかに対応することができ、システム構築上およびシステム運用上の使い勝手がよい。
【００７７】
図５は、反応レベルデータベース３０の例を示す。反応レベルデータベース３０は、反応レベル決定部１４により使用されるもので、入力文種別ごとに一つまたは複数の反応レベルが設定されている。
【００７８】
本実施例では、反応レベルとして、「無反応」、「無難な反応」、「本来の反応」の３段階を設定している。「無反応」とは、入力文に対して応答しないことを意味する。「無難な反応」とは、入力文に対して応答はするが、その入力文に対する本来の反応とは異なる、曖昧な応答または不明瞭な応答をすることを意味する。「本来の反応」とは、入力文に対する本来の反応、通常の対話として成り立つ応答をすること、または、発話者であるユーザが期待しているであろう通常の応答を返すこと、を意味する。
各入力文種別には、各反応レベルの一部または全部を選択するための条件が設定されている。例えば、入力文種別「話しかけ１」の場合、発話信頼度が低いときは反応レベル「無反応」が選択され、発話信頼度が通常のときは反応レベル「本来の反応」が選択されるように設定されており、「無難な反応」は設定されていない。
【００７９】
入力文種別「話しかけ２」の場合、発話信頼度が低いときは反応レベル「無反応」が選択され、発話信頼度が通常かつ顔を検出できないときは反応レベル「無難な反応」が選択され、発話信頼度が通常かつ顔を検出できたときは反応レベル「本来の反応」が選択されるように設定されている。
【００８０】
入力文種別「コマンド１」の場合、常に反応レベル「本来の反応」が選択されるように設定されており、反応レベル「無反応」および「無難な反応」は設定されていない。システム１は、「コマンド１」に分類される音声指示を認識すると、状況を問わずに、そのコマンドに対応する応答を実行する。
【００８１】
入力文種別「コマンド２」の場合、発話信頼度が低くかつ顔を検出できないときは反応レベル「無難な反応」が選択され、発話信頼度が通常でかつ顔を検出できたときは反応レベル「本来の反応」が選択されるように設定されており、反応レベル「無反応」は設定されていない。
音声指示に対する「無難な反応」な反応の例としては、例えば指示内容を聞き返したり（「ダンスやって」に対して「ダンスですか？」と応答する等）、実行の延期を求めたりする応答（「ダンスですか。ちょっと準備させてください等」）が考えられる。
【００８２】
入力文種別「挨拶１」の場合、発話信頼度が低いときは反応レベル「無反応」が選択され、発話信頼度が通常のときは反応レベル「本来の反応」が選択されるように設定されており、反応レベル「無難な反応」は設定されていない。
【００８３】
入力文種別「挨拶２」の場合、発話信頼度が低くかつ顔が検出できないときは反応レベル「無難な反応」が選択され、発話信頼度が通常でかつ顔を検出できたときは反応レベル「本来の反応」が選択されるようになっており、「無反応」は設定されていない。
【００８４】
挨拶に対する「無難な反応」の例としては、いろいろな受取り方のできる「やあ」、「はい」等のありふれた挨拶を返すことが考えられる。
【００８５】
以上述べたように、反応レベルデータベース３０を用いて、入力文への応答に関する反応レベルを決定することができる。全く異なる入力文であっても、反応レベルが同一である場合は、同じ程度の強さで応答することになる。逆に、たとえ同じ入力文であっても、状況（顔が検出できたか否か）が異なれば反応レベルも異なり、その結果、応答の強さも変化する。
【００８６】
図６は、応答決定部１５の使用する応答定義データベース３１の例を示す。応答定義データベース３１は、文意ラベルごとに、反応レベルに応じた応答内容、または、反応レベルおよび状況に応じた応答内容を定義している。
【００８７】
文意ラベル「名前は？」に属する入力文に対しては、発話信頼度が通常の場合に「本来の反応」で応答する。システム１は、発話者の個人認証をし、発話者が未登録であれば「僕の名前は〇〇です」と応答する。発話者が登録済みであれば「僕の名前は〇〇です。知っていると思ってました」のように応答する。発話者がシステム１に登録済みであるか否かは、事前に登録されたユーザ音声又は、顔画像との類似度から判定することができる。
【００８８】
文意ラベル「返事して」に属する入力文は、入力文種別「話しかけ１」に分類されるため、その発話信頼度が通常の場合に、その入力文に対し「本来の反応」として「はっ！ぼーっとしてました」などと応答する。
【００８９】
文意ラベル「頭良い」に属する入力文は、入力文種別「話しかけ２」に分類されるため、発話信頼度が通常でかつ顔が検出できないときに、その入力文に対する「無難な反応」として、「もしかしてほめられている？」などと応答する。これに対し、発話信頼度が通常でかつ顔を検出できたときは、「本来の反応」として、「まだまだ勉強中です」のように応答する。
【００９０】
文意ラベル「今日何日？」に属する入力文は、入力文種別「コマンド１」に分類されるため、その入力文に対しては、状況によらず常に「本来の反応」として「〇月○日です」のように応答する。
【００９１】
文意ラベル「ダンス踊って」に属する入力文は、入力文種別「コマンド２」に分類されるため、発話信頼度が低くかつ顔が検出できないときは「無難な反応」として、「ダンスですか？」のように指示内容を聞き返す応答をする。これに対し、発話信頼度が通常でかつ顔を検出できたときは「本来の反応」として、予め記憶されているダンス用プログラムを実行し、ダンスを踊る。
【００９２】
文意ラベル「初めまして」に属する入力文は、入力文種別「挨拶１」に分類されるため、発話信頼度が通常の場合に「本来の反応」で応答を返す。システム１は、反応レベルだけでなく、音声入力文の検出状況も考慮して応答する。例えば、システム１は、画像解析部２２が画像データ中に顔を検出できたか判定し、次に発話者の個人認証を行い、さらに、検出した顔が横顔であるか判定する。登録済みのユーザ音声と入力文との類似度から個人認証してもよいし、または、もしもそれが可能ならば、登録済みのユーザの顔データと画像解析部２２で検出した顔データの一致度から個人認証してもよい。
【００９３】
第１の状況は、顔が検出できず、未登録の発話者の場合、または、横顔だけ検出できた未登録の発話者の場合である。第１の状況では、「本来の反応」として「初めまして、僕の名前は〇〇です」のように応答する。
【００９４】
第２の状況は、正面の顔を検出でき、かつ発話者が未登録の場合である。第２の状況では、「本来の反応」として「初めまして、僕の名前は〇〇です。握手してください」のように応答する。
【００９５】
第３の状況は、正面の顔を検出でき、かつ発話者が登録済みの場合である。第３の状況では、「本来の反応」として「初めまして、僕の名前は〇〇です。あれ？知ってますよね」のように応答する。
このように、文意ラベルごとに、反応レベルと状況とに基づいて、応答の内容を定義することができる。この結果、一貫した反応レベルで、統一性のある応答を返すことができ、かつ自然な対話を実現できる。
【００９６】
図７は、音声認識システム１の全体処理を示すフローチャートである。システム１は、音声入力部２１を介して何らかの音声を検出すると（Ｓ１）、その入力された音声を解析し、図２で述べた所定パラメータを抽出し（Ｓ２）、所定パラメータに基づいて発話信頼度を判定する（Ｓ３）。
【００９７】
システム１は、入力文について算出された発話信頼度が所定の下限値以上であるか判定し（Ｓ４）、下限値以下であると判定すると（Ｓ４：ＮＯ）本処理を終了する。システム１は、下限値以上の発話信頼度を持つ入力文であると判定すると（Ｓ４：ＹＥＳ）、入力文分類データベース２９を用いて、その入力文を文意ラベルおよび入力文種別で分類する（Ｓ５）。
【００９８】
システム１は、反応レベルデータベース３０を用いて、入力文の分類先である入力文種別についての反応レベルを決定する（Ｓ６）。システム１は、応答定義データベース３１を用いて、入力文に設定された文意ラベルと決定された反応レベルとに基づいて、応答内容を決定する（Ｓ７）。システム１は、決定した応答内容を、音声出力部４１、表示部４２、動作機構４３のいずれか一つまたは複数を用いて出力する（Ｓ８）。
【００９９】
図８は、図７中の入力文分類処理Ｓ５の一例を示すフローチャートである。システム１の入力文分類部１３は、入力文分類データベース２９を検索することで、入力文に該当する文意ラベルがあるか判定する（Ｓ５０）。入力文分類部１３は、該当する文意ラベルがあると判定した場合（Ｓ５０：ＹＥＳ）、その文意ラベルを入力文に設定（Ｓ５１）。さらに、入力文分類部１３は、選択した文意ラベルの属する入力文種別を、入力文の分類先として決定する（Ｓ５２）。
【０１００】
このように構成される本実施例によれば、入力文を文意に応じた入力文種別に分類し、入力文種別ごとに発話信頼度および状況を考慮して反応レベルを定義し、反応レベルと状況に応じて文意ラベルごとに応答内容を決定する。
【０１０１】
このように本実施例では、反応レベルの決定処理（入力文分類部１３および反応レベル決定部１４、ステップＳ５およびＳ６）と、応答内容の決定処理（応答決定部１５、ステップＳ７）とを分けており、反応レベルは入力文種別ごとに設定するため、入力文の文意に応じて統一性のある一貫した応答を返すことができ、より自然な対話を実現することができる。
【０１０２】
さらに、入力文の文意ごとに反応レベルおよび状況に応じた応答内容を定義するため、統一性があり、かつ柔軟な応答を返すことができる。
【０１０３】
本実施例では、入力文に、その文意に応じた文意ラベルを設定してグループ化するため、新たな単語や表現などにも柔軟かつ速やかに対応することができる。
【０１０４】
本実施例では、画像データから解析される顔の画像を発話信頼度を算出するためのパラメータの一つとして利用するだけでなく、対話状況を判定するための状況判定用情報としても利用する。従って、実際の人間の多くがそうであるように、顔の有無などから状況を判断して応答することができ、より自然な対話を実現できる。
【０１０５】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。
【符号の説明】
【０１０６】
１：音声認識システム、２：ロボット、３：家電製品、１１：音声認識部、１２：発話信頼度判定部、１３：入力文分類部、１４：反応レベル決定部、１５：応答決定部、１６：応答出力部、２１：音声入力部、２２：画像解析部、２３：カメラ、２８：認識結果履歴データベース、４１：音声出力部、４２：表示部、４３：動作機構
【図１】
2014240864.tif 000003
【図２】
2014240864.tif 000004
【図３】
2014240864.tif 000005
【図４】
2014240864.tif 000006
【図５】
2014240864.tif 000007
【図６】
2014240864.tif 000008
【図７】
2014240864.tif 000009
【図８】
2014240864.tif 000010
【手続補正書】
【提出日】平成26年7月24日(2014.7.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
音声を認識して応答する音声認識システムであって、
音声入力部から入力される音声入力文を認識する音声認識部と、
前記音声認識部による前記音声入力文の認識結果と所定の情報とに基づいて、前記音声入力文が自システムに向けて入力された音声であるかを判定する判定部と、
前記音声入力文を予め用意されている複数の入力文種別のいずれかに分類する入力文分類部と、
前記音声入力文が分類された入力文種別と前記判定部による前記音声入力文についての判定結果とに基づいて、前記入力文種別毎に予め用意されている反応の度合いに応じて定義された複数の反応レベルの中から前記音声入力文に対する反応レベルを決定する反応レベル決定部と、
前記決定した反応レベルに基づいて、予め定義されている応答の中から前記音声入力文に対する応答を決定する応答決定部と、
前記決定した応答を出力する応答出力部と、
を備える音声認識システム。
【請求項２】
前記入力文分類部は、前記音声入力文を、文意に応じて予め用意される複数の文意グループのいずれかに分類し、さらに、一つまたは複数の文意グループに対応付けられている複数の入力文種別のうち、前記音声入力文の分類先である文意グループに対応する入力文種別に分類する、
請求項１に記載の音声認識システム。
【請求項３】
自システム周辺の所定範囲の画像を出力する画像出力部を備え、
前記反応レベル決定部は、前記入力文種別と前記判定結果と前記画像出力部の出力する画像の解析結果とに基づいて、前記複数の反応レベルの中から前記音声入力文に対する反応レベルを決定する、
請求項１または請求項２のいずれかに記載の音声認識システム。
【請求項４】
前記応答決定部は、前記決定した反応レベルと前記画像出力部の出力する画像の解析結果とに基づいて、前記音声入力文に対する前記応答を決定する、
請求項３に記載の音声認識システム。
【請求項５】
前記所定の情報には、前記画像出力部による画像の解析結果および／または前記音声入力文の入力方向を示す音源方位情報が含まれており、
前記判定部は、前記音声認識部で認識した最新の音声入力文に関する解析結果から得られる第１パラメータと、前記音声認識部で認識された認識結果履歴から得られる第２パラメータと、前記画像の解析結果および／または前記音源方位情報から得られる第３パラメータとに基づいて判定する、
請求項３または請求項４のいずれかに記載の音声認識システム。
【請求項６】
前記第１パラメータには、所定のキーワードが前記最新の入力文に含まれる割合を示すキーワード率、前記最新の入力文を構成する各単語の音の強さ、前記最新の入力文を構成する各単語の音の長さ、のいずれか少なくとも一つが含まれる、
請求項５に記載の音声認識システム。
【請求項７】
前記第２パラメータには、周囲でユーザからの音声指示と無関係な会話が行われているかを示す可能性が含まれており、
前記第３パラメータには、ユーザの顔が検出されたか否か、検出された顔の向き、のいずれかが少なくとも一つ含まれる、
請求項５または請求項６に記載の音声認識システム。
【請求項８】
音声を認識して応答する音声認識システムの制御方法であって、
音声入力部から入力される音声入力文を認識する音声認識ステップと、
前記音声認識ステップによる前記音声入力文の認識結果と所定の情報に基づいて、前記音声入力文が自システムに向けて入力された音声であるかを判定する判定ステップと、
前記音声入力文を予め用意されている複数の入力文種別のいずれかに分類する入力文分類ステップと、
前記音声入力文が分類された入力文種別と前記判定ステップによる前記音声入力文についての判定結果とに基づいて、前記入力文種別毎に予め用意されている反応の度合いに応じて定義された複数の反応レベルの中から前記音声入力文に対する反応レベルを決定する反応レベル決定ステップと、
前記決定した反応レベルに基づいて、予め定義されている応答の中から前記音声入力文に対する応答を決定する応答決定ステップと、
前記決定した応答を出力する応答出力ステップと、
を実行する音声認識システムの制御方法。
【請求項９】
コンピュータを、音声を認識して応答する音声認識システムとして機能させるためのコンピュータプログラムであって、
前記コンピュータに接続した音声入力部から入力される音声入力文を認識する音声認識部と、
前記音声認識部による前記音声入力文の認識結果と所定の情報とに基づいて、前記音声入力文が自システムに向けて入力された音声であるかを判定する判定部と、
前記音声入力文を予め用意されている複数の入力文種別のいずれかに分類する入力文分類部と、
前記音声入力文が分類された入力文種別と前記判定部による前記音声入力文についての判定結果とに基づいて、前記入力文種別毎に予め用意されている反応の度合いに応じて定義された複数の反応レベルの中から前記音声入力文に対する反応レベルを決定する反応レベル決定部と、
前記決定した反応レベルに基づいて、予め定義されている応答の中から前記音声入力文に対する応答を決定する応答決定部と、
前記決定した応答を出力する応答出力部と、
を前記コンピュータ上に実現するためのコンピュータプログラム。