JP2005122549A - 会話制御装置及び会話制御方法 - Google Patents
会話制御装置及び会話制御方法 Download PDFInfo
- Publication number
- JP2005122549A JP2005122549A JP2003358071A JP2003358071A JP2005122549A JP 2005122549 A JP2005122549 A JP 2005122549A JP 2003358071 A JP2003358071 A JP 2003358071A JP 2003358071 A JP2003358071 A JP 2003358071A JP 2005122549 A JP2005122549 A JP 2005122549A
- Authority
- JP
- Japan
- Prior art keywords
- character
- topic
- conversation
- unit
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Machine Translation (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】 利用者の会話内容に基づいて、会話制御装置が演じるキャラクタ(疑似人格)の感情状態(感情を示すデータ)を変化させ、この感情状態に応じたキャラクタの動きを利用者に示し、キャラクタの動きに感情の変化を反映させる。
【解決手段】 ユーザからの発話に応答する回答を出力するとともに、ユーザからの発話に応じてキャラクタの表示を変化させることが可能な会話制御装置である。この装置は複数の話題特定情報を記憶する会話データベース手段と、従前の会話及び従前の回答により定まる談話履歴を記憶し、この談話履歴により定まる話題特定情報と発話情報とを照合して回答文を選択する会話制御手段と、キャラクタの表示を制御するキャラクタ制御手段とを有し、キャラクタ制御手段は、発話情報と話題特定情報との照合により当該感情情報に対応したキャラクタの表示制御を行う。
【選択図】 図1
【解決手段】 ユーザからの発話に応答する回答を出力するとともに、ユーザからの発話に応じてキャラクタの表示を変化させることが可能な会話制御装置である。この装置は複数の話題特定情報を記憶する会話データベース手段と、従前の会話及び従前の回答により定まる談話履歴を記憶し、この談話履歴により定まる話題特定情報と発話情報とを照合して回答文を選択する会話制御手段と、キャラクタの表示を制御するキャラクタ制御手段とを有し、キャラクタ制御手段は、発話情報と話題特定情報との照合により当該感情情報に対応したキャラクタの表示制御を行う。
【選択図】 図1
Description
本発明は、会話制御装置及び会話制御方法に関し、より詳しくは会話で使用する回答文に感情変数を設定しておき、ユーザとの会話のやり取り中に使用された回答文に応じて、感情パラメータを変化させることにより、回答文の選択やユーザに表示するキャラクタの動作の制御を行う会話制御装置及び会話制御方法に関する。
近年、コンピュータを中心とした情報処理の手段として開発され進展してきたディジタル信号処理、高集積度LSI製造技術、DVDなどディスクメディアの微細精密加工製造技術の高度化を背景にして、機械が自然な音声を話すようになったり、人の発する言葉を理解して適切な回答を返すことができる会話制御技術が提供されるようになってきている。
このような会話制御技術においては、会話の履歴、話題の推移などが加味された人間同士の会話と同様な自然な対話を実現可能な会話制御システムが提案されている(特許文献1)。
特開2002−358304号公報
一般に会話の相手は、会話の内容に応じて喜んだり、悲しんだり、怒ったりというように感情を変化させる。上記のような会話制御システムにおいても、会話制御システムが演じる疑似人格(キャラクタ)の感情があたかも変化するような制御を行うことができれば、会話制御システムはユーザに対しより実際の人間に近い対応を行うことができるようになり、またこの感情の変化をユーザにわかりやすいようにキャラクタの表情や動作の変化として表示できるようにすれば、ユーザが実際の人間と会話を楽しむように会話制御システムからの応答を楽しむことが可能になる。
本発明の目的は、利用者の会話内容に基づいて、会話制御装置が演じるキャラクタ(疑似人格)の感情状態(感情を示すデータ)を変化させ、この感情状態に応じたキャラクタの動きを利用者に示し、キャラクタの動きに感情の変化を反映させることができるとともに、より実際の人間に近い自然なキャラクタの表情の変化、動作などを示すことが可能な会話制御装置並びに会話制御方法を提供することにある。
上記課題を解決するための手段として、本発明は以下のような特徴を有している。
本発明の第1の態様は、ユーザからの発話に応答する回答を出力するとともに、ユーザからの発話に応じてキャラクタの表示を変化させることが可能な会話制御装置として提案される。
本発明の第1の態様は、ユーザからの発話に応答する回答を出力するとともに、ユーザからの発話に応じてキャラクタの表示を変化させることが可能な会話制御装置として提案される。
この会話制御装置は、複数の話題特定情報を記憶する会話データベース手段(会話データベース)と、従前の会話及び従前の回答により定まる談話履歴を記憶し、この談話履歴により定まる話題特定情報と発話情報とを照合して回答文を選択する会話制御手段(会話制御部)と、キャラクタの表示を制御するキャラクタ制御手段(キャラクタデータ記憶部、キャラクタ制御部、キャラクタ表示部)とを有し、キャラクタ制御手段は、発話情報と話題特定情報との照合により定まる感情情報に応じて、キャラクタを表示するためのキャラクタデータであって当該感情情報に対応したキャラクタデータを選択することを特徴としている。
この会話制御装置によれば、会話制御装置が演じるキャラクタ(疑似人格)の感情状態(感情を示すデータ)を変化させ、この感情状態に応じたキャラクタの動きを利用者に示し、キャラクタの動きに感情の変化を反映させることができる。
「キャラクタ」の表示は静止画、動画いずれでもよく、またキャラクタは利用者が感情を有する相手であると認識できるものであれば人、動物、ロボットなどどのようなものでもよく、あるいは無生物や幾何図形(立体部図形・平面図形)のようなものであってもよい。
「感情情報」は、会話制御装置が演じるキャラクタの感情の変化を示すことができる情報であって、たとえばフラグやパラメータのような文字・数字データである。
「キャラクタデータ」は、静止画像データ、動画像データのいずれでもよい。
上記会話制御装置において、キャラクタ制御手段は、感情情報の累積値を記憶し、感情情報の累積値が所定の閾値を超えた場合、当該感情情報に対応するキャラクタの表示を実行するようにしてもよい。このようにすれば、会話の流れに従って徐々に感情を変化させるキャラクタを演出することが可能となる。
本発明の第2の態様は、ユーザからの発話に応答する回答を出力するとともに、ユーザからの発話に応じてキャラクタの表示を変化させることが可能な会話制御装置として提案される。
この会話制御装置は、複数の話題特定情報と、各話題特定情報について定められた1又は複数の話題タイトルと、各話題タイトルについて定められた一又は複数の回答文と、回答文に対応して定められた感情フラグとを記憶する会話データベース手段(会話データベース)と、従前の会話及び従前の回答文により定まる談話履歴により定まる話題特定情報と発話情報とを照合して、当該話題特定情報のいずれかについて定められた話題タイトルのいずれかを取得し、その話題タイトルに対応する回答文からいずれか一の回答文を選択する会話制御手段(会話制御部)と、キャラクタの表示を制御するキャラクタ制御手段(キャラクタデータ記憶部、キャラクタ制御部、キャラクタ表示部)とを有し、キャラクタ制御手段は、会話制御手段が選択した回答文に対応して定められた感情フラグに応じて、キャラクタを表示するためのキャラクタデータであって当該感情フラグに対応したキャラクタデータを選択し、このキャラクタデータを用いてキャラクタを表示することを特徴としている。
この会話制御装置によれば、会話制御装置が演じるキャラクタ(疑似人格)の感情状態(感情を示すデータ)を変化させ、この感情状態に応じたキャラクタの動きを利用者に示し、キャラクタの動きに感情の変化を反映させることができる。
上記会話制御装置において、キャラクタ制御手段は各感情フラグのカウント値を記憶し、各感情フラグのカウント値が所定の値を超えた場合、当該感情フラグに対応するキャラクタの表示を実行するようにしてもよい。このようにすれば、会話の流れに従って徐々に感情を変化させるキャラクタを演出することが可能となる。
本発明の第3の態様は、ユーザからの発話に応答する回答を出力するとともに、ユーザからの発話に応じてキャラクタの表示を変化させることが可能な会話制御方法として提案される。
この会話制御方法は、複数の話題特定情報と、各話題特定情報について定められた1又は複数の話題タイトルと、各話題タイトルについて定められた一又は複数の回答文と、回答文に対応して定められた感情フラグとを予め記憶させるステップと、従前の会話及び従前の回答文により定まる談話履歴により定まる話題特定情報と発話情報とを照合して、当該話題特定情報のいずれかについて定められた話題タイトルのいずれかを取得し、その話題タイトルに対応する回答文からいずれか一の回答文を選択するステップと、選択するステップにおいて選択された回答文に対応する感情フラグを取得し、キャラクタを表示するためのキャラクタデータであって感情フラグに対応したキャラクタデータを選択し、このキャラクタデータを用いてキャラクタを表示するステップとを有することを特徴としている。
この会話制御方法は、複数の話題特定情報と、各話題特定情報について定められた1又は複数の話題タイトルと、各話題タイトルについて定められた一又は複数の回答文と、回答文に対応して定められた感情フラグとを予め記憶させるステップと、従前の会話及び従前の回答文により定まる談話履歴により定まる話題特定情報と発話情報とを照合して、当該話題特定情報のいずれかについて定められた話題タイトルのいずれかを取得し、その話題タイトルに対応する回答文からいずれか一の回答文を選択するステップと、選択するステップにおいて選択された回答文に対応する感情フラグを取得し、キャラクタを表示するためのキャラクタデータであって感情フラグに対応したキャラクタデータを選択し、このキャラクタデータを用いてキャラクタを表示するステップとを有することを特徴としている。
この会話制御方法によれば、会話制御方法が演じるキャラクタ(疑似人格)の感情状態(感情を示すデータ)を変化させ、この感情状態に応じたキャラクタの動きを利用者に示し、キャラクタの動きに感情の変化を反映させることができる。
上記会話制御方法において、表示するステップは、各感情フラグのカウント値を記憶させるステップを有し、各感情フラグのカウント値が所定の値を超えた場合、当該感情フラグに対応するキャラクタの表示が実行されるようにしてもよい。このようにすれば、会話の流れに従って徐々に感情を変化させるキャラクタを演出することが可能となる。
利用者の会話内容に基づいてキャラクタ(疑似人格)の感情状態(感情を示すデータ)を変化させ、この感情状態に応じたキャラクタの動きを利用者に示し、キャラクタの動きに感情の変化を反映させることができるとともに、より実際の人間に近い自然なキャラクタの表情の変化、動作などを示すことができる。
以下に図面を参照しながら本発明の第1の実施の形態を説明する。
本実施の形態は、話者の発話内容及び/又は発話内容に対する回答文に応じて、キャラクタ等の動作などに変化を生じさせることが可能な会話制御装置に関する。本会話制御装置は、話者の発話内容に応じて回答を返す疑似人格(以下、「キャラクタ」という)を提供するものであって、回答内容に添って、キャラクタの表情の変化等を表示可能な会話制御装置である。
本実施の形態は、話者の発話内容及び/又は発話内容に対する回答文に応じて、キャラクタ等の動作などに変化を生じさせることが可能な会話制御装置に関する。本会話制御装置は、話者の発話内容に応じて回答を返す疑似人格(以下、「キャラクタ」という)を提供するものであって、回答内容に添って、キャラクタの表情の変化等を表示可能な会話制御装置である。
なお、以下に説明する例では、ユーザがコンピュータと対戦する対戦型麻雀ゲーム装置のようなゲーム機に搭載された会話制御装置であるものとして、本実施の形態を説明する。
[会話制御装置の構成例]
[1.全体構成]
図1は、本実施の形態に係る会話制御装置1の概略構成図である。
会話制御装置1は、たとえばコンピュータ、ワークステーションなどの情報処理装置であって、演算処理装置(CPU)、主メモリ(RAM)、読出し専用メモリ(ROM)、入出力装置(I/O)、ハードディスク装置等の外部記憶装置を具備している装置で構成されている。前記ROM、もしくは外部記憶装置などに情報処理装置を会話制御装置1として機能させるためのプログラム、もしくは会話制御方法をコンピュータに実行させるためのプログラムが記憶されており、該プログラムを主メモリ上に載せ、CPUがこれを実行することにより会話制御装置1が実現される。また、上記プログラムは必ずしも当該装置内の記憶装置に記憶されていなくともよく、磁気ディスク、光ディスク、光磁気ディスク、CD(Compact Disc)、DVD(Digital Video Disc)などのコンピュータ読み取り可能なプログラム記録媒体や、外部の装置(例えば、ASP(アプリケーション・サービス・プロバイダ)のサーバなど)から提供され、これを主メモリに乗せる構成であっても良い。
図1に示すように、会話制御装置1は、入力部100と、音声認識部200と、会話制御部300と、文解析部400と、会話データベース500と、出力部600と、音声認識辞書記憶部700と、キャラクタデータ記憶部800Aと、キャラクタ制御部800Bと、キャラクタ表示部800Cとを備えている。
[1.全体構成]
図1は、本実施の形態に係る会話制御装置1の概略構成図である。
会話制御装置1は、たとえばコンピュータ、ワークステーションなどの情報処理装置であって、演算処理装置(CPU)、主メモリ(RAM)、読出し専用メモリ(ROM)、入出力装置(I/O)、ハードディスク装置等の外部記憶装置を具備している装置で構成されている。前記ROM、もしくは外部記憶装置などに情報処理装置を会話制御装置1として機能させるためのプログラム、もしくは会話制御方法をコンピュータに実行させるためのプログラムが記憶されており、該プログラムを主メモリ上に載せ、CPUがこれを実行することにより会話制御装置1が実現される。また、上記プログラムは必ずしも当該装置内の記憶装置に記憶されていなくともよく、磁気ディスク、光ディスク、光磁気ディスク、CD(Compact Disc)、DVD(Digital Video Disc)などのコンピュータ読み取り可能なプログラム記録媒体や、外部の装置(例えば、ASP(アプリケーション・サービス・プロバイダ)のサーバなど)から提供され、これを主メモリに乗せる構成であっても良い。
図1に示すように、会話制御装置1は、入力部100と、音声認識部200と、会話制御部300と、文解析部400と、会話データベース500と、出力部600と、音声認識辞書記憶部700と、キャラクタデータ記憶部800Aと、キャラクタ制御部800Bと、キャラクタ表示部800Cとを備えている。
[1−1.入力部]
入力部100は、利用者から入力された入力情報を取得するものである。この入力部100は、例えば、マイクロホンが挙げられる。入力部100は、取得した発話内容に対応する音声を音声信号として音声認識部200に出力する。
入力部100は、利用者から入力された入力情報を取得するものである。この入力部100は、例えば、マイクロホンが挙げられる。入力部100は、取得した発話内容に対応する音声を音声信号として音声認識部200に出力する。
[1−2.音声認識部]
音声認識部200は、入力部100で取得した発話内容に基づいて、発話内容に対応する文字列を特定するものである。具体的には、入力部100から音声信号が入力された音声認識部200は、入力された音声信号に基づいて、この音声信号を、音声認識辞書記憶部700に格納されている辞書および会話データベース500と照合して、音声信号から推測される音声認識結果を出力する。なお、図3に示す構成例では、音声認識部200は、会話制御部300に会話データベース500の記憶内容の取得を要求し、会話制御部300が要求に応じて取得した会話データベース500の記憶内容を受け取るようになっているが、音声認識部200が直接会話データベース500の記憶内容を取得して音声信号との比較を行う構成であってもかまわない。
音声認識部200は、入力部100で取得した発話内容に基づいて、発話内容に対応する文字列を特定するものである。具体的には、入力部100から音声信号が入力された音声認識部200は、入力された音声信号に基づいて、この音声信号を、音声認識辞書記憶部700に格納されている辞書および会話データベース500と照合して、音声信号から推測される音声認識結果を出力する。なお、図3に示す構成例では、音声認識部200は、会話制御部300に会話データベース500の記憶内容の取得を要求し、会話制御部300が要求に応じて取得した会話データベース500の記憶内容を受け取るようになっているが、音声認識部200が直接会話データベース500の記憶内容を取得して音声信号との比較を行う構成であってもかまわない。
[1−2−1.音声認識部の構成例]
図2に、音声認識部200の構成例を示す機能ブロック図を示す。音声認識部200は、特徴抽出部200Aと、バッファメモリ(BM)200Bと、単語照合部200Cと、バッファメモリ(BM)200Dと、候補決定部200Eと、単語仮説絞込部200Fを有している。単語照合部200C及び単語仮説絞込部200Fは音声認識辞書記憶部700に接続されており、候補決定部200Eは会話制御部300に接続されている。
図2に、音声認識部200の構成例を示す機能ブロック図を示す。音声認識部200は、特徴抽出部200Aと、バッファメモリ(BM)200Bと、単語照合部200Cと、バッファメモリ(BM)200Dと、候補決定部200Eと、単語仮説絞込部200Fを有している。単語照合部200C及び単語仮説絞込部200Fは音声認識辞書記憶部700に接続されており、候補決定部200Eは会話制御部300に接続されている。
単語照合部200Cに接続された音声認識辞書記憶部700は、音素隠れマルコフモデル(以下、隠れマルコフモデルをHMMという。)を記憶している。音素HMMは、各状態を含んで表され、各状態はそれぞれ以下の情報を有する。(a)状態番号、(b)受理可能なコンテキストクラス、(c)先行状態、及び後続状態のリスト、(d)出力確率密度分布のパラメータ、及び(e)自己遷移確率及び後続状態への遷移確率から構成されている。なお、本実施形態において用いる音素HMMは、各分布がどの話者に由来するかを特定する必要があるため、所定の話者混合HMMを変換して生成する。ここで、出力確率密度関数は34次元の対角共分散行列をもつ混合ガウス分布である。また、単語照合部200Cに接続された音声認識辞書記憶部700は単語辞書を記憶している。単語辞書は、音素HMMの各単語毎にシンボルで表した読みを示すシンボル列を格納する。
話者の発声音声はマイクロホンなどに入力されて音声信号に変換された後、特徴抽出部200Aに入力される。特徴抽出部200Aは、入力された音声信号をA/D変換した後、特徴パラメータを抽出し、これを出力する。特徴パラメータを抽出し、これを出力する方法としては様々なものが考えられるが、例えば一例としては、LPC分析を実行し、対数パワー、16次ケプストラム係数、Δ対数パワー及び16次Δケプストラム係数を含む34次元の特徴パラメータを抽出する方法などが挙げられる。抽出された特徴パラメータの時系列はバッファメモリ(BM)200Bを介して単語照合部200Cに入力される。
単語照合部200Cは、ワン−パス・ビタビ復号化法を用いて、バッファメモリ200Bを介して入力される特徴パラメータのデータに基づいて、音声認識辞書記憶部700に記憶された音素HMMと単語辞書とを用いて単語仮説を検出し、尤度を計算して出力する。ここで、単語照合部200Cは、各時刻の各HMMの状態毎に、単語内の尤度と発声開始からの尤度を計算する。尤度は、単語の識別番号、単語の開始時刻、先行単語の違い毎に個別にもつ。また、計算処理量の削減のために、音素HMM及び単語辞書とに基づいて計算される総尤度のうちの低い尤度のグリッド仮説を削減するようにしてもよい。単語照合部200Cは、検出した単語仮説とその尤度の情報を発声開始時刻からの時間情報(具体的には、例えばフレーム番号)とともにバッファメモリ200Dを介して候補決定部200E及び単語仮説絞込部200Fに出力する。
候補決定部200Eは、会話制御部300を参照して、検出した単語仮説と所定の談話空間内の話題特定情報とを比較し、検出した単語仮説の内、所定の談話空間内の話題特定情報と一致するものがあるか否かを判定し、一致するものがある場合は、その一致する単語仮説を認識結果として出力し、一方一致するものがない場合は、単語仮説絞込部200Fに単語仮説の絞込を行うよう要求する。
候補決定部200Eの動作例を説明する。今、単語照合部200Cが複数の単語仮説「カンタク」「カタク」「カントク」およびその尤度(認識率)を出力し、所定の談話空間は「映画」に関するものでありその話題特定情報には「カントク(監督)」は含まれているが、「カンタク(干拓)」及び「カタク(仮託)」は含まれていないとする。また「カンタク」「カタク」「カントク」の尤度(認識率)は「カンタク」が最も高く「カントク」は最も低く、「カタク」は両者の中間であったとする。
上記の状況において、候補決定部200Eは、検出した単語仮説と所定の談話空間内の話題特定情報とを比較して、単語仮説「カントク」が、所定の談話空間内の話題特定情報と一致するものであると判定し、単語仮説「カントク」を認識結果として出力し、会話制御部に渡す。このように処理することにより、現在扱われている話題「映画」に関連した「カントク(監督)」が、より上位の尤度(認識率)を有する単語仮説「カンタク」「カタク」に優先されて選択され、その結果会話の文脈に即した音声認識結果を出力することが可能となる。
一方、一致するものがない場合は、候補決定部200Eからの単語仮説の絞込を行う要求に応じて単語仮説絞込部200Fが認識結果を出力するよう動作する。単語仮説絞込部200Fは、単語照合部200Cからバッファメモリ200Dを介して出力される複数個の単語仮説に基づいて、音声認識辞書記憶部700に記憶された統計的言語モデルを参照して、終了時刻が等しく開始時刻が異なる同一の単語の単語仮説に対して、当該単語の先頭音素環境毎に、発声開始時刻から当該単語の終了時刻に至る計算された総尤度のうちの最も高い尤度を有する1つの単語仮説で代表させるように単語仮説の絞り込みを行った後、絞り込み後のすべての単語仮説の単語列のうち、最大の総尤度を有する仮説の単語列を認識結果として出力する。本実施形態においては、好ましくは、処理すべき当該単語の先頭音素環境とは、当該単語より先行する単語仮説の最終音素と、当該単語の単語仮説の最初の2つの音素とを含む3つの音素並びをいう。
単語仮説絞込部200Fによる単語絞込処理の例を図3を参照しながら説明する。図3は、単語仮説絞込部200Fの処理の一例を示すタイミングチャートである。
例えば(i−1)番目の単語Wi-1の次に、音素列a1,a2,…,anからなるi番目の単語Wiがくるときに、単語Wi-1の単語仮説として6つの仮説Wa,Wb,Wc,Wd,We,Wfが存在しているとする。ここで、前者3つの単語仮説Wa,Wb,Wcの最終音素は/x/であるとし、後者3つの単語仮説Wd,We,Wfの最終音素は/y/であるとする。終了時刻teにおいて単語仮説Wa,Wb,Wcを前提とする3つの仮説と、単語仮説Wd,We,Wfを前提とする1の仮説が残っているものとすると、先頭音素環境が等しい前者3つ仮説のうち、総尤度が最も高い仮説一つを残し、その他を削除する。
なお、単語仮説Wd,We,Wfを前提とする仮説は先頭音素環境が他の3つの仮説と違うため、すなわち、先行する単語仮説の最終音素がxではなくyであるため、この単語仮説Wd,We,Wfを前提とする仮説は削除しない。すなわち、先行する単語仮説の最終音素毎に1つのみ仮説を残す。
例えば(i−1)番目の単語Wi-1の次に、音素列a1,a2,…,anからなるi番目の単語Wiがくるときに、単語Wi-1の単語仮説として6つの仮説Wa,Wb,Wc,Wd,We,Wfが存在しているとする。ここで、前者3つの単語仮説Wa,Wb,Wcの最終音素は/x/であるとし、後者3つの単語仮説Wd,We,Wfの最終音素は/y/であるとする。終了時刻teにおいて単語仮説Wa,Wb,Wcを前提とする3つの仮説と、単語仮説Wd,We,Wfを前提とする1の仮説が残っているものとすると、先頭音素環境が等しい前者3つ仮説のうち、総尤度が最も高い仮説一つを残し、その他を削除する。
なお、単語仮説Wd,We,Wfを前提とする仮説は先頭音素環境が他の3つの仮説と違うため、すなわち、先行する単語仮説の最終音素がxではなくyであるため、この単語仮説Wd,We,Wfを前提とする仮説は削除しない。すなわち、先行する単語仮説の最終音素毎に1つのみ仮説を残す。
以上の実施形態においては、当該単語の先頭音素環境とは、当該単語より先行する単語仮説の最終音素と、当該単語の単語仮説の最初の2つの音素とを含む3つの音素並びとして定義されているが、本発明はこれに限らず、先行する単語仮説の最終音素と、最終音素と連続する先行する単語仮説の少なくとも1つの音素とを含む先行単語仮説の音素列と、当該単語の単語仮説の最初の音素を含む音素列とを含む音素並びとしてもよい。
以上の実施の形態において、特徴抽出部200Aと、単語照合部200Cと、候補決定部200Eと、単語仮説絞込部200Fとは、例えば、デジタル電子計算機などのコンピュータで構成され、バッファメモリ200B,200Dと、音声認識辞書記憶部700とは、例えばハードデイスクメモリなどの記憶装置で構成される。
以上の実施の形態において、特徴抽出部200Aと、単語照合部200Cと、候補決定部200Eと、単語仮説絞込部200Fとは、例えば、デジタル電子計算機などのコンピュータで構成され、バッファメモリ200B,200Dと、音声認識辞書記憶部700とは、例えばハードデイスクメモリなどの記憶装置で構成される。
以上実施形態においては、単語照合部200C、単語仮説絞込部200Fとを用いて音声認識を行っているが、本発明はこれに限らず、例えば、音素HMMを参照する音素照合部と、例えばOne
Pass DPアルゴリズムを用いて統計的言語モデルを参照して単語の音声認識を行う音声認識部とで構成してもよい。
また、本実施の形態では、音声認識部200は会話制御装置1の一部分として説明するが、音声認識部200、音声認識辞書記憶部700、及び会話データベース500より構成される、独立した音声認識装置とすることも可能である。
Pass DPアルゴリズムを用いて統計的言語モデルを参照して単語の音声認識を行う音声認識部とで構成してもよい。
また、本実施の形態では、音声認識部200は会話制御装置1の一部分として説明するが、音声認識部200、音声認識辞書記憶部700、及び会話データベース500より構成される、独立した音声認識装置とすることも可能である。
[1−2−2.音声認識部の動作例]
つぎに図4を参照しながら音声認識部200の動作について説明する。図4は、音声認識部200の動作例を示すフロー図である。入力部100より音声信号を受け取ると、音声認識部200は入力された音声の特徴分析を行い、特徴パラメータを生成する(ステップS301)。次に、この特徴パラメータと音声認識辞書記憶部700に記憶された音素HMM及び言語モデルとを比較して、所定個数の単語仮説及びその尤度を取得する(ステップS302)。次に、音声認識部200は、取得した所定個数の単語仮説と検出した単語仮説と所定の談話空間内の話題特定情報とを比較し、検出した単語仮説の内、所定の談話空間内の話題特定情報と一致するものがあるか否かを判定する(ステップS303、S304)。一致するものがある場合は、音声認識部200はその一致する単語仮説を認識結果として出力する(ステップS305)。一方、一致するものがない場合は、音声認識部200は取得した単語仮説の尤度に従って、最大尤度を有する単語仮説を認識結果として出力する(ステップS306)。
つぎに図4を参照しながら音声認識部200の動作について説明する。図4は、音声認識部200の動作例を示すフロー図である。入力部100より音声信号を受け取ると、音声認識部200は入力された音声の特徴分析を行い、特徴パラメータを生成する(ステップS301)。次に、この特徴パラメータと音声認識辞書記憶部700に記憶された音素HMM及び言語モデルとを比較して、所定個数の単語仮説及びその尤度を取得する(ステップS302)。次に、音声認識部200は、取得した所定個数の単語仮説と検出した単語仮説と所定の談話空間内の話題特定情報とを比較し、検出した単語仮説の内、所定の談話空間内の話題特定情報と一致するものがあるか否かを判定する(ステップS303、S304)。一致するものがある場合は、音声認識部200はその一致する単語仮説を認識結果として出力する(ステップS305)。一方、一致するものがない場合は、音声認識部200は取得した単語仮説の尤度に従って、最大尤度を有する単語仮説を認識結果として出力する(ステップS306)。
[1−3.音声認識辞書記憶部]
再び、図1に戻って、会話制御装置の構成例の説明を続ける。
音声認識辞書記憶部700は、標準的な音声信号に対応する文字列を格納するものである。この照合をした音声認識部200は、その音声信号に対応する単語仮説に対応する文字列を特定し、その特定した文字列を文字列信号として会話制御部300に出力する。
再び、図1に戻って、会話制御装置の構成例の説明を続ける。
音声認識辞書記憶部700は、標準的な音声信号に対応する文字列を格納するものである。この照合をした音声認識部200は、その音声信号に対応する単語仮説に対応する文字列を特定し、その特定した文字列を文字列信号として会話制御部300に出力する。
[1−4.文解析部]
次に、図5を参照しながら文解析部400の構成例について説明する。図5は、会話制御装置1の部分拡大ブロック図であって、会話制御部300及び文解析部400の具体的構成例を示すブロック図である。なお、図5においては、会話制御部300、文解析部400、および会話データベース500のみ図示しており、その他の構成要素は表示を省略している。
次に、図5を参照しながら文解析部400の構成例について説明する。図5は、会話制御装置1の部分拡大ブロック図であって、会話制御部300及び文解析部400の具体的構成例を示すブロック図である。なお、図5においては、会話制御部300、文解析部400、および会話データベース500のみ図示しており、その他の構成要素は表示を省略している。
前記文解析部400は、入力部100又は音声認識部200で特定された文字列を解析するものである。この文解析部400は、本実施の形態では、図5に示すように、文字列特定部410と、形態素抽出部420と、形態素データベース430と、入力種類判定部440と、発話種類データベース450とを有している。文字列特定部410は、入力部100及び音声認識部200で特定された一連の文字列を一文節毎に区切るものである。この一文節とは、文法の意味を崩さない程度に文字列をできるだけ細かく区切った一区切り文を意味する。具体的に、文字列特定部410は、一連の文字列の中に、ある一定以上の時間間隔があるときは、その部分で文字列を区切る。文字列特定部410は、その区切った各文字列を形態素抽出部420及び入力種類判定部440に出力する。尚、以下で説明する「文字列」は、一文節毎の文字列を意味するものとする。
[1−5.形態素抽出部]
形態素抽出部420は、文字列特定部410で区切られた一文節の文字列に基づいて、その一文節の文字列の中から、文字列の最小単位を構成する各形態素を第一形態素情報として抽出するものである。ここで、形態素とは、本実施の形態では、文字列に現された語構成の最小単位を意味するものとする。この語構成の最小単位としては、例えば、名詞、形容詞、動詞などの品詞が挙げられる。
各形態素は、図6に示すように、本実施の形態ではm1,m2,m3…,と表現することができる。図6は、文字列とこの文字列から抽出される形態素との関係を示す図である。図6に示すように、文字列特定部410から文字列が入力された形態素抽出部420は、入力された文字列と、形態素データベース430に予め格納されている形態素群(この形態素群は、それぞれの品詞分類に属する各形態素についてその形態素の見出し語・読み・品詞・活用形などを記述した形態素辞書として用意されている)とを照合する。その照合をした形態素抽出部420は、その文字列の中から、予め記憶された形態素群のいずれかと一致する各形態素(m1,m2、…)を抽出する。この抽出された各形態素を除いた要素(n1,n2,n3…)は、例えば助動詞等が挙げられる。
形態素抽出部420は、文字列特定部410で区切られた一文節の文字列に基づいて、その一文節の文字列の中から、文字列の最小単位を構成する各形態素を第一形態素情報として抽出するものである。ここで、形態素とは、本実施の形態では、文字列に現された語構成の最小単位を意味するものとする。この語構成の最小単位としては、例えば、名詞、形容詞、動詞などの品詞が挙げられる。
各形態素は、図6に示すように、本実施の形態ではm1,m2,m3…,と表現することができる。図6は、文字列とこの文字列から抽出される形態素との関係を示す図である。図6に示すように、文字列特定部410から文字列が入力された形態素抽出部420は、入力された文字列と、形態素データベース430に予め格納されている形態素群(この形態素群は、それぞれの品詞分類に属する各形態素についてその形態素の見出し語・読み・品詞・活用形などを記述した形態素辞書として用意されている)とを照合する。その照合をした形態素抽出部420は、その文字列の中から、予め記憶された形態素群のいずれかと一致する各形態素(m1,m2、…)を抽出する。この抽出された各形態素を除いた要素(n1,n2,n3…)は、例えば助動詞等が挙げられる。
この形態素抽出部420は、抽出した各形態素を第一形態素情報として話題特定情報検索蔀320に出力する。なお、第一形態素情報は構造化されている必要はない。ここで「構造化」とは、文字列の中に含まれる形態素を品詞等に基づいて分類し配列することをいい、たとえば発話文である文字列を、「主語+目的語+述語」などの様に、所定の順番で形態素を配列してなるデータに変換することを言う。もちろん、構造化した第一形態素情報を用いたとしても、それが本実施の形態を実現をさまたげることはない。
[1−6.入力種類判定部]
入力種類判定部440は、文字列特定部410で特定された文字列に基づいて、発話内容の種類(発話種類)を判定するものである。この発話種類は、発話内容の種類を特定する情報であって、本実施の形態では、例えば図7に示す「発話文のタイプ」を意味する。図7は、「発話文のタイプ」と、その発話文のタイプを表す二文字のアルファベット、及びその発話文のタイプに該当する発話文の例を示す図である。
入力種類判定部440は、文字列特定部410で特定された文字列に基づいて、発話内容の種類(発話種類)を判定するものである。この発話種類は、発話内容の種類を特定する情報であって、本実施の形態では、例えば図7に示す「発話文のタイプ」を意味する。図7は、「発話文のタイプ」と、その発話文のタイプを表す二文字のアルファベット、及びその発話文のタイプに該当する発話文の例を示す図である。
ここで、「発話文のタイプ」は、本実施の形態では、図7に示すように、陳述文(D ; Declaration)、時間文(T ; Time)、場所文(L ; Location)、反発文(N ; Negation)などから構成される。この各タイプから構成される文は、肯定文又は質問文で構成される。「陳述文」とは、利用者の意見又は考えを示す文を意味するものである。この陳述文は本実施の形態では、図7に示すように、例えば"私は佐藤が好きです"などの文が挙げられる。「場所文」とは、場所的な概念を伴う文を意味するものである。「時間文」とは、時間的な概念を伴う文を意味するものである。「反発文」とは、陳述文を否定するときの文を意味する。「発話文のタイプ」についての例文は図7に示す通りである。
入力種類判定部440が「発話文のタイプ」を判定するには、入力種類判定部440は、本実施の形態では、図8に示すように、陳述文であることを判定するための定義表現辞書、反発文であることを判定するための反発表現辞書等を用いる。具体的に、文字列特定部410から文字列が入力された入力種類判定部440は、入力された文字列に基づいて、その文字列と発話種類データベース450に格納されている各辞書とを照合する。その照合をした入力種類判定部440は、その文字列の中から、各辞書に関係する要素を抽出する。
この入力種類判定部440は、抽出した要素に基づいて、「発話文のタイプ」を判定する。例えば、入力種類判定部440は、ある事象について陳述している要素が文字列の中に含まれる場合には、その要素が含まれている文字列を陳述文として判定する。入力種類判定部440は、判定した「発話文のタイプ」を回答取得部350に出力する。
[1−7.会話データベース]
次に、会話データベース500が記憶するデータのデータ構成例について図9を参照しながら説明する。図9は、会話データベース500が記憶するデータのデータ構成の一例を示す概念図である。
次に、会話データベース500が記憶するデータのデータ構成例について図9を参照しながら説明する。図9は、会話データベース500が記憶するデータのデータ構成の一例を示す概念図である。
前記会話データベース500は、図9に示すように、話題を特定するための話題特定情報810を予め複数記憶する。又、それぞれの話題特定情報810は、他の話題特定情報と関連づけられていてもよく、例えば、図9に示す例では、話題特定情報Cが特定されると、この話題特定情報Cに関連づけられている他の話題特定情報A、B,Dが定まるように記憶されている。
具体的には、話題特定情報810は、本実施の形態では、利用者から入力されると予想される入力内容又は利用者への回答文に関連性のある「キーワード」を意味する。
話題特定情報810には、一又は複数の話題タイトル820が対応付けられて記憶されている。話題タイトル820は、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素により構成されている。各話題タイトル820には、利用者への回答文830が対応付けられて記憶されている。また、回答文830の種類を示す複数の回答種類は、回答文830に対応付けられている。
更に、回答文830には会話制御装置1が提供する疑似人格の感情を示すデータである感情フラグ840が対応付けされて記憶されている。感情フラグ840は感情を区別できる情報であればどのようなデータを用いてもよく、例えば、「平常」の感情を示す感情フラグとして文字データ「A」を割り当て、「激怒」の感情を示す感情フラグとして文字データ「B」を割り当て、「怒り」の感情を示す感情フラグとして文字データ「C」を割り当て、「喜び」の感情を示す感情フラグとして文字データ「D」を割り当てるなどのようにする。本実施の形態にかかる会話制御装置1は、この感情フラグ840を参照して、会話制御装置1が提供する疑似人格の感情を制御することとなる。
次に、ある話題特定情報と他の話題特定情報との関連づけについて説明する。図10は、ある話題特定情報810Aと他の話題特定情報810B、810C1〜810C4、810D1〜810D3…との関連付けを示す図である。なお、以下の説明において「関連づけされて記憶される」とは、ある情報Xを読み取るとその情報Xに関連づけられている情報Yを読み取りできることをいい、例えば、情報Xのデータの中に情報Yを読み出すための情報(例えば、情報Yの格納先アドレスを示すポインタ、情報Yの格納先物理メモリアドレス、論理アドレスなど)が格納されている状態を、「情報Yが情報Xに『関連づけされて記憶され』ている」というものとする。
図10に示す例では、話題特定情報は他の話題特定情報との間で上位概念、下位概念、同義語、対義語(本図の例では省略)が関連づけされて記憶させることができる。本図に示す例では、話題特定情報810A(=「映画」)に対する上位概念の話題特定情報として話題特定情報810B(=「娯楽」)が話題特定情報810Aに関連づけされて記憶されており、たとえば話題特定情報(「映画」)に対して上の階層に記憶される。
また、話題特定情報810A(=「映画」)に対する下位概念の話題特定情報810C1(=「監督」)、話題特定情報810C2(=「主演」)、話題特定情報810C3(=「配給会社」)、話題特定情報810C4(=「上映時間」)、および話題特定情報810D1(=「七人の侍」)、話題特定情報810D2(=「乱」)、話題特定情報810D3(=「用心棒」)、…、が話題特定情報810Aに関連づけされて記憶されている。
又、話題特定情報810Aには、同義語900が関連づけらている。この例では、話題特定情報810Aであるキーワード「映画」の同義語として「作品」、「内容」、「シネマ」が記憶されている様子を示している。このような同意語を定めることにより、発話にはキーワード「映画」は含まれていないが「作品」、「内容」、「シネマ」が発話文等に含まれている場合に、話題特定情報810Aが発話文等に含まれているものとして取り扱うことを可能とする。
本実施の形態にかかる会話制御装置1は、会話データベース500の記憶内容を参照することにより、ある話題特定情報を特定するとその話題特定情報に関連づけられて記憶されている他の話題特定情報及びその話題特定情報の話題タイトル、回答文などを高速で検索・抽出することが可能となる。
次に、話題タイトル(「第二形態素情報」ともいう)のデータ構成例について、図11を参照しながら説明する。図11は、話題タイトル(「第二形態素情報」ともいう)のデータ構成例を示す図である。
話題特定情報810D1、810D2、810D3、…はそれぞれ複数の異なる話題タイトル8201、8202、…、話題タイトル8203、8204、…、話題タイトル8205、8206、…、…を有している。本実施の形態では、図11に示すように、それぞれの話題タイトル820は、第一特定情報1001と、第二特定情報及1002と、第三特定情報1003によって構成される情報である。ここで、第一特定情報1001は、本実施の形態では、話題を構成する主要な形態素を意味するものである。第一特定情報の例としては、例えば文を構成する主語が挙げられる。また、第二特定情報1002は、本実施の形態では、第一特定情報1001と密接な関連性を有する形態素を意味するものである。この第二特定情報1002は、例えば目的語が挙げられる。更に、第三特定情報1003は、本実施の形態では、ある対象についての動きを示す形態素、又は名詞等を修飾する形態素を意味するものである。この第三特定情報1003は、例えば動詞、副詞又は形容詞が挙げられる。なお、第一特定情報1001、第二特定情報1302、第三特定情報1003それぞれの意味は上述の内容に限定される必要はなく、別の意味を第一特定情報1001、第二特定情報1002、第三特定情報1003に与えても、これらから文の内容を把握可能な限り、本実施の形態は成立する。
例えば、主語が「七人の侍」、形容詞が「面白い」である場合には、図11に示すように、話題タイトル(第二形態素情報)8202は、第一特定情報1001である形態素「七人の侍」と、第三特定情報1003である形態素「面白い」とから構成されることになる。なお、この話題タイトル8202には第二特定情報である形態素は含まれておらず、該当する形態素がないことを示すための記号「*」が第二特定情報として格納されている。
なお、この話題タイトル8202(七人の侍;*;面白い)は、「七人の侍は面白い」の意味を有する。この話題タイトル820を構成する括弧内は、以下では左から第一特定情報1001、第二特定情報1002、第三特定情報1003の順番となっている。また、話題タイトル820のうち、第一から第三特定情報に含まれる形態素がない場合には、その部分については、「*」を示すことにする。
なお、上記話題タイトル820を構成する特定情報は、上記のような第一から第三特定情報のように三つに限定されるものではなく、更に他の特定情報(第四特定情報、およびそれ以上)を有するようにしてもよい。
次に、回答文830について説明する。回答文830は、図12に示すように、本実施の形態では、利用者から発話された発話文のタイプに対応した回答をするために、陳述(D ; Declaration)、時間(T ; Time)、場所(L ; Location)、否定(N ; Negation)などのタイプ(回答種類)に分類されている。また肯定文は「A」とし、質問文は「Q」とする。
図13に、ある話題特定情報「佐藤」に対応付けされた話題タイトル,回答文、感情フラグの具体例を示す。
例えば、話題タイトル(820)1−1が(佐藤;*;好き){これは、「佐藤が好きです」に含まれる形態素を抽出したもの}である場合には、その話題タイトル(820)1-1に対応する回答文(830)1−1は、(DA;陳述肯定文「私も佐藤が好きです」)、(TA;時間肯定文「私は打席に立ったときの佐藤が好きです」)などが挙げられる。後述する回答取得部350は、その話題タイトル820に対応付けられた一の回答文830を取得する。
図13に、ある話題特定情報「佐藤」に対応付けされた話題タイトル,回答文、感情フラグの具体例を示す。
例えば、話題タイトル(820)1−1が(佐藤;*;好き){これは、「佐藤が好きです」に含まれる形態素を抽出したもの}である場合には、その話題タイトル(820)1-1に対応する回答文(830)1−1は、(DA;陳述肯定文「私も佐藤が好きです」)、(TA;時間肯定文「私は打席に立ったときの佐藤が好きです」)などが挙げられる。後述する回答取得部350は、その話題タイトル820に対応付けられた一の回答文830を取得する。
[1−8.会話制御部]
ここで図5に戻り、会話制御部300の構成例を説明する。
会話制御部300は、会話制御装置1内の各構成要素(音声認識部200,文解析部400、会話データベース500,出力部600,音声認識辞書記憶部700、キャラクタ制御部800)間のデータの受け渡しを制御するとともに、発話に応答する回答文の決定、出力を行う機能を有する。
ここで図5に戻り、会話制御部300の構成例を説明する。
会話制御部300は、会話制御装置1内の各構成要素(音声認識部200,文解析部400、会話データベース500,出力部600,音声認識辞書記憶部700、キャラクタ制御部800)間のデータの受け渡しを制御するとともに、発話に応答する回答文の決定、出力を行う機能を有する。
前記会話制御部300は、本実施の形態では、図5に示すように、管理部310と、話題特定情報検索部320と、省略文補完部330と、話題検索部340と、回答取得部350とを有している。前記管理部310は、会話制御部300の全体を制御するものである。また、管理部310は談話履歴を記憶し、且つ必要に応じて更新する機能を有する。管理部310は話題特定情報検索部320と、省略文補完部330と、話題検索部340と、回答取得部350からの要求に応じて、記憶している談話履歴の全部又は一部をこれら各部に渡す機能を有する。
「談話履歴」とは、ユーザと会話制御装置1間の会話の話題や主題を特定する情報であって、後述する談話履歴は「着目話題特定情報」「着目話題タイトル」「利用者入力文話題特定情報」「回答文話題特定情報」の少なくともいずれか一つを含む情報である。また、談話履歴に含まれる「着目話題特定情報」「着目話題タイトル」「回答文話題特定情報」は直前の会話によって定められたものに限定されず、過去の所定期間の間に着目話題特定情報」「着目話題タイトル」「回答文話題特定情報」となったもの、若しくはそれらの累積的記録であってもよい。
以下、会話制御部300を構成するこれら各部について説明する。
「談話履歴」とは、ユーザと会話制御装置1間の会話の話題や主題を特定する情報であって、後述する談話履歴は「着目話題特定情報」「着目話題タイトル」「利用者入力文話題特定情報」「回答文話題特定情報」の少なくともいずれか一つを含む情報である。また、談話履歴に含まれる「着目話題特定情報」「着目話題タイトル」「回答文話題特定情報」は直前の会話によって定められたものに限定されず、過去の所定期間の間に着目話題特定情報」「着目話題タイトル」「回答文話題特定情報」となったもの、若しくはそれらの累積的記録であってもよい。
以下、会話制御部300を構成するこれら各部について説明する。
[1−8−1.話題特定情報検索部]
話題特定情報検索部320は、形態素抽出部420で抽出された第一形態素情報と各話題特定情報とを照合し、各話題特定情報の中から、第一形態素情報を構成する形態素と一致する話題特定情報を検索するものである。具体的に、話題特定情報検索部320は、形態素抽出部420から入力された第一形態素情報が「佐藤」及び「好き」の二つの形態素で構成される場合には、入力された第一形態素情報と話題特定情報群とを照合する。
話題特定情報検索部320は、形態素抽出部420で抽出された第一形態素情報と各話題特定情報とを照合し、各話題特定情報の中から、第一形態素情報を構成する形態素と一致する話題特定情報を検索するものである。具体的に、話題特定情報検索部320は、形態素抽出部420から入力された第一形態素情報が「佐藤」及び「好き」の二つの形態素で構成される場合には、入力された第一形態素情報と話題特定情報群とを照合する。
この照合をした話題特定情報検索部320は、着目話題タイトル820focus(前回までに検索された話題タイトル)に第一形態素情報を構成する形態素(例えば「佐藤」)が含まれているときは、その着目話題タイトル820focusを回答取得部350に出力する。一方、着目話題タイトル820focusに第一形態素情報を構成する形態素が含まれていないときは、話題特定情報検索部320は、第一形態素情報に基づいて利用者入力文話題特定情報を決定し、入力された第一形態素情報及び利用者入力文話題特定情報を省略文補完部330に出力する。なお、「利用者入力文話題特定情報」は、第一形態素情報に含まれる形態素の内、利用者が話題としている内容に該当する形態素に相当する話題特定情報、若しくは第一形態素情報に含まれる形態素の内、利用者が話題としている内容に該当する可能性がある形態素に相当する話題特定情報をいう。
[1−8−2.省略文補完部]
省略文補完部330は、前記第一形態素情報を、前回までに検索された話題特定情報810(以下、「着目話題特定情報」)及び前回の回答文に含まれる話題特定情報810(以下、「回答文話題特定情報」という)を利用して、補完することにより複数種類の補完された第一形態素情報を生成する。例えば発話文が「好きだ」という文であった場合、省略文補完部330は、着目話題特定情報「佐藤」を、第一形態素情報「好き」に含めて、補完された第一形態素情報「佐藤、好き」を生成する。
省略文補完部330は、前記第一形態素情報を、前回までに検索された話題特定情報810(以下、「着目話題特定情報」)及び前回の回答文に含まれる話題特定情報810(以下、「回答文話題特定情報」という)を利用して、補完することにより複数種類の補完された第一形態素情報を生成する。例えば発話文が「好きだ」という文であった場合、省略文補完部330は、着目話題特定情報「佐藤」を、第一形態素情報「好き」に含めて、補完された第一形態素情報「佐藤、好き」を生成する。
すなわち、第一形態素情報を「W」、着目話題特定情報や回答文話題特定情報の集合を「D」とすると、省略文補完部330は、第一形態素情報「W」に集合「D」の要素を含めて、補完された第一形態素情報を生成する。
これにより、第一形態素情報を用いて構成される文が、省略文であって日本語として明解でない場合などにおいて、省略文補完部330は、集合「D」を用いて、その集合「D」の要素(例えば、"佐藤")を第一形態素情報「W」に含めることができる。この結果、省略文補完部330は、第一形態素情報「好き」を補完された第一形態素情報「佐藤、好き」にすることができる。なお、補完された第一形態素情報「佐藤、好き」は、「佐藤が好きだ」という発話内容に対応する。
すなわち、省略文補完部330は、利用者の発話内容が省略文である場合などであっても、集合「D」を用いて省略文を補完することができる。この結果、省略文補完部330は、第一形態素情報から構成される文が省略文であっても、その文が適正な日本語となるようにすることができる。
また、省略文補完部330が、前記集合「D」に基づいて、補完後の第一形態素情報に一致する話題タイトル820を検索する。補完後の第一形態素情報に一致する話題タイトル820を発見した場合は、省略文補完部330はこの話題タイトル820を回答取得部350に出力する。回答取得部350は、省略文補完部330で検索された適切な話題タイトル820に基づいて、利用者の発話内容に最も適した回答文830を出力することができる。
尚、省略文補完部330は、集合「D」の要素を第一形態素情報に含めるだけに限定されるものではない。この省略文補完部330は、着目話題タイトルに基づいて、その話題タイトルを構成する第一特定情報、第二特定情報又は第三特定情報のいずれかに含まれる形態素を、抽出された第一形態素情報に含めても良い。
[1−8−3.話題検索部]
話題検索部340は、省略文補完部330で話題タイトル810が決まらなかったとき、第一形態素情報と、利用者入力文話題特定情報に対応する各話題タイトル810とを照合し、各話題タイトル810の中から、第一形態素情報に最も適する話題タイトル810を検索するものである。
具体的に、省略文補完部330から検索命令信号が入力された話題検索部340は、入力された検索命令信号に含まれる利用者入力文話題特定情報及び第一形態素情報に基づいて、その利用者入力文話題特定情報に対応付けられた各話題タイトルの中から、その第一形態素情報に最も適した話題タイトル810を検索する。話題検索部340は、その検索した話題タイトル810を検索結果信号として回答取得部350に出力する。
話題検索部340は、省略文補完部330で話題タイトル810が決まらなかったとき、第一形態素情報と、利用者入力文話題特定情報に対応する各話題タイトル810とを照合し、各話題タイトル810の中から、第一形態素情報に最も適する話題タイトル810を検索するものである。
具体的に、省略文補完部330から検索命令信号が入力された話題検索部340は、入力された検索命令信号に含まれる利用者入力文話題特定情報及び第一形態素情報に基づいて、その利用者入力文話題特定情報に対応付けられた各話題タイトルの中から、その第一形態素情報に最も適した話題タイトル810を検索する。話題検索部340は、その検索した話題タイトル810を検索結果信号として回答取得部350に出力する。
図13は、ある話題特定情報810(=「佐藤」)に対応付けされた話題タイトル820,回答文830、感情フラグ840の具体例を示す図である。図13に示すように、例えば、話題検索部340は、入力された第一形態素情報「佐藤、好き」に話題特定情報810(=「佐藤」)が含まれるので、その話題特定情報810(=「佐藤」)を特定し、次に、その話題特定情報810(=「佐藤」)に対応付けられた各話題タイトル(820)1-1,1-2,…と入力された第一形態素情報「佐藤、好き」とを照合する。
話題検索部340は、その照合結果に基づいて、各話題タイトル(820)1-1〜1-2の中から、入力された第一形態素情報「佐藤、好き」と一致する話題タイトル(820)1-1(佐藤;*;好き)を特定する。話題検索部340は、検索した話題タイトル(820)1-1(佐藤;*;好き)を検索結果信号として回答取得部350に出力する。
話題検索部340は、その照合結果に基づいて、各話題タイトル(820)1-1〜1-2の中から、入力された第一形態素情報「佐藤、好き」と一致する話題タイトル(820)1-1(佐藤;*;好き)を特定する。話題検索部340は、検索した話題タイトル(820)1-1(佐藤;*;好き)を検索結果信号として回答取得部350に出力する。
[1−8−4.回答取得部]
回答取得部350は、話題検索部340で検索された話題タイトル820に基づいて、その話題タイトル820に対応付けられた回答文830および感情フラグ840を取得する。また、回答取得部350は、話題検索部340で検索された話題タイトルに基づいて、その話題タイトルに対応付けられた各回答種類と、入力種類判定部440で判定された発話種類とを照合する。その照合をした回答取得部350は、各回答種類の中から、判定された発話種類と一致する回答種類を検索する。
回答取得部350は、話題検索部340で検索された話題タイトル820に基づいて、その話題タイトル820に対応付けられた回答文830および感情フラグ840を取得する。また、回答取得部350は、話題検索部340で検索された話題タイトルに基づいて、その話題タイトルに対応付けられた各回答種類と、入力種類判定部440で判定された発話種類とを照合する。その照合をした回答取得部350は、各回答種類の中から、判定された発話種類と一致する回答種類を検索する。
図13に示すように、例えば、回答取得部350は、話題検索部340で検索された話題タイトルが話題タイトル1-1(佐藤;*;好き)である場合には、その話題タイトル1-1に対応付けられている回答文1-1(DA,TAなど)の中から、入力種類判定部440で判定された「発話文のタイプ」(例えばDA)と一致する回答種類(DA)を特定する。この回答種類(DA)を特定した回答取得部350は、特定した回答種類(DA)に基づいて、その回答種類(DA)に対応付けられた回答文1-1(「私も佐藤が好きです。」)を取得する。
ここで、上記"DA"、"TA"等のうち、"A"は、肯定形式を意味する。従って、発話種類及び回答種類に"A"が含まれているときは、ある事柄について肯定することを示している。また、発話種類及び回答種類には、"DQ"、"TQ"等の種類を含めることもできる。この"DQ"、"TQ"等のうち"Q"は、ある事柄についての質問を意味する。
ここで、上記"DA"、"TA"等のうち、"A"は、肯定形式を意味する。従って、発話種類及び回答種類に"A"が含まれているときは、ある事柄について肯定することを示している。また、発話種類及び回答種類には、"DQ"、"TQ"等の種類を含めることもできる。この"DQ"、"TQ"等のうち"Q"は、ある事柄についての質問を意味する。
回答種類が上記質問形式(Q)からなるときは、この回答種類に対応付けられる回答文は、肯定形式(A)で構成される。この肯定形式(A)で作成された回答文としては、質問事項に対して回答する文等が挙げられる。例えば、発話文が「あなたはスロットマシンを操作したことがありますか?」である場合には、この発話文についての発話種類は、質問形式(Q)となる。この質問形式(Q)に対応付けられる回答文は、例えば「私はスロットマシンを操作したことがあります」(肯定形式(A))が挙げられる。
一方、発話種類が肯定形式(A)からなるときは、この回答種類に対応付けられる回答文は、質問形式(Q)で構成される。この質問形式(Q)で作成された回答文としては、発話内容に対して聞き返す質問文、又は特定の事柄を聞き出す質問文等が挙げられる。例えば、発話文が「私はスロットマシンで遊ぶのが趣味です」である場合には、この発話文についての発話種類は、肯定形式(A)となる。この肯定形式(A)に対応付けられる回答文は、例えば"パチンコで遊ぶのは趣味ではないのですか?"(特定の事柄を聞き出す質問文(Q))が挙げられる。
回答取得部350は、取得した回答文830を回答文信号として管理部310に出力する。回答取得部350から回答文信号が入力された管理部310は、入力された回答文信号を出力部600に出力する。また、回答取得部350は、取得した感情フラグ840を後述するキャラクタ制御部800Bに出力する。
出力部600は、回答取得部350で取得された回答文を出力するものである。この出力部600は、例えば、スピーカ、ディスプレイなどが挙げられる。具体的に、管理部310から回答文が入力された出力部600は、入力された回答文に基づいて、音声をもってその回答文、例えば、「私も佐藤が好きです」を出力する。
出力部600は、回答取得部350で取得された回答文を出力するものである。この出力部600は、例えば、スピーカ、ディスプレイなどが挙げられる。具体的に、管理部310から回答文が入力された出力部600は、入力された回答文に基づいて、音声をもってその回答文、例えば、「私も佐藤が好きです」を出力する。
[1−9キャラクタデータ記憶部、キャラクタ制御部、キャラクタ表示部]
について説明する。
について説明する。
[1−9−1.キャラクタデータ記憶部]
キャラクタデータ記憶部800Aは、感情フラグに対応付けられた、キャラクタを提供するためのデータ(以下、単に「キャラクタデータ」という)を記憶し、指定された感情フラグに対応したキャラクタを提供するためのデータを出力する機能を有する。「キャラクタを提供するためのデータ」は、ユーザがキャラクタの感情変化を認知可能なデータであればどのようなものであってもよく、たとえばキャラクタの表情の変化を提示する画像データ(静止画、動画いずれでもよい)、声の変化から感情の変化を知らせる音声データなどである。
キャラクタデータ記憶部800Aは、感情フラグに対応付けられた、キャラクタを提供するためのデータ(以下、単に「キャラクタデータ」という)を記憶し、指定された感情フラグに対応したキャラクタを提供するためのデータを出力する機能を有する。「キャラクタを提供するためのデータ」は、ユーザがキャラクタの感情変化を認知可能なデータであればどのようなものであってもよく、たとえばキャラクタの表情の変化を提示する画像データ(静止画、動画いずれでもよい)、声の変化から感情の変化を知らせる音声データなどである。
[1−9−2.キャラクタ制御部]
キャラクタ制御部800Bは、会話制御部300(より具体的には回答取得部350)から、回答取得部350が取得した回答文830に対応する感情フラグ840を受け取り、この感情フラグ840に対応するキャラクタデータをキャラクタデータ記憶部800Aから取得し、取得したキャラクタデータをキャラクタ表示部800Cに提供する。
キャラクタ制御部800Bは、会話制御部300(より具体的には回答取得部350)から、回答取得部350が取得した回答文830に対応する感情フラグ840を受け取り、この感情フラグ840に対応するキャラクタデータをキャラクタデータ記憶部800Aから取得し、取得したキャラクタデータをキャラクタ表示部800Cに提供する。
図14は、キャラクタ制御部800Bの構成例を示すブロック図である。キャラクタ制御部800Bは、感情状態情報管理部1301と、感情対応画像データ取得部1302とを有する。
感情状態情報管理部1301は、会話制御部300から感情フラグ840を受け取り、どの感情フラグ840に対応するキャラクタデータを取得するのかを管理する機能を有する。感情状態情報管理部1301は、会話制御部300から感情フラグ840を受け取りると、感情対応画像データ取得部1302にどの感情フラグ840に対応するキャラクタデータをキャラクタデータ記憶部800Aから取得するのかを命令する。なお、本実施の形態にかかる会話制御装置1は複数の異なるキャラクタからいずれかをユーザの対戦相手等として選択できるようにしていてもよい。この場合感情状態情報管理部1301は現在どのキャラクタが選択されているのかも管理し、感情フラグ840とともに現在のキャラクタを指定するデータを感情対応画像データ取得部1302に伝える。
感情状態情報管理部1301は、感情状態情報管理部1301からの命令に従って、キャラクタデータ記憶部800Aより指定された感情フラグ840に対応するキャラクタデータを取得し、適宜のタイミングにてこのキャラクタデータをキャラクタ表示部800Cに渡すように動作する。適宜のタイミングは、キャラクタ制御部800B内部で自立的に判断するようにしてもよいし、あるいはゲームの進行に伴ってゲームの進行を管理制御する手段(例えば、ゲーム機CPU)からのタイミング指示信号に従ってキャラクタ表示部800Cに渡すように動作するようにしてもよい。
[1−9−3.キャラクタ表示部]
キャラクタ表示部800Cは、キャラクタ制御部800Bから提供されたキャラクタデータを再生若しくは実行する。キャラクタデータが画像データである場合は、キャラクタ表示部800Cは、液晶表示パネルなどの画像表示装置である。一方、キャラクタデータが音声データのみである場合は、キャラクタ表示部800Cは、スピーカユニットなどとなり、キャラクタ表示部800Cは、必ずしも画像表示装置に限られるものではない。
キャラクタ表示部800Cは、キャラクタ制御部800Bから提供されたキャラクタデータを再生若しくは実行する。キャラクタデータが画像データである場合は、キャラクタ表示部800Cは、液晶表示パネルなどの画像表示装置である。一方、キャラクタデータが音声データのみである場合は、キャラクタ表示部800Cは、スピーカユニットなどとなり、キャラクタ表示部800Cは、必ずしも画像表示装置に限られるものではない。
キャラクタ表示部800Cが提示するキャラクタは感情フラグに対応したものとなる。例えば、感情フラグが「怒り」である場合は、怒った表情を示すキャラクタ画像が表示され・拳を振り上げる動作を示すキャラクタが表示され、あるいは怒った声がスピーカより再生される。
このようなキャラクタの制御により、ユーザ・利用者は、あたかも実際の人間のように反応するキャラクタとの会話、会話を伴うゲームなどを楽しむことが可能となる。
このようなキャラクタの制御により、ユーザ・利用者は、あたかも実際の人間のように反応するキャラクタとの会話、会話を伴うゲームなどを楽しむことが可能となる。
[2.会話制御方法]
上記構成を有する会話制御装置1による会話制御方法は、以下の手順により実施することができる。図15は、本実施の形態に係る会話制御方法の手順を示すフロー図である。
先ず、入力部100が、利用者からの発話内容を取得するステップを行う(ステップS1501)。具体的には、入力部100は、利用者の発話内容を構成する音声を取得する。入力部100は、取得した音声を音声信号として音声認識部200に出力する。なお、入力部100は、利用者からの音声ではなく、利用者から入力された文字列(例えば、テキスト形式で入力された文字データ)を取得してもよい。
上記構成を有する会話制御装置1による会話制御方法は、以下の手順により実施することができる。図15は、本実施の形態に係る会話制御方法の手順を示すフロー図である。
先ず、入力部100が、利用者からの発話内容を取得するステップを行う(ステップS1501)。具体的には、入力部100は、利用者の発話内容を構成する音声を取得する。入力部100は、取得した音声を音声信号として音声認識部200に出力する。なお、入力部100は、利用者からの音声ではなく、利用者から入力された文字列(例えば、テキスト形式で入力された文字データ)を取得してもよい。
次いで、音声認識部200が、入力部100で取得した発話内容に基づいて、発話内容に対応する文字列を特定するステップを行う(ステップS1502)。具体的には、入力部100から音声信号が入力された音声認識部200は、入力された音声信号に基づいて、その音声信号に対応する単語仮説(候補)を特定する。音声認識部200は、特定した単語仮説(候補)に対応付けられた文字列を取得し、取得した文字列を文字列信号として会話制御部300に出力する。
そして、文字列特定部410が、音声認識部200で特定された一連の文字列を一文毎に区切るステップを行う(ステップS1503)。具体的には、管理部310から文字列信号(あるいは形態素信号)が入力された文字列特定部410は、その入力された一連の文字列の中に、ある一定以上の時間間隔があるときは、その部分で文字列を区切る。文字列特定部410は、その区切った各文字列を形態素抽出部420及び入力種類判定部440に出力する。なお、文字列特定部410は、入力された文字列がキーボードから入力された文字列である場合には、句読点又はスペース等のある部分で文字列を区切るのが好ましい。
その後、形態素抽出部420が、文字列特定部410で特定された文字列に基づいて、文字列の最小単位を構成する各形態素を第一形態素情報として抽出するステップを行う(ステップS1504)。具体的に、文字列特定部410から文字列が入力された形態素抽出部420は、入力された文字列と、形態素データベース430に予め格納されている形態素群とを照合する。なお、その形態素群は、本実施の形態では、それぞれの品詞分類に属する各形態素について、その形態素の見出し語・読み・品詞・活用形などを記述した形態素辞書として準備されている。
この照合をした形態素抽出部420は、入力された文字列の中から、予め記憶された形態素群に含まれる各形態素と一致する各形態素(m1,m2、…)を抽出する。形態素抽出部420は、抽出した各形態素を第一形態素情報として話題特定情報検索部320に出力する。
この照合をした形態素抽出部420は、入力された文字列の中から、予め記憶された形態素群に含まれる各形態素と一致する各形態素(m1,m2、…)を抽出する。形態素抽出部420は、抽出した各形態素を第一形態素情報として話題特定情報検索部320に出力する。
次いで、入力種類判定部440が、文字列特定部410で特定された一文を構成する各形態素に基づいて、「発話文のタイプ」を判定するステップを行う(ステップS1505)。具体的には、文字列特定部410から文字列が入力された入力種類判定部440は、入力された文字列に基づいて、その文字列と発話種類データベース450に格納されている各辞書とを照合し、その文字列の中から、各辞書に関係する要素を抽出する。この要素を抽出した入力種類判定部440は、抽出した要素に基づいて、その要素がどの「発話文のタイプ」に属するのかを判定する。入力種類判定部440は、判定した「発話文のタイプ」(発話種類)を回答取得部350に出力する。
そして、話題特定情報検索部320が、形態素抽出部420で抽出された第一形態素情報と着目話題タイトル820focusとを比較するステップを行う(ステップS1506)。
第一形態素情報を構成する形態素と着目話題タイトル820focusとが一致する場合、話題特定情報検索部320は、その話題タイトル820を回答取得部350に出力する。一方、話題特定情報検索部320は、第一形態素情報を構成する形態素と話題タイトル820とが一致しなかった場合には、入力された第一形態素情報及び利用者入力文話題特定情報を検索命令信号として省略文補完部330に出力する。
第一形態素情報を構成する形態素と着目話題タイトル820focusとが一致する場合、話題特定情報検索部320は、その話題タイトル820を回答取得部350に出力する。一方、話題特定情報検索部320は、第一形態素情報を構成する形態素と話題タイトル820とが一致しなかった場合には、入力された第一形態素情報及び利用者入力文話題特定情報を検索命令信号として省略文補完部330に出力する。
その後、省略文補完部330が、話題特定情報検索部320から入力された第一形態素情報に基づいて、着目話題特定情報及び回答文話題特定情報を、入力された第一形態素情報に含めるステップを行う(ステップS1507)。具体的には、第一形態素情報を「W」、着目話題特定情報及び回答文話題特定情報の集合を「D」とすると、省略文補完部330は、第一形態素情報「W」に話題特定情報「D」の要素を含めて、補完された第一形態素情報を生成し、この補完された第一形態素情報と集合「D」に関連づけされたすべての話題タイトル820とを照合し、補完された第一形態素情報と一致する話題タイトル820があるか検索する。補完された第一形態素情報と一致する話題タイトル820がある場合は、省略文補完部330は、その話題タイトル820を回答取得部350に出力する。一方、補完された第一形態素情報と一致する話題タイトル820を発見しなかった場合は、省略文補完部330は、第一形態素情報と利用者入力文話題特定情報とを話題検索部340に渡す。
次いで、話題検索部340は、第一形態素情報と、利用者入力文話題特定情報とを照合し、各話題タイトル820の中から、第一形態素情報に適した話題タイトル820を検索するステップを行う(ステップS1508)。具体的には、省略文補完部330から検索命令信号が入力された話題検索部340は、入力された検索命令信号に含まれる利用者入力文話題特定情報及び第一形態素情報に基づいて、その利用者入力文話題特定情報に対応付けられた各話題タイトル820の中から、その第一形態素情報に適した話題タイトル820を検索する。話題検索部340は、その検索の結果得られた話題タイトル820を検索結果信号として回答取得部350に出力する。
次いで、回答取得部350が、話題特定情報検索部320、省略文補完部330,あるいは話題検索部340で検索された話題タイトル820に基づいて、判定された利用者の発話種類と話題タイトル820に対応付けられた各回答種類とを照合する。この照合をした回答取得部350は、各回答種類の中から、判定された発話種類と一致する回答種類を検索する(ステップS1509)。
具体的に、話題検索部340から検索結果信号と、入力種類判定部440から「発話文のタイプ」とが入力された回答取得部350は、入力された検索結果信号に対応する「話題タイトル」と、入力された「発話文のタイプ」とに基づいて、その「話題タイトル」に対応付けられている回答種類群の中から、「発話文のタイプ」(DAなど)と一致する回答種類を特定する。
具体的に、話題検索部340から検索結果信号と、入力種類判定部440から「発話文のタイプ」とが入力された回答取得部350は、入力された検索結果信号に対応する「話題タイトル」と、入力された「発話文のタイプ」とに基づいて、その「話題タイトル」に対応付けられている回答種類群の中から、「発話文のタイプ」(DAなど)と一致する回答種類を特定する。
この回答取得部350は、会話データベース500から、特定した回答種類に対応付けられた回答文830を取得する。回答取得部350は、管理部310を介して、取得した回答文830を出力部600に出力する。管理部310から回答文が入力された出力部600は、入力された回答文830を出力する(ステップS1510)。
回答取得部350は、特定した回答種類に対応付けられた回答文830を取得する(ステップS1510)とともに、この回答文830に対応付けられた感情フラグ840も取得する(ステップS1511)。感情フラグ840を取得した回答取得部350(会話制御部300)は、この感情フラグ840をキャラクタ制御部800Bに渡す。
回答取得部350から感情フラグ840を受け取ったキャラクタ制御部800Bは、この感情フラグ840に対応するキャラクタデータをキャラクタデータ記憶部800Aから取得する(ステップS1512)。感情フラグ840に対応するキャラクタデータを受け取ったキャラクタ制御部800Bは、このキャラクタデータをキャラクタ表示部800Cに渡す。
キャラクタデータを受け取ったキャラクタ表示部800Cは、キャラクタデータに基づいてキャラクタの表情、動作などを表示する(ステップS1513)。キャラクタデータが対応付けられた感情フラグ840は、回答文830に適合した感情を示すものが予め割り当てられているので、回答文830の内容に合致したキャラクタの表情、動作などが表示されるので、会話制御装置1の利用者は、会話制御装置1が演じるキャラクタ(疑似人格)が実際の人間に近い自然な反応を示しているように感ずる。
[3.キャラクタ表示部による表示例]
上記ステップS1413においてキャラクタ表示部800Cの表示例について、図16から図19を参照しながら説明する。図16から図19はそれぞれキャラクタ表示部800Cの表示例を示す図である。
上記ステップS1413においてキャラクタ表示部800Cの表示例について、図16から図19を参照しながら説明する。図16から図19はそれぞれキャラクタ表示部800Cの表示例を示す図である。
図16は、会話制御部300によって取得された回答文830に対応する感情フラグ840が、「平常」を示す感情フラグ840である場合に、キャラクタ表示部800Cによって表示される画面例を示している。この例では、家庭用ゲーム機、業務用ゲーム機、PCなどによって動作する麻雀ゲームを例とする。ゲーム表示領域内1501には、キャラクタを表示するキャラクタ表示領域1502が生成されている。キャラクタ表示領域1502に表示されるキャラクタは回答文830に対応する感情フラグ840により制御される。図16の例では、「平常」を示す感情フラグ840に対応する「平常」の表情をしたキャラクタが表示されている。
次に、会話制御部300によって取得された回答文830に対応する感情フラグ840が、「怒り」を示す感情フラグ840である場合の画面例を説明する。図17は、会話制御部300によって取得された回答文830に対応する感情フラグ840が、「怒り」を示す感情フラグ840である場合に、キャラクタ表示部800Cによって表示される画面例である。キャラクタ表示領域1502に表示されるキャラクタは、「怒り」を示す感情フラグ840に対応する「怒り」の表情をしたキャラクタが表示されている。
次に、会話制御部300によって取得された回答文830に対応する感情フラグ840が、「悲しみ」を示す感情フラグ840である場合の画面例を説明する。図18は、会話制御部300によって取得された回答文830に対応する感情フラグ840が、「悲しみ」を示す感情フラグ840である場合に、キャラクタ表示部800Cによって表示される画面例である。キャラクタ表示領域1502に表示されるキャラクタは、「悲しみ」を示す感情フラグ840に対応する「悲しみ」の表情をしたキャラクタが表示されている。
次に、会話制御部300によって取得された回答文830に対応する感情フラグ840が、「喜び」を示す感情フラグ840である場合の画面例を説明する。図19は、会話制御部300によって取得された回答文830に対応する感情フラグ840が、「喜び」を示す感情フラグ840である場合に、キャラクタ表示部800Cによって表示される画面例である。キャラクタ表示領域1502に表示されるキャラクタは、「喜び」を示す感情フラグ840に対応する「喜び」の表情をしたキャラクタが表示されている。
[4.利点]
本会話制御装置1によれば、利用者の会話内容に基づいて、会話制御装置1が演じるキャラクタ(疑似人格)の感情状態(感情を示すデータ)を変化させ、この感情状態に応じたキャラクタの動きを利用者に示すことができるので、キャラクタの動きに感情の変化を反映させることができるとともに、より実際の人間に近い自然なキャラクタの表情の変化、動作などを示すことが可能となる。
本会話制御装置1によれば、利用者の会話内容に基づいて、会話制御装置1が演じるキャラクタ(疑似人格)の感情状態(感情を示すデータ)を変化させ、この感情状態に応じたキャラクタの動きを利用者に示すことができるので、キャラクタの動きに感情の変化を反映させることができるとともに、より実際の人間に近い自然なキャラクタの表情の変化、動作などを示すことが可能となる。
[5.変形例]
(1) 上述の第1の実施の形態では、キャラクタ制御部800Bが会話制御部300より感情フラグ840を受け取る毎に、キャラクタデータ記憶部800Aからキャラクタデータを取得するように動作したが、本発明はこれに限られない。
(1) 上述の第1の実施の形態では、キャラクタ制御部800Bが会話制御部300より感情フラグ840を受け取る毎に、キャラクタデータ記憶部800Aからキャラクタデータを取得するように動作したが、本発明はこれに限られない。
キャラクタ制御部800Bは、それぞれの感情フラグ840(上述の例では、「平常」の感情を示す感情フラグ「A」、「激怒」の感情を示す感情フラグ「B」、「怒り」の感情を示す感情フラグ「C」、「喜び」の感情を示す感情フラグ「D」)のそれぞれについて、会話制御部300より受け取った回数をカウントし、カウント値として記憶する。
このようなキャラクタ制御部800Bとすることにより、キャラクタの表示制御のタイミングに幅を持たせることができる。また、キャラクタの表示制御は、ユーザの過去の発話内容に影響させることとなるので、会話制御装置1やこの会話制御装置1を有するゲーム機を長い時間使用した場合であっても、会話する楽しみを持続させることができる。
(2) 次に、キャラクタ制御部800Bは、所定のタイミング(例えば、会話制御部300より感情フラグ840を受け取ったとき)で各感情フラグ840のカウント値を予め定められた閾値(例えば「10」)と比較し、この閾値を超えたカウント値を有する感情フラグ840に対応するキャラクタデータをキャラクタデータ記憶部800Aから取得するように動作するようにしてもよい。例えば、各感情フラグ840のカウント値が「A」=2、「B」=8、「C」=10、「D」=4である状態で、キャラクタ制御部800Bが会話制御部300より感情フラグ「C」を受け取った場合、感情フラグ「C」のカウント値は「11」となり閾値を超える。この場合キャラクタ制御部800Bは、「怒り」の感情フラグ「C」に対応するキャラクタデータをキャラクタデータ記憶部800Aから取得し、キャラクタ表示部800Cに渡すように動作することとなる。
(3) なお、閾値はすべての感情フラグについて同一ではなく、各感情フラグごとに異なっていてもよい。たとえば「平常」の感情を示す感情フラグ「A」の閾値を12、「激怒」の感情を示す感情フラグ「B」を10、「怒り」の感情を示す感情フラグ「C」を5、「喜び」の感情を示す感情フラグ「D」を12のように設定する。このような設定により、怒りっぽいキャラクタ、落ち着いたキャラクタ、友好的なキャラクタなどキャラクタの性格付けを制御することが可能となる。
(4) 上述の実施の形態では、感情フラグ840は回答文830に対応付けされて記憶しているものとしたが、感情フラグ840は話題タイトル820,或いは話題特定情報810に対応付けて会話データベース500に記憶される構成としてもよい。
(4) 上述の実施の形態では、感情フラグ840は回答文830に対応付けされて記憶しているものとしたが、感情フラグ840は話題タイトル820,或いは話題特定情報810に対応付けて会話データベース500に記憶される構成としてもよい。
[6.その他]
(1) 会話制御装置1の音声認識部200、会話制御部300、文解析部400の構成及び動作は、第1の実施の形態において説明したものに限られず、会話データベース手段を利用して利用者の発話内容に応じた回答を返すものであれば、第1の実施の形態において説明したもの以外のどのような音声認識部200、会話制御部300、文解析部400であっても、本発明に係る会話制御装置1の構成要素として使用可能である。
(2) 上記実施の形態の説明では、会話制御装置1への発話の入力は音声によるものとして説明したが、会話制御装置1への発話の入力は音声に限られるものではなく、キーボード、タッチパネル、ポインティングデバイスなどの文字入力手段による文字列データとして会話制御装置1へ発話を入力し、会話制御装置1がこの文字列データとして入力された発話に対して会話データベース500を用いて回答文を出力する構成としても本発明は成立する。
(1) 会話制御装置1の音声認識部200、会話制御部300、文解析部400の構成及び動作は、第1の実施の形態において説明したものに限られず、会話データベース手段を利用して利用者の発話内容に応じた回答を返すものであれば、第1の実施の形態において説明したもの以外のどのような音声認識部200、会話制御部300、文解析部400であっても、本発明に係る会話制御装置1の構成要素として使用可能である。
(2) 上記実施の形態の説明では、会話制御装置1への発話の入力は音声によるものとして説明したが、会話制御装置1への発話の入力は音声に限られるものではなく、キーボード、タッチパネル、ポインティングデバイスなどの文字入力手段による文字列データとして会話制御装置1へ発話を入力し、会話制御装置1がこの文字列データとして入力された発話に対して会話データベース500を用いて回答文を出力する構成としても本発明は成立する。
1 … 会話制御装置
100 … 入力部
200 … 音声認識部
300 … 会話制御部
400 … 文解析部
500 … 会話データベース
600 … 出力部
700 … 音声認識辞書記憶部
800A … キャラクタデータ記憶部
800B … キャラクタ制御部
800C … キャラクタ表示部
100 … 入力部
200 … 音声認識部
300 … 会話制御部
400 … 文解析部
500 … 会話データベース
600 … 出力部
700 … 音声認識辞書記憶部
800A … キャラクタデータ記憶部
800B … キャラクタ制御部
800C … キャラクタ表示部
Claims (6)
- ユーザからの発話に応答する回答を出力するとともに、ユーザからの発話に応じてキャラクタの表示を変化させることが可能な会話制御装置において、
複数の話題特定情報を記憶する会話データベース手段と、従前の会話及び従前の回答により定まる談話履歴を記憶し、この談話履歴により定まる話題特定情報と発話情報とを照合して回答文を選択する会話制御手段と、キャラクタの表示を制御するキャラクタ制御手段とを有し、
前記キャラクタ制御手段は、発話情報と話題特定情報との照合により定まる感情情報に応じて、キャラクタを表示するためのキャラクタデータであって当該感情情報に対応したキャラクタデータを選択する
ことを特徴とする会話制御装置。 - 請求項1に記載の会話制御装置において、前記キャラクタ制御手段は、感情情報の累積値を記憶し、感情情報の累積値が所定の閾値を超えた場合、当該感情情報に対応するキャラクタの表示を実行することを特徴とする会話制御装置。
- ユーザからの発話に応答する回答を出力するとともに、ユーザからの発話に応じてキャラクタの表示を変化させることが可能な会話制御装置において、
複数の話題特定情報と、各話題特定情報について定められた1又は複数の話題タイトルと、各話題タイトルについて定められた一又は複数の回答文と、回答文に対応して定められた感情フラグとを記憶する会話データベース手段と、
従前の会話及び従前の回答文により定まる談話履歴により定まる話題特定情報と発話情報とを照合して、当該話題特定情報のいずれかについて定められた話題タイトルのいずれかを取得し、その話題タイトルに対応する回答文からいずれか一の回答文を選択する会話制御手段と、キャラクタの表示を制御するキャラクタ制御手段とを有し、
前記キャラクタ制御手段は、会話制御手段が選択した回答文に対応して定められた感情フラグに応じて、キャラクタを表示するためのキャラクタデータであって当該感情フラグに対応したキャラクタデータを選択し、このキャラクタデータを用いてキャラクタを表示する
ことを特徴とする会話制御装置。 - 請求項3に記載の会話制御装置において、前記キャラクタ制御手段は各感情フラグのカウント値を記憶し、各感情フラグのカウント値が所定の値を超えた場合、当該感情フラグに対応するキャラクタの表示を実行することを特徴とする会話制御装置。
- ユーザからの発話に応答する回答を出力するとともに、ユーザからの発話に応じてキャラクタの表示を変化させることが可能な会話制御方法において、
複数の話題特定情報と、各話題特定情報について定められた1又は複数の話題タイトルと、各話題タイトルについて定められた一又は複数の回答文と、回答文に対応して定められた感情フラグとを予め記憶させるステップと、
従前の会話及び従前の回答文により定まる談話履歴により定まる話題特定情報と発話情報とを照合して、当該話題特定情報のいずれかについて定められた話題タイトルのいずれかを取得し、その話題タイトルに対応する回答文からいずれか一の回答文を選択するステップと、
前記選択するステップにおいて選択された回答文に対応する感情フラグを取得し、キャラクタを表示するためのキャラクタデータであって前記感情フラグに対応したキャラクタデータを選択し、このキャラクタデータを用いてキャラクタを表示するステップとを有することを特徴とする会話制御方法。 - 請求項5に記載の会話制御方法において、前記表示するステップは、各感情フラグのカウント値を記憶させるステップを有し、
各感情フラグのカウント値が所定の値を超えた場合、当該感情フラグに対応するキャラクタの表示が実行されることを特徴とする会話制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003358071A JP2005122549A (ja) | 2003-10-17 | 2003-10-17 | 会話制御装置及び会話制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003358071A JP2005122549A (ja) | 2003-10-17 | 2003-10-17 | 会話制御装置及び会話制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005122549A true JP2005122549A (ja) | 2005-05-12 |
Family
ID=34614768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003358071A Withdrawn JP2005122549A (ja) | 2003-10-17 | 2003-10-17 | 会話制御装置及び会話制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005122549A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007241535A (ja) * | 2006-03-07 | 2007-09-20 | Kenwood Corp | エージェント装置 |
WO2017145466A1 (ja) * | 2016-02-26 | 2017-08-31 | ソニー株式会社 | 情報処理システム、クライアント端末、情報処理方法、および記録媒体 |
WO2018079106A1 (ja) * | 2016-10-28 | 2018-05-03 | 株式会社東芝 | 感情推定装置、感情推定方法、記憶媒体、および感情カウントシステム |
WO2023181827A1 (ja) * | 2022-03-22 | 2023-09-28 | ソニーグループ株式会社 | 情報処理装置、情報処理方法およびプログラム |
-
2003
- 2003-10-17 JP JP2003358071A patent/JP2005122549A/ja not_active Withdrawn
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007241535A (ja) * | 2006-03-07 | 2007-09-20 | Kenwood Corp | エージェント装置 |
WO2017145466A1 (ja) * | 2016-02-26 | 2017-08-31 | ソニー株式会社 | 情報処理システム、クライアント端末、情報処理方法、および記録媒体 |
US10852813B2 (en) | 2016-02-26 | 2020-12-01 | Sony Corporation | Information processing system, client terminal, information processing method, and recording medium |
US11327556B2 (en) | 2016-02-26 | 2022-05-10 | Sony Corporation | Information processing system, client terminal, information processing method, and recording medium |
WO2018079106A1 (ja) * | 2016-10-28 | 2018-05-03 | 株式会社東芝 | 感情推定装置、感情推定方法、記憶媒体、および感情カウントシステム |
JP2018068618A (ja) * | 2016-10-28 | 2018-05-10 | 株式会社東芝 | 感情推定装置、感情推定方法、感情推定プログラム、および感情カウントシステム |
WO2023181827A1 (ja) * | 2022-03-22 | 2023-09-28 | ソニーグループ株式会社 | 情報処理装置、情報処理方法およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7949530B2 (en) | Conversation controller | |
US7949531B2 (en) | Conversation controller | |
JP4846336B2 (ja) | 会話制御装置 | |
EP1489598B1 (en) | Speech recognition | |
JP4888996B2 (ja) | 会話制御装置 | |
JP2005157494A (ja) | 会話制御装置及び会話制御方法 | |
US8935163B2 (en) | Automatic conversation system and conversation scenario editing device | |
JP2007114621A (ja) | 会話制御装置 | |
US8126713B2 (en) | Conversation control system and conversation control method | |
JP4729902B2 (ja) | 音声対話システム | |
AU2003236049B2 (en) | Conversation control system and conversation control method | |
WO2017094913A1 (ja) | 自然言語処理装置及び自然言語処理方法 | |
JP2003210833A (ja) | 対話ゲームシステム、対話ゲーム方法及びプログラム | |
JP4475628B2 (ja) | 会話制御装置、会話制御方法並びにこれらのプログラム | |
JP2005122549A (ja) | 会話制御装置及び会話制御方法 | |
JP4204044B2 (ja) | ゲーム機、ゲームの実行方法、並びにこれらのためのプログラム | |
JP4204043B2 (ja) | ゲーム機、ゲームの実行方法、並びにプログラム | |
JP4204041B2 (ja) | ゲーム機、ゲームの実行方法、並びにプログラム | |
JP4204042B2 (ja) | ゲーム機、ゲームの実行方法、並びにプログラム | |
JP2005118371A (ja) | ゲーム機 | |
JP2005099604A (ja) | 会話制御装置、会話制御方法、およびゲームシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060809 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20060811 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20070719 |