[第一実施形態]
(会話制御システムの基本構成)本発明に係る会話制御システムについて図面を参照しながら説明する。図1は、本実施形態に係る会話制御装置1(ランク付装置)を有する会話制御システムの概略構成図である。
同図に示すように、会話制御装置1は、入力部100と、音声認識部200と、会話制御部300と、文解析部400と、会話データベース500と、出力部600と、音声認識辞書記憶部700とを備えている。
尚、本実施形態では、説明の便宜上、利用者の発話内容(この発話内容は、入力情報の一種)に限定して説明するが、この利用者の発話内容に限定されるものではなく、キーボード等から入力された入力情報であってもよい。従って、以下に示す「発話内容」は、「発話内容」を「入力情報」に置き換えて説明することもできる。
同様にして、後述の説明では、説明の便宜上、「発話文のタイプ」(発話種類)に限定して説明するが、この「発話文のタイプ」に限定されるのではなく、キーボードなどから入力された入力情報の種類を示す「入力種類」であってもよい。従って、以下に示す「発話文のタイプ」(発話種類)は、「発話種類」を「入力種類」に置き換えて説明することもできる。
入力部100は、利用者からの入力情報を取得する取得手段であり、本実施形態では、マイクロホン、キーボード等が挙げられる。この入力部100は、利用者から入力された入力情報(音声以外)に基づいて、入力情報を示す文字列を特定する文字認識手段でもある。
ここで、入力情報とは、キーボード等を通じて入力された文字、記号、音声等を意味するものである。具体的に、入力部100は、入力された入力情報(音声以外)に基づいて入力情報を示す文字列を特定し、特定した文字列を文字列信号として会話制御部300に出力する。また、利用者からの発話内容(この発話内容は、音声からなるものであり、入力情報の一種である)をマイクロホンなどで取得した入力部100は、取得した発話内容を構成する音声を音声信号として音声認識部200に出力する。
音声認識部200は、入力部100で取得した発話内容に基づいて、発話内容に対応する文字列を特定する文字認識手段である。具体的には、入力部100から音声信号が入力された音声認識部200は、入力された音声信号を解析し、解析した音声信号に対応する文字列を、音声認識辞書記憶部700に格納されている辞書を用いて特定し、特定した文字列を文字列信号として会話制御部300に出力する。音声認識辞書記憶部700は、標準的な音声信号に対応する辞書を格納しているものである。
前記文解析部400は、入力部100又は音声認識部200で特定された文字列を解析するものであり、本実施形態では、図2に示すように、形態素抽出部410と、文節解析部420と、文構造解析部430と、発話種類判定部440と、形態素データベース450と、発話種類データベース460とを有している。
形態素抽出部410は、入力部100又は音声認識部200で特定された文字列に基づいて、文字列の最小単位を構成する各形態素を第一形態素情報として抽出する形態素抽出手段である。
具体的に、管理部310から文字列信号が入力された形態素抽出部410は、入力された文字列信号に対応する文字列の中から各形態素を抽出する。ここで、形態素とは、本実施形態では、文字列に現された語構成の最小単位を意味するものとする。この語構成の最小単位としては、図3に示すように、例えば、名詞、形容詞、動詞などの品詞が挙げられる。各形態素は、本実施形態では、m1、m2、・・・、mlと表現する。
即ち、形態素抽出部410は、入力された文字列信号に対応する文字列と、形態素データベース450に予め格納されている名詞、形容詞、動詞などの形態素群とを照合し、文字列の中から形態素群と一致する各形態素(m1、m2、・・・)を抽出し、抽出した各形態素を抽出信号として文節解析部420に出力する。
文節解析部420は、形態素抽出部410で抽出された各形態素に基づいて、各形態素を文節形式に変換する変換手段である。具体的に、形態素抽出部410から抽出信号が入力された文節解析部420は、入力された抽出信号に対応する各形態素を用いて文節形式にまとめる。
ここで、文節形式とは、本実施形態では、日本語文法において、自立語又は自立語に一つ以上の付属語がついた文、或いは、日本語文法の意味を崩さない程度に文字列をできるだけ細かく区切った一区切りの文を意味する。この文節は、本実施形態では、p1、p2、・・・pkと表現する。
即ち、文節解析部420は、図4に示すように、入力された抽出信号に対応する各形態素に基づいて各形態素の係り受け要素(例えば、が(m2)・は(m4)・を(m5)・・)を抽出し、抽出した係り受け要素に基づいて各形態素を各文節にまとめることを行う。同図に示す「t」は、転置を意味する。
各形態素を各文節にまとめた文節解析部420は、各形態素をまとめた各文節と、各文節を構成する各形態素とを含む文型情報を文型信号として文構造解析部430及び発話種類判定部440に出力する。
文構造解析部430は、文節解析部420で分節された第一形態素情報の各形態素を主体格、対象格などの各属性に分類する分類手段である。具体的に、文節解析部420から文型信号が入力された文構造解析部430は、入力された文型信号に対応する各形態素と各形態素からなる文節とに基づいて、文節に含まれる各形態素の「格構成」を決定する。
ここで、「格構成」とは、文節における実質的な概念を示す格(属性)を意味するものであり、本実施形態では、例えば、主語・主格を意味するサブジェクト(主体格)、対象を意味するオブジェクト(対象格)、動作を意味するアクション、時間を意味するタイム(テンス、アスペクト)、場所を意味するロケーション等が挙げられる。本実施形態では、サブジェクト、オブジェクト、アクションの三要素の「格」(格構成)に対応付けられた各形態素を第一形態素情報とする。
即ち、文構造解析部430は、図5に示すように、例えば、各形態素の係り受け要素が”が”又は”は”である場合は、その係り受け要素の前にある形態素がサブジェクト(主語又は主格)であると判断する。また、文構造解析部430は、例えば、各形態素の係り受け要素が”の”又は”を”である場合は、その係り受け要素の前にある形態素がオブジェクト(対象)であると判断する。
更に、文構造解析部430は、例えば、各形態素の係り受け要素が”する”である場合は、その係り受け要素の前にある形態素がアクション(述語;この述語は動詞、形容詞などから構成される)であると判断する。
各文節を構成する各形態素の「格構成」を決定した文構造解析部430は、決定した「格構成」に対応付けられた第一形態素情報に基づいて、後述する話題(トピック)の範囲を特定させるための話題検索命令信号を反射的判定部320に出力する。
発話種類判定部440は、文節解析部420で特定された文節に基づいて、発話内容(入力情報)の種類を示す発話種類(入力種類)を特定する種類特定手段である。具体的に、文節解析部420から入力された文型信号に対応する各形態素と各形態素から構成される文節とに基づいて、「発話文のタイプ」(発話種類)を判定する。
ここで、「発話文のタイプ」は、本実施形態では、図6に示すように、陳述文(D;Declaration)、感想文(I;Impression)、条件文(C;Condition)、結果文(E;Effect)、時間文(T;Time)、場所文(L;Location)、反発文(N;Negation)などから構成されるものである。
陳述文とは、利用者の意見又は考えなどからなる文を意味するものであり、本実施形態では、図6に示すように、例えば”佐藤が好きだ”などの文が挙げられる。感想文とは、利用者が抱く感想からなる文を意味するものである。場所文とは、場所的な要素からなる文を意味するものである。
結果文とは、話題に対して文が結果の要素を含む文から構成されるものを意味する。時間文とは、話題に関わる時間的な要素を含む文から構成されるものを意味する。
条件文とは、一つの発話を話題と捉えた場合に、話題の前提、話題が成立している条件や理由などの要素を含む文から構成されるものを意味する。反発文とは、発話相手に対して反発するような要素を含む文から構成されるものを意味する。各「発話文のタイプ」についての例文は、図6に示す通りである。
即ち、発話種類判定部440は、入力された文型信号に対応する各文節に基づいて、その各文節と発話種類データベース460に格納されている各辞書とを照合し、各文節の中から、各辞書に関係する文要素を抽出する。各文節の中から各辞書に関係する文要素を抽出した発話種類判定部440は、抽出した文要素に基づいて、「発話文のタイプ」を判定する。文要素とは、文字列の種類を特定するための分の種別を意味し、文要素は、本実施形態では、上記説明した定義句(〜のことだ)などが挙げられる。
ここで、上記発話種類データベース460は、図7に示すように、定義句(例えば、〜のことだ)に関係する辞書を備えた定義表現事例辞書、肯定句(例えば、賛成、同感、ピンポーン)に関係する辞書を備えた肯定事例辞書、結果句(例えば、それで、だから)に関係する辞書を備えた結果表現事例辞書、挨拶句(例えば、こんにちは)に関係する辞書を備えた挨拶事例辞書、否定句(例えば、馬鹿言うんじゃないよ、反対)に関係する辞書を備えた否定事例辞書などから構成され、各辞書は、「発話文のタイプ」と関連付けられている。
これにより、発話種類判定部440は、文節と発話種類データベース460に格納されている各辞書とを照合し、文節の中から各辞書に関連する文要素を抽出し、抽出した文要素に関連付けられた判定の種類を参照することで、「発話文のタイプ」を判定することができる。
この発話種類判定部440は、後述する話題検索部360からの指示に基づいて、該当する利用者に特定の回答文を検索させるための回答検索命令信号を回答文検索部370に出力する。
前記会話データベース500は、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素を示す第二形態素情報と、発話内容に対する利用者への回答内容とを予め相互に関連付けて複数記憶する回答記憶手段(談話記憶手段)である。また、会話データベース500は、複数の回答内容に対応付けられた各回答内容の種類を示す回答種類を、第二形態素情報に関連付けて予め複数記憶する回答記憶手段(談話記憶手段)でもある。
更に、会話データベース500は、利用者から入力されるであろう入力内容又は利用者への回答内容に関連性のある範囲を構成する形態素を示す談話範囲(キーワード)を予め複数記憶する談話記憶手段でもある。この談話範囲(キーワード)には、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素を示す第二形態素情報が複数関連付けられ、各第二形態素情報には、利用者への回答内容がそれぞれに関連付けてられている。
更にまた、会話データベース500は、第二形態素情報を構成する各要素を、主格からなる主体各、目的格からなる対象格などの属性に分類して記憶する回答記憶手段(談話記憶手段)でもある。
この会話データベース500は、図8に示すように、本実施形態では、大きく分けると、利用者から発話されるであろう発話内容又は利用者への回答内容について関連性のある範囲を意味する談話範囲(ディスコース)と、利用者が発話している内容に最も密接な関連性のある範囲を意味する話題(トピック)とから構成されている。同図に示すように、”談話範囲”は、本実施形態では、”話題”の上位概念として位置付けるものとする。
各談話範囲は、図9に示すように、階層構造となるように構成することができる。同図に示すように、例えば、ある談話範囲(映画)に対する上位概念の談話範囲(娯楽)は、上の階層構造に位置するようにし、談話範囲(映画)に対する下位概念の談話範囲(映画の属性、上映映画)は、下の階層構造に位置するようにすることができる。即ち、各談話範囲は、本実施形態では、他の談話範囲との間で上位概念、下位概念、同義語、対義語の関係が明確となる階層位置に配置することかできる。
上述の如く、談話範囲は、各話題から構成されるものであり、本実施形態では、例えば、談話範囲がA映画名であれば、”A映画名”に関係する複数の話題を含んでいる。
この話題は、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素、即ち、利用者から発話されるであろう発話内容を構成する各形態素を意味するものであり、本実施形態では、サブジェクト(主体格)、オブジェクト(対象格)、アクションの「格」(属性)に対応付けられた各形態素からなるものである。これら三要素に対応付けられた各形態素は、本実施形態では、話題タイトル(この話題タイトルは、”話題”の下位概念に相当するものである)(第二形態素情報)と表現することにする。
尚、話題タイトルには、上記三要素に対応付けられた各形態素に限定されるものではなく、他の「格」、即ち、時間を意味するタイム(テンス、アスペクト)、場所を意味するロケーション、条件を意味するコンディション、感想を意味するインプレッション、結果を意味するエフェクトなどに対応付けられた各形態素を有してもよい。
この話題タイトル(第二形態素情報)は、本実施形態では、会話データベース500に予め格納されているものであり、上記第一形態素情報(利用者が発話した発話内容から導かれたもの)とは区別されるものである。
例えば、話題タイトルは、談話範囲が”A映画名”である場合には、図10に示すように、サブジェクト(A映画名)、オブジェクト(監督)、アクション(素晴らしい){これは、”A映画名の監督は素晴らしい”を意味する}から構成されるものである。
話題タイトルのうち、「格構成」(サブジェクト、オブジェクト、アクションなど)に対応付けられた形態素がない場合は、その部分については、本実施形態では、”*”を示すことにする。
例えば、{A映画名って?}の文を話題タイトル(サブジェクト;オブジェクト;アクション)に変換すると、{A映画名って?}の文のうち、”A映画名”がサブジェクトとして特定することができるが、その他”オブジェクト””アクション”は文の要素になっていないので、話題タイトルは、”サブジェクト”(A映画名);”オブジェクト”なし(*);”アクション”なし(*)となる(図10参照)。
回答文とは、利用者に対して回答する回答文(回答内容)を意味するものであり、本実施形態では、各話題タイトル(第二形態素情報)に関連付けられている(図8参照)。回答文は、本実施形態では、図11に示すように、利用者から発話された発話文のタイプに対応した回答をするために、陳述文(D;Declaration)、感想文(I;Impression)、条件文(C;Condition)、結果文(E;Effect)、時間文(T;Time)、場所文(L;Location)、否定文(N;Negation)などのタイプ(回答種類)に分類されている。
即ち、各回答文は、図12に示すように、例えば、談話範囲(佐藤){下位概念;ホームラン、上位概念;草野球、同義語;パンダ佐藤・佐藤選手・パンダ}及び各話題タイトルと関連付けられている。
同図に示すように、例えば、話題タイトル1−1が{(佐藤;*;好きだ):これは、上述の如く(サブジェクト;オブジェクト;アクション)の順番からなるものである。この順番は、以下同様とする}である場合は、その話題タイトル1−1に対応する回答文1−1は、(DA;陳述肯定文”佐藤が好きです”)、(IA;感想肯定文”佐藤がとても好きです”)、(CA;条件肯定文”佐藤のホームランはとても印象的だからです”)、(EA;結果肯定文”いつも佐藤の出る試合をテレビ観戦してしまいます”)、(TA;時間肯定文”実は、甲子園での5打席連続敬遠から好きになっています”)、(LA;場所肯定文”打撃に立ったときの真剣な顔が好きですね”)、(NA;反発肯定文”佐藤を嫌いな人とは話したくないですね、さよなら”)などが挙げられる。
前記会話制御部300は、本実施形態では、図2に示すように、管理部310と、反射的判定部320と、鸚鵡返し判定部330と、談話範囲決定部340と、省略文補完部350と、話題検索部360と、回答文検索部370とを有している。
前記管理部310は、会話制御部300の全体を制御するものである。具体的に、入力部100又は音声認識部200から文字列信号が入力された管理部310は、入力された文字列信号を形態素抽出部410に出力する。また、管理部310は、回答文検索部370で検索された回答文を出力部600に出力する。
反射的判定部320は、形態素抽出部410で抽出された第一形態素情報と各定型内容を照合し、各定型内容の中から、第一形態素情報を含む定型内容を検索する定型取得手段である。
ここで、定型内容とは、利用者からの発話内容に対して定型的な内容を回答するための反射要素情報を意味し、この反射要素情報は、反射要素データベース801(定型記憶手段)に予め複数記憶されている。反射要素情報としては、本実施形態では、図13に示すように、例えば”おはよう”、”こんにちは”、”こんばんわ”、”やあ”などの「挨拶的要素」、「なるほど」、「本当?」などの「定型的要素」などが挙げられる。
具体的に、文構造解析部430から話題検索命令信号が入力された反射的判定部320は、入力された話題検索命令信号に含まれる第一形態素情報と反射要素データベース801に記憶されている各反射要素情報とを照合し、各反射要素情報の中から、第一形態素情報を含む反射要素情報を検索し、検索した反射要素情報を管理部310に出力する。
即ち、反射要素情報をD1、第一形態素情報をWとすると、反射的判定部320は、W∩D1≠φ(φ;空集合)の関係が成立していると判断した場合は、上記反射的な回答を行うための処理を行う。
例えば、利用者が”おはよう”という発話内容を発した場合には、反射的判定部320は、発話内容”おはよう”と各反射要素情報とを照合し、各反射要素情報の中から、発話内容”おはよう”を含む(と一致する)反射要素情報”おはよう”を検索し、検索した反射要素情報”おはよう”を管理部310に出力する。
反射的判定部320は、各反射要素情報の中から、発話内容を含む反射要素情報を検索することができない場合には、文構造解析部430から入力された話題検索命令信号を鸚鵡返し判定部330に出力する。
鸚鵡返し判定部330は、形態素抽出部420で抽出された現在の第一形態素情報と、鸚鵡返し要素データベース802に記憶されている過去の回答内容とを照合し、現在の第一形態素情報が過去の回答内容に含まれる場合には、合意内容を取得する定型取得手段である。
ここで、鸚鵡返しとは、本実施形態では、利用者の発話内容をそのまま(又はそれに近い内容を)言い返すことを意味する。鸚鵡返し要素は、本実施形態では、直前に会話制御装置1から出力された回答内容を構成する第一形態素情報などからなるのもであり、図14に示すように、例えば、”馬は美しい”(馬;*;美しい)、”佐藤が好きです”(佐藤;*;好きです)などが挙げられる。
また、鸚鵡返し要素データベース802は、利用者から入力された入力情報に合意するための合意内容を予め記憶する合意記憶手段でもある。合意内容には、例えば、前回、利用者から入力された入力情報(利用者により前回の入力情報が”A映画名の監督はS氏ですか”である場合には、合意内容としては、”A映画名の監督はS氏です”)、又は ”その通りです”、”本当です”などが挙げられる。
具体的に、反射的判定部320から話題検索命令信号が入力された鸚鵡返し判定部330は、各鸚鵡返し要素毎に、入力された話題検索命令信号に含まれる第一形態素情報と鸚鵡返し要素を構成する各形態素とを照合し、鸚鵡返し要素の中に第一形態素情報が含まれているかを判断する(図14参照)。
鸚鵡返し判定部330は、各鸚鵡返し要素の中に第一形態素情報が含まれていると判断した場合には、合意内容を取得し、取得した合意内容からなる回答文を管理部310に出力(鸚鵡返し処理)する。即ち、鸚鵡返し要素(前回の回答文など)をS、第一形態素情報をWとすると、鸚鵡返し判定部330は、W⊂S、W≠φの関係が成立している場合には、上記に示す鸚鵡返し処理を行う。
例えば、会話制御装置1が回答文として”A映画名の監督はS氏です”(A映画名の監督;S氏;*)(この順番は、サブジェクト;オブジェクト;アクションの順番、以下同様とする)を出力し、その後、利用者が出力された回答内容に対して”A映画名の監督はS氏ですか”(A映画名の監督;S氏;*)と発話した場合には、鸚鵡返し判定部330は、利用者の第一形態素情報(A映画名の監督;S氏;*)と回答文の各形態素(A映画名の監督;S氏;*)とが一致しているので、利用者は回答内容に対して鸚鵡返しを行っていると断定し、記憶されている合意内容”その通りです”などを取得し、取得した合意内容を出力する。
また、鸚鵡返し判定部330は、形態素抽出部420で抽出された現在の第一形態素情報と、鸚鵡返し要素データベース802に記憶されている過去の第一形態素情報とを照合し、現在の第一形態素情報が過去の第一形態素情報に含まれる場合には、反発内容を取得する定型取得手段でもある。
具体的には、利用者が”馬は美しい”という発話内容を発話し、会話制御装置1が回答内容として”馬は躍動感があって良いですね”の内容を出力した場合に、後に利用者が”馬は美しい”という発話内容を繰り返したときは、鸚鵡返し判定部330は、現在の発話内容”馬は美しい”を構成する各形態素(第一形態素情報){馬;*;美しい}と前の発話内容”馬は美しい”を構成する各形態素(第一形態素情報){馬;*;美しい}とが一致しているので、利用者は会話制御装置1からの回答内容”馬は躍動感があって良いですね”については全く聞いていないものと断定することができる。
この場合、鸚鵡返し判定部330は、利用者が会話制御装置1からの回答内容を聞いていないので、記憶された反発内容(例えば、同じ内容を繰り返さないでよ”など)取得し、取得した反発内容を出力することができる。
一方、鸚鵡返し判定部330は、第一形態素情報が前回の回答文の内容と同一、又は第一形態素情報が前回の第一形態素情報と同一でないと判断した場合には、反射的判定部320から入力された話題検索命令信号を談話範囲決定部340に出力する。
尚、上記の鸚鵡返し判定部330は、「会話制御装置1の回答内容」に対して利用者が鸚鵡返しを行った場合の処理を示してきたが、更に以下の処理も行うことができる。例えば、出力部600が”馬は美しい”という回答文を出力した場合、この回答文に対して利用者が”どうして馬は美しいの?”、”どうして美しいの?”、又は”どうして?”と発話した場合に対して行う鸚鵡返し判定部330の処理である。
この場合、鸚鵡返し判定部330は、出力した回答文S”馬は美しい”と利用者からの発話内容W(”どうして馬は美しいの?(疑問文)”又は”どうして美しいの?(疑問文)”)とを照合すると、(W−c)⊂S(このcは、Wの発話種類を意味し、この発話種類は、後述する発話種類判定部440で判定されるものである。発話種類には、後述するように、例えば、疑問文などが挙げられる。)の関係が成立するので、”条件付”の鸚鵡返し処理(回答内容に対して利用者が疑問文付きの鸚鵡返しを行った場合の処理)を行う。
”条件付”の鸚鵡返し処理としては、例えば、会話制御装置1が”馬は美しいね”の回答文を出力した場合に、上記利用者が”どうして馬は美しいの?”の発話内容を発したときは、利用者の疑問等を解消するため、鸚鵡返し判定部330が”だって馬は美しいじゃない”などの回答文を鸚鵡返し要素データベース802の中から取得し、取得した回答文を管理部310に出力する処理を行う。
談話範囲決定部340は、文節解析部420で抽出された第一形態素と各談話範囲とを照合し、各談話範囲の中から、第一形態素情報を含む談話範囲を検索する談話検索手段である。
具体的に、鸚鵡返し判定部330から話題検索命令信号が入力された談話範囲決定部340は、入力された談話検索命令信号に基づいて、利用者の談話範囲を決定する。即ち、談話範囲決定部340は、入力された検索命令信号に基づいて、会話データベース500の中から、利用者が発話している内容について関連性のある範囲(談話範囲)を検索する。
例えば、談話範囲決定部340は、入力された話題検索命令信号に含まれる第一形態素情報が(面白い映画;*;ある){面白い映画はある?}である場合には、この第一形態素情報と談話範囲群とを照合し、談話範囲群に第一形態素情報を構成する形態素(例えば”映画”)が含まれているときは、第一形態素情報に含まれる”映画”を談話範囲として決定する。この場合、談話範囲決定部340は、第一形態素情報に談話範囲”映画”が含まれているので、入力された第一形態素情報を話題検索命令信号に含めて話題検索部360に出力する。
一方、談話範囲決定部340は、第一形態素情報に談話範囲群が含まれていない場合には、入力された第一形態素情報を話題検索命令信号に含めて省略文補完部350に出力する。
これにより、後述する話題検索部360は、談話範囲決定部340で決定された”談話範囲”に属する各「話題タイトル」と、文構造解析部430で特定された第一形態素情報とを照合することができるので、”全て”の「話題タイトル」(第二形態素情報)と第一形態素情報とを照合する必要がなくなり、後述する回答文検索部370は、最終的な回答文を検索するまでの時間を短縮することができる。
尚、談話範囲決定部340は、上記の如く、第一形態素情報と談話範囲群とを照合し、談話範囲群に第一形態素情報の形態素が含まれていれば、その形態素を談話範囲として決定していたが、これに限定されるものではなく、鸚鵡返し判定部330で直前に検索された鸚鵡返し要素の形態素、又は利用者が発話した発話内容を構成する形態素を談話範囲として決定しても良い。後述する省略文補完部350は、上記談話範囲決定部340で決定された談話範囲を用いて、その談話範囲を、形態素が省略されている第一形態素情報に付加することができる。
省略文補完部350は、文節解析部420で抽出された第一形態素情報に基づいて第一形態素情報を構成する各属性(サブジェクト、オブジェクト、アクションなど)の中から、形態素を含まない属性を検索する属性検索手段である。また、省略文補完部350は、検索した属性に基づいて、属性に、談話範囲決定部340で検索された談話範囲を構成する形態素を付加する形態素付加手段でもある。
具体的に、談話範囲決定部340から話題検索命令信号が入力された省略文補完部350は、入力された談話検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報からなる発話内容が省略文であるかを判定し、第一形態素情報からなる発話内容が省略文である場合には、第一形態素情報が属する談話範囲の形態素を、第一形態素情報に付加する。
例えば、省略文補完部350は、入力された話題検索命令信号に含まれる第一形態素情報を構成する形態素が(監督;*;*)(監督は?)(この文は、”何の”監督であるかが不明であるので、省略文を意味する。)である場合には、前に談話範囲決定部340で決定された談話範囲(A映画名;このA映画名は映画のタイトルを示すものである)に属する第一形態素情報であれば、第一形態素情報を構成する形態素に、決定された談話範囲(A映画名)を第一形態素情報に付加(”A映画名”の監督;*;*)する。
即ち、第一形態素情報をW、決定された談話範囲をDとすると、省略文補完部350は、第一形態素情報Wに談話範囲Dを付加し、付加後の第一形態素情報を話題検索命令信号に含めて話題検索部360に出力する。
これにより、第一形態素情報が省略文であり、日本語として明解でない場合であっても、省略文補完部350は、第一形態素情報がある談話範囲に属している場合には、その談話範囲D(A映画名)を第一形態素情報W(監督;*;*)に付加し、第一形態素情報をW’(A映画名の監督;*;*){A映画名の監督は?}として扱うことができるので、利用者の発話内容が省略文である場合であっても、前に決定された談話範囲に基づいて省略文を補完することができ、省略文を明確にすることができる。
このため、省略文補完部350が、第一形態素情報を構成する発話内容が省略文であっても、第一形態素情報を構成する発話内容が適正な日本語となるように、第一形態素情報に特定の形態素を補完することができるので、話題検索部360は、補完後の第一形態素情報に基づいて、第一形態素情報に関連する最適な「話題タイトル」(第二形態素情報)を取得することができ、回答文検索部370は、話題検索部360で取得された「話題タイトル」に基づいて利用者の発話内容により適した回答内容を出力することができる。
話題検索部360は、文節解析部420で抽出された第一形態素情報又は省略文補完部350で補完された第一形態素情報と、各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報を構成する形態素を含む第二形態素情報を検索する第一検索手段である。
具体的に、談話範囲決定部340又は省略文補完部350から話題検索命令信号が入力された話題検索部360は、入力された話題検索命令信号に含まれる第一形態素情報に基づいて、談話範囲決定部340で決定された談話範囲に属する各「話題タイトル」(第二形態素情報)の中から、第一形態素情報の形態素を含む「話題タイトル」を検索し、この検索結果を検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
例えば、第一形態素情報を構成する「格構成」が(佐藤;*;好きだ){佐藤は好きだ}である場合には、話題検索部360は、図12に示すように、上記「格構成」に属する各形態素(佐藤;*;好きだ)と談話範囲(佐藤)に属する各話題タイトル1−1〜1−4とを照合し、各話題タイトル1−1〜1−4の中から「格構成」に属する各形態素(佐藤;*;好きだ)と一致(又は近似)する話題タイトル1−1(佐藤;*;好きだ)を検索し、この検索結果を検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
話題検索部360から検索結果信号が入力された発話種類判定部440は、入力された検索結果信号に基づいて、該当する利用者に対して回答する特定の回答文を検索させるための回答検索命令信号(この回答検索命令信号には、判定した「発話文のタイプ」も含まれる)を回答文検索部370に出力する。
回答文検索部370は、話題検索部360で検索された第二形態素情報(話題タイトル)に基づいて、第二形態素情報に関連付けられた回答文を取得する回答取得手段である。また、回答文検索部370は、話題検索部360で検索された第二形態素情報に基づいて、特定された利用者の発話種類と第二形態素情報に関連付けられた各回答種類とを照合し、各回答種類の中から、利用者の発話種類と一致する回答種類を検索する第二検索手段でもある。
具体的に、話題検索部360から検索結果信号と、発話種類判定部440から回答検索命令信号とが入力された回答文検索部370は、入力された検索結果信号に対応する話題タイトル(検索結果によるもの;第二形態素情報)と回答検索命令信号に対応する「発話文のタイプ」(発話種類)とに基づいて、その「話題タイトル」に関連付けられている回答文群(各回答内容)の中から、「発話文のタイプ」(DA、IA、CAなど)と一致する回答種類(この回答種類は、図11に示す「回答文のタイプ」を意味する)からなる回答文を検索する。
例えば、回答文検索部370は、検索結果に対応する話題タイトルが図12に示す話題タイトル1−1(佐藤;*;好きだ)である場合は、その話題タイトル1−1に関連付けられている回答文1−1(DA、IA、CAなど)の中から、発話種類判定部440で判定された「発話文のタイプ」(例えばDA;発話種類)と一致する回答種類(DA)からなる回答文1−1(DA;(私も)佐藤が好きです)を検索し、この検索した回答文を回答文信号として管理部310に出力する。
回答文検索部370から回答文信号が入力された管理部310は、入力された回答文信号を出力部600に出力する。また、反射的判定部320から反射要素情報、又は鸚鵡返し判定部330から鸚鵡返し処理の内容が入力された管理部310は、入力された反射要素情報に対応する回答文、入力された鸚鵡返し処理の内容に対応する回答文を出力部600に出力する。
出力部600は、回答文検索部370で取得された回答文を出力する出力手段であり、本実施形態では、例えば、スピーカ、ディスプレイなどが挙げられる。具体的に、管理部310から回答文が入力された出力部600は、入力された回答文{例えば、私も佐藤が好きです}を出力する。
(会話制御装置を用いた会話制御方法)
上記構成を有する会話制御装置1による会話制御方法は、以下の手順により実施することができる。図15は、本実施形態に係る会話制御方法の手順を示すフロー図である。
先ず、入力部100が、利用者からの発話内容を取得するステップを行う(S101)。具体的に入力部100は、利用者の発話内容を構成する音声を取得し、取得した音声を音声信号として音声認識部200に出力する。また、入力部100は、利用者から入力された入力情報(音声以外)に基づいて、入力情報(音声以外)に対応する文字列を特定し、特定した文字列を文字列信号として会話制御部300に出力する。
次いで、音声認識部200が、入力部100で取得した発話内容に基づいて、発話内容に対応する文字列を特定するステップを行う(S102)。具体的には、入力部100から音声信号が入力された音声認識部200は、入力された音声信号を解析し、解析した音声信号に対応する文字列を、音声認識辞書記憶部700に格納されている辞書を用いて特定し、特定した文字列を文字列信号として会話制御部300に出力する。
そして、形態素抽出部410が、音声認識部200で特定された文字列に基づいて、文字列の最小単位を構成する各形態素を第一形態素情報として抽出するステップを行う(S103)。
具体的に、管理部310から文字列信号が入力された形態素抽出部410は、入力された文字列信号に対応する文字列と、形態素データベース450に予め格納されている名詞、形容詞、動詞などの形態素群とを照合し、文字列の中から形態素群と一致する各形態素(m1、m2、・・・)を抽出し、抽出した各形態素を抽出信号として文節解析部420に出力する。
そして、文節解析部420は、形態素抽出部410で抽出された各形態素に基づいて、各形態素を文節形式にまとめるステップを行う(S104)。具体的に、形態素抽出部410から抽出信号が入力された文節解析部420は、入力された抽出信号に対応する各形態素を用いて文節形式にまとめる。
即ち、文節解析部420は、図4に示すように、入力された抽出信号に対応する各形態素に基づいて各形態素の係り受け要素(例えば、が・は・を・・)を抽出し、抽出した係り受け要素に基づいて各形態素を各文節にまとめることを行う。 各形態素を各文節にまとめた文節解析部420は、各形態素をまとめた各文節と、各文節を構成する各形態素とを含む文型情報を文型信号として文構造解析部430及び発話種類判定部440に出力する。
その後、文構造解析部430が、文節解析部420で分節された第一形態素情報の各形態素を主体格、対象格などの各属性に分類するステップを行う(S105)。具体的に、文節解析部420から文型信号が入力された文構造解析部430は、入力された文型信号に対応する各形態素と各形態素からなる文節とに基づいて、文節に含まれる各形態素の「格構成」を決定する。
即ち、文構造解析部430は、図5に示すように、例えば、各形態素の係り受け要素が”が”又は”は”である場合は、その係り受け要素の前にある形態素がサブジェクト(主語又は主格)であると判断する。また、文構造解析部430は、例えば、各形態素の係り受け要素が”の”又は”を”である場合は、その係り受け要素の前にある形態素がオブジェクト(対象)であると判断する。
更に、文構造解析部430は、例えば、各形態素の係り受け要素が”する”である場合は、その係り受け要素の前にある形態素がアクション(述語;この述語は動詞、形容詞などから構成される)であると判断する。
各文節を構成する各形態素の「格構成」を決定した文構造解析部430は、決定した「格構成」に対応付けられた第一形態素情報に基づいて、後述する話題(トピック)の範囲を特定させるための話題検索命令信号を話題検索部360に出力する。
次いで、発話種類判定部440は、文節解析部420で特定された文節に基づいて、発話内容の種類を示す発話種類を特定するステップを行う(S106)。具体的に、文節解析部420から入力された文型信号に対応する各形態素と各形態素から構成される文節とに基づいて、「発話文のタイプ」(発話種類)を判定する。
即ち、発話種類判定部440は、入力された文型信号に対応する各文節に基づいて、その各文節と発話種類データベース460に格納されている各辞書とを照合し、各文節の中から、各辞書に関係する文要素を抽出する。各文節の中から各辞書に関係する文要素を抽出した発話種類判定部440は、抽出した文要素に基づいて、「発話文のタイプ」を判定する。
この発話種類判定部440は、後述する話題検索部360からの指示に基づいて、該当する利用者に特定の回答文を検索させるための回答検索命令信号を回答文検索部370に出力する。
次いで、反射的判定部320が、形態素抽出部410で抽出された第一形態素情報と各定型内容を照合し、各定型内容の中から、第一形態素情報を含む定型内容を検索するステップを行う(S107;反射的処理)。
具体的に、文構造解析部430から話題検索命令信号が入力された反射的判定部320は、入力された話題検索命令信号に含まれる第一形態素情報と反射要素データベース801に記憶されている各反射要素情報(定型内容)とを照合し、各反射要素情報の中から、第一形態素情報を含む反射要素情報を検索し、検索した反射要素情報を管理部310に出力する。
反射的判定部320は、各反射要素情報の中から、第一形態素情報を含む反射要素情報を検索することができない場合には、文構造解析部430から入力された話題検索命令信号を鸚鵡返し判定部330に出力する。
次いで、鸚鵡返し判定部330が、形態素抽出部410で抽出された第一形態素情報と各鸚鵡返し要素を照合し、各鸚鵡返し要素の中から、第一形態素情報を含む鸚鵡返し要素を検索するステップを行う(S108;鸚鵡返し処理)。
鸚鵡返し判定部330は、各鸚鵡返し要素の中に第一形態素情報が含まれていると判断した場合には、第一形態素情報を含む鸚鵡返し要素を取得し、取得した鸚鵡返し要素からなる回答文を管理部310に出力(鸚鵡返し処理)する。即ち、鸚鵡返し要素(前回出力された回答文、前回利用者が発話した発話内容など)をS、第一形態素情報をWとすると、鸚鵡返し判定部330は、W⊂S、W≠φの関係が成立している場合には、上記に示す鸚鵡返し処理を行う。
一方、鸚鵡返し判定部330は、各鸚鵡返し要素の中に第一形態素情報が含まれていないと判断した場合には、反射的判定部320から入力された話題検索命令信号を談話範囲決定部340に出力する。
そして、談話範囲決定部340が、文節解析部420で抽出された第一形態素と各談話範囲とを照合し、各談話範囲の中から、第一形態素情報を含む談話範囲を検索するステップを行う(S109)。
具体的に、鸚鵡返し判定部330から話題検索命令信号が入力された談話範囲決定部340は、入力された検索命令信号に基づいて、会話データベース500の中から、利用者が発話している内容について関連性のある範囲(談話範囲)を検索する。
例えば、談話範囲決定部340は、入力された話題検索命令信号に含まれる第一形態素情報が(面白い映画;*;ある){面白い映画はある?}である場合には、この第一形態素情報と談話範囲群とを照合し、談話範囲群に第一形態素情報を構成する形態素(例えば”映画”)が含まれているときは、第一形態素情報に含まれる”映画”を談話範囲として決定する。この場合、談話範囲決定部340は、第一形態素情報に談話範囲”映画”が含まれているので、入力された第一形態素情報を話題検索命令信号に含めて話題検索部360に出力する。
一方、談話範囲決定部340は、第一形態素情報に談話範囲群が含まれていない場合には、入力された第一形態素情報を話題検索命令信号に含めて省略文補完部350に出力する。
次いで、省略文補完部350が、文節解析部420で抽出された第一形態素情報に基づいて第一形態素情報を構成する各属性(サブジェクト、オブジェクト、アクションなど)の中から、形態素を含まない属性を検索するステップを行う。その後、省略文補完部350が、検索した形態素を含まない属性に基づいて、その属性に、前に談話範囲決定部340で検索された談話範囲を構成する形態素を付加するステップを行う(S110;省略文を補完)。
具体的に、談話範囲決定部340から話題検索命令信号が入力された省略文補完部350は、入力された談話検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報からなる発話内容が省略文であるかを判定し、第一形態素情報からなる発話内容が省略文である場合には、第一形態素情報が属する談話範囲の形態素を、第一形態素情報に付加する。
例えば、省略文補完部350は、入力された話題検索命令信号に含まれる第一形態素情報を構成する形態素が(監督;*;*)(監督は?)(この文は、”何の”監督であるかが不明であるので、省略文を意味する。)である場合には、談話範囲決定部340で決定された談話範囲(A映画名;このA映画名は映画のタイトルを示すものである)に属する第一形態素情報であれば、第一形態素情報を構成する形態素に、決定された談話範囲の形態素(A映画名)を第一形態素情報に付加(”A映画名”の監督;*;*)する。
即ち、第一形態素情報をW、決定された談話範囲をDとすると、省略文補完部350は、第一形態素情報Wに談話範囲Dを付加し、付加後の第一形態素情報を話題検索命令信号に含めて話題検索部360に出力する。
次いで、話題検索部360が、文節解析部420で抽出された第一形態素情報又は省略文補完部350で補完された第一形態素情報と、各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報を構成する形態素を含む第二形態素情報を検索するステップを行う(S111)。
具体的に、談話範囲決定部340又は省略文補完部350から話題検索命令信号が入力された話題検索部360は、入力された話題検索命令信号に含まれる第一形態素情報に基づいて、談話範囲決定部340で決定された談話範囲に属する各「話題タイトル」(第二形態素情報)の中から、第一形態素情報の形態素を含む「話題タイトル」を検索し、この検索結果を検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
例えば、第一形態素情報を構成する「格構成」が(佐藤;*;好きだ){佐藤は好きだ}である場合には、話題検索部360は、図12に示すように、上記「格構成」に属する各形態素(佐藤;*;好きだ)と談話範囲(佐藤)に属する各話題タイトル1−1〜1−4とを照合し、各話題タイトル1−1〜1−4の中から「格構成」に属する各形態素(佐藤;*;好きだ)と一致(又は近似)する話題タイトル1−1(佐藤;*;好きだ)を検索し、この検索結果を検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
話題検索部360から検索結果信号が入力された発話種類判定部440は、入力された検索結果信号に基づいて、該当する利用者に対して回答する特定の回答文を検索させるための回答検索命令信号(この回答検索命令信号には、判定した「発話文のタイプ」も含まれる)を回答文検索部370に出力する。
そして、回答文検索部370が、話題検索部360で検索された第二形態素情報に基づいて、特定された利用者の発話種類と第二形態素情報に関連付けられた各回答種類とを照合し、各回答種類の中から、利用者の発話種類と一致する回答種類を検索し、検索した回答種類に関連付けられている回答文を取得するステップを行う(S112)。
具体的に、話題検索部360から検索結果信号と、発話種類判定部440から回答検索命令信号とが入力された回答文検索部370は、入力された検索結果信号に対応する話題タイトル(検索結果によるもの;第二形態素情報)と回答検索命令信号に対応する「発話文のタイプ」(発話種類)とに基づいて、その「話題タイトル」に関連付けられている回答文群(各回答内容)の中から、「発話文のタイプ」(DA、IA、CAなど)と一致する回答種類(この回答種類は、図11に示す「回答文のタイプ」を意味する)からなる回答文を検索する。
例えば、回答文検索部370は、検索結果に対応する話題タイトルが図12に示す話題タイトル1−1(佐藤;*;好きだ)である場合は、その話題タイトル1−1に関連付けられている回答文1−1(DA、IA、CAなど)の中から、発話種類判定部440で判定された「発話文のタイプ」(例えばDA;発話種類)と一致する回答種類(DA)からなる回答文1−1(DA;(私も)佐藤が好きです)を検索し、この検索した回答文を回答文信号として管理部310に出力する。
次いで、回答文検索部370から回答文信号が入力された管理部310は、入力された回答文信号を出力部600に出力する。また、反射的判定部320から反射要素情報、又は鸚鵡返し判定部330から鸚鵡返し処理の内容が入力された管理部310は、入力された反射要素情報に対応する回答文、入力された鸚鵡返し処理の内容に対応する回答文を出力部600に出力する。管理部310から回答文が入力された出力部600は、入力された回答文{例えば、私も佐藤が好きです}を出力する(S113)。
(会話制御システム及び会話制御方法による作用及び効果)
上記構成を有する本願に係る発明によれば、反射的判定部320が、利用者から発話された発話内容を構成する第一形態素情報と予め記憶された各定型内容とを照合し、各定型内容の中から、第一形態素情報を含む定型内容を検索することができるので、反射的判定部320は、例えば第一形態素情報が”こんにちは”などの定型内容である場合には、この定型内容と同一の定型内容”こんにちは”等を回答することができる。
また、反射的判定部320は、利用者の発話内容が定型内容である場合には、その定型内容(挨拶など)を回答するので、利用者は、最初に、会話制御装置1との間で意思の疎通をしているような感覚を味わうことができる。
また、鸚鵡返し判定部330が、現在の第一形態素情報と過去の回答内容とを照合し、現在の第一形態素情報が過去の回答内容に含まれていない場合には、予め記憶してある合意内容を取得することができるので、鸚鵡返し判定部330は、利用者から現在入力された入力情報と過去の回答内容とが一致していれば、利用者が過去の回答内容に対して鸚鵡返し(利用者が回答内容に対して聞き直していること)の入力情報を入力したものと断定することができる。
この場合、鸚鵡返し判定部330は、利用者が過去の回答内容に対して鸚鵡返しを行っているので、記憶されている合意内容を取得し、取得した合意内容(例えば、”その通りです”など)を出力することができる。これにより、利用者は、会話制御装置1から出力された回答内容の意味が分からなければ、もう一度聞き直して、再度回答内容を聞き直すことができるので、恰も他の利用者と会話しているような感覚を味わうことができる。
また、鸚鵡返し判定部330が、現在の第一形態素情報と過去の第一形態素情報とを照合し、現在の第一形態素情報が過去の第一形態素情報に含まれる場合には、反発内容を取得することができるので、鸚鵡返し判定部330は、前回入力された入力情報が今回入力された入力情報に含まれている場合には、利用者が前の入力情報と同一の内容を反復して入力したものと判断することができ、利用者が会話制御装置からの回答内容に対して適切に回答していないものと断定することができる。
この場合、鸚鵡返し判定部330は、利用者が前回の回答内容に対して適切に回答していないので、利用者に対して反発するため、記憶されている反発内容を取得し、取得した反発内容を出力する。これにより、利用者は、会話制御装置1からの回答内容に対して適切な入力情報を入力しなければ、会話制御装置1から反発内容が出力されるので、恰も他の利用者と会話しているような感覚を味わうことができる。
また、話題検索部360は、第一形態素情報と近似する第二形態素情報を検索するには、”談話範囲”に属する各第二形態素情報と第一形態素情報とを照合すればよく、”全て”の第二形態素情報と第一形態素情報とを照合する必要がないので、第一形態素情報と近似している第二形態素情報を検索するまでの時間を短縮することができる。
この結果、話題検索部360が、第一形態素情報と近似している第二形態素情報を短時間で検索(ピンポイント検索)することができるので、回答文検索部370は、話題検索部360で検索された第二形態素情報に基づいて第二形態素情報に関連付けられている回答文を短時間で取得することができ、会話制御装置1は、利用者からの発話内容に対して迅速に回答することができる。
また、話題検索部360が、各第二形態素情報の中から、第一形態素情報を構成する形態素(利用者の発話内容を構成する要素)を含む第二形態素情報を検索し、回答文検索部370が、話題検索部360で検索された第二形態素情報に基づいて、第二形態素情報に関連付けられた回答内容を取得することができるので、回答文検索部370は、利用者の発話内容を構成する各形態素(第一形態素情報)に基づいて、各形態素により構築される意味空間(主体、対象等)を考慮し、かかる意味空間に基づいて予め作成された回答内容を取得することができることとなり、単に発話内容の全体をキーワードとして、そのキーワードに関連付けられた回答内容を取得するよりも、より発話内容に適した回答内容を取得することができる。
また、話題検索部360は、第一形態素情報を含む第二形態素情報を検索するので、利用者の発話内容と完全に一致する第二形態素情報を検索する必要がなく、会話制御装置1を開発する開発者は、利用者から発話されるであろう発話内容に対応する膨大な回答内容を予め記憶する必要がなくなり、記憶部の容量を低減させることができる。
更に、回答文検索部370が、”談話範囲”に属する各第二形態素情報に関連付けられた回答種類(陳述、肯定、場所、反発など)の中から、利用者の発話種類と一致する回答種類を検索し、検索した回答種類に基づいて回答種類に対応付けられた回答内容を取得することができるので、会話制御装置1は、利用者の会話内容を構成する発話種類、例えば、利用者が単に意見を述べたもの、利用者が抱く感想からなるもの、利用者が場所的な要素を述べたものなどに基づいて、複数の回答内容の中から利用者の発話種類にマッチした回答内容を取得することができることとなり、該当する利用者に対してより最適な回答をすることができる。
更にまた、回答文検索部370は、談話範囲決定部340で検索された”談話範囲”にのみ属する各第二形態素情報に関連付けられた回答種類の中から、利用者の発話種類と一致する回答種類を検索(ピンポイント検索が可能)するだけでよいので、”全て”の第二形態素情報に関連付けられた回答種類と利用者の発話種類とを逐一検索する必要がなくなり、利用者の発話種類に対応する最適な回答内容を短時間で取得することができる。
最後に、省略文補完部350は、利用者の発話内容を構成する第一形態素情報が省略文であり、日本語として明解でない場合であっても、第一形態素情報がある談話範囲に属している場合には、その談話範囲を第一形態素情報に付加し、省略文からなる第一形態素情報を補完することができる。
これにより、省略文補完部350は、第一形態素情報を構成する発話内容が省略文であっても、第一形態素情報を構成する発話内容が適正な日本語となるように、第一形態素情報に特定の形態素(談話範囲を構成する形態素など)を補完することができるので、話題検索部360は、省略文補完部350で補完された補完後の第一形態素情報に基づいて、第一形態素情報に関連する最適な第二形態素情報を取得することができ、回答文検索部370は、話題検索部360で取得された第二形態素情報に基づいて利用者の発話内容により適した回答内容を出力することができる。
この結果、会話制御装置1は、利用者からの入力情報が省略文であったとしても、ニューロネットワーク、人工知能などの機能を用いることなく、過去の検索結果を通じて、その省略文が何を意味するのかを推論することができ、会話制御装置1の開発者は、ニューロネットワーク、人工知能を搭載する必要がないので、会話制御装置1のシステムをより簡便に構築することができる。
[変更例]
尚、本発明は、上記実施形態に限定されるものではなく、以下に示すような変更を加えることができる。
(第一変更例)
本変更例においては、会話データベース500は、複数の形態素の集合からなる集合群の全体を示す要素情報を、集合群に関連付けて複数記憶する要素記憶手段であってもよい。更に、形態素抽出部410は、文字列から抽出した形態素と各集合群とを照合し、各集合群中から、抽出された形態素を含む集合群を選択し、選択した集合群に関連付けられた要素情報を第一形態素情報として抽出してもよい。
図16に示すように、利用者が発話した文字列に含まれる各形態素には、類似しているものがある。例えば、図16に示すように、集合群の全体を示す要素情報を「贈答」とすると、「贈答」は、プレゼント、贈り物、御歳暮、御中元、お祝いなど(集合群)と相互に類似しているので、形態素抽出部410は、「贈答」に類似する形態素(上記のプレゼントなど)がある場合には、その類似する形態素については、「贈答」として取り扱うことができる。
即ち、形態素抽出部410は、例えば、文字列から抽出した形態素が「プレゼント」である場合には、図16に示すように、「プレゼント」を代表する要素情報が「贈答」であるので、上記「プレゼント」を「贈答」に置き換えることができる。
これにより、形態素抽出部410が相互に類似する形態素を整理することができるので、会話制御装置を開発する開発者は、相互に類似した各第一形態素情報から把握される意味空間に対応した第二形態素情報及び第二形態素情報に関係する回答内容を逐一作成する必要がなくなり、結果的に、記憶部に格納させるデータ量を低減させることができる。
(第二変更例)
図17に示すように、本変更例においては、割合計算部361と、選択部362とを話題検索部360に備えてもよい。
割合計算部361は、形態素抽出部410で抽出された第一形態素情報と各第二情報とを照合し、各第二形態素情報毎に、第二形態素情報に対して第一形態素情報が占める割合を計算する計算手段である。
具体的に、文構造解析部430から話題検索命令信号が入力された割合計算部361は、図17に示すように、入力された話題検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報と会話データベース500に格納されている談話範囲に属する各話題タイトル(第二形態素情報)とを照合し、各話題タイトル毎に、それぞれの話題タイトルの中に、第一形態素情報が占める割合を計算する。
例えば、図17に示すように、利用者から発話された発話文を構成する第一形態素情報が(佐藤;*;好きだ){佐藤は好きだ}である場合は、割合計算部361は、「格構成」に属する各形態素(佐藤;*;好きだ)と話題タイトルに含まれる各形態素(佐藤;*;好きだ)とを照合し、上記話題タイトルに、「格構成」に属する各形態素(佐藤;*;好きだ)が含まれる割合を、100%であると計算する。割合計算部361は、これらの計算を話題タイトル毎に行い、計算した各割合を割合信号として選択部362に出力する。
選択部362は、割合計算部361で各第二形態素情報毎に計算された各割合の大きさに応じて、各第二形態素情報の中から、一の第二形態素情報を選択する選択手段である。
具体的に、割合計算部361から割合信号が入力された選択部362は、入力された割合信号に含まれる各割合(「格構成」の要素/「話題タイトル」の要素×100)の中から、例えば割合の高い話題タイトルを選択する(図18参照)。割合の高い話題タイトルを選択した選択部362は、選択した話題タイトルを検索結果信号として回答文検索部370及び発話種類判定部440に出力する。回答文検索部370は、選択部362で選択された話題タイトルに基づいて、話題タイトルに関連付けられた回答文を取得する。
これにより、選択部362が、各第二形態素情報毎に、第二形態素情報に対して第一形態素情報が占める割合を計算し、各第二形態素情報毎に計算された各割合の大きさに応じて、各第二形態素情報の中から、一の第二形態素情報を選択することができるので、選択部362は、例えば、第一形態素情報(利用者の発話内容を構成するもの)が第二形態素情報に占める割合の大きい第二形態素情報を、複数ある第二形態素情報群の中から取得することができれば、第一形態素情報から把握される意味空間を踏襲した第二形態素情報をより的確に取得することができ、結果的に、回答文検索部370は、利用者の発話内容に対して最適な回答をすることができる。
また、選択部362は、複数の話題タイトルの中から、割合計算部361で計算された割合の高い話題タイトルを選択することができるので、利用者の発話文に含まれる「格構成」に属する各形態素と会話データベース500に格納されている各話題タイトルとが完全に一致しなくても、「格構成」に属する各形態素に密接する話題タイトルを取得することができる。
この結果、選択部362が第一形態素情報を構成する「格構成」に密接する話題タイトルを取得することができるので、会話制御装置1を開発する開発者は、第一形態素情報を構成する「格構成」と完全に一致する話題タイトルを会話データベース500に逐一格納する必要がなくなるので、会話データベース500の容量を低減させることができる。
更に、割合計算部361は、談話範囲決定部340で検索された”談話範囲”にのみ属する各第二形態素情報毎に、第二形態素情報に対して第一形態素情報が占める割合を計算するので、”全て”の第二形態素情報に対して第一形態素情報が占める割合を計算する必要がなくなり、第一形態素情報から構成される意味空間を踏襲した第二形態素情報をより短時間で取得することができ、結果的に、取得した第二形態素情報に基づいて利用者からの発話内容に対しての最適な回答内容を迅速に出力することができる。
尚、割合計算部361は、分類された各属性に属する第一形態素情報の各形態素と、予め記憶された各属性に属する各第二形態素情報の各形態素とを各属性毎に照合し、各第二形態素情報の中から、少なくとも一の属性に第一形態素情報の各形態素を含む第二形態素情報を検索する第一検索手段であってもよい。
具体的に、話題検索命令信号が入力された割合計算部361は、入力された話題検索命令信号に含まれる「格構成」の各「格」(サブジェクト;オブジェクト;アクション)毎に、その「格」に属する各形態素と、同一の「格」からなる話題タイトルの「格」に属する各形態素とを照合し、互いの「格」を構成する形態素が同一か否かを判定する。
例えば、図19に示すように、割合計算部361は、「格構成」の「格」の形態素が(犬;人;噛んだ){犬が人を噛んだ}である場合は、それらの形態素”犬”、”人”、”噛んだ”と、それらの形態素を構成する「格」と同一の「格」からなる話題タイトルの形態素”犬”、”人”、”噛んだ”とを照合し、話題タイトルを構成する各形態素”犬”、”人”、”噛んだ”のうち、各形態素に対応する「格」と同一の「格」からなる「格構成」の形態素”犬”、”人”、”噛んだ”と一致している割合を算出(100%)する。
もし、話題タイトルを構成する要素が(人;犬;噛んだ){人が犬を噛んだ}である場合には、割合計算部361は、上記と同様の手順により、二つの格に属する形態素が異なるので、「格構成」を構成する形態素と「話題タイトル」との「格」毎の一致度を33%であると算出する(図19参照)。
割合を計算した割合計算部361は、各割合の中から、割合の高い話題タイトルを選択し、選択した話題タイトルを検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
これにより、割合計算部361が、分類された各「格構成」(主体格、対象格など)に属する第一形態素情報の各形態素と、予め記憶された話題タイトルとを各「格」毎に照合し、各話題タイトルの中から、少なくとも一の「格」に第一形態素情報の各形態素を含む第二形態素情報を検索することができるので、割合計算部361は、通常の語順とは異なるものから構成される発話内容、例えば”人が犬を噛む”である場合には、主体格の形態素が”人”、対象格の形態素が”犬”であることから、その各「格」と一致する第二形態素情報を検索することができ、その第二形態素情報(人;犬;噛む)に関連付けられている回答内容{”本当に?”又は”意味がよくわかんないよ”など}を取得することができる。
即ち、割合計算部361は、識別が困難な発話内容、例えば”人が犬を噛む”と”犬が人を噛む”とを識別することができるので、その識別した発話内容に最適な回答、前者については例えば”本当に?”、後者については例えば”大丈夫?”をすることができる。
また、割合計算部361は、”談話範囲”に属する各第二形態素情報の中から、少なくとも一の属性に第一形態素情報の形態素を含む第二形態素情報を検索すればよいので、”全て”の第二形態素情報の中から、一の第二形態素情報を取得する必要がなくなり、第一形態素情報から構成される意味空間を踏襲した第二形態素情報をより短時間で取得することができ、結果的に、会話制御装置1は、取得した第二形態素情報に基づいて利用者からの発話内容に対しての最適な回答内容を迅速に出力することができる。
尚、選択部362は、予め定められた優先順位に従って各話題タイトルの中から、一の話題タイトルを選択してもよい。この優先順位とは、話題タイトルとして選出されるための優先度を意味するものである。この優先順位は、開発段階で開発者が予め定めるものである。
(第三変更例)
図20に示すように、本変更例においては、上記実施形態及び上記各変更例に限定されるものではなく、会話制御装置1a,1bにある通信部800と、通信ネットワーク1000を介して通信部800との間でデータの送受信をするための通信部900と、通信部900に接続された各会話データベース500b〜500dと、サーバ2a〜2cとを備えてもよい(会話制御システム)。
ここで、通信ネットワーク1000とは、データを送受信する通信網を意味するものであり、本実施形態では、例えば、インターネットなどが挙げられる。
尚、本変更例では、便宜上、会話制御装置1a,1b、会話データベース500b〜500d、サーバ2a〜2cを限定しているが、これに限定されるものではなく、更に他の会話データベースを設けてもよい。このサーバ2a〜2cには、会話データベース500a〜500dに記憶されている内容と同様の内容が記憶されている。
これにより、会話制御部300は、会話制御装置1aの内部に配置してある会話データベース500aのみならず、通信ネットワーク1000を介して、他の会話制御装置1b、会話データベース500b〜500d、サーバ2a〜2cをも参照することができるので、例えば、会話データベース500aの中から、話題検索命令信号に含まれる「格構成」に属する各形態素(第一形態素情報)と関連する談話範囲を検索することができない場合であっても、他の会話制御装置1b、会話データベース500b〜500d、サーバ2a〜2cを参照することにより、上記第一形態素情報と関連する談話範囲を検索することができ、利用者の発話文により適した回答文を検索することができる。
(第四変更例)
文構造解析部430は、特定した第一形態素情報を構成する各「格構成」及び各「格構成」に対応付けられた各形態素を会話データベース500に記憶するものであってもよい。回答文検索部370は、検索した回答文を構成する各「格構成」及び各「格構成」に対応付けられた各形態素を会話データベース500に記憶するものであってもよい。
談話範囲決定部340は、検索した談話範囲を会話データベース500に記憶するものであってもよい。話題検索部360は、検索した第二形態素情報を会話データベース500に記憶するものであってもよい。
上記第一形態素情報と、第二形態素情報と、第一形態素情報又は第二形態素情報を構成する各「格構成」及び各「格構成」に対応付けられた各形態素と、検索した回答文を構成する各「格構成」及び各「格構成」に対応付けられた各形態素と、検索した談話範囲とは、それらを相互に関連付けて履歴形態素情報として会話データベース500に記憶することができる。
省略文補完部350は、文節解析部420で抽出された第一形態素情報に基づいて第一形態素情報を構成する各属性(サブジェクト、オブジェクト、アクションなど;格構成)の中から、形態素を含まない属性を検索し、検索した属性に基づいてその属性に、会話データベース500に記憶された履歴形態素情報を付加するものであってもよい。
具体的に、談話範囲決定部340から話題検索命令信号が入力された省略文補完部350は、入力された談話検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報からなる発話内容が省略文であるかを判定し、第一形態素情報からなる発話内容が省略文(例えば、サブジェクト、オブジェクト、又はアクションに所定の形態素を有しないなど)である場合には、会話データベース500に記憶されている履歴形態情報を、第一形態素情報に付加する。
即ち、履歴形態情報に含まれるサブジェクトをS1、オブジェクトをO1、アクションA1、談話範囲をD1とし、省略された第一形態素情報をWとすると、補完後の第一形態素情報W1は、S1∪W、O1∪W、A1∪W、又はD1∪Wとして表現することができる。
話題検索部360は、省略文補完部350で補完された第一形態素情報W1と各第二形態素情報とを照合し、各「話題タイトル」(第二形態素情報)の中から、第一形態素情報W1を含む第二形態素情報を検索し、検索した話題タイトルを検索結果信号として回答文検索部370及び発話種類判定部440に出力する。
これにより、第一形態素情報からなる発話内容が省略文であり、日本語として明解でない場合であっても、省略文補完部350は、会話データベース500に記憶されている履歴形態情報を用いて、省略された第一形態素情報の形態素を補完することができるので、省略された第一形態素情報からなる発話内容を明確にすることができる。
このため、省略文補完部350が、第一形態素情報を構成する発話内容が省略文である場合には、第一形態素情報からなる発話内容が適正な日本語となるように、第一形態素情報に省略された形態素を補完することができるので、話題検索部360は、形態素が補完された第一形態素情報に基づいて、その第一形態素情報と関連する最適な「話題タイトル」(第二形態素情報)を取得することができ、回答文検索部370は、話題検索部360で取得された最適な「話題タイトル」に基づいて、利用者の発話内容により適した回答内容を出力することができる。
(第五変更例)
話題検索部360は、図21に示すように、削除部361と、談話付加部362とを備えてもよい。削除部361は、検索した第二形態素情報に基づいて、第二形態素情報と談話範囲決定部340で検索された談話範囲とを照合し、第二形態素情報を構成する各形態素の中から、談話範囲と一致する形態素を削除する削除手段である。
具体的に、省略文補完部350から話題検索命令信号が入力された話題検索部360は、入力された話題検索命令信号に含まれる第一形態素情報と、談話範囲決定部340で決定された談話範囲に属する各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報と一致する第二形態素情報を検索する。
そして、削除部361は、検索された第二形態素情報に基づいて、その第二形態素情報と談話範囲決定部340で決定された談話範囲を構成する形態素とを照合し、第二形態素情報の中から、談話範囲を構成する形態素と一致する形態素を削除し、形態素が削除された第二形態素情報を削除信号として談話付加部362に出力する。
即ち、削除部361は、第二形態素情報を構成する各形態素t1から、談話範囲決定部340で決定された現在の談話範囲D2(このD2は、形態素からなるものである)を取り除く(取り除いた結果をt2とすると、t2=t1−D2)。
談話付加部362は、削除部361で形態素が削除された第二形態素情報に基づいて、談話範囲決定部340で検索された談話範囲に関連付けられた他の談話範囲を取得し、取得した他の談話範囲を構成する形態素を、第二形態素情報に付加する談話付加手段である。
具体的には、現在の談話範囲D2が回答文K1と関連性のある談話範囲をDKとすると、回答文K1又は現在の談話範囲D2と関連性(兄弟関係にあるもの)のある他の談話範囲D3は、D3=D2∪DKとして表現することができるので、他の談話範囲D3を構成する形態素を付加した後の第二形態素情報W2は、W2=t2∪D3とすることができる。
例えば、第二形態素情報を構成する各形態素t1が(A映画名;*;面白い){A映画名は面白い?}であり、談話範囲決定部340で決定された現在の談話範囲D2が(A映画名)である場合には、削除部361は、先ず、各形態素t1(A映画名;*;面白い)から談話範囲D2(A映画名)を削除し、削除した結果をt2(*;*;面白い)とする(t2=t1−D2)。
現在の談話範囲D2(A映画名)と関連性のある他の談話範囲D3が”B映画名”である場合には、他の談話範囲D3を構成する形態素を付加した後の第二形態素情報W2は、t2∪D3であるので、(B映画名;*;面白い){B映画名は面白い?}とすることができる。
これにより、利用者の発話内容が”A映画名は面白い?”である場合には、談話付加部362は、利用者の発話内容を構成する各形態素(A映画名;*;面白い)と一致する第二形態素情報(A映画名;*;面白い)を、他の第二形態素情報(B映画名;*;面白い){B映画名は面白い?}に変更することができるので、回答文検索部370は、談話付加部362で変更された第二形態素情報に関連付けられた回答文(例えば、”B映画名は面白いよ”)を取得し、取得した回答文を出力することができる。
この結果、回答文検索部370は、利用者の発話内容に対する回答文を出力するわけではないが、談話付加部362で付加された形態素を含む第二形態素情報に基づいて、発話内容に関連する回答文を出力することができるので、出力部600は、回答文検索部370で検索された回答文に基づいて、さらに人間味のある回答文を出力することができる。
尚、談話付加部362は、形態素が削除された第二形態素情報に他の談話範囲を付加するものだけに限定されるものではなく、形態素が削除された第二形態素情報に履歴形態素情報(会話データベース500に記憶されている)を付加するものであってもよい。
(第六変更例)
話題検索部360は、各第二形態素情報の中から、第一形態素情報を含む第二形態素情報を検索することができない場合に、第一形態素情報と各回答内容とを照合し、各回答内容の中から、第一形態素情報を含む回答内容を検索することができたときは、検索した回答内容に関連付けられている第二形態素情報を取得する第一検索手段であってもよい。
具体的に、省略文補完部350から話題検索命令信号が入力された話題検索部360は、入力された話題検索命令信号に含まれる第一形態素情報に基づいて、第一形態素情報と各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報と一致する第二形態素情報を取得することができない場合には、図22に示すように、第一形態素情報と、第二形態素情報に関連付けられている回答文とを照合する。
この照合により、話題検索部360は、回答文の中に第一形態素情報を構成する形態素(アクション又はアクションに対応付けられた形態素)が含まれていると判断した場合には、その回答文に関連付けられている第二形態素情報を検索する。
これにより、話題検索部360は、各第二形態素情報の中から、第一形態素情報と一致する第二形態素情報を検索することができなくても、各回答文の中から、第一形態素情報を構成する形態素(アクション又はアクションに対応付けられた形態素)を含む回答文を特定し、この特定した回答文に関連付けられている第二形態素情報を検索することができるので、利用者の発話内容を構成する第一形態素情報に対応する第二形態素情報を適切に検索することができる。
この結果、話題検索部360が第一形態素情報に対応する最適な第二形態素情報を検索することができるので、回答文検索部370は、話題検索部360で検索された最適な第二形態素情報に基づいて、利用者の発話内容に対する適切な回答内容を取得することができる。
[プログラム]
上記会話制御システム及び会話制御方法で説明した内容は、パーソナルコンピュータ等の汎用コンピュータにおいて、所定のプログラム言語を利用するための専用プログラムを実行することにより実現することができる。
ここで、プログラム言語としては、本実施形態では、利用者が求める話題、ある事柄において利用者に対して抱く感情度、又は陳述文、肯定文、疑問文、反発文などの種類をその意味内容に応じて形態素と関連付けて階層的にデータベースに蓄積するための言語、例えば、発明者らが開発したDKML(Discourse Knowledge Markup Language)、XML(eXtensible Markup Language)、C言語等が挙げられる。
即ち、会話制御装置1は、各会話データベース500a〜500dに格納されているデータ(第二形態素情報、定型内容、回答文、回答種類、集合群、談話範囲、要素情報などの記憶情報)、その他の各部を、DKML(Discourse Knowledge Markup Language)等で構築し、この構築した記憶情報等を利用するためのプログラムを実行することにより実現することができる。
このような本実施形態に係るプログラムによれば、利用者の発話内容を構成する各形態素を特定し、特定した各形態素から把握される意味内容を解析して、解析した意味内容に関連付けられている予め作成された回答内容を出力することで、利用者の発話内容に対応する最適な回答内容を出力することができるという作用効果を奏する会話制御装置、会話制御システム及び会話制御方法を一般的な汎用コンピュータで容易に実現することができる。
また、会話制御装置1を開発する開発者は、利用者の発話内容に対する回答内容を検索するための第二形態素情報等を、データベースにおいて前記言語を用いて階層的に構築することができるので、会話制御装置1は、利用者の発話内容に基づいて発話内容に対する回答内容を、階層的な手順を経てデータベースから取得することができる。
即ち、会話制御装置1は、利用者の発話内容の階層(例えば、データベースに蓄積されている第二形態素情報に対して上位概念にあるのか、又は下位概念にあるのか)を見極めて、見極めた階層に基づいて予め蓄積された各回答内容の中から、適切な回答内容を取得することができる。
このため、会話制御装置1は、利用者の発話内容からなる第一形態素情報と、予め記憶されている”全て”の第二形態素情報とを逐一照合することなく、ある特定の階層に属する各第二形態素情報と第一形態素情報とを照合すればよいので、第一形態素情報と近似する第二形態素情報を短時間で取得することができる。
更に、上記通信部800と通信部900との間の通信は、通信ネットワーク1000を介して、DKML等からなるプロトコルによってデータを送受信してもよい。これにより、会話制御装置1は、例えば、会話制御装置1に利用者の発話内容に適した回答内容がない場合には、通信ネットワーク1000を通じて、DKML等の約束事に従って、利用者の発話内容に適した回答内容(DKMLなどで記述されたもの)を検索し、検索した回答内容を取得することができる(図20参照)。
尚、プログラムは、記録媒体に記録することができる。この記録媒体は、図23に示すように、例えば、ハードディスク1100、フロッピー(登録商標)ディスク1200、コンパクトディスク1300、ICチップ1400、カセットテープ1500などが挙げられる。このようなプログラムを記録した記録媒体によれば、プログラムの保存、運搬、販売などを容易に行うことができる。
[第二実施形態]
(情報処理システムの基本構成)
本発明の第二実施形態について図面を参照しながら説明する。図24は、本実施形態に係る情報処理システム(会話制御システム)の内部構造を示したものである。同図に示すように、情報処理システムは、第一実施形態における会話制御装置1(情報処理装置)の内部構造とほぼ同じであるが、会話制御部300にランク付部380(ランク付手段)を有する点で相違する。この相違する点以外は、第一実施形態及び変更例の構造と同じであるので、相違する点以外の構造についての説明は、省略する。
第一実施形態では、会話制御装置1が、利用者からの入力情報に基づいて入力情報に対応する最適な回答文を取得する処理について説明したが、本実施形態では、会話制御部300にあるランク付部380が、利用者からの入力情報に基づいて利用者に対して抱く感情度等をランク付する処理について説明する。具体的な説明は以下の通りである。
ランク付部380は、利用者から入力された入力情報に基づいて、利用者に対して抱く感情度等としてランク付するものであり、本実施形態では、図24に示すように、感情状態判定部381と、理解状態判定部382と、対立状態判定部383とを有する。ここで、感情度とは、会話制御装置1が入力情報に対して抱く感情の度合いを意味するものである。この感情度は、本実施形態では、入力情報に基づいて後述する感情状態判定部381により一義的に判定される。
このランク付部380は、談話データベースに格納されている「談話イベント」テーブルに基づいて、利用者に対して抱く感情度等を判定する。ここで、「談話イベント」テーブルは、図25に示すように、本実施形態では、第一形態素情報が談話範囲と関連性(結束性)を有する要因となることを示す結束要因(cohere)、第一形態素情報が現在の談話範囲と関連性を有しない要因となることを示す話題変更(shift)からなるものである。
具体的に、結束要因は、図26に示すように、本実施形態では、結束要因(−)と結束要因(+)とからなる。結束要因(−)は、同図に示すように、第一形態素情報が前の談話範囲に属し、その話題タイトルに属する「感情度 低」に関連付けられた話題タイトルが話題検索部360で検索されたことを意味する。ここで、「感情度 低」とは、会話制御装置1が、話題タイトルに対して抱く感情度を低く(例えば、会話制御装置1が話題タイトルに対して余り関心がない場合など)設定していることを意味する。
結束要因(+)は、同図に示すように、第一形態素情報が前の談話範囲に属し、その談話範囲に属する「感情度 高」に関連付けられた話題タイトルが話題検索部360で検索されたことを意味する。ここで、「感情度 高」とは、会話制御装置1が、話題タイトルに対して抱く感情度を高く(例えば、会話制御装置1が話題タイトルに対して関心がある場合など)設定していることを意味する。
これら結束要因(−)(+)は、図26に示すように、鸚鵡返し判定部330による”条件付”鸚鵡返し処理の結果、省略文補完部350による省略文補完処理の結果に基づいて、ランク付部380で決定される。
また、話題変更は、図26に示すように、話題変更(−)と話題変更(+)とからなるものである。話題変更(−)は、同図に示すように、話題検索部360で検索された現在の話題タイトルが、後に「感情度 低」に関連付けられた他の話題タイトルに変更されたことを意味する。
話題変更(+)は、同図に示すように、話題検索部360で検索された現在の話題タイトルが、後に「感情度 高」に関連付けられた他の話題タイトルに変更されたことを意味する。これら話題変更(−)(+)は、図26に示すように、談話範囲決定部340による談話範囲の検索結果に基づいてランク付部380で決定されるものである。
また、「談話範囲イベント」テーブルは、上記の他に、第一形態素情報が現在の話題を中断する要因となることを示す中断要因(interruput)、第一形態素情報が第二形態素情報よりも難解な情報となることを示す難解要因(harass)、第一形態素情報が第二形態素情報に対して対立する要因となることを示す対立要因(oppose)等からなるものである。
図24に示すように、中断要因は、鸚鵡返し判定部330による鸚鵡返し処理、反射的判定部320による反射的処理に基づいて、ランク付部380により決定される。難解要因は、話題検索部360による話題タイトル(第二形態素情報)の検索結果に基づいて、ランク付部380により決定されるものである。対立要因は、発話種類判定部440による発話種類の判定に基づいて、ランク付部380により決定されるものである。
感情状態判定部381は、話題検索部360による検索結果に基づいて、各第二形態素情報の中から、第一形態素情報を含む第二形態素情報が検索される頻度の大きさに応じてランク付するランク付手段である。
感情状態判定部381は、検索される頻度が低い場合には、低いランクにランク付し、検索される頻度が高い場合には、高いランクにランク付するランク付手段でもある。このランクの大きさは、利用者に対して抱く感情度、入力情報に対する理解度、利用者との間で感じる対立度として表現することができる。
感情状態判定部381で判定する感情度は、本実施形態では、例えば、図27に示すように、例えば6段階にランク付することができる。この感情度は、利用者に対して抱く感情度が高く(良くなる方向)なればなる程、同図に示す数値が上昇する方向に位置付けれれるものである。
従って、感情度がe(0)からe(3)へと遷移することによって、利用者に対して抱く感情度が高くなることを意味する。一方、感情度がe(0)からe(−2)へと遷移することによって、利用者に対して抱く感情度が低くなることを意味する。6段階のうち、基準となる感情度は、本実施形態では、e(0)であるとする。
また、感情度のランク付は、本実施形態では、感情マイナス要因、感情プラス要因、話題変更(+)(−)を用いて行うものとする。この感情マイナス要因は、本実施形態では、上記説明した中断要因、難解要因、対立要因、結束要因(−)、話題変更(−)からなるものとする。感情プラス要因は、結束要因(+)、話題変更(+)からなるものである。
尚、同図では、話題変更(−)(+)により感情度が二段階以上、遷移しているが、これは、現在の話題タイトルから「感情度 ”とても”低い」又は「感情度 ”とても”高い」に関連付けられた話題タイトルが選択されたときに、感情度が2段階以上、遷移されるものである。
具体的に、感情状態判定部381は、話題検索部360で第一形態素情報を含む第二形態素情報が検索されない場合には、利用者に対して抱く感情度を低いランクにランク付する。
即ち、話題検索部360で第一形態素情報を含む第二形態素情報が検索されないということは、利用者から入力された入力情報を構成する第一形態素情報が予め記憶されている各第二形態素情報よりも難解(harass)であると擬似的に断定することができるので、感情状態判定部381は、利用者から入力された入力情報(第一形態素情報)が感情マイナス要因(難解要因)であると判断し、利用者に対して抱く感情度を低い方に設定する。
一方、感情状態判定部381は、話題検索部360で第一形態素情報を含む第二形態素情報が検索された場合には、利用者に対して抱く感情度を高いランクにランク付する。
即ち、話題検索部360で第一形態素情報を含む第二形態素情報が検索されたということは、利用者から入力された入力情報を構成する第一形態素情報が予め記憶されている各第二形態素情報よりも容易であると擬似的に断定することができるので、感情状態判定部381は、利用者から入力された入力情報を理解することができると判断し、利用者に対して抱く感情度を高い方に設定する。
また、感情状態判定部381は、談話範囲決定部340(関連性判定手段)による判定結果に基づいてランク付するランク付手段でもある。この談話範囲決定部340は、本実施形態では、検索した談話範囲を示す第一談話範囲と、その後に検索した談話範囲を示す第二談話範囲とを照合し、第二談話範囲が第一談話範囲と関連性を有するかについて判定する関連性判定手段である。
具体的に、感情状態判定部381は、談話範囲決定部340で第二談話範囲が第一談話範囲と関連性を有しないと判定された場合には、例えば利用者に対して抱く感情度を低いランクにランク付する。
即ち、談話範囲決定部340で第二話題範囲が第一話題範囲と関連性を有しないと判定されたということは、第一形態素情報を含む現在の談話範囲(第二談話範囲)がその前の談話範囲(第一談話範囲)とは異なる(前後関係の話題に結束性がない;これは”話題変更”ともいう)ものであると擬似的に断定することができるので、感情状態判定部381は、第二談話範囲に属する第一形態素情報が「感情度 低」に関連付けられた話題タイトル(第二形態素情報)に含まれる場合には、第一形態素情報が感情マイナス要因(話題変更(−))であると判断し、利用者に対して抱く感情度を低い方に設定する(図26、図27参照)。
これにより、話題変更(−)は、現在の談話範囲が他の談話範囲に変更され、変更された後の談話範囲に属する第一形態素情報が会話制御装置1にとっては面白くない内容であることを意味する。
この場合、感情状態判定部381は、第二談話範囲に属する第一形態素情報が「感情度 高」に関連付けられた話題タイトル(第二形態素情報)に含まれる場合には、第一形態素情報が感情プラス要因(話題変更(+))であると判断し、利用者に対して抱く感情度を高い方に設定することもできる。
これにより、話題変更(+)は、現在の談話範囲が他の談話範囲に変更され、変更された後の談話範囲に属する第一形態素情報が会話制御装置1にとっては面白い内容であることを意味する。
一方、感情状態判定部381は、談話範囲決定部340で第二談話範囲が第一談話範囲と関連性を有すると判定された場合には、例えば利用者に対して抱く感情度を高いランクにランク付する。
即ち、談話範囲決定部340で第二話題範囲が第一話題範囲と関連性を有すると判定されたということは、第一形態素情報を含む現在の談話範囲(第二談話範囲)がその前の談話範囲(第一談話範囲)と実質的に同一(前後関係の話題に結束性がある)のものであると擬似的に断定することができるので、感情状態判定部381は、第二談話範囲に属する第一形態素情報が「感情度 高」に関連付けられた話題タイトル(第二形態素情報)に含まれる場合には、第一形態素情報が感情プラス要因(結束要因(+))であると判断し、利用者に対して抱く感情度を高い方に設定する(図26、図27参照)。
これにより、結束要因(+)は、現在の談話範囲がその前の談話範囲と実質的に同一であり、現在の談話範囲に属する第一形態素情報が会話制御装置1にとっては面白い内容であることを意味する。
この場合、感情状態判定部381は、第二談話範囲に属する第一形態素情報が「感情度 低」に関連付けられた話題タイトル(第二形態素情報)に含まれる場合には、第一形態素情報が感情マイナス要因(結束要因(−))であると判断し、利用者に対して抱く感情度を低い方に設定することもできる。
これにより、結束要因(−)は、現在の談話範囲がその前の談話範囲と実質的に同一であるが、現在の談話範囲に属する第一形態素情報が会話制御装置1にとっては面白くない内容であることを意味する。
また、感情状態判定部381は、省略文補完部350で談話範囲を構成する形態素が第一形態素情報に付加された結果に基づいてランクにランク付するランク付手段でもある。
具体的に、省略文補完部350が、文構造解析部430で抽出された第一形態素情報を構成する各属性(主格からなる主体格、目的格からなる対象格など)の中から、形態素を含まない属性を検索する。省略文補完部350が、検索した属性に基づいて、その属性に、談話範囲決定部340で検索された談話範囲を構成する形態素を付加する。
感情状態判定部381は、省略文補完部350で談話範囲を構成する形態素が第一形態素情報に付加された場合には、利用者に対して抱く感情度を高いランクにランク付する。
即ち、省略文補完部350で第一形態素情報からなる入力情報が省略文(第一形態素情報に談話範囲が付加された場合には、この形態素が付加される前の第一形態素情報からなる入力情報は省略文であることを意味する)であると判断されたということは、利用者は、現在の談話範囲に属していることを前提に、現在の談話範囲に属する入力情報を入力しているものと考えられるので、この段階で入力された入力された入力情報は、現在の談話範囲からなる形態素を省略した省略文である傾向が高い(詳述は、第一実施形態における”省略文補完部350”の項を参照のこと)。
そこで、感情状態判定部381は、省略文補完部350で第一形態素情報が省略文であると判断された場合には、現在の談話範囲がその前の談話範囲と実質的に同一であると擬似的に断定し、この第一形態素情報が前の談話範囲と関連性を有する結束要因であると判断する。この場合、感情状態判定部381は、結束要因が結束要因(+)であれば、利用者に対して抱く感情度を高い方へと設定し、結束要因が結束要因(−)であれば、利用者に対して抱く感情度を低い方へと設定することができる。
更に、感情状態判定部381は、反射的判定部320又は鸚鵡返し判定部330による検索結果に基づいて、第一形態素情報を含む定型内容又は鸚鵡返し要素が検索される頻度の大きさに応じてランク付するランク付手段でもある。この反射的判定部320は、抽出された第一形態素情報と各定型内容とを照合し、各定型内容の中から、第一形態素情報を含む反射的要素情報を検索する定型取得手段である。具体的に、反射的判定部320が各定型内容の中から第一形態素情報と一致する定型内容を検索した場合には、感情状態判定部381は、利用者に対して抱く感情度を低いランクにランク付ける。
即ち、反射的判定部320で第一形態素情報と一致する定型内容が検索されたということは、第一形態素情報が現在の話題を中断させるための要素(中断要因;interrupt)であると擬似的に断定することができるので、感情状態判定部381は、この第一形態素情報が感情マイナス要因(中断要因)であると判断し、利用者に対して抱く感情度を低い方に設定する(図26、図27参照)。例えば利用者が会話の途中で話題とは全く関係ない”おはよう”(定型内容)を入力した場合には、”おはよう”が中断要因となる。
また、鸚鵡返し判定部330は、形態素抽出部410で抽出された現在の第一形態素情報が、形態素抽出部410で抽出された過去の回答内容(この過去の第一形態素情報(鸚鵡返し要素)は、鸚鵡返し要素データベース802に記憶されている)に含まれるかを判定するものである。
鸚鵡返し判定部330が、現在の第一形態素情報が過去の回答内容に含まれると判定した場合には、感情状態判定部381は、利用者が過去の回答内容に対して鸚鵡返し(利用者が回答内容に対して聞き直していること)しており、第一形態素情報が現在の話題を中断させるための中断要因であると擬似的に断定することができる。
この場合、感情状態判定部381は、現在の第一形態素情報が感情マイナス要因(中断要因)であるので、利用者に対して抱く感情度を低い方に設定する。(図26、図27参照)。
更に、鸚鵡返し判定部330が、形態素抽出部410で抽出された現在の形態素情報が過去の第一形態素情報(この過去の第一形態素情報は、鸚鵡返し要素データベース802に記憶されている)に含まれると判定した場合には、感情状態判定部381は、現在の第一形態素情報が過去の第一形態素情報に含まれるので、現在の話題とは関係なく、利用者が過去の入力情報と同一の入力情報を反復して入力しているものと判断することができる。
この場合、感情状態判定部381は、反復して入力された入力情報が中断要因であると判断し、利用者に対して抱く感情度を低い方に設定する(詳述は、第一実施形態における”鸚鵡返し処理”を参照のこと)。
尚、鸚鵡返し判定部330又は反射的判定部320が各定型内容の中から第一形態素情報と一致する定型内容を検索できない場合には、感情状態判定部381は、利用者に対して抱く感情度を低いランクにランク付してもよい。
更に、感情状態判定部381は、発話種類判定部440で特定された入力情報が反発文などの反発要素である場合には、利用者に対して抱く感情度を低いランクにランク付するものでもある。
ここで、反発要素とは、会話制御装置1から出力される回答内容に対して利用者が反発するための要素を意味するものであり、本実施形態では、例えば、利用者の入力情報が回答内容に対して反発的な文であることを示す反発文、利用者の入力情報が回答内容に対して否定的な文であることを示す否定文等からなるものである。
即ち、発話種類判定部440で利用者から入力された入力情報の入力種類が反発要素からなるものであると特定されたということは、利用者と会話制御装置1とが対立(oppose)していると擬似的に断定することができるので、感情状態判定部381は、この第一形態素情報が感情マイナス要因(対立要因)であると判断し、利用者に対して抱く感情度を低い方に設定する(図26、図27参照)。
理解状態判定部382は、話題検索部360で各第二形態素情報の中から第一形態素情報を含む第二形態素情報が検索されない場合には、利用者から入力された入力情報が難解(harass)(難解要因)であると判断し、入力情報に対する理解度を低いランクにランク付するランク付手段である。
即ち、話題検索部360で各第二形態素情報の中から第一形態素情報を含む第二形態素情報が検索されないということは、第一形態素情報が第二形態素情報よりも難解であると擬似的に断定することができるので、理解状態判定部382は、この第一形態素情報が難解要因であると判断し、入力情報に対する理解度を低い方へと設定する。
尚、理解状態判定部382は、話題検索部360で各第二形態素情報の中から第一形態素情報を含む第二形態素情報が検索された場合には、利用者から入力された入力情報が容易であると判断し、入力情報に対する理解度を高いランクにランク付てもよい。また、理解状態判定部382は、第一形態素情報が結束要因へと話題変更する要因である場合には、入力情報に対する理解度を高いランクにランク付てもよい。
ここで、理解度とは、利用者から入力された入力情報に対する理解の度合いを意味するものである。この理解度は、図28に示すように、本実施形態では、例えば、4段階にランク付することができる。
数値が大きくなればなる程(r(−2)からr(1)への方向)、入力情報に対してより理解が深まる方向(理解が明確に張る方向)にあることを意味する。一方、数値が小さくなればなる程(r(1)からr(−2)、入力情報に対してより理解がされなくなる方向(理解が不明確になる方向)にあることを意味する。
具体的に理解状態判定部382は、同図に示すように、r(0)を基準とし、第一形態素情報が難解要因であると判断した場合には、理解度を低い方向へと遷移(ランク付)させ、第一形態素情報が結束要因へと話題変更する要因であると判断した場合には、理解度を高い方向へと遷移させる。
また、理解状態判定部382は、第一形態素情報が中断要因又は対立要因であると判断した場合には、第一形態素情報は入力情報の理解に何ら寄与していないので、理解度のランクを現状のままに維持する(同図参照)。更に、理解状態判定部382は、感情度がプラスの方向に遷移した場合には、理解度のランクを高いランクへと遷移させる。
尚、難解要因、結束要因、話題変更、中断要因及び対立要因は、上記感情状態判定部381の項で説明した内容と同様であるので、この説明は、省略する。
対立状態判定部383は、発話種類判定部440で特定された入力情報が反発文などの反発要素(oppose;対立要因とも呼ぶ)である場合には、利用者との間の対立度を高いランクにランク付するものである。また、対立状態判定部383は、発話種類判定部440で特定された入力情報が反発文などの反発要素でない場合には、利用者との間の対立度を低いランクにランク付するものでもある。
ここで、対立度とは、会話制御装置1が利用者に対して抱く対立の度合いを意味するものである。この対立度は、図29に示すように、本実施形態では、例えば、5段階にランク付することができる。数値が大きくなればなる程、利用者に対して抱く対立度が低く(弱く)なる方向にあることを意味する。一方、数値が小さくなればなる程、利用者に対して抱く対立度が高く(強く)なる方向にあることを意味する。
具体的に対立状態判定部383は、同図に示すように、O(0)を基準とし、第一形態素情報が対立要因であると判断した場合には、対立度を低い方へと遷移(ランク付)させる。また、対立状態判定部383は、第一形態素情報が対立要因ではなく、結束要因へと談話変更する要因(反発要素でない)であると判断した場合には、対立度を高い方へと遷移させる。
更に、第一形態素情報に対する感情度が感情状態判定部381により高い方向へ設定された場合には、対立状態判定部383は、対立度を低い(対立度が弱い)方へと設定することができる。また、第一形態素情報に対する感情度が感情状態判定部381により低い方向へ設定された場合には、対立状態判定部383は、対立度を高い(対立度が強い)方へと設定することもできる。
また、対立状態判定部383は、第一形態素情報が中断要因又は難解要因である場合には、第一形態素情報は回答内容に対して反発するものではないので、対立度のランクを現状のままに維持する(同図参照)。
上記感情状態判定部381、理解状態判定部382又は対立状態判定部383は、それぞれ判定した感情度、理解度、対立度を出力部600に出力し、出力部は、入力された感情度、理解度、対立度を表示等させる。
(情報処理システムを用いた情報処理方法)
上記構成を有する情報処理システムによる情報処理方法は、以下の手順により実施することができる。図30は、本実施形態に係るランク付方法の手順を示すフロー図である。
同図に示すように、先ず、入力部100が、利用者から入力された入力情報を取得するステップを行う(S201)。そして、形態素抽出部410が、入力部100で取得された入力情報に基づいて、入力情報を構成する各形態素を抽出するステップを行う(S202)。
その後、文構造解析部430が、形態素抽出部410で抽出された各形態素に基づいて、各形態素を文節形式にまとめるステップを行う(S203)。一つの文節形式に属する各形態素は、本実施形態では、第一形態素情報であるとする。
次いで、反射的判定部320が、文構造解析部430で特定された第一形態素情報に基づいて、反射的処理をするステップを行う(S204、S205)。そして、鸚鵡返し判定部330が、文構造解析部430で特定された第一形態素情報に基づいて、鸚鵡返し処理、又は条件付鸚鵡返し処理をするステップを行う(S206)。
その後、談話範囲決定部340が、第一形態素情報と各談話範囲とを照合し、各談話範囲の中から、第一形態素情報を含む談話範囲を検索するステップを行う(S207)。更に、省略文補完部350が、第一形態素情報からなる入力情報が省略文である場合には、この第一形態素情報に談話範囲からなる形態素を付加するステップを行う(S208)。
そして、話題検索部360が、特定された第一形態素情報又は形態素が付加された第一形態素情報に基づいて、第一形態素情報と各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報を含む第二形態素情報を検索するステップを行う(S209)。上記S201〜S208の具体的な処理は、第一実施形態で説明した”会話制御方法”の内容と同様であるので、これらの処理の詳細は省略する。
次いで、感情状態判定部381が、反射的判定部320、鸚鵡返し判定部330、談話範囲決定部340、省略文補完部350又は話題検索部360による検索結果に基づいて、利用に対して抱く感情度をランク付するステップを行う(S210)。具体的に、感情状態判定部381は、話題検索部360で第一形態素情報を含む第二形態素情報が検索されない場合には、利用者に対して抱く感情度を低いランクにランク付する。
即ち、話題検索部360で第一形態素情報を含む第二形態素情報が検索されないということは、利用者から入力された入力情報を構成する第一形態素情報が予め記憶されている各第二形態素情報よりも難解(harass)であると擬似的に断定することができるので、感情状態判定部381は、利用者から入力された入力情報(第一形態素情報)が感情マイナス要因(難解要因)であると判断し、利用者に対して抱く感情度を低い方に設定する。
一方、感情状態判定部381は、話題検索部360で第一形態素情報を含む第二形態素情報が検索された場合には、利用者に対して抱く感情度を高いランクにランク付する。
即ち、話題検索部360で第一形態素情報を含む第二形態素情報が検索されたということは、利用者から入力された入力情報を構成する第一形態素情報が予め記憶されている各第二形態素情報よりも容易であると擬似的に断定することができるので、感情状態判定部381は、利用者から入力された入力情報を理解することができると判断し、利用者に対して抱く感情度を高い方に設定する。
また、感情状態判定部381は、談話範囲決定部340による判定結果に基づいて、利用者に対して抱く感情度をランク付するステップも行うことができる。この談話範囲決定部340は、本実施形態では、検索した談話範囲を示す第一談話範囲と、その後に検索した談話範囲を示す第二談話範囲とを照合し、第二談話範囲が第一談話範囲と関連性を有するかについて判定するものである。
具体的に、感情状態判定部381は、談話範囲決定部340で第二談話範囲が第一談話範囲と関連性を有しないと判定された場合には、利用者に対して抱く感情度を低いランクにランク付する。
即ち、談話範囲決定部340で第二話題範囲が第一話題範囲と関連性を有しないと判定されたということは、第一形態素情報を含む現在の談話範囲(第二談話範囲)がその前の談話範囲(第一談話範囲)とは異なる(前後関係の話題に結束性がない;これは”話題変更”ともいう)ものであると擬似的に断定することができるので、感情状態判定部381は、第二談話範囲に属する第一形態素情報が「感情度 低」に関連付けられた話題タイトル(第二形態素情報)に含まれる場合には、第一形態素情報が感情マイナス要因(話題変更(−))であると判断し、利用者に対して抱く感情度を低い方に設定する(図26、図27参照)。
これにより、話題変更(−)は、現在の談話範囲が他の談話範囲に変更され、変更された後の談話範囲に属する第一形態素情報が会話制御装置1にとっては面白くない内容であることを意味する。
この場合、感情状態判定部381は、第二談話範囲に属する第一形態素情報が「感情度 高」に関連付けられた話題タイトル(第二形態素情報)に含まれる場合には、第一形態素情報が感情プラス要因(話題変更(+))であると判断し、利用者に対して抱く感情度を高い方に設定することもできる。
これにより、話題変更(+)は、現在の談話範囲が他の談話範囲に変更され、変更された後の談話範囲に属する第一形態素情報が会話制御装置1にとっては面白い内容であることを意味する。
一方、感情状態判定部381は、談話範囲決定部340で第二談話範囲が第一談話範囲と関連性を有すると判定された場合には、利用者に対して抱く感情度を高いランクにランク付する。
即ち、談話範囲決定部340で第二話題範囲が第一話題範囲と関連性を有すると判定されたということは、第一形態素情報を含む現在の談話範囲(第二談話範囲)がその前の談話範囲(第一談話範囲)と実質的に同一(前後関係の話題に結束性がある)のものであると擬似的に断定することができるので、感情状態判定部381は、第二談話範囲に属する第一形態素情報が「感情度 高」に関連付けられた話題タイトル(第二形態素情報)に含まれる場合には、第一形態素情報が感情プラス要因(結束要因(+))であると判断し、利用者に対して抱く感情度を高い方に設定する(図26、図27参照)。
これにより、結束要因(+)は、現在の談話範囲がその前の談話範囲と実質的に同一であり、現在の談話範囲に属する第一形態素情報が会話制御装置1にとっては面白い内容であることを意味する。
この場合、感情状態判定部381は、第二談話範囲に属する第一形態素情報が「感情度 低」に関連付けられた話題タイトル(第二形態素情報)に含まれる場合には、第一形態素情報が感情マイナス要因(結束要因(−))であると判断し、利用者に対して抱く感情度を低い方に設定することもできる。
これにより、結束要因(−)は、現在の談話範囲がその前の談話範囲と実質的に同一であるが、現在の談話範囲に属する第一形態素情報が会話制御装置1にとっては面白くない内容であることを意味する。
また、感情状態判定部381は、省略文補完部350で談話範囲を構成する形態素が第一形態素情報に付加された場合には、利用者に対して抱く感情度を高いランクにランク付するステップも行うことができる。
具体的に、省略文補完部350が、文構造解析部430で抽出された第一形態素情報を構成する各属性(主格からなる主体格、目的格からなる対象格など)の中から、形態素を含まない属性を検索する。省略文補完部350が、検索した属性に基づいて、その属性に、談話範囲決定部340で検索された談話範囲を構成する形態素を付加する。感情状態判定部381は、省略文補完部350で談話範囲を構成する形態素が第一形態素情報に付加された場合には、利用者に対して抱く感情度を高いランクにランク付する。
即ち、省略文補完部350で第一形態素情報からなる入力情報が省略文(第一形態素情報に談話範囲が付加された場合には、この形態素が付加される前の第一形態素情報からなる入力情報は省略文であることを意味する)であると判断されたということは、利用者は、現在の談話範囲に属していることを前提に、現在の談話範囲に属する入力情報を入力しているものと考えられるので、この段階で入力された入力された入力情報は、現在の談話範囲からなる形態素を省略した省略文である傾向が高い(詳述は、第一実施形態における”省略文補完部350”の項を参照のこと)。
そこで、感情状態判定部381は、省略文補完部350で第一形態素情報が省略文であると判断された場合には、現在の談話範囲がその前の談話範囲と実質的に同一であると擬似的に断定し、この第一形態素情報が前の談話範囲と関連性を有する結束要因であると判断する。この場合、感情状態判定部381は、結束要因が結束要因(+)であれば、利用者に対して抱く感情度を高い方へと設定し、結束要因が結束要因(−)であれば、利用者に対して抱く感情度を低い方へと設定することができる。
更に、感情状態判定部381は、反射的判定部320又は鸚鵡返し判定部330による検索結果に基づいて、利用者に対して抱く感情度をランク付するステップも行うことができる。この反射的判定部320は、抽出された第一形態素情報と各定型内容とを照合し、各定型内容に中から、第一形態素情報を含む反射的要素情報を検索する定型取得手段である。具体的に、反射的判定部320が各定型内容の中から第一形態素情報と一致する定型内容を検索した場合には、感情状態判定部381は、利用者に対して抱く感情度を低いランクにランク付ける。
即ち、反射的判定部320で第一形態素情報と一致する定型内容が検索されたということは、第一形態素情報が現在の話題を中断させるための要素(中断要因;interrupt)であると擬似的に断定することができるので、感情状態判定部381は、この第一形態素情報が感情マイナス要因(中断要因)であると判断し、利用者に対して抱く感情度を低い方に設定する(図26、図27参照)。例えば利用者が会話の途中で話題とは全く関係ない”おはよう”(定型内容)を入力した場合には、”おはよう”が中断要因となる。
また、鸚鵡返し判定部330は、形態素抽出部410で抽出された現在の第一形態素情報が、形態素抽出部410で抽出された過去の回答内容(この過去の第一形態素情報は、鸚鵡返し要素データベース802に記憶されている)に含まれるかを判定するものでもある。
鸚鵡返し判定部330が、現在の第一形態素情報が過去の回答内容に含まれると判定した場合には、感情状態判定部381は、現在の第一形態素情報が過去の回答内容に含まれるので、利用者が過去の回答内容に対して鸚鵡返し(利用者が回答内容に対して聞き直していること)しており、第一形態素情報が現在の話題を中断させるための中断要因であると擬似的に断定することができる。
この場合、感情状態判定部381は、現在の第一形態素情報が感情マイナス要因(中断要因)であるので、利用者に対して抱く感情度を低い方に設定する。(図26、図27参照)。
更に、鸚鵡返し判定部330が、形態素抽出部410で抽出された現在の形態素情報と過去の第一形態素情報とを照合し、現在の第一形態素情報が過去の第一形態素情報に含まれると判定した場合には、感情状態判定部381は、現在の第一形態素情報が過去の第一形態素情報に含まれるので、現在の話題とは関係なく、利用者が過去の入力情報と同一の入力情報を単に反復して入力しているものと判断することができる。この場合、感情状態判定部381は、反復して入力された入力情報が中断要因であるので、利用者に対して抱く感情度を低い方に設定する。
尚、反射的判定部320が各定型内容の中から第一形態素情報と一致する定型内容を検索できない場合には、感情状態判定部381は、利用者に対して抱く感情度を高いランクにランク付してもよい。鸚鵡返し判定部330が現在の第一形態素情報と一致する過去の第一形態素情報又は過去の回答内容を検索できない場合には、感情状態判定部381は、利用者に対して抱く感情度を高いランクにランク付してもよい。
更にまた、感情状態判定部381は、発話種類判定部440で特定された入力情報が反発文などの反発要素である場合には、利用者に対して抱く感情度を低いランクにランク付するステップも行うことができる。
即ち、発話種類判定部440で利用者から入力された入力情報の入力種類が反発要素からなるものであると特定されたということは、利用者と会話制御装置1とが対立(oppose)していると擬似的に断定することができるので、感情状態判定部381は、この第一形態素情報が感情マイナス要因(対立要因)であると判断し、利用者に対して抱く感情度を低い方に設定する(図26、図27参照)。
次いで、理解状態判定部382が、話題検索部360で各第二形態素情報の中から第一形態素情報を含む第二形態素情報が検索されない場合には、利用者から入力された入力情報が難解(harass)(難解要因)であると判断し、入力情報に対する理解度を低いランクにランク付するステップを行う(S211)。
具体的には、話題検索部360で各第二形態素情報の中から第一形態素情報を含む第二形態素情報が検索されないということは、第一形態素情報が第二形態素情報よりも難解であると擬似的に断定することができるので、理解状態判定部382は、この第一形態素情報が難解要因であると判断し、入力情報に対する理解度を低い方へと設定する。
尚、理解状態判定部382は、話題検索部360で各第二形態素情報の中から第一形態素情報を含む第二形態素情報が検索された場合には、利用者から入力された入力情報が容易であると判断し、入力情報に対する理解度を高いランクにランク付てもよい。また、理解状態判定部382は、第一形態素情報が結束要因へと話題変更する要因である場合には、入力情報に対する理解度を高いランクにランク付てもよい。
次いで、対立状態判定部383が、発話種類判定部440で特定された入力情報が反発文などの反発要素(oppose;対立要因とも呼ぶ)である場合には、利用者との間の対立度を高いランクにランク付するステップを行う(S212)。また、対立状態判定部383は、発話種類判定部440で特定された入力情報が反発文などの反発要素でない場合には、利用者との間の対立度を低いランクにランク付するステップを行う。
その後、上記感情状態判定部381、理解状態判定部382又は対立状態判定部383は、それぞれ判定した感情度、理解度、対立度を出力部600に出力し、出力部は、入力された感情度、理解度、対立度を表示等するステップを行う(S213)。
(情報処理システム及び情報処理方法による作用及び効果)
このような本実施形態に係る発明によれば、反射的判定部320、鸚鵡返し判定部330又は話題検索部360が、第一形態素情報と各第二形態素情報とを照合し、各第二形態素情報の中から、第一形態素情報を含む第二形態素情報を検索し、感情状態判定部381が、各第二形態素情報の中から、第一形態素情報を含む第二形態素情報が検索される頻度の大きさに応じて、利用者に対して抱く感情度等としてランク付することができるので、感情状態判定部381は、例えば、ランク付した大きさを利用者に対して抱く感情度として出力(例えば、画面、音声など)することができれば、会話制御装置1は、擬似的に利用者に対して抱く感情度を特定するものとして利用することができる。
また、情報処理システムを開発する開発者は、第一形態素情報と各第二形態素情報との間で行われた検索履歴に基づいて、例えば簡単に感情度としてランク付することができるので、利用者に対して抱く感情度等を情報処理システムで計算させるための複雑なアルゴリズム又はニューラルネットワーク等を開発する必要がなくなり、結果的には本システムを開発するための開発時間を短縮させることができる。
また、談話範囲決定部340が、最初に検索された第一形態素情報と関連する第一談話範囲と、後に検索された第一形態素情報と関連する第二談話範囲との間で関連性を有するかを判定し、感情状態判定部381が、談話範囲決定部340で判定された結果に基づいて利用者に対して抱く感情度をランク付するので、感情状態判定部381は、第一形態素情報と各第二形態素情報とを照合したことによる検索結果に基づいて、利用者に対して抱く感情度をランク付するよりも、より適切に利用者に対して抱く感情度をランク付することができる。
例えば、感情状態判定部381は、第二談話範囲が第一談話範囲との間で関連性を有していなければ、現在の入力情報(利用者から入力されたもの)と前に入力された入力情報とは全く異なる内容であると判断することができるので、利用者はある話題に対して一貫性のないことを入力しているものと擬似的に断定することができ、利用者に対して抱く感情度を低く(悪い方向)設定することができる。
一方、感情状態判定部381は、第二談話範囲が第一談話範囲との間で関連性を有していれば、現在の入力情報(利用者から入力されたもの)と前に入力された入力情報とは関連性を有すると判断することができるので、利用者はある話題に対して一貫性のあることを入力しているものと擬似的に断定することができ、利用者に対して抱く感情度を高く(良い方向)設定することができる。
更に、感情状態判定部381は、省略文補完部350により第一形態素情報を構成する各属性に談話範囲の形態素が付加された場合には、第一形態素情報からなる入力情報が省略文であると判断することができ、利用者は前に検索された談話範囲を前提に入力情報を入力しているものと判断することができる。
このため、感情状態判定部381は、入力情報からなる第一形態素情報が省略文である場合には、前に検索された談話範囲を前提に入力情報を入力しているものと判断することができるので、利用者はある話題に対して一貫性のあることを入力しているものと擬似的に断定することができ、利用者に対して抱く感情度を高く(良い方向)設定することができる。
更にまた、反射的判定部320が、第一形態素情報と各定型内容とを照合し、各定型内容の中から、第一形態素情報を含む定型内容を検索し、感情状態判定部381が、この検索結果に基づいて利用者に対して抱く感情度をランク付するので、感情状態判定部381は、例えば、第一形態素情報を含む定型内容が検索された場合には、利用者はある話題に対して中断させるための入力情報を入力したものと擬似的に断定することができるので、利用者に対して抱く感情度を低いランクにランク付することができ、結果的には利用者に対して抱く感情度をより適切にランク付することができる。
一方、反射的判定部320が、第一形態素情報を含む定型内容を検索することができない場合には、感情状態判定部381は、利用者はある話題に対して中断させるための入力情報を入力しておらず、現在の話題に対して真剣に回答しているものと擬似的に断定することができるので、利用者に対して抱く感情度を高いランクにランク付することができる。
更に、発話種類判定部440が、入力情報の種類を示す入力種類を特定し、特定された入力種類が反発文などの反発要素である場合には、感情状態判定部381は、利用者に対して抱く感情度を低いランクにランクすることができ、利用者に対して抱く感情度をより適切にランク付することができる。
更にまた、理解状態判定部382は、話題検索部360で第一形態素情報を含む第二形態素情報が検索されない場合には、第一形態素情報と関連する第二形態素情報が予め記憶されていないことを意味するので、第一形態素情報からなる入力情報が第二形態素情報からなる文よりも難解であると擬似的に断定することができる。
このため、理解状態判定部382は、第一形態素情報からなる入力情報を理解することができないため、利用者はある話題に対して意味の分からないことを入力していると擬似的に断定することができ、入力情報に対する理解度を低いランクにランク付することができる。
また、理解状態判定部382が、話題検索部360で第一形態素情報と関連する第二形態素情報を検索することができた場合には、理解状態判定部382は、利用者はある話題に対して意味の分かることを入力しているものと擬似的に断定することができ、入力情報に対する理解度を高いランクにランク付することができる。
また、会話制御装置1を開発する開発者は、利用者の入力情報に対する回答内容を検索するための第二形態素情報等を、DKML等の言語を用いて階層的に構築することができるので、会話制御装置1は、利用者の入力情報に対応する第一形態素情報に基づいて第一形態素情報に関連する第二形態素情報等を、階層的な手順を経てデータベースから検索することができる。
即ち、反射的判定部320、鸚鵡返し判定部330、談話範囲決定部340又は話題検索部360は、入力情報に対応する第一形態素情報の階層(例えば、データベースに蓄積されている第二形態素情報に対して上位概念にあるのか、又は下位概念にあるのか)を見極めて、見極めた階層に基づいて予め蓄積された各第二形態素情報の中から、適切な第二形態素情報を検索することができる。
このため、反射的判定部320、鸚鵡返し判定部330、談話範囲決定部340又は話題検索部360は、利用者の入力情報からなる第一形態素情報と、予め記憶されている”全て”の第二形態素情報とを逐一照合することなく、ある特定の階層に属する”特定”の各第二形態素情報と第一形態素情報とを照合すればよいので、第一形態素情報と近似する第二形態素情報を短時間で検索することができ、結果には、検索結果に基づいて利用者に対して抱く感情度等を短時間でランク付することができる。
更に、鸚鵡返し判定部330が、現在の第一形態素情報と過去の回答内容とを照合し、現在の第一形態素情報が過去の回答内容に含まれると判定した場合には、感情状態判定部381は、利用者が過去の回答内容に対して鸚鵡返し(利用者が回答内容に対して聞き直していること)しているものと擬似的に断定することができる。
この場合、感情状態判定部381は、利用者が過去の回答内容に対して鸚鵡返しを行っているので、利用者はある話題に対して中断させるための入力情報を入力したものと擬似的に断定することができ、利用者に対して抱く感情度を低いランクにランク付することができ、結果的には利用者に対して抱く感情度をより適切にランク付することができる。
最後に、鸚鵡返し判定部330が、現在の第一形態素情報と過去の第一形態素情報とを照合し、現在の第一形態素情報が過去の第一形態素情報に含まれる場合には、感情状態判定部381は、利用者が単に過去に入力した入力情報を、会話制御装置1からの回答内容とは全く関係なく再入力したものと擬似的に断定することができる。
この場合、感情状態判定部381は、会話制御装置1からの回答内容とは全く関係なく、利用者が前の入力情報と同一の入力情報を単に反復して入力しているだけであるので、利用者に対して抱く感情度を低いランクにランク付することができ、結果的には利用者に対して抱く感情度をより適切にランク付することができる。