対話処理装置、応答文生成方法、及び応答文生成処理プログラム
【課題】ユーザと多様な対話を可能にする対話処理装置、応答文生成方法、及び応答文生成処理プログラムを提供する。
【解決手段】入力装置14により、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、コンピュータ本体16により、入力装置14により取得された入力文データにより示される入力文に対して肯定的な応答文を生成し、ディスプレイ12により、コンピュータ本体16により生成された応答文が表示される。
【解決手段】入力装置14により、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、コンピュータ本体16により、入力装置14により取得された入力文データにより示される入力文に対して肯定的な応答文を生成し、ディスプレイ12により、コンピュータ本体16により生成された応答文が表示される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、対話処理装置、応答文生成方法、及び応答文生成処理プログラムに係り、特に、ユーザからの入力文に対して応答文を生成してユーザと対話を行う対話処理装置、応答文生成方法、及び応答文生成処理プログラムに関する。
【背景技術】
【0002】
ユーザと対話を行う対話処理装置において、ユーザに対して多様な表現を行うための技術として、特許文献1には、ユーザから入力される入力文に含まれる主要語に対して関連語を検索し、主要語および関連語の集合を入力の拡大表現として表現する技術が開示されており、例えば、「知」に対して「知恵、知性、知能、知識」のような言い換えを行っている。
【0003】
また、特許文献2には、入力文に対して言い換え語句パターンをマッチングさせ、入力文を多様な表現に言い換えることにより、より適切に検索を行う技術が開示されており、例えば、『「平成」+数字列+「年」』に対しては、当該数字列の値に1988を加算して、これを西暦年とする言い換えを行っている。この言い換え規則により、例えば、「平成12年」は「西暦2000年」に変換される。
【0004】
さらに、特許文献3には、入力された言語表現に対して同義語である言い換え表現を生成し、言語表現とそれら言語表現に共通する上位の言語表現である上位言語表現とが対応付けて格納された電子辞書から少なくとも一部の上位言語表現を抽出し、抽出した上位言語表現と記憶された言語表現のうちの少なくとも一部とを同時に表示させ、表示された言語表現から1つ以上の言語表現の指定と表示された上位言語表現から1つの上位言語表現の指定とを受け付けることにより、適切な言い換え表現を登録する技術が開示されている。
【特許文献1】特開2004−240605号公報
【特許文献2】特開2002−278988号公報
【特許文献3】特開2003−173338号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献1〜特許文献3は、入力文の一部の語句を関連語や同義語、適切な言い換え表現に言い換える技術であり、このように単純に語句の言い換えるのみでは表現が乏しく、ユーザと多様な対話を行うことができない、という問題点があった。
【0006】
本発明は上記問題点を解決するためになされたものであり、ユーザと多様な対話を可能にする対話処理装置、応答文生成方法、及び応答文生成処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するため、請求項1に記載の発明は、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得する取得手段と、前記取得手段により取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文を生成する生成手段と、前記生成手段により生成された応答文を出力する出力手段と、を備えている。
【0008】
請求項1記載の発明では、取得手段により、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データが取得され、生成手段により、取得手段により取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文が生成され、出力手段により、生成手段により生成された応答文が出力される。なお、上記取得手段は、例えば、キーボード等のユーザから入力文が入力されることにより入力文データを取得するものとしてもよく、また、例えば、ネットワークを介して外部装置から受信することにより入力データを取得するものとしてもよく、また、音声を認識により入力データを取得するものとしてもよい。また、上記出力手段は、応答文を表示することにより出力するものしてもよく、また、応答文を示す情報を外部装置へ出力するものとしてもよく、また、用紙等に印刷することにより出力するものしてもよく、また、応答文を音声で出力するものとしてもよい。
【0009】
このように、請求項1記載の発明によれば、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文を生成し、生成した応答文を出力するので、ユーザと多様な対話が可能になる。
【0010】
特に、入力文に対して肯定的な応答文を生成するようにした場合、ユーザは装置がユーザの味方でありサポータであるように考えるため、悩みなどを打ち明けやすくなり、また、ユーザとポジティブに話を進めることができるため、傾聴等に有効である
また、入力文に対して否定的な応答文を生成するようにした場合、ユーザは装置がユーザを厳しく鍛える存在であるように考えるため、ユーザの奮起を促すことができる。
【0011】
なお、請求項1記載の生成手段は、請求項2記載の発明のように、前記取得手段により取得された入力文データにより示される入力文の構文的構造を解析する解析手段と、前記構文的構造に応じて前記入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報を予め記憶した記憶手段と、前記記憶手段に記憶された変換ルール情報により示される変換ルールのうち、前記解析定手段による解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する変換手段と、を有してもよい。
【0012】
また、請求項2記載の発明は、請求項3記載の発明のように、前記解析手段が、前記入力文に対して形態素解析を行って当該入力文に含まれる動詞が非自立動詞、状態動詞、及び非状態動詞の何れであるかを解析し、前記記憶手段が、非自立動詞、状態動詞、及び非状態動詞に対応する緩和表現の語句を各々記憶し、前記変換手段が、前記記憶手段に記憶された非自立動詞、状態動詞、及び非状態動詞に対応する緩和表現の語句のうち、前記解析定手段による前記動詞の解析結果に対応する語句を用いて前記入力文を変換してもよい。
【0013】
また、請求項2又は請求項3記載の変換手段は、請求項4記載の発明のように、前記入力文の構文的構造が複数の変換ルールに対応した場合に、各変換ルールを用いて当該入力文を前記応答文にそれぞれ変換し、変換された各応答文に文字数が所定文字数以内のものがある場合、文字数が前記所定文字数以内の各応答文のうち文字数の最も多い応答文を前記出力手段による出力対象として選択し、変換された各応答文に文字数が前記所定文字数以内のものがない場合、当該各応答文のうち文字数の最も少ない応答文を前記出力手段による出力対象として選択してもよい。
【0014】
また、請求項2〜請求項4の何れか1項記載の生成手段は、請求項5記載の発明のように、ユーザとの親密度を導出する導出手段をさらに有し、前記記憶手段が、接続助詞、副詞、及び緩和表現の少なくとも1種類の語句を前記親密度の度合に応じて複数さらに記憶し、前記変換手段が、前記記憶手段に記憶された接続助詞、副詞、及び緩和表現の少なくとも1種類の複数の語句のうち、前記導出手段により導出された親密度に応じた語句を用いて前記入力文を変換してもよい。
【0015】
また、請求項5記載の発明は、請求項6記載の発明のように、前記記憶手段が、ユーザとの対話回数をユーザ毎にさらに記憶し、前記導出手段が、前記記憶手段に記憶された、対話を行うユーザとの前記対話回数が多いほど前記親密度を高いものとして導出してもよい。
【0016】
また、請求項2〜請求項6の何れか1項記載の発明は、請求項7記載の発明のように、前記記憶手段が、所定の否定的な語句と当該否定的な語句を肯定的に表現した肯定的な語句とを対応付けた対応語句データをさらに記憶し、前記変換手段が、前記入力文を肯定的な応答文に変換する場合で且つ当該入力文に前記否定的な語句が含まれる場合、又は、前記入力文を否定的な応答文に変換する場合で且つ当該入力文に前記肯定的な語句が含まれる場合、前記記憶手段に記憶されている対応語句データで対応付けられた語句を用いて変換してもよい。
【0017】
一方、上記目的を達成するため、請求項8記載の発明の応答文生成方法は、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、取得された入力文データにより示される入力文の構文的構造を解析し、記憶手段に予め記憶された、前記入力文の前記構文的構造に応じて当該入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報により示される変換ルールのうち、前記解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する。
【0018】
よって、請求項8記載の発明によれば、ユーザと対話を行う際に当該ユーザからの入力となる入力文をの構文的構造を解析し、入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換することができるので、ユーザと多様な対話が可能になる。
【0019】
一方、上記目的を達成するため、請求項9記載の発明の応答文生成処理プログラムは、入力された入力文データにより示されるユーザからの入力文の構文的構造を解析する解析ステップと、記憶手段に予め記憶された、前記入力文の前記構文的構造に応じて当該入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報により示される変換ルールのうち、前記解析ステップによる解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する変換ステップと、を含んでいる。
【0020】
よって、請求項9記載の発明によれば、ユーザと対話を行う際に当該ユーザからの入力となる入力文をの構文的構造を解析し、入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換することができるので、ユーザと多様な対話が可能になる。
【発明の効果】
【0021】
以上説明したように、本発明によれば、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文を生成し、生成した応答文を出力するので、ユーザと多様な対話が可能になる、という優れた効果を有する。
【発明を実施するための最良の形態】
【0022】
以下、図面を参照して本発明の実施の形態について詳細に説明する。なお、以下では、本発明を、ユーザから否定的な入力文が入力された場合に、肯定的な応答文を生成して出力することにより傾聴を行う対話処理装置をパーソナル・コンピュータを用いて実現した場合を例として説明する。
【0023】
図1には、本実施の形態に係る対話処理装置10の電気系の要部構成を示すブロック図が示されている。
【0024】
同図に示すように、対話処理装置10は、各種情報を表示するディスプレイ12と、ユーザからの各種の操作指示が入力される、例えば、マウスやキーボードなどの入力装置14と、コンピュータ本体16と、を備えている。
【0025】
コンピュータ本体16は、装置全体の動作を司るCPU(中央処理装置)20と、CPU20による各種処理プログラムの実行時のワークエリア等として用いられるRAM(Random Access Memory)22と、後述する応答文生成処理プログラムを含む各種制御プログラムや各種パラメータ等が予め記憶されたROM(Read Only Memory)24と、各種情報を記憶するために用いられるハードディスク26と、ディスプレイ12への操作画面やメッセージなどの各種情報の表示を制御する表示制御部28と、入力装置14に対して入力された操作指示を検出する操作入力検出部29と、が備えられており、これら各部はシステムバスBUSにより電気的に相互に接続されている。
【0026】
従って、CPU20は、RAM22、ROM24、及びハードディスク26に対するアクセス、入力装置14を介した各種入力情報の取得、及びディスプレイ12に対する各種情報の表示を各々行うことができる。
【0027】
入力装置14には、ユーザと対話を行う際に当該ユーザからの入力となる入力文が入力される。
【0028】
コンピュータ本体16は、入力装置14より入力された入力文に対して肯定的な応答文を生成し、生成した応答文をディスプレイ12に表示させる制御を行なうものとされている。
【0029】
図2には、本実施の形態に係る対話処理装置10の機能的な構成を示す機能ブロック図が示されている。
【0030】
同図に示されるように、対話処理装置10は、親密度導出部30と、入力文解析部32と、入力文変換部34と、受容応答生成部36と、応答選択部38と、を備えている。
【0031】
本実施の形態に係る対話処理装置10は、ユーザ毎に当該ユーザから入力文が入力された回数を対話回数としてカウントしている。ハードディスク26には、ユーザ毎に対話回数が記憶されている。
【0032】
親密度導出部30は、ハードディスク26、入力文変換部34、及び受容応答生成部36に接続されている。
【0033】
親密度導出部30は、ユーザと対話を行う際に、ハードディスク26に記憶されている対話回数に基づいて当該ユーザとの親密度を導出し、導出した親密度情報を入力文変換部34及び受容応答生成部36へ出力するものとされている。なお、本実施の形態では、親密度を「高」、「中」、「低」の3段階のレベルで導出するものとしている。本実施の形態に係る親密度導出部30は、対話回数が50回以上の場合、親密度を「高」と導出し、対話回数が20回以上且つ50回未満の場合、親密度を「中」と導出し、対話回数が20回未満の場合、親密度を「低」と導出する。なお、この親密度のレベルの分け方や各レベルの対話回数の範囲については適宜変更可能である。
【0034】
入力文解析部32は、入力装置14、ハードディスク26、及び入力文変換部34に接続されており、入力装置14より入力文を示す入力文データが入力される。
【0035】
入力文解析部32は、入力装置14より入力された入力文データにより示される入力文に対して形態素解析を行うことにより構文的構造を解析して単語の原形や当該単語の品詞(名詞や、格助詞、動詞、接続助詞、副詞、形容詞、係助詞、助動詞など)などの構文要素を特定し、特定した入力文の構文的構造を示す構文構造情報を入力文変換部34へ出力するものとされている。
【0036】
なお、一般的な形態素解析では、動詞は「自立動詞」「非自立動詞」として認識されるが、本実施の形態に係る形態素解析では、自立動詞を状態動詞と非状態動詞に分類している。この「状態動詞」とは、ある状態を表す動詞で、一般に進行形(・・・ている)をとらない動詞をさす。「非状態動詞」とは状態動詞以外の動詞をさす。
【0037】
このため、本実施の形態では、図3に示すような状態動詞の辞書データをハードディスク26に予め記憶させている。入力文解析部32は、ハードディスク26に記憶された状態動詞の辞書データを用いて自立動詞を「状態動詞」「非状態動詞」のいずれかに分類する。
【0038】
また、本実施の形態では、形態素解析の結果、特定された接続助詞及び係助詞の語句が否定的な意味を有するものか否かを特定している。
【0039】
このため、本実施の形態では、図4(A)〜(C)に示すように、否定的な意味を有する否定接続助詞の辞書データ、否定的な意味を有する否定係助詞の辞書データ、及び否定的な意味を有する否定呼応副詞の辞書データをそれぞれハードディスク26に予め記憶させている。なお、図4(A)〜(C)では、否定接続助詞、否定係助詞、及び否定呼応副詞の各語句を親密度に応じてレベル分けしているが、本実施の形態では、必ずしもレベル分けする必要はない。
【0040】
入力文解析部32は、形態素解析を行って特定した接続助詞や係助詞の語句をハードディスク26に記憶された否定接続助詞の辞書データ、否定係助詞の辞書データ及び否定呼応副詞の辞書データの各語句と比較することにより、当該特定した接続助詞や係助詞、呼応副詞の語句が否定接続助詞や否定係助詞、否定呼応副詞であるか否かを特定する。
【0041】
さらに、ハードディスク26には、入力文の構文的構造に応じて当該入力文を肯定的な応答文に変換するための変換ルールを示す変換ルール情報が予め記憶されている。
【0042】
図5には、本実施の形態に係る変換ルール情報のデータ構造の一例が示されている。
【0043】
同図に示すように、変換ルール情報には、入力文の構文的構造に応じて否定的な入力文を肯定的な応答文に変換するための構文的な変換ルールが定められている。
【0044】
なお、同図に示す変換ルールにおいて、[]で囲まれた項目は必須項目であることを示しており、()で囲まれた項目は選択項目であることを示している。すなわち、[]で囲まれた否定接続助詞や否定助動詞、肯定接続助詞、及び逆接接続助詞は、必須項目であり、()で囲まれた否定呼応副詞、緩和表現、文末緩和表現は、任意項目である。
【0045】
また、本実施の形態では、図6(A)〜(E)に示すように、それぞれ親密度の度合(高、中、低)に応じて、入力文を変換する際に用いる肯定的な意味を有する肯定接続助詞の辞書データ、逆説的な意味を有する逆説接続助詞の辞書データ、肯定的な意味を有する緩和表現の辞書データ、肯定的な意味を有する文末緩和表現の辞書データをハードディスク26に予め記憶させている。なお、本実施の形態に係る対話処理装置10では、図6(C)、(D)に示すように状態動詞と状態動詞以外の動詞(非状態動詞)とで緩和表現を各々別に記憶させている。
【0046】
また、ハードディスク26には、所定の否定的な語句と当該否定的な語句を肯定的に表現した肯定的な語句とを対応付けた対応語句データが予め記憶されている。
【0047】
図7には、本実施の形態に係る対応語句データのデータ構造の一例が示されている。
【0048】
同図に示すように、対応語句データには、所定の否定的な語句と当該否定的な語句を肯定的に表現した肯定的な語句とが対応付けられている。
【0049】
さらに、ハードディスク26には、親密度の度合に応じた受容応答文を定めた受容応答文データベースが予め記憶されている。
【0050】
図8には、本実施の形態に係る受容応答文データベースのデータ構造の一例が示されている。
【0051】
同図に示すように、受容応答文データベースには、親密度の度合(高、中、低)に応じた受容応答文が定めれている。
【0052】
入力文変換部34(図2参照。)は、入力装置14、ハードディスク26及び応答選択部38に接続されており、入力装置14より入力文データが入力され、親密度導出部30より親密度情報が入力され、入力文解析部32より構文構造情報が入力される。
【0053】
入力文変換部34は、ハードディスク26に記憶された変換ルール情報により示される変換ルールのうち、構文構造情報に示される入力文の構文的構造に対応する変換ルールに従って、ハードディスク26に記憶された肯定接続助詞、逆説接続助詞、緩和表現、文末緩和表現の各辞書データの各語句のうち、親密度情報により示される親密度に応じた語句を用いて、入力文を肯定的な応答文に変換するものとされている。なお、緩和表現については、入力文解析部32において形態素解析を行って動詞を状態動詞又は非状態動詞に分類した結果に対応するものを用いて変換を行う。また、親密度に応じた語句が複数存在する場合は、何れかの語句を任意に選択する。
【0054】
また、入力文変換部34は、入力文データにより示される入力文に否定的な語句が含まれる場合、ハードディスク26に記憶されている対応語句データで対応付けられた語句を用いて変換を行う。なお、対応語句データに対応付けられた語句が複数存在する場合は、何れかの語句を任意に選択する。
【0055】
そして、入力文変換部34は、変換された応答文を示す応答文データを応答選択部38へ出力するものとされている。
【0056】
受容応答生成部36は、ハードディスク26及び応答選択部38に接続されており、親密度導出部30より親密度情報が入力される。
【0057】
受容応答生成部36は、ハードディスク26に記憶された受容応答文データベースから、親密度情報により示される親密度に応じた受容応答文を選択し、選択した受容応答文を示す受容応答文データを応答選択部38へ出力するものとされている。なお、親密度に応じた受容応答文が複数存在する場合は、何れかの受容応答文を任意に選択する。
【0058】
応答選択部38は、ディスプレイ12に接続されており、入力文変換部34より応答文データが入力され、受容応答生成部36より受容応答文データが入力される。
【0059】
応答選択部38は、入力文変換部34より応答文データが入力した場合、応答文データにより示される応答文をディスプレイ12に表示させる。また、応答選択部38は、入力文変換部34で入力文を変換できず、入力文変換部34より応答文データが入力しない場合、受容応答生成部36より入力される受容応答文データにより示される応答文をディスプレイ12に表示させる。
【0060】
ところで、以上のように構成された対話処理装置10の各構成要素(親密度導出部30、入力文解析部32、入力文変換部34、受容応答生成部36と、応答選択部38)による処理は、プログラムを実行することにより、コンピュータを利用してソフトウェア構成により実現することができる。但し、ソフトウェア構成による実現に限られるものではなく、ハードウェア構成や、ハードウェア構成とソフトウェア構成の組み合わせによって実現することもできることは言うまでもない。
【0061】
以下では、本実施の形態に係る対話処理装置10が、応答文生成処理プログラムを実行することにより上記各構成要素による処理を実現するものとされている場合について説明する。この場合、当該応答文生成処理プログラムをROM24やハードディスク26に予めインストールしておく形態や、コンピュータ読み取り可能な記録媒体に格納された状態で提供される形態、有線又は無線による通信手段を介して配信される形態等を適用することができる。
【0062】
次に、図9を参照して、本実施の形態に係る対話処理装置10の作用を説明する。なお、図9は、CPU20により実行される応答文生成処理プログラムの処理の流れを示すフローチャートであり、当該プログラムは、ユーザより入力装置14に入力文が入力された場合にCPU20により実行される。また、以下では、入力装置14に入力文として「ミルクをあげているのに全然大きくならない」が入力された場合を例にして説明する。
【0063】
同図のステップ100では、ハードディスク26に記憶された、入力文を入力したユーザとの対話回数に基づいて当該ユーザとの親密度を導出する。
【0064】
次のステップ102では、入力装置14より入力された入力文データにより示される入力文に対して形態素解析を行うことにより構文的構造を解析して構文要素を特定する。
【0065】
図10(A)には、入力文である「ミルクをあげているのに全然大きくならない」に対して形態素解析を行なった結果の一例が模式的に示されている。
【0066】
次のステップ104では、上記ステップ102において解析された入力文の構文的構造が変換ルール情報により示される変換ルールの入力側の構文的構造の何れかに対応しているか否かを判定し、肯定判定となった場合はステップ104へ移行する一方、否定判定となった場合はステップ106へ移行する。
【0067】
例えば、図10(A)に示される入力文の構文的構造は、図5に示される変換ルールの入力側の1行目、及び3行目に対応する。
【0068】
ステップ106では、対応する変換ルールに基づいて入力文の変換を行う。なお、変換を行う際に、図6(A)〜(E)に示される肯定接続助詞、逆説接続助詞、緩和表現、及び文末緩和表現については、上記ステップ100において導出した親密度に応じた語句を用いて変換を行うものとする。また、緩和表現については、上記ステップ102において形態素解析を行って動詞を状態動詞又は非状態動詞に分類した結果に対応するものを用いて変換を行う。
【0069】
例えば、親密度が「中」と導出され、図10(A)に示す入力文に対して図10(B)に示すような1行目の変換ルールを用いて変換した場合は、図10(C)に示すように変換される。
【0070】
また、例えば、親密度が「高」と導出され、図10(A)に示す入力文に対して図11(A)に示すような3行目の変換ルールを用いて変換した場合は、図11(B)に示すように変換される。
【0071】
ステップ108では、上記ステップ106において入力文に対して変換が行われた場合は当該変換された入力文に対して、入力文に対して変換が行われなかった場合は入力文に対して、否定的な語句が含まれているか否かを判定し、肯定判定となった場合はステップ110へ移行する一方、否定判定となった場合はステップ112へ移行する。
【0072】
ステップ110では、入力文に含まれる否定的な語句をハードディスク26に記憶された対応語句データで対応付けられた語句で変換する。
【0073】
ステップ112では、上記ステップ106及びステップ110の少なくとも一方において入力文に対して変換が行われたか否かを判定し、肯定判定となった場合はステップ114へ移行する一方、否定判定となった場合はステップ116へ移行する。
【0074】
ステップ114では、入力文を変換することにより生成された肯定的な応答文をディスプレイ12に表示させ、本応答文生成処理プログラムを終了する。なお、入力文の構文的構造が複数の変換ルールに対応した場合の選択方法には複数あるが、例えばそのひとつとして、生成された肯定的な応答文の文字数をカウントする。そして、生成された応答文の何れか一方の文字数が、例えば、20文字以内である場合は、文字数が20文字以内の応答文をディスプレイ12に表示させ、文字数が共に20文字以内である場合は、文字数の多い方の応答文をディスプレイ12に表示させ、文字数が共に20文字より多い場合は、文字数の少ない方の応答文をディスプレイ12に表示させ、文字数が同じ場合は何れか一方を任意に選択して応答文をディスプレイ12に表示させる。
【0075】
すなわち、ユーザは、応答文が短い場合、対話処理装置10が入力文の内容に対して共感していないように感じる場合があり、また、応答文が長い場合、入力文の内容との重複部分が長くなるため、応答文の内容を煩雑に感じる場合がある。このため、本実施の形態に係る対話処理装置10では、応答文の文字数を20字程度とするようにしている。
【0076】
一方、ステップ116では、ハードディスク26に記憶された受容応答文データベースから、親密度情報により示される親密度に応じた受容応答文を選択する。
【0077】
そして、次のステップ118では、上記ステップ116において選択された受容応答文をディスプレイ12に表示させ、本応答文生成処理プログラムを終了する。
【0078】
すなわち、入力文の構文的構造が何れの変換ルールにも対応せず、かつ入力文に否定的な語句が含まれない場合は、親密度に応じて選択された受容応答文がディスプレイ12に表示される。
【0079】
ここで、図12(A)〜(C)には、ユーザと対話処理装置10とが対話を行った結果の一例が示されている。なお、図12(A)〜(C)の例では親密度は「中」であるものとする。
【0080】
図12(A)に示されるユーザからの入力文1は、構文的構造が何れの変換ルールにも対応せず、かつ入力文に否定的な語句が含まれない。このため、ディスプレイ12には受容応答文(応答文1)が表示される。
【0081】
また、ユーザからの入力文2は、構文的構造が変換ルールに対応している。このため、ディスプレイ12には、変換ルールに従って生成された応答文(応答文2)が表示される。
【0082】
さらに、ユーザからの入力文3は、構文的構造が何れの変換ルールにも対応せず、かつ入力文に否定的な語句が含まれない。このため、ディスプレイ12には、受容応答文(応答文3)が表示される。
【0083】
一方、図12(B)に示されるユーザからの入力文4は、構文的構造が何れの変換ルールにも対応しないが、「泣き虫だ」と否定的な語句が含まれる。このため、ディスプレイ12には、否定的な語句をハードディスク26に記憶された対応語句データで対応付けられた語句で変換した応答文(応答文4)が表示される。
【0084】
一方、図12(C)に示されるユーザからの入力文5は、構文的構造が変換ルールの入力側の5行目に対応している。このため、ディスプレイ12には、変換ルールに従って生成された応答文(応答文5)が表示される。なお、図13(A)〜(C)には、入力文5に対して形態素解析を行なった結果、入力文5の構文的構造が対応している5行目の変換ルール、当該変換ルールを用いて変換した結果の一例が示されている。
【0085】
以上のように、本実施の形態によれば、入力装置14により、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、コンピュータ本体16により、入力装置14により取得された入力文データにより示される入力文に対して肯定的な応答文を生成し、ディスプレイ12により、コンピュータ本体16により生成された応答文が表示されるので、ユーザと多様な対話が可能になる。
【0086】
また、本実施の形態によれば、ユーザに対する応答文の表現を当該ユーザとの親密度に応じて変化させており、親密度が高くなると応答文に打ち解けた表現を用いるため、ユーザとの対話が行い易くなる。
【0087】
なお、本実施の形態では、入力文を肯定的な応答文に変換する場合について説明したが、本発明はこれに限定されるものではなく、例えば、否定的な応答文に変換するようにしてもよい。この場合、図5に示す入力側と出力側を逆にすれば、否定的な応答文を生成するための変換ルールとすることができる。また、図7に示す対応語句データについても入力側と出力側を逆にすれば、肯定的な語句を否定的な語句に変換することができる。
【0088】
また、本実施の形態では、入力装置14としてキーボードにより入力文が入力される場合について説明したが、本発明はこれに限定されるものではなく、例えば、入力装置14として、音声を認識する音声認識装置を適用し、発話された音声を音声認識装置によって認識することにより入力文が入力されるものとしてもよい。
【0089】
また、本実施の形態では、応答文をディスプレイ12に表示する場合について説明したが、本発明はこれに限定されるものではなく、例えば、応答文を音声で出力するものとしてもよい。
【0090】
さらに、本実施の形態では、対話回数により親密度を導出する場合について説明したが、本発明はこれに限定されるものではなく、例えば、ユーザ毎に親密度を示す親密度情報を予め記憶させておき、当該親密度情報を読み出すことにより親密度を導出するものとしてもよい。また、ユーザからの入力文に含まれる、例えば、否定接続助詞、否定係助詞の語句、及び否定呼応副詞の語句を図4(A)〜(C)に示す語句を比較することにより親密度を求め、当該親密度に応じた応答文に変換するものとしてもよい。
【0091】
その他、本実施の形態で説明した対話処理装置10の電気系の要部構成(図1参照。)、及び対話処理装置10の機能的な構成(図2参照。)は一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。
【0092】
また、本実施の形態で説明した各辞書データ(図3、図4(A)〜(C)、図6(A)〜(E)参照。)、変換ルール情報(図5参照。)、対応語句データ(図7参照。)、及び受容応答文データベース(図8参照。)のデータ構造も一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。
【0093】
さらに、本実施の形態で説明した応答文生成処理プログラム(図9参照。)の処理の流れも一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。
【図面の簡単な説明】
【0094】
【図1】実施の形態に係る対話処理装置の電気系の要部構成を示すブロック図である。
【図2】実施の形態に係る対話処理装置の機能的な構成を示すブロック図である。
【図3】実施の形態に係る状態動詞の辞書データのデータ構造の一例を示す図である
【図4】(A)は否定接続助詞の辞書データのデータ構造の一例を示す図であり、(B)は否定係助詞の辞書データのデータ構造の一例を示す図であり、(C)は否定呼応副詞の辞書データのデータ構造の一例を示す図である。
【図5】実施の形態に係る変換ルール情報のデータ構造の一例を示す図である。
【図6】(A)は肯定接続助詞の辞書データのデータ構造の一例を示す図であり、(B)は逆説接続助詞の辞書データのデータ構造の一例を示す図であり、(C)は状態動詞以外の動詞に対する緩和表現の辞書データのデータ構造の一例を示す図であり、(D)は状態動詞に対する緩和表現の辞書データのデータ構造の一例を示す図であり、(E)は文末緩和表現の辞書データのデータ構造の一例を示す図である。
【図7】実施の形態に係る対応語句データのデータ構造の一例を示す図である。
【図8】実施の形態に係る受容応答文データベースのデータ構造の一例を示す図である。
【図9】実施の形態に係る応答文生成処理プログラムの処理の流れを示すフローチャートである。
【図10】(A)〜(C)は入力文を応答文に変換する過程の一例を模式的に示した図である。
【図11】(A)(B)は入力文を応答文に変換する過程の他の例を模式的に示した図である。
【図12】(A)〜(C)はユーザからの入力文及び当該入力文に対する応答文を示した図である。
【図13】(A)〜(C)は入力文を応答文に変換する過程の一例を模式的に示した図である。
【符号の説明】
【0095】
10 対話処理装置
12 ディスプレイ(出力手段)
14 入力装置(取得手段)
16 コンピュータ本体(生成手段)
26 ハードディスク(記憶手段)
30 親密度導出部(導出手段)
32 入力文解析部(解析手段)
34 入力文変換部(変換手段)
【技術分野】
【0001】
本発明は、対話処理装置、応答文生成方法、及び応答文生成処理プログラムに係り、特に、ユーザからの入力文に対して応答文を生成してユーザと対話を行う対話処理装置、応答文生成方法、及び応答文生成処理プログラムに関する。
【背景技術】
【0002】
ユーザと対話を行う対話処理装置において、ユーザに対して多様な表現を行うための技術として、特許文献1には、ユーザから入力される入力文に含まれる主要語に対して関連語を検索し、主要語および関連語の集合を入力の拡大表現として表現する技術が開示されており、例えば、「知」に対して「知恵、知性、知能、知識」のような言い換えを行っている。
【0003】
また、特許文献2には、入力文に対して言い換え語句パターンをマッチングさせ、入力文を多様な表現に言い換えることにより、より適切に検索を行う技術が開示されており、例えば、『「平成」+数字列+「年」』に対しては、当該数字列の値に1988を加算して、これを西暦年とする言い換えを行っている。この言い換え規則により、例えば、「平成12年」は「西暦2000年」に変換される。
【0004】
さらに、特許文献3には、入力された言語表現に対して同義語である言い換え表現を生成し、言語表現とそれら言語表現に共通する上位の言語表現である上位言語表現とが対応付けて格納された電子辞書から少なくとも一部の上位言語表現を抽出し、抽出した上位言語表現と記憶された言語表現のうちの少なくとも一部とを同時に表示させ、表示された言語表現から1つ以上の言語表現の指定と表示された上位言語表現から1つの上位言語表現の指定とを受け付けることにより、適切な言い換え表現を登録する技術が開示されている。
【特許文献1】特開2004−240605号公報
【特許文献2】特開2002−278988号公報
【特許文献3】特開2003−173338号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献1〜特許文献3は、入力文の一部の語句を関連語や同義語、適切な言い換え表現に言い換える技術であり、このように単純に語句の言い換えるのみでは表現が乏しく、ユーザと多様な対話を行うことができない、という問題点があった。
【0006】
本発明は上記問題点を解決するためになされたものであり、ユーザと多様な対話を可能にする対話処理装置、応答文生成方法、及び応答文生成処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するため、請求項1に記載の発明は、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得する取得手段と、前記取得手段により取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文を生成する生成手段と、前記生成手段により生成された応答文を出力する出力手段と、を備えている。
【0008】
請求項1記載の発明では、取得手段により、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データが取得され、生成手段により、取得手段により取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文が生成され、出力手段により、生成手段により生成された応答文が出力される。なお、上記取得手段は、例えば、キーボード等のユーザから入力文が入力されることにより入力文データを取得するものとしてもよく、また、例えば、ネットワークを介して外部装置から受信することにより入力データを取得するものとしてもよく、また、音声を認識により入力データを取得するものとしてもよい。また、上記出力手段は、応答文を表示することにより出力するものしてもよく、また、応答文を示す情報を外部装置へ出力するものとしてもよく、また、用紙等に印刷することにより出力するものしてもよく、また、応答文を音声で出力するものとしてもよい。
【0009】
このように、請求項1記載の発明によれば、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文を生成し、生成した応答文を出力するので、ユーザと多様な対話が可能になる。
【0010】
特に、入力文に対して肯定的な応答文を生成するようにした場合、ユーザは装置がユーザの味方でありサポータであるように考えるため、悩みなどを打ち明けやすくなり、また、ユーザとポジティブに話を進めることができるため、傾聴等に有効である
また、入力文に対して否定的な応答文を生成するようにした場合、ユーザは装置がユーザを厳しく鍛える存在であるように考えるため、ユーザの奮起を促すことができる。
【0011】
なお、請求項1記載の生成手段は、請求項2記載の発明のように、前記取得手段により取得された入力文データにより示される入力文の構文的構造を解析する解析手段と、前記構文的構造に応じて前記入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報を予め記憶した記憶手段と、前記記憶手段に記憶された変換ルール情報により示される変換ルールのうち、前記解析定手段による解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する変換手段と、を有してもよい。
【0012】
また、請求項2記載の発明は、請求項3記載の発明のように、前記解析手段が、前記入力文に対して形態素解析を行って当該入力文に含まれる動詞が非自立動詞、状態動詞、及び非状態動詞の何れであるかを解析し、前記記憶手段が、非自立動詞、状態動詞、及び非状態動詞に対応する緩和表現の語句を各々記憶し、前記変換手段が、前記記憶手段に記憶された非自立動詞、状態動詞、及び非状態動詞に対応する緩和表現の語句のうち、前記解析定手段による前記動詞の解析結果に対応する語句を用いて前記入力文を変換してもよい。
【0013】
また、請求項2又は請求項3記載の変換手段は、請求項4記載の発明のように、前記入力文の構文的構造が複数の変換ルールに対応した場合に、各変換ルールを用いて当該入力文を前記応答文にそれぞれ変換し、変換された各応答文に文字数が所定文字数以内のものがある場合、文字数が前記所定文字数以内の各応答文のうち文字数の最も多い応答文を前記出力手段による出力対象として選択し、変換された各応答文に文字数が前記所定文字数以内のものがない場合、当該各応答文のうち文字数の最も少ない応答文を前記出力手段による出力対象として選択してもよい。
【0014】
また、請求項2〜請求項4の何れか1項記載の生成手段は、請求項5記載の発明のように、ユーザとの親密度を導出する導出手段をさらに有し、前記記憶手段が、接続助詞、副詞、及び緩和表現の少なくとも1種類の語句を前記親密度の度合に応じて複数さらに記憶し、前記変換手段が、前記記憶手段に記憶された接続助詞、副詞、及び緩和表現の少なくとも1種類の複数の語句のうち、前記導出手段により導出された親密度に応じた語句を用いて前記入力文を変換してもよい。
【0015】
また、請求項5記載の発明は、請求項6記載の発明のように、前記記憶手段が、ユーザとの対話回数をユーザ毎にさらに記憶し、前記導出手段が、前記記憶手段に記憶された、対話を行うユーザとの前記対話回数が多いほど前記親密度を高いものとして導出してもよい。
【0016】
また、請求項2〜請求項6の何れか1項記載の発明は、請求項7記載の発明のように、前記記憶手段が、所定の否定的な語句と当該否定的な語句を肯定的に表現した肯定的な語句とを対応付けた対応語句データをさらに記憶し、前記変換手段が、前記入力文を肯定的な応答文に変換する場合で且つ当該入力文に前記否定的な語句が含まれる場合、又は、前記入力文を否定的な応答文に変換する場合で且つ当該入力文に前記肯定的な語句が含まれる場合、前記記憶手段に記憶されている対応語句データで対応付けられた語句を用いて変換してもよい。
【0017】
一方、上記目的を達成するため、請求項8記載の発明の応答文生成方法は、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、取得された入力文データにより示される入力文の構文的構造を解析し、記憶手段に予め記憶された、前記入力文の前記構文的構造に応じて当該入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報により示される変換ルールのうち、前記解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する。
【0018】
よって、請求項8記載の発明によれば、ユーザと対話を行う際に当該ユーザからの入力となる入力文をの構文的構造を解析し、入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換することができるので、ユーザと多様な対話が可能になる。
【0019】
一方、上記目的を達成するため、請求項9記載の発明の応答文生成処理プログラムは、入力された入力文データにより示されるユーザからの入力文の構文的構造を解析する解析ステップと、記憶手段に予め記憶された、前記入力文の前記構文的構造に応じて当該入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報により示される変換ルールのうち、前記解析ステップによる解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する変換ステップと、を含んでいる。
【0020】
よって、請求項9記載の発明によれば、ユーザと対話を行う際に当該ユーザからの入力となる入力文をの構文的構造を解析し、入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換することができるので、ユーザと多様な対話が可能になる。
【発明の効果】
【0021】
以上説明したように、本発明によれば、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文を生成し、生成した応答文を出力するので、ユーザと多様な対話が可能になる、という優れた効果を有する。
【発明を実施するための最良の形態】
【0022】
以下、図面を参照して本発明の実施の形態について詳細に説明する。なお、以下では、本発明を、ユーザから否定的な入力文が入力された場合に、肯定的な応答文を生成して出力することにより傾聴を行う対話処理装置をパーソナル・コンピュータを用いて実現した場合を例として説明する。
【0023】
図1には、本実施の形態に係る対話処理装置10の電気系の要部構成を示すブロック図が示されている。
【0024】
同図に示すように、対話処理装置10は、各種情報を表示するディスプレイ12と、ユーザからの各種の操作指示が入力される、例えば、マウスやキーボードなどの入力装置14と、コンピュータ本体16と、を備えている。
【0025】
コンピュータ本体16は、装置全体の動作を司るCPU(中央処理装置)20と、CPU20による各種処理プログラムの実行時のワークエリア等として用いられるRAM(Random Access Memory)22と、後述する応答文生成処理プログラムを含む各種制御プログラムや各種パラメータ等が予め記憶されたROM(Read Only Memory)24と、各種情報を記憶するために用いられるハードディスク26と、ディスプレイ12への操作画面やメッセージなどの各種情報の表示を制御する表示制御部28と、入力装置14に対して入力された操作指示を検出する操作入力検出部29と、が備えられており、これら各部はシステムバスBUSにより電気的に相互に接続されている。
【0026】
従って、CPU20は、RAM22、ROM24、及びハードディスク26に対するアクセス、入力装置14を介した各種入力情報の取得、及びディスプレイ12に対する各種情報の表示を各々行うことができる。
【0027】
入力装置14には、ユーザと対話を行う際に当該ユーザからの入力となる入力文が入力される。
【0028】
コンピュータ本体16は、入力装置14より入力された入力文に対して肯定的な応答文を生成し、生成した応答文をディスプレイ12に表示させる制御を行なうものとされている。
【0029】
図2には、本実施の形態に係る対話処理装置10の機能的な構成を示す機能ブロック図が示されている。
【0030】
同図に示されるように、対話処理装置10は、親密度導出部30と、入力文解析部32と、入力文変換部34と、受容応答生成部36と、応答選択部38と、を備えている。
【0031】
本実施の形態に係る対話処理装置10は、ユーザ毎に当該ユーザから入力文が入力された回数を対話回数としてカウントしている。ハードディスク26には、ユーザ毎に対話回数が記憶されている。
【0032】
親密度導出部30は、ハードディスク26、入力文変換部34、及び受容応答生成部36に接続されている。
【0033】
親密度導出部30は、ユーザと対話を行う際に、ハードディスク26に記憶されている対話回数に基づいて当該ユーザとの親密度を導出し、導出した親密度情報を入力文変換部34及び受容応答生成部36へ出力するものとされている。なお、本実施の形態では、親密度を「高」、「中」、「低」の3段階のレベルで導出するものとしている。本実施の形態に係る親密度導出部30は、対話回数が50回以上の場合、親密度を「高」と導出し、対話回数が20回以上且つ50回未満の場合、親密度を「中」と導出し、対話回数が20回未満の場合、親密度を「低」と導出する。なお、この親密度のレベルの分け方や各レベルの対話回数の範囲については適宜変更可能である。
【0034】
入力文解析部32は、入力装置14、ハードディスク26、及び入力文変換部34に接続されており、入力装置14より入力文を示す入力文データが入力される。
【0035】
入力文解析部32は、入力装置14より入力された入力文データにより示される入力文に対して形態素解析を行うことにより構文的構造を解析して単語の原形や当該単語の品詞(名詞や、格助詞、動詞、接続助詞、副詞、形容詞、係助詞、助動詞など)などの構文要素を特定し、特定した入力文の構文的構造を示す構文構造情報を入力文変換部34へ出力するものとされている。
【0036】
なお、一般的な形態素解析では、動詞は「自立動詞」「非自立動詞」として認識されるが、本実施の形態に係る形態素解析では、自立動詞を状態動詞と非状態動詞に分類している。この「状態動詞」とは、ある状態を表す動詞で、一般に進行形(・・・ている)をとらない動詞をさす。「非状態動詞」とは状態動詞以外の動詞をさす。
【0037】
このため、本実施の形態では、図3に示すような状態動詞の辞書データをハードディスク26に予め記憶させている。入力文解析部32は、ハードディスク26に記憶された状態動詞の辞書データを用いて自立動詞を「状態動詞」「非状態動詞」のいずれかに分類する。
【0038】
また、本実施の形態では、形態素解析の結果、特定された接続助詞及び係助詞の語句が否定的な意味を有するものか否かを特定している。
【0039】
このため、本実施の形態では、図4(A)〜(C)に示すように、否定的な意味を有する否定接続助詞の辞書データ、否定的な意味を有する否定係助詞の辞書データ、及び否定的な意味を有する否定呼応副詞の辞書データをそれぞれハードディスク26に予め記憶させている。なお、図4(A)〜(C)では、否定接続助詞、否定係助詞、及び否定呼応副詞の各語句を親密度に応じてレベル分けしているが、本実施の形態では、必ずしもレベル分けする必要はない。
【0040】
入力文解析部32は、形態素解析を行って特定した接続助詞や係助詞の語句をハードディスク26に記憶された否定接続助詞の辞書データ、否定係助詞の辞書データ及び否定呼応副詞の辞書データの各語句と比較することにより、当該特定した接続助詞や係助詞、呼応副詞の語句が否定接続助詞や否定係助詞、否定呼応副詞であるか否かを特定する。
【0041】
さらに、ハードディスク26には、入力文の構文的構造に応じて当該入力文を肯定的な応答文に変換するための変換ルールを示す変換ルール情報が予め記憶されている。
【0042】
図5には、本実施の形態に係る変換ルール情報のデータ構造の一例が示されている。
【0043】
同図に示すように、変換ルール情報には、入力文の構文的構造に応じて否定的な入力文を肯定的な応答文に変換するための構文的な変換ルールが定められている。
【0044】
なお、同図に示す変換ルールにおいて、[]で囲まれた項目は必須項目であることを示しており、()で囲まれた項目は選択項目であることを示している。すなわち、[]で囲まれた否定接続助詞や否定助動詞、肯定接続助詞、及び逆接接続助詞は、必須項目であり、()で囲まれた否定呼応副詞、緩和表現、文末緩和表現は、任意項目である。
【0045】
また、本実施の形態では、図6(A)〜(E)に示すように、それぞれ親密度の度合(高、中、低)に応じて、入力文を変換する際に用いる肯定的な意味を有する肯定接続助詞の辞書データ、逆説的な意味を有する逆説接続助詞の辞書データ、肯定的な意味を有する緩和表現の辞書データ、肯定的な意味を有する文末緩和表現の辞書データをハードディスク26に予め記憶させている。なお、本実施の形態に係る対話処理装置10では、図6(C)、(D)に示すように状態動詞と状態動詞以外の動詞(非状態動詞)とで緩和表現を各々別に記憶させている。
【0046】
また、ハードディスク26には、所定の否定的な語句と当該否定的な語句を肯定的に表現した肯定的な語句とを対応付けた対応語句データが予め記憶されている。
【0047】
図7には、本実施の形態に係る対応語句データのデータ構造の一例が示されている。
【0048】
同図に示すように、対応語句データには、所定の否定的な語句と当該否定的な語句を肯定的に表現した肯定的な語句とが対応付けられている。
【0049】
さらに、ハードディスク26には、親密度の度合に応じた受容応答文を定めた受容応答文データベースが予め記憶されている。
【0050】
図8には、本実施の形態に係る受容応答文データベースのデータ構造の一例が示されている。
【0051】
同図に示すように、受容応答文データベースには、親密度の度合(高、中、低)に応じた受容応答文が定めれている。
【0052】
入力文変換部34(図2参照。)は、入力装置14、ハードディスク26及び応答選択部38に接続されており、入力装置14より入力文データが入力され、親密度導出部30より親密度情報が入力され、入力文解析部32より構文構造情報が入力される。
【0053】
入力文変換部34は、ハードディスク26に記憶された変換ルール情報により示される変換ルールのうち、構文構造情報に示される入力文の構文的構造に対応する変換ルールに従って、ハードディスク26に記憶された肯定接続助詞、逆説接続助詞、緩和表現、文末緩和表現の各辞書データの各語句のうち、親密度情報により示される親密度に応じた語句を用いて、入力文を肯定的な応答文に変換するものとされている。なお、緩和表現については、入力文解析部32において形態素解析を行って動詞を状態動詞又は非状態動詞に分類した結果に対応するものを用いて変換を行う。また、親密度に応じた語句が複数存在する場合は、何れかの語句を任意に選択する。
【0054】
また、入力文変換部34は、入力文データにより示される入力文に否定的な語句が含まれる場合、ハードディスク26に記憶されている対応語句データで対応付けられた語句を用いて変換を行う。なお、対応語句データに対応付けられた語句が複数存在する場合は、何れかの語句を任意に選択する。
【0055】
そして、入力文変換部34は、変換された応答文を示す応答文データを応答選択部38へ出力するものとされている。
【0056】
受容応答生成部36は、ハードディスク26及び応答選択部38に接続されており、親密度導出部30より親密度情報が入力される。
【0057】
受容応答生成部36は、ハードディスク26に記憶された受容応答文データベースから、親密度情報により示される親密度に応じた受容応答文を選択し、選択した受容応答文を示す受容応答文データを応答選択部38へ出力するものとされている。なお、親密度に応じた受容応答文が複数存在する場合は、何れかの受容応答文を任意に選択する。
【0058】
応答選択部38は、ディスプレイ12に接続されており、入力文変換部34より応答文データが入力され、受容応答生成部36より受容応答文データが入力される。
【0059】
応答選択部38は、入力文変換部34より応答文データが入力した場合、応答文データにより示される応答文をディスプレイ12に表示させる。また、応答選択部38は、入力文変換部34で入力文を変換できず、入力文変換部34より応答文データが入力しない場合、受容応答生成部36より入力される受容応答文データにより示される応答文をディスプレイ12に表示させる。
【0060】
ところで、以上のように構成された対話処理装置10の各構成要素(親密度導出部30、入力文解析部32、入力文変換部34、受容応答生成部36と、応答選択部38)による処理は、プログラムを実行することにより、コンピュータを利用してソフトウェア構成により実現することができる。但し、ソフトウェア構成による実現に限られるものではなく、ハードウェア構成や、ハードウェア構成とソフトウェア構成の組み合わせによって実現することもできることは言うまでもない。
【0061】
以下では、本実施の形態に係る対話処理装置10が、応答文生成処理プログラムを実行することにより上記各構成要素による処理を実現するものとされている場合について説明する。この場合、当該応答文生成処理プログラムをROM24やハードディスク26に予めインストールしておく形態や、コンピュータ読み取り可能な記録媒体に格納された状態で提供される形態、有線又は無線による通信手段を介して配信される形態等を適用することができる。
【0062】
次に、図9を参照して、本実施の形態に係る対話処理装置10の作用を説明する。なお、図9は、CPU20により実行される応答文生成処理プログラムの処理の流れを示すフローチャートであり、当該プログラムは、ユーザより入力装置14に入力文が入力された場合にCPU20により実行される。また、以下では、入力装置14に入力文として「ミルクをあげているのに全然大きくならない」が入力された場合を例にして説明する。
【0063】
同図のステップ100では、ハードディスク26に記憶された、入力文を入力したユーザとの対話回数に基づいて当該ユーザとの親密度を導出する。
【0064】
次のステップ102では、入力装置14より入力された入力文データにより示される入力文に対して形態素解析を行うことにより構文的構造を解析して構文要素を特定する。
【0065】
図10(A)には、入力文である「ミルクをあげているのに全然大きくならない」に対して形態素解析を行なった結果の一例が模式的に示されている。
【0066】
次のステップ104では、上記ステップ102において解析された入力文の構文的構造が変換ルール情報により示される変換ルールの入力側の構文的構造の何れかに対応しているか否かを判定し、肯定判定となった場合はステップ104へ移行する一方、否定判定となった場合はステップ106へ移行する。
【0067】
例えば、図10(A)に示される入力文の構文的構造は、図5に示される変換ルールの入力側の1行目、及び3行目に対応する。
【0068】
ステップ106では、対応する変換ルールに基づいて入力文の変換を行う。なお、変換を行う際に、図6(A)〜(E)に示される肯定接続助詞、逆説接続助詞、緩和表現、及び文末緩和表現については、上記ステップ100において導出した親密度に応じた語句を用いて変換を行うものとする。また、緩和表現については、上記ステップ102において形態素解析を行って動詞を状態動詞又は非状態動詞に分類した結果に対応するものを用いて変換を行う。
【0069】
例えば、親密度が「中」と導出され、図10(A)に示す入力文に対して図10(B)に示すような1行目の変換ルールを用いて変換した場合は、図10(C)に示すように変換される。
【0070】
また、例えば、親密度が「高」と導出され、図10(A)に示す入力文に対して図11(A)に示すような3行目の変換ルールを用いて変換した場合は、図11(B)に示すように変換される。
【0071】
ステップ108では、上記ステップ106において入力文に対して変換が行われた場合は当該変換された入力文に対して、入力文に対して変換が行われなかった場合は入力文に対して、否定的な語句が含まれているか否かを判定し、肯定判定となった場合はステップ110へ移行する一方、否定判定となった場合はステップ112へ移行する。
【0072】
ステップ110では、入力文に含まれる否定的な語句をハードディスク26に記憶された対応語句データで対応付けられた語句で変換する。
【0073】
ステップ112では、上記ステップ106及びステップ110の少なくとも一方において入力文に対して変換が行われたか否かを判定し、肯定判定となった場合はステップ114へ移行する一方、否定判定となった場合はステップ116へ移行する。
【0074】
ステップ114では、入力文を変換することにより生成された肯定的な応答文をディスプレイ12に表示させ、本応答文生成処理プログラムを終了する。なお、入力文の構文的構造が複数の変換ルールに対応した場合の選択方法には複数あるが、例えばそのひとつとして、生成された肯定的な応答文の文字数をカウントする。そして、生成された応答文の何れか一方の文字数が、例えば、20文字以内である場合は、文字数が20文字以内の応答文をディスプレイ12に表示させ、文字数が共に20文字以内である場合は、文字数の多い方の応答文をディスプレイ12に表示させ、文字数が共に20文字より多い場合は、文字数の少ない方の応答文をディスプレイ12に表示させ、文字数が同じ場合は何れか一方を任意に選択して応答文をディスプレイ12に表示させる。
【0075】
すなわち、ユーザは、応答文が短い場合、対話処理装置10が入力文の内容に対して共感していないように感じる場合があり、また、応答文が長い場合、入力文の内容との重複部分が長くなるため、応答文の内容を煩雑に感じる場合がある。このため、本実施の形態に係る対話処理装置10では、応答文の文字数を20字程度とするようにしている。
【0076】
一方、ステップ116では、ハードディスク26に記憶された受容応答文データベースから、親密度情報により示される親密度に応じた受容応答文を選択する。
【0077】
そして、次のステップ118では、上記ステップ116において選択された受容応答文をディスプレイ12に表示させ、本応答文生成処理プログラムを終了する。
【0078】
すなわち、入力文の構文的構造が何れの変換ルールにも対応せず、かつ入力文に否定的な語句が含まれない場合は、親密度に応じて選択された受容応答文がディスプレイ12に表示される。
【0079】
ここで、図12(A)〜(C)には、ユーザと対話処理装置10とが対話を行った結果の一例が示されている。なお、図12(A)〜(C)の例では親密度は「中」であるものとする。
【0080】
図12(A)に示されるユーザからの入力文1は、構文的構造が何れの変換ルールにも対応せず、かつ入力文に否定的な語句が含まれない。このため、ディスプレイ12には受容応答文(応答文1)が表示される。
【0081】
また、ユーザからの入力文2は、構文的構造が変換ルールに対応している。このため、ディスプレイ12には、変換ルールに従って生成された応答文(応答文2)が表示される。
【0082】
さらに、ユーザからの入力文3は、構文的構造が何れの変換ルールにも対応せず、かつ入力文に否定的な語句が含まれない。このため、ディスプレイ12には、受容応答文(応答文3)が表示される。
【0083】
一方、図12(B)に示されるユーザからの入力文4は、構文的構造が何れの変換ルールにも対応しないが、「泣き虫だ」と否定的な語句が含まれる。このため、ディスプレイ12には、否定的な語句をハードディスク26に記憶された対応語句データで対応付けられた語句で変換した応答文(応答文4)が表示される。
【0084】
一方、図12(C)に示されるユーザからの入力文5は、構文的構造が変換ルールの入力側の5行目に対応している。このため、ディスプレイ12には、変換ルールに従って生成された応答文(応答文5)が表示される。なお、図13(A)〜(C)には、入力文5に対して形態素解析を行なった結果、入力文5の構文的構造が対応している5行目の変換ルール、当該変換ルールを用いて変換した結果の一例が示されている。
【0085】
以上のように、本実施の形態によれば、入力装置14により、ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、コンピュータ本体16により、入力装置14により取得された入力文データにより示される入力文に対して肯定的な応答文を生成し、ディスプレイ12により、コンピュータ本体16により生成された応答文が表示されるので、ユーザと多様な対話が可能になる。
【0086】
また、本実施の形態によれば、ユーザに対する応答文の表現を当該ユーザとの親密度に応じて変化させており、親密度が高くなると応答文に打ち解けた表現を用いるため、ユーザとの対話が行い易くなる。
【0087】
なお、本実施の形態では、入力文を肯定的な応答文に変換する場合について説明したが、本発明はこれに限定されるものではなく、例えば、否定的な応答文に変換するようにしてもよい。この場合、図5に示す入力側と出力側を逆にすれば、否定的な応答文を生成するための変換ルールとすることができる。また、図7に示す対応語句データについても入力側と出力側を逆にすれば、肯定的な語句を否定的な語句に変換することができる。
【0088】
また、本実施の形態では、入力装置14としてキーボードにより入力文が入力される場合について説明したが、本発明はこれに限定されるものではなく、例えば、入力装置14として、音声を認識する音声認識装置を適用し、発話された音声を音声認識装置によって認識することにより入力文が入力されるものとしてもよい。
【0089】
また、本実施の形態では、応答文をディスプレイ12に表示する場合について説明したが、本発明はこれに限定されるものではなく、例えば、応答文を音声で出力するものとしてもよい。
【0090】
さらに、本実施の形態では、対話回数により親密度を導出する場合について説明したが、本発明はこれに限定されるものではなく、例えば、ユーザ毎に親密度を示す親密度情報を予め記憶させておき、当該親密度情報を読み出すことにより親密度を導出するものとしてもよい。また、ユーザからの入力文に含まれる、例えば、否定接続助詞、否定係助詞の語句、及び否定呼応副詞の語句を図4(A)〜(C)に示す語句を比較することにより親密度を求め、当該親密度に応じた応答文に変換するものとしてもよい。
【0091】
その他、本実施の形態で説明した対話処理装置10の電気系の要部構成(図1参照。)、及び対話処理装置10の機能的な構成(図2参照。)は一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。
【0092】
また、本実施の形態で説明した各辞書データ(図3、図4(A)〜(C)、図6(A)〜(E)参照。)、変換ルール情報(図5参照。)、対応語句データ(図7参照。)、及び受容応答文データベース(図8参照。)のデータ構造も一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。
【0093】
さらに、本実施の形態で説明した応答文生成処理プログラム(図9参照。)の処理の流れも一例であり、本発明の主旨を逸脱しない範囲内において適宜変更可能であることは言うまでもない。
【図面の簡単な説明】
【0094】
【図1】実施の形態に係る対話処理装置の電気系の要部構成を示すブロック図である。
【図2】実施の形態に係る対話処理装置の機能的な構成を示すブロック図である。
【図3】実施の形態に係る状態動詞の辞書データのデータ構造の一例を示す図である
【図4】(A)は否定接続助詞の辞書データのデータ構造の一例を示す図であり、(B)は否定係助詞の辞書データのデータ構造の一例を示す図であり、(C)は否定呼応副詞の辞書データのデータ構造の一例を示す図である。
【図5】実施の形態に係る変換ルール情報のデータ構造の一例を示す図である。
【図6】(A)は肯定接続助詞の辞書データのデータ構造の一例を示す図であり、(B)は逆説接続助詞の辞書データのデータ構造の一例を示す図であり、(C)は状態動詞以外の動詞に対する緩和表現の辞書データのデータ構造の一例を示す図であり、(D)は状態動詞に対する緩和表現の辞書データのデータ構造の一例を示す図であり、(E)は文末緩和表現の辞書データのデータ構造の一例を示す図である。
【図7】実施の形態に係る対応語句データのデータ構造の一例を示す図である。
【図8】実施の形態に係る受容応答文データベースのデータ構造の一例を示す図である。
【図9】実施の形態に係る応答文生成処理プログラムの処理の流れを示すフローチャートである。
【図10】(A)〜(C)は入力文を応答文に変換する過程の一例を模式的に示した図である。
【図11】(A)(B)は入力文を応答文に変換する過程の他の例を模式的に示した図である。
【図12】(A)〜(C)はユーザからの入力文及び当該入力文に対する応答文を示した図である。
【図13】(A)〜(C)は入力文を応答文に変換する過程の一例を模式的に示した図である。
【符号の説明】
【0095】
10 対話処理装置
12 ディスプレイ(出力手段)
14 入力装置(取得手段)
16 コンピュータ本体(生成手段)
26 ハードディスク(記憶手段)
30 親密度導出部(導出手段)
32 入力文解析部(解析手段)
34 入力文変換部(変換手段)
【特許請求の範囲】
【請求項1】
ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得する取得手段と、
前記取得手段により取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文を生成する生成手段と、
前記生成手段により生成された応答文を出力する出力手段と、
を備えた対話処理装置。
【請求項2】
前記生成手段は、
前記取得手段により取得された入力文データにより示される入力文の構文的構造を解析する解析手段と、
前記構文的構造に応じて前記入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報を予め記憶した記憶手段と、
前記記憶手段に記憶された変換ルール情報により示される変換ルールのうち、前記解析定手段による解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する変換手段と、
を有する請求項1記載の対話処理装置。
【請求項3】
前記解析手段は、前記入力文に対して形態素解析を行って当該入力文に含まれる動詞が非自立動詞、状態動詞、及び非状態動詞の何れであるかを解析し、
前記記憶手段は、非自立動詞、状態動詞、及び非状態動詞に対応する緩和表現の語句を各々記憶し、
前記変換手段は、前記記憶手段に記憶された非自立動詞、状態動詞、及び非状態動詞に対応する緩和表現の語句のうち、前記解析定手段による前記動詞の解析結果に対応する語句を用いて前記入力文を変換する
請求項2記載の対話処理装置。
【請求項4】
前記変換手段は、前記入力文の構文的構造が複数の変換ルールに対応した場合に、各変換ルールを用いて当該入力文を前記応答文にそれぞれ変換し、変換された各応答文に文字数が所定文字数以内のものがある場合、文字数が前記所定文字数以内の各応答文のうち文字数の最も多い応答文を前記出力手段による出力対象として選択し、変換された各応答文に文字数が前記所定文字数以内のものがない場合、当該各応答文のうち文字数の最も少ない応答文を前記出力手段による出力対象として選択する
請求項2又は請求項3記載の対話処理装置。
【請求項5】
前記生成手段は、
ユーザとの親密度を導出する導出手段をさらに有し、
前記記憶手段は、接続助詞、副詞、及び緩和表現の少なくとも1種類の語句を前記親密度の度合に応じて複数さらに記憶し、
前記変換手段は、前記記憶手段に記憶された接続助詞、副詞、及び緩和表現の少なくとも1種類の複数の語句のうち、前記導出手段により導出された親密度に応じた語句を用いて前記入力文を変換する
請求項2〜請求項4の何れか1項記載の対話処理装置。
【請求項6】
前記記憶手段は、ユーザとの対話回数をユーザ毎にさらに記憶し、
前記導出手段は、前記記憶手段に記憶された、対話を行うユーザとの前記対話回数が多いほど前記親密度を高いものとして導出する
請求項5記載の対話処理装置。
【請求項7】
前記記憶手段は、所定の否定的な語句と当該否定的な語句を肯定的に表現した肯定的な語句とを対応付けた対応語句データをさらに記憶し、
前記変換手段は、前記入力文を肯定的な応答文に変換する場合で且つ当該入力文に前記否定的な語句が含まれる場合、又は、前記入力文を否定的な応答文に変換する場合で且つ当該入力文に前記肯定的な語句が含まれる場合、前記記憶手段に記憶されている対応語句データで対応付けられた語句を用いて変換する
請求項2〜請求項6の何れか1項記載の対話処理装置。
【請求項8】
ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、
取得された入力文データにより示される入力文の構文的構造を解析し、
記憶手段に予め記憶された、前記入力文の前記構文的構造に応じて当該入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報により示される変換ルールのうち、前記解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する
応答文生成方法。
【請求項9】
入力された入力文データにより示されるユーザからの入力文の構文的構造を解析する解析ステップと、
記憶手段に予め記憶された、前記入力文の前記構文的構造に応じて当該入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報により示される変換ルールのうち、前記解析ステップによる解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する変換ステップと、
をコンピュータに実行させる応答文生成処理プログラム。
【請求項1】
ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得する取得手段と、
前記取得手段により取得された入力文データにより示される入力文に対して肯定的な応答文、又は否定的な応答文を生成する生成手段と、
前記生成手段により生成された応答文を出力する出力手段と、
を備えた対話処理装置。
【請求項2】
前記生成手段は、
前記取得手段により取得された入力文データにより示される入力文の構文的構造を解析する解析手段と、
前記構文的構造に応じて前記入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報を予め記憶した記憶手段と、
前記記憶手段に記憶された変換ルール情報により示される変換ルールのうち、前記解析定手段による解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する変換手段と、
を有する請求項1記載の対話処理装置。
【請求項3】
前記解析手段は、前記入力文に対して形態素解析を行って当該入力文に含まれる動詞が非自立動詞、状態動詞、及び非状態動詞の何れであるかを解析し、
前記記憶手段は、非自立動詞、状態動詞、及び非状態動詞に対応する緩和表現の語句を各々記憶し、
前記変換手段は、前記記憶手段に記憶された非自立動詞、状態動詞、及び非状態動詞に対応する緩和表現の語句のうち、前記解析定手段による前記動詞の解析結果に対応する語句を用いて前記入力文を変換する
請求項2記載の対話処理装置。
【請求項4】
前記変換手段は、前記入力文の構文的構造が複数の変換ルールに対応した場合に、各変換ルールを用いて当該入力文を前記応答文にそれぞれ変換し、変換された各応答文に文字数が所定文字数以内のものがある場合、文字数が前記所定文字数以内の各応答文のうち文字数の最も多い応答文を前記出力手段による出力対象として選択し、変換された各応答文に文字数が前記所定文字数以内のものがない場合、当該各応答文のうち文字数の最も少ない応答文を前記出力手段による出力対象として選択する
請求項2又は請求項3記載の対話処理装置。
【請求項5】
前記生成手段は、
ユーザとの親密度を導出する導出手段をさらに有し、
前記記憶手段は、接続助詞、副詞、及び緩和表現の少なくとも1種類の語句を前記親密度の度合に応じて複数さらに記憶し、
前記変換手段は、前記記憶手段に記憶された接続助詞、副詞、及び緩和表現の少なくとも1種類の複数の語句のうち、前記導出手段により導出された親密度に応じた語句を用いて前記入力文を変換する
請求項2〜請求項4の何れか1項記載の対話処理装置。
【請求項6】
前記記憶手段は、ユーザとの対話回数をユーザ毎にさらに記憶し、
前記導出手段は、前記記憶手段に記憶された、対話を行うユーザとの前記対話回数が多いほど前記親密度を高いものとして導出する
請求項5記載の対話処理装置。
【請求項7】
前記記憶手段は、所定の否定的な語句と当該否定的な語句を肯定的に表現した肯定的な語句とを対応付けた対応語句データをさらに記憶し、
前記変換手段は、前記入力文を肯定的な応答文に変換する場合で且つ当該入力文に前記否定的な語句が含まれる場合、又は、前記入力文を否定的な応答文に変換する場合で且つ当該入力文に前記肯定的な語句が含まれる場合、前記記憶手段に記憶されている対応語句データで対応付けられた語句を用いて変換する
請求項2〜請求項6の何れか1項記載の対話処理装置。
【請求項8】
ユーザと対話を行う際に当該ユーザからの入力となる入力文を示す入力文データを取得し、
取得された入力文データにより示される入力文の構文的構造を解析し、
記憶手段に予め記憶された、前記入力文の前記構文的構造に応じて当該入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報により示される変換ルールのうち、前記解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する
応答文生成方法。
【請求項9】
入力された入力文データにより示されるユーザからの入力文の構文的構造を解析する解析ステップと、
記憶手段に予め記憶された、前記入力文の前記構文的構造に応じて当該入力文を肯定的な応答文又は否定的な応答文に変換するための変換ルールを示す変換ルール情報により示される変換ルールのうち、前記解析ステップによる解析により特定された入力文の構文的構造に対応する変換ルールを用いて当該入力文を肯定的な応答文、又は否定的な応答文に変換する変換ステップと、
をコンピュータに実行させる応答文生成処理プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2008−276543(P2008−276543A)
【公開日】平成20年11月13日(2008.11.13)
【国際特許分類】
【出願番号】特願2007−119792(P2007−119792)
【出願日】平成19年4月27日(2007.4.27)
【出願人】(000003609)株式会社豊田中央研究所 (4,200)
【Fターム(参考)】
【公開日】平成20年11月13日(2008.11.13)
【国際特許分類】
【出願日】平成19年4月27日(2007.4.27)
【出願人】(000003609)株式会社豊田中央研究所 (4,200)
【Fターム(参考)】
[ Back to top ]