(57)【要約】【課題】ユーザに親近感を感じさせるための技術を改善する。【解決手段】対話装置１００は、言語解析部１１２と、履歴格納部１１３と、システム応答文生成部１１４と、システム応答文出力部１１５と、を備える。言語解析部１１２は、ユーザ発話文を言語解析してユーザ表現特徴を取得する。履歴格納部１１３は、音声認識部１１１が生成したユーザ発話文と言語解析部１１２が取得したユーザ表現特徴の履歴をユーザ発話文履歴１２１として格納する。システム応答文生成部１１４は、履歴格納部１１３が格納したユーザ発話文履歴１２１に基づいてシステム応答文を生成する。システム応答文出力部１１５は、システム応答文生成部１１４が生成したシステム応答文を出力する。【選択図】図３
2019061050.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ発話文を言語解析して前記ユーザ発話文に含まれる表現の特徴を示す情報であるユーザ表現特徴を取得する言語解析部と、
前記言語解析部が取得した前記ユーザ表現特徴の履歴をユーザ発話文履歴として記憶部に格納する履歴格納部と、
前記履歴格納部が格納したユーザ発話文履歴に基づいてシステム応答文を生成するシステム応答文生成部と、
前記システム応答文生成部が生成したシステム応答文を出力するシステム応答文出力部と、
を備える対話装置。
【請求項２】
前記システム応答文生成部は、前記履歴格納部が格納したユーザ発話文履歴の中で出現頻度が基準頻度以上の前記ユーザ表現特徴に対応する表現を用いてシステム応答文を生成する、
請求項１に記載の対話装置。
【請求項３】
前記ユーザ表現特徴に対応する表現は、前記ユーザ表現特徴と同じ表現である、
請求項２に記載の対話装置。
【請求項４】
前記ユーザ表現特徴に対応する表現は、前記ユーザ表現特徴と対照的な表現である、
請求項２に記載の対話装置。
【請求項５】
前記言語解析部は、前記ユーザ発話文の種別を示す情報である発話種別をさらに取得し、
前記履歴格納部は、前記ユーザ発話文と前記ユーザ表現特徴と前記言語解析部が取得した発話種別の履歴をユーザ発話文履歴として前記記憶部に格納し、
前記システム応答文生成部は、前記履歴格納部が格納したユーザ発話文履歴から、前記発話種別毎に前記ユーザ表現特徴の出現頻度を算出し、前記言語解析部が取得した発話種別における前記ユーザ表現特徴の出現頻度が基準頻度以上の前記ユーザ表現特徴に対応する表現を用いてシステム応答文を生成する、
請求項２から４のいずれか１項に記載の対話装置。
【請求項６】
ユーザを識別するユーザ識別部をさらに備え、
前記履歴格納部は、前記ユーザ識別部が識別したユーザ毎にユーザ発話文履歴を前記記憶部に格納し、
前記システム応答文生成部は、前記履歴格納部が格納したユーザ発話文履歴の中で、前記ユーザ識別部が識別したユーザの前記ユーザ表現特徴の出現頻度が基準頻度以上の前記ユーザ表現特徴に対応する表現を用いてシステム応答文を生成する、
請求項２から５のいずれか１項に記載の対話装置。
【請求項７】
各ユーザの発話数を計数する発話数計数部をさらに備え、
前記システム応答文生成部は、前記履歴格納部が格納したユーザ発話文履歴の中で、前記発話数計数部が計数した発話数が最も多いユーザの前記ユーザ表現特徴の出現頻度が基準頻度以上の前記ユーザ表現特徴に対応する表現を用いてシステム応答文を生成する、
請求項６に記載の対話装置。
【請求項８】
前記ユーザ表現特徴は、前記ユーザ発話文の文末表現、前記ユーザ発話文の助詞使用パターン、前記ユーザ発話文に含まれるフィラー、のうちの少なくとも１つである、
請求項１から７のいずれか１項に記載の対話装置。
【請求項９】
ユーザが発話したユーザ発話文の履歴に基づき、前記ユーザ発話文に出現する頻度が高い特徴的な文末表現、助詞使用パターン又はフィラーに対応する表現を用いて生成したシステム応答文を出力する対話方法。
【請求項１０】
ユーザ発話文を言語解析して前記ユーザ発話文に含まれる表現の特徴を示す情報であるユーザ表現特徴を取得する言語解析ステップと、
前記言語解析ステップで取得された前記ユーザ表現特徴の履歴をユーザ発話文履歴として記憶部に格納する履歴格納ステップと、
前記履歴格納ステップで格納されたユーザ発話文履歴に基づいてシステム応答文を生成するシステム応答文生成ステップと、
前記システム応答文生成ステップで生成されたシステム応答文を出力するシステム応答文出力ステップと、
を含む対話方法。
【請求項１１】
コンピュータに、
ユーザ発話文を言語解析して前記ユーザ発話文に含まれる表現の特徴を示す情報であるユーザ表現特徴を取得する言語解析ステップ、
前記言語解析ステップで取得された前記ユーザ表現特徴の履歴をユーザ発話文履歴として記憶部に格納する履歴格納ステップ、
前記履歴格納ステップで格納されたユーザ発話文履歴に基づいてシステム応答文を生成するシステム応答文生成ステップ、及び、
前記システム応答文生成ステップで生成されたシステム応答文を出力するシステム応答文出力ステップ、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット等がユーザと対話する際の応答文を生成する技術に関する。
【背景技術】
【０００２】
ユーザと対話することができる端末やロボットの開発が進められている。そして、これら端末やロボットがユーザと対話をする際に、ユーザに飽きの来ない円滑な対話処理を行えるようにするための技術開発も進められている。例えば、特許文献１には、システムが応答文を生成する際に、話題や単語等を変化させることによって、ユーザに飽きの来ない対話処理を行うことができる対話システムが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１２５９００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の対話システムは、ユーザの利用頻度の高い単語等を評価指標として利用して応答時の会話の話題等を最適化することによってユーザに飽きの来ない対話を提供するようにしている。しかし、対話システムが応答する文章のパターンは予めパターンデータベースに格納されたものに限定されるため、ユーザ毎に話題を変えることはできても、応答文の文章表現が変化することはない。そのため、決まり切った文章表現になってしまう可能性が高く、ユーザが親近感を感じることは難しいと考えられる。このように、従来の対話装置では、ユーザに親近感を感じさせるための技術に改善の余地がある。
【０００５】
本発明は、上記実情に鑑みてなされたものであり、ユーザに親近感を感じさせるための技術を改善することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の対話装置は、
ユーザ発話文を言語解析して前記ユーザ発話文に含まれる表現の特徴を示す情報であるユーザ表現特徴を取得する言語解析部と、
前記言語解析部が取得した前記ユーザ表現特徴の履歴をユーザ発話文履歴として記憶部に格納する履歴格納部と、
前記履歴格納部が格納したユーザ発話文履歴に基づいてシステム応答文を生成するシステム応答文生成部と、
前記システム応答文生成部が生成したシステム応答文を出力するシステム応答文出力部と、
を備える。
【発明の効果】
【０００７】
本発明によれば、ユーザに親近感を感じさせるための技術を改善することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態に係る対話装置とユーザとの対話の様子を示す図である。
【図２】実施形態に係る対話装置の外観を示す図である。
【図３】実施形態に係る対話装置の構成を示す図である。
【図４】実施形態に係る対話装置の記憶部に記憶されるユーザ発話文履歴の一例を示す図である。
【図５】各発話種別のユーザ発話文の例を示す図である。
【図６】実施形態に係る言語解析部がユーザ発話文を構文解析した結果の一例を示す図である。
【図７】実施形態に係る言語解析部が述語部を自立語部と付属語部に分割した結果の一例を示す図である。
【図８】実施形態に係る言語解析処理の処理手順を示すフローチャートである。
【図９】実施形態に係るポジネガ極性単語辞書の一例を示す図である。
【図１０】実施形態に係る発話種別判定ルールの一例を示す図である。
【図１１】実施形態に係る対話制御処理の処理手順を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について、図表を参照して説明する。なお、図中同一又は相当部分には同一符号を付す。
【００１０】
（実施形態）
図１に示すように、本発明の実施形態に係る対話装置１００は、音声でユーザＵと対話することができるロボットである。図２に示すように、対話装置１００は頭２０と胴体３０とからなる。そして、対話装置１００の頭２０には、マイク２１と、カメラ２２と、スピーカ２３と、センサ群２４と、が設けられている。
【００１１】
マイク２１は、頭２０の左右、人の顔でいうところの耳の位置に複数設けられており、アレイマイクを構成する。マイク２１は、対話装置１００の周囲にいるユーザＵが発話した音声を音声データとして取得する音声取得部として機能する。
【００１２】
カメラ２２は、頭２０の前面の中央部、人の顔でいうところの鼻の位置に設けられている撮像装置である。カメラ２２は、対話装置１００の正面の画像のデータ（画像データ）を取得する画像取得部として機能し、取得した画像データを後述する制御部１１０に入力する。対話装置１００は、予めユーザの顔の画像データ（又は当該画像データの特徴量）を後述する記憶部１２０に記憶させておく。そして、対話装置１００は、対話中にカメラ２２で取得した顔の画像データを画像認識することにより、対話相手が誰なのかを識別（ユーザ識別）することができる。
【００１３】
スピーカ２３は、カメラ２２の下側、人の顔でいうところの口の位置に設けられている。スピーカ２３は、音声を出力する音声出力部として機能する。
【００１４】
センサ群２４は、人の顔でいうところの目の位置に設けられている。センサ群２４は、加速度センサ、障害物検知センサ等を含み、各種物理量を検出して、対話装置１００の姿勢制御、衝突回避、安全性確保等のために使用される。
【００１５】
対話装置１００の頭２０と胴体３０とは、図２に示すように、破線で示される首関節３１によって相互に連結されている。首関節３１は、複数のモータを含む。後述する制御部１１０がこれら複数のモータを駆動することにより、対話装置１００の頭２０を上下方向、左右方向及び傾ける方向の３軸で回転させることができる。これにより、対話装置１００は、例えばうなずきの動作をすることができる。
【００１６】
図２に示すように、対話装置１００の胴体３０の下部には足回り部３２が設けられている。足回り部３２は、４つの車輪（ホイール）と駆動モータとを含む。４つの車輪のうち、２つが前輪として胴体３０の前側に、残り２つが後輪として胴体３０の後ろ側に、それぞれ配置されている。車輪としては、例えば、オムニホイール、メカナムホイール等を使用しても良い。後述する制御部１１０が、駆動モータを制御して車輪を回転させると、対話装置１００は移動する。
【００１７】
次に、図３を参照して、対話装置１００の機能構成を説明する。図３に示すように、対話装置１００は、上述の構成に加え、操作ボタン３３と、制御部１１０と、記憶部１２０と、を備える。
【００１８】
操作ボタン３３は、図示しないが、胴体３０の背中の位置に設けられている。操作ボタン３３は、対話装置１００を操作するための各種ボタンである。操作ボタン３３は、電源ボタン、スピーカ２３の音量調節ボタン等を含む。
【００１９】
制御部１１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等で構成される。制御部１１０は、記憶部１２０に記憶されたプログラムを実行することにより、後述する音声認識部１１１、言語解析部１１２、履歴格納部１１３、システム応答文生成部１１４、システム応答文出力部１１５及びユーザ識別部１１６として機能する。また、制御部１１０は、時計機能及びタイマー機能を備え、現在時刻（現在日時）や経過時間を取得することができる。
【００２０】
記憶部１２０は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成され、制御部１１０のＣＰＵが実行するプログラム、各種データ等を記憶する。また、記憶部１２０には、履歴格納部１１３により、ユーザ発話文に関する情報の履歴がユーザ発話文履歴１２１として記憶される。
【００２１】
ユーザ発話文履歴１２１は、図４に示すように、「ユーザ」、「ユーザ発話文」、「発話種別」、「文末表現」、「助詞有無」及び「フィラー」の各情報からなる。これは、「ユーザ」の項目で示されるユーザが、「ユーザ発話文」の項目で示されるユーザ発話文を発話したことを示している。また、「発話種別」の項目には該ユーザ発話文の発話種別が、「文末表現」の項目には該ユーザ発話文の文末表現が、「助詞有無」の項目には該ユーザ発話文の助詞の有無が、「フィラー」の項目には該ユーザ発話文中のフィラーが、それぞれ格納されることを示している。なお、発話種別、文末表現、助詞の有無、フィラー、については後述する。
【００２２】
次に、制御部１１０が実現する各機能について説明する。制御部１１０は、前述したように、記憶部１２０に記憶されたプログラムを実行することにより、音声認識部１１１、言語解析部１１２、履歴格納部１１３、システム応答文生成部１１４、システム応答文出力部１１５及びユーザ識別部１１６として機能する。また、制御部１１０は、マルチスレッド機能に対応しており、複数のスレッド（異なる処理の流れ）を並行して実行することができる。
【００２３】
音声認識部１１１は、音声取得部（マイク２１）が取得した音声データを音声認識して、テキストデータとしてのユーザ発話文を取得する。
【００２４】
言語解析部１１２は、音声認識部１１１が取得したユーザ発話文（テキストデータ）を後述する言語解析処理によって言語解析する。具体的には、言語解析部１１２は、ユーザ発話文を形態素解析及び構文解析して、ユーザ発話文の中の各単語の品詞情報、係り受け情報等を取得する。そして、これらに基づき、言語解析部１１２は、ユーザの表現の特徴を示す情報（ユーザ表現特徴）を取得するとともに、ユーザ発話文の発話種別を判定する。発話種別とは、図５に示すように、ユーザ発話文の種類（主張、要望、質問、依頼、命令、提案、等）を表す情報（発話種別情報）である。また、ユーザ表現特徴としては、文末表現、助詞の有無、フィラー等があるが、これらについては後述する。
【００２５】
履歴格納部１１３は、音声認識部１１１が取得したユーザ発話文と、言語解析部１１２が取得又は判定したユーザ表現特徴及び発話種別とを、ユーザ毎に、ユーザ発話文履歴１２１として、記憶部１２０に格納する。ユーザ表現特徴の、文末表現、助詞の有無、フィラーについて、以下に説明する。
【００２６】
文末表現とは、当該ユーザ発話文の文末の表現である。この文末表現の抽出方法について、図４に示すユーザＡのユーザ発話文「お薦めの映画を教えてもらいたいな」を用いて説明する。このユーザ発話文を言語解析部１１２が構文解析すると、図６に示すように、文章の構造とともに、述語部（教えてもらいたいな）を抽出することができる。そして、図７に示すように、言語解析部１１２がこの述語部を自立語部と付属語部に分割することにより、この付属語部を元のユーザ発話文の文末表現として抽出することができる。
【００２７】
助詞の有無とは、ここでは当該ユーザ発話文の述語部に係る係り受け元の末尾の助詞の有無を指す。図６で説明すると、述語部（教えてもらいたいな）に係る係り受け元は「映画を」であり、この末尾には、格助詞「を」が存在するので、この例では「助詞の有無」は「有」となる。このように、「助詞の有無」は、言語解析部１１２がユーザ発話文を解析して、ユーザ発話文の述語部に係る係り受け元の末尾の助詞の有無により取得できる。
【００２８】
フィラーとは、ユーザ発話文中に含まれる、「えーと」、「まあ」等の間投詞である。ここでは「・・・ね」、「・・・さあ」等の間投助詞もフィラーに含めることにする。図６の例では、フィラーは存在しないので、この例では「フィラー」は「無」となる。別の例として、図４に示すユーザＣのユーザ発話文「あのー、お薦めの映画、教えてくれる」であれば、冒頭の「あのー」は間投詞なので、フィラーとして抽出される。このように、「フィラー」は、言語解析部１１２がユーザ発話文を解析して品詞情報を得ることにより、ユーザ発話文の中に含まれる間投詞や間投助詞として抽出することができる。
【００２９】
システム応答文生成部１１４は、ユーザ発話文とユーザ発話文の言語解析結果に基づいて、当該ユーザ発話文に対する標準的な表現のシステム応答文を生成する。そして、システム応答文生成部１１４は、履歴格納部１１３が格納したユーザ発話文履歴１２１から取得したユーザ表現特徴に基づいて、システム応答文を変換する。なお、システム応答文生成部１１４は、標準的な表現のシステム応答文を生成することなく、最初から、ユーザ表現特徴に基づいたシステム応答文を生成しても良い。
【００３０】
システム応答文生成部１１４が、現在対話中のユーザのユーザ表現特徴に基づいて、システム応答文を変換する方法について説明する。この処理は、システム応答文生成部１１４が、過去のユーザ発話文の中における、出現頻度の高い文末表現、出現頻度の高い助詞（述語部に係っている係り受け元の末尾の助詞）の使用パターン（助詞使用パターン）、出願頻度の高いフィラー、に基づいてシステム応答文を変換する。ここで、本実施例で出現頻度を求める際に用いる助詞使用パターンは、処理を単純にするために、助詞を使用するパターン（助詞有の助詞使用パターン）と、助詞を使用しないパターン（助詞無の助詞使用パターン）の２種類とする。
【００３１】
まず、システム応答文生成部１１４は、ユーザ発話文履歴１２１に含まれているデータのうち、現在対話中のユーザのデータを対象にして、「文末表現」の項目に格納されている全ての文末表現の中で、出現頻度が文末表現基準頻度（例えば０．２）以上の文末表現を頻出文末表現として抽出する。出現頻度は、当該ユーザのデータにおける、当該文末表現の数÷全データ数として求められる。ここで、複数の文末表現が文末表現基準頻度以上であるときは、その中で最も出現頻度の高い文末表現を頻出文末表現としても良いし、文末表現基準頻度以上の文末表現の中からランダムに一つの文末表現を選出してそれを頻出文末表現としても良い。
【００３２】
なお、文末表現基準頻度は固定値である必要はない。例えば、当該ユーザのユーザ発話文履歴１２１の中の全データ数がｎ個の場合は、文末表現基準頻度を２／ｎ（ただし、ｎ＝１のときは１）とするなど、データ数が増えるにしたがって、文末表現基準頻度を小さくしても良い。また、システム応答文生成部１１４は、出現頻度が文末表現基準頻度以上の文末表現ではなく、最も出現頻度の高い文末表現を頻出文末表現として抽出しても良い。
【００３３】
そして、システム応答文生成部１１４は、システム応答文の文末表現を、上述のように出現頻度によって抽出した頻出文末表現に変換する。
【００３４】
次に、システム応答文生成部１１４は、ユーザ発話文履歴１２１に含まれているデータのうち、現在対話中のユーザのデータを対象にして、出現頻度が助詞基準頻度（この値は例えば０．７等、０．５以上の値に設定する）以上の助詞の使用パターンを頻出助詞使用パターンとして抽出する。出現頻度は、当該ユーザのデータにおける、当該助詞使用パターンの数÷全データ数として求められる。
【００３５】
具体的には、システム応答文生成部１１４は、ユーザ発話文履歴１２１に含まれているデータのうち、現在対話中のユーザのデータを対象にして、「助詞有無」の項目に格納されている「有」の数と「無」の数を求める。ここで、「有」の数をｍ、「無」の数をｎで表すとすると、助詞有の助詞使用パターンの出現頻度はｍ／（ｍ＋ｎ）、助詞無の助詞使用パターンの出現頻度はｎ／（ｍ＋ｎ）と表すことができる。ここで、ｎ／（ｍ＋ｎ）が、助詞基準頻度よりも高ければ、助詞無の助詞使用パターンが頻出助詞使用パターンとして抽出され、システム応答文生成部１１４は、システム応答文から助詞（述語部に係る係り受け元の末尾の助詞）を削除する。
【００３６】
また、ｍ／（ｍ＋ｎ）が、助詞基準頻度よりも高ければ、助詞有の助詞使用パターンが頻出助詞使用パターンとして抽出され、システム応答文生成部１１４は、システム応答文から助詞を削除しない（システム応答文の助詞をそのまま残す）。また、ｍ／（ｍ＋ｎ）とｎ／（ｍ＋ｎ）の両方ともが助詞基準頻度以下なら、当該ユーザの助詞使用パターンは、助詞の有無が混在している使用パターンと判定することとし、システム応答文生成部１１４は、システム応答文に含まれる助詞（述語部に係る係り受け元の末尾の助詞）を５０％の確率で削除する。もっともこの確率は５０％に限定する必要はなく、例えばｎ／ｍの確率で削除することにしても良い。ｎ／ｍの確率で削除した方が、ユーザの助詞使用頻度をより反映したシステム応答文にすることができる。
【００３７】
次に、システム応答文生成部１１４は、ユーザ発話文履歴１２１に含まれているデータのうち、現在対話中のユーザのデータを対象にして、「フィラー」の項目に格納されている全てのデータの中で、出現頻度がフィラー基準頻度（例えば０．１）以上のフィラーを頻出フィラーとして抽出する。複数のフィラーが抽出された場合は、その中で最も出現頻度の高いフィラーを頻出フィラーとしても良い。そして、頻出フィラーが抽出された場合は、システム応答文生成部１１４は、システム応答文に頻出フィラーを挿入する。
【００３８】
なお、フィラー基準頻度は固定値である必要はない。例えば、当該ユーザのユーザ発話文履歴１２１の中の全データ数がｎ個の場合は、フィラー基準頻度を１／ｎとするなど、データ数が増えるにしたがって、フィラー基準頻度を小さくしても良い。また、システム応答文生成部１１４は、出現頻度がフィラー基準頻度以上のフィラーではなく、最も出現頻度の高いフィラーを頻出フィラーとして抽出しても良い。
【００３９】
上述のようにシステム応答文を変換することにより、システム応答文生成部１１４は、ユーザ表現特徴の３つの観点（文末表現、助詞使用パターン、フィラー）に基づいて、ユーザの表現の特徴をシステム応答文に反映させることができる。
【００４０】
システム応答文出力部１１５は、システム応答文生成部１１４が生成及び変換したシステム応答文を音声合成し、スピーカ２３からシステム応答文の音声を出力する。
【００４１】
ユーザ識別部１１６は、カメラ２２で取得したユーザの顔の画像データを画像認識して、現在の対話相手を識別する。なお、ユーザ識別部１１６は、マイク２１で取得した音声データから音声の特徴を認識することによって、対話相手を識別しても良い。また、カメラ２２で取得した画像データの認識結果と、マイク２１で取得した音声データの認識結果とを両方とも用いて、対話相手を識別しても良い。
【００４２】
以上、対話装置１００の機能構成を説明した。次に、言語解析部１１２による言語解析処理について、図８を参照して説明する。この処理は、ユーザが発した音声を音声認識してテキストデータを取得する度に行われる。
【００４３】
まず、言語解析部１１２は、ユーザ発話文を形態素解析及び構文解析してユーザ発話文の中の各単語の品詞情報、係り受け情報等を取得する（ステップＳ１０１）。次に、言語解析部１１２は、構文解析したユーザ発話文の述語部の付属語部を、当該ユーザ発話文の文末表現として抽出する（ステップＳ１０２）。そして、言語解析部１１２は、ユーザ発話文の述語部に係っている係り受け元の末尾の助詞の有無を取得する（ステップＳ１０３）。さらに、言語解析部１１２は、品詞情報に基づきユーザ発話文からフィラーを抽出する（ステップＳ１０４）。ステップＳ１０１からステップＳ１０４までの処理により、ユーザ発話文に含まれるユーザ表現特徴が取得される。
【００４４】
次に、言語解析部１１２は、ポジネガ極性単語辞書に基づいて、ステップＳ１０１で取得した解析結果にポジネガ極性情報を付与する（ステップＳ１０５）。ここで、ポジネガ極性単語辞書とは、図９に示すように、ポジティブな表現を表す用言（例えば、好き（動詞）、美味しい（形容詞）、きれいだ（形容動詞）等）と、ネガティブな表現を表す用言（例えば、嫌い（動詞）、不味い（形容詞）、不細工だ（形容動詞）等）が登録されている単語辞書である。
【００４５】
言語解析部１１２がステップＳ１０１で取得した解析結果に、ポジネガ極性単語辞書に登録されているポジティブな表現を表す用言が存在すれば、その解析結果にはポジネガ極性情報として、「ポジ」が付与される。また、言語解析部１１２がステップＳ１０１で取得した解析結果に、ポジネガ極性単語辞書に登録されているネガティブな表現を表す用言が存在すれば、その解析結果にはポジネガ極性情報として、「ネガ」が付与される。言語解析部１１２がステップＳ１０１で取得した解析結果に、ポジネガ極性単語辞書に登録されている単語が存在しなければ、その解析結果にはポジネガ極性情報は付与されない。
【００４６】
そして、言語解析部１１２は、解析結果に発話種別判定ルールを適用して、発話種別を判定し（ステップＳ１０６）、処理を終了する。ここで、発話種別判定ルールとは、図１０に示すように、ユーザ発話文の末尾の品詞、活用形、ポジネガ極性情報等に基づいて、当該ユーザ発話文の発話種別を判定するルールである。なお、いずれのルールにも該当しなかった場合は、当該ユーザ発話文の発話種別は「その他」と判定される。ただし、図１０に示す発話種別判定ルールはあくまでも一例である。また、発話種別の種類についても、図１０に示されているものに限定されない。例えば「挨拶」（「こんにちは」等、挨拶の発話）、「同意」（「同感です」等、対話者の発話に対して同意していることを表す発話）、「感謝」（「ありがとう」等、感謝の意を表す発話）、「謝罪」（「ごめんなさい」等、謝罪の意を表す発話）等を発話種別の種類に追加することも可能である。
【００４７】
以上の言語解析処理によって、ユーザ発話文に含まれるユーザ表現特徴の取得と、ユーザ発話文の発話種別の判定が行われる。次に、対話装置１００の制御部１１０が実行する対話制御処理について、図１１を参照して説明する。この処理は、対話装置１００が起動すると開始される。
【００４８】
まず、ユーザ識別部１１６は、カメラ２２で取得した画像データを画像認識して、ユーザを識別する（ステップＳ２０１）。カメラ２２で取得した画像データに顔が写っていない場合等、画像認識ができなかった場合は、直前に識別できていたユーザを現在対話しているユーザとみなす。
【００４９】
次に、制御部１１０は、ユーザに応答するか否かを判定する（ステップＳ２０２）。この判定は様々な観点で行うことができる。例えば、対話装置１００が、まだユーザの発した音声を聞いていない場合、当該ユーザに対して応答することは困難なので、この場合は、応答しないという判定を行う。また、通常対話は対話相手と交互に応答するため、前回応答すると判定したら今回は応答しないと判定し、前回応答しないと判定したら今回は応答すると判定しても良い。
【００５０】
制御部１１０が、応答しないと判定したら（ステップＳ２０２；Ｎｏ）、音声認識部１１１は、マイク２１から取得した音声データを音声認識して、ユーザ発話文のテキストデータを取得する（ステップＳ２１１）。ステップＳ２１１は、音声認識ステップとも呼ばれる。
【００５１】
そして、言語解析部１１２は、ステップＳ２１１で取得したテキストデータを上述の言語解析処理（図８）により言語解析して、ユーザ発話文に含まれるユーザ表現特徴の取得と、ユーザ発話文の発話種別の判定を行う（ステップＳ２１２）。ステップＳ２１２は、言語解析ステップとも呼ばれる。
【００５２】
そして、履歴格納部１１３は、ステップＳ２０１で識別したユーザ名、ステップＳ２１１で取得したユーザ発話文並びにステップＳ２１２で判定した発話種別及び取得したユーザ表現特徴（文末表現、助詞の有無、フィラー）を、ユーザ発話文履歴１２１に追加して、記憶部１２０に格納する（ステップＳ２１３）。ステップＳ２１３は、履歴格納ステップとも呼ばれる。そして、ステップＳ２０１に戻る。
【００５３】
一方、ステップＳ２０２で、制御部１１０が応答すると判定したら（ステップＳ２０２；Ｙｅｓ）、システム応答文生成部１１４は、直前のユーザ発話文に対するシステム応答文を生成する（ステップＳ２２１）。ここで生成されるシステム応答文は標準的な表現のシステム応答文であり、従来技術で生成することができる。なお、直前のユーザ発話文は、ユーザ発話文履歴１２１から取得することもできるが、システム応答文の生成には、通常、ユーザ発話文の言語解析結果も必要である。したがって、制御部１１０は、直前のユーザ発話文に対して言語解析部１１２がステップＳ２１２で言語解析した結果を、システム応答文生成部１１４がステップＳ２２１で利用できるように、記憶部１２０に保存しておくのが望ましい。
【００５４】
そして、システム応答文生成部１１４は、ステップＳ２２１で生成したシステム応答文を、記憶部１２０に記憶されているユーザ発話文履歴１２１に含まれるユーザ表現特徴に対応する表現を用いたシステム応答文に変換する（ステップＳ２２２）。ステップＳ２２２は、システム応答文生成ステップとも呼ばれる。
【００５５】
例えば、ステップＳ２２１で生成された標準的なシステム応答文が「あなたの好きな食べ物を教えてください」であるとする。そして、対話相手がユーザＡであるとすると、文末表現が「てもらいたいな」で、助詞は有りで、フィラーは無しなので、システム応答文は、「あなたの好きな食べ物を教えてもらいたいな」に変換される。また、対話相手がユーザＣであるとすると、文末表現が「てくれる」で、助詞は無しで、フィラーは「あのー」なので、システム応答文は、「あのー、あなたの好きな食べ物、教えてくれる」に変換される。
【００５６】
そして、システム応答文出力部１１５は、システム応答文生成部１１４で生成又は変換されたシステム応答文を音声合成して、スピーカ２３から出力する（ステップＳ２２３）。ステップＳ２２３は、システム応答文出力ステップとも呼ばれる。そして、ステップＳ２０１に戻る。
【００５７】
以上説明した対話制御処理により、対話装置１００は、ユーザの表現の特徴を反映したシステム応答文を生成することができる。したがって、対話装置１００から発せられるシステム応答文は、ユーザ毎にそのユーザの口癖を真似たシステム応答文になり、対話装置１００は、ユーザに愛着や親近感を感じさせる対話を実現することができる。このように、対話装置１００は、ユーザに親近感を感じさせるための技術を改善することができる。
【００５８】
（変形例１）
上述の実施形態では、システム応答文生成部１１４は、ユーザ発話文履歴１２１に含まれているデータのうち、「文末表現」の項目に格納されている全ての文末表現の中で、最も出現頻度の高い文末表現を頻出文末表現として抽出する。しかし、文末表現は発話種別によっても変化するので、発話種別を考慮した出現頻度を用いても良い。このような変形例１について説明する。
【００５９】
変形例１では、システム応答文生成部１１４は、ユーザ発話文履歴１２１に含まれているデータのうち、まず、現在対話中のユーザのデータだけを対象に絞り込む。次に、システム応答文生成部１１４は、対話制御処理（図１１）のステップＳ２２１で生成したシステム応答文の発話種別を判定し、ユーザ発話文履歴１２１に含まれているデータのうち、発話種別が当該システム応答文の発話種別と同じデータだけを対象に絞り込む。そして、システム応答文生成部１１４は、このように絞り込んだデータの「文末表現」の項目に格納されている文末表現の中で、最も出現頻度の高い文末表現を頻出文末表現として抽出する。
【００６０】
上述のように、発話種別を考慮して頻出文末表現の抽出を行うことにより、変形例１は、発話種別毎にきめ細かくユーザの表現を真似したシステム応答文を生成することができるようになり、ユーザに愛着や親近感をさらに感じさせる対話を実現することができる。このように、変形例１に係る対話装置は、ユーザに親近感を感じさせるための技術をさらに改善することができる。
【００６１】
（変形例２）
上述の実施形態では、対話装置１００が発話するシステム応答文は、対話中のユーザのユーザ表現特徴を用いることにより、当該ユーザの口癖を真似たシステム応答文になっている。しかし、これに限られない。ユーザの中には、自分の口癖を真似られるのを好まない人もいることから、システム応答文をユーザ表現特徴とは逆の表現に変換しても良い。このような変形例２について説明する。
【００６２】
変形例２では、システム応答文生成部１１４は、対話中のユーザの頻出文末表現とは異なる文末表現を、他のユーザのユーザ発話文履歴１２１から検索し、システム応答文の文末表現を検索された文末表現に変換する。なお、対話制御処理（図１１）のステップ２２１で生成したシステム応答文の文末表現が、対話中のユーザの頻出文末表現と異なっているなら、文末表現を変換しない（標準的な表現の文末表現のままにする）ようにしても良い。
【００６３】
そして、システム応答文生成部１１４は、対話中のユーザの助詞の使用パターンとは逆の使用パターンで助詞を使用する。つまり、システム応答文生成部１１４は、ユーザ発話文履歴１２１に含まれているデータのうち、現在対話中のユーザのデータを対象にして、「助詞有無」の項目に格納されている「有」の数と「無」の数を求める。ここでは、上述のように、「有」の数をｍ、「無」の数をｎで表すとする。そして、ｎ／（ｍ＋ｎ）が、助詞基準頻度よりも高ければ、助詞無の助詞使用パターンがユーザの助詞使用パターンなので、逆に、システム応答文生成部１１４は、システム応答文から助詞（述語部に係る係り受け元の末尾の助詞）を削除しない（システム応答文の助詞をそのまま残す）。
【００６４】
また、ｍ／（ｍ＋ｎ）が、助詞基準頻度よりも高ければ、助詞有の助詞使用パターンがユーザの助詞使用パターンなので、逆にシステム応答文生成部１１４は、システム応答文から助詞を削除する。また、ｍ／（ｍ＋ｎ）とｎ／（ｍ＋ｎ）の両方ともが助詞基準頻度以下なら、当該ユーザの助詞使用パターンは、助詞の有無が混在している使用パターンと判定することとする。この場合はｍとｎとを比較し、ｎの方が大きければ（ユーザは助詞を省略することが多いということなので）、システム応答文生成部１１４は、システム応答文に含まれる助詞（述語部に係る係り受け元の末尾の助詞）を削除しない（システム応答文の助詞をそのまま残す）。また、ｍの方が大きければ（ユーザは助詞を省略しないことが多いということなので）、システム応答文生成部１１４は、システム応答文に含まれる助詞（述語部に係る係り受け元の末尾の助詞）を削除する。
【００６５】
そして、システム応答文生成部１１４は、ユーザ発話文履歴１２１に含まれているデータのうち、現在対話中のユーザのデータを対象にして、「フィラー」の項目に格納されている全てのデータを調べる。そして、フィラーの出現頻度がフィラー基準頻度（例えば０．１）よりも小さければ、フィラー（例えば「あのー」、「えーと」等）をシステム発話文に挿入する。ここで挿入するフィラーは、他のユーザのユーザ発話文履歴１２１に含まれているフィラーから選択しても良い。
【００６６】
上述のように、ユーザ表現特徴とは敢えて異なる表現にシステム発話文を変換することにより、ユーザの口癖とは対照的な口癖が反映された（ユーザの口癖が反映されない）システム発話文を生成することができる。したがって、変形例２は、自分の口癖を真似されるのを好まないユーザに嫌がられないシステム応答文を生成することができるようになり、自分の口癖を真似されたくないユーザにも親近感を感じさせる対話を実現することができる。したがって、変形例２に係る対話装置は、ユーザに親近感を感じさせるための技術を改善することができる。
【００６７】
なお、変形例２に係る対話装置が生成するシステム応答文に用いられる表現は、ユーザ表現特徴の表現とは異なるが、ユーザ表現特徴の表現に基づいて敢えて異なる表現を選択していることから、ユーザ表現特徴に対応する表現の一種と言うことができる。
【００６８】
（変形例３）
上述の実施形態では、システム応答文生成部１１４は、ユーザ発話文履歴１２１に含まれているデータのうち、現在対話中のユーザのデータを対象にして、頻出文末表現、助詞の有無、頻出フィラーを取得している。しかし、このような処理に限定する必要はなく、例えば、最もユーザ発話数の多いユーザのユーザ表現特徴に基づいて、システム応答文を変換しても良い。このような変形例３について説明する。
【００６９】
変形例３では、制御部１１０は、ユーザの発話数を計数する発話数計数部としても機能する。発話数計数部は、記憶部１２０に記憶されているユーザ発話文履歴１２１の「ユーザ」の項目を参照し、各ユーザのユーザ発話文の数を数える。そして、ユーザ発話文の数が最も多いユーザを代表ユーザに選出する。
【００７０】
そして、システム応答文生成部１１４は、頻出文末表現、助詞の有無、頻出フィラーを取得する際に、ユーザ発話文履歴１２１に含まれているデータのうち、現在対話中のユーザのデータを対象にするのではなく、発話計数部が選出した代表ユーザのデータを対象にする。
【００７１】
上述のように、代表ユーザの頻出文末表現、助詞の有無、頻出フィラーを取得して、それを用いてシステム応答文を変換することにより、変形例３に係る対話装置は、対話頻度が最も多いユーザの口癖を真似たシステム応答文でユーザに応答することになる。すると、他人よりも自分の口癖を真似て欲しいと思うユーザに対して、ユーザの対話意欲を駆り立てることが可能となり、各ユーザに親近感を感じさせることができる。したがって、変形例３に係る対話装置は、ユーザに親近感を感じさせるための技術を改善することができる。
【００７２】
（その他の変形例）
なお、本発明は、上述の実施形態に限られるものではなく、様々な変更が可能である。例えば、上述の実施形態では、ユーザ表現特徴を文末表現、助詞の有無、フィラーという３つの観点で捉えていたが、これに限られない。例えば、一人称の表現（「私」、「僕」等）、二人称の表現（「あなた」、「君」等）等についても、ユーザ表現特徴として用いても良い。このようにすることで、ユーザの表現をより反映することができ、対話装置はユーザに親近感をより感じさせることができる。
【００７３】
また、上述の対話制御処理（図１１）のステップＳ２２１の処理を行う際に、ステップＳ２２２の処理も一緒に行うことによって、標準的な表現のシステム応答文を変換する手順を踏まずに、直接ユーザのユーザ表現特徴を反映させたシステム応答文を生成しても良い。
【００７４】
また、上述の実施形態では、対話装置１００がユーザ識別部１１６を備え、カメラ２２又はマイク２１でユーザ識別を行い、ユーザ毎のユーザ発話文履歴１２１を記憶した。しかし、対話装置が特定のユーザ専用で使用されることを想定されている場合は、ユーザ識別部１１６を備える必要はない。この場合はカメラ２２も不要であり、ユーザ発話文履歴１２１に「ユーザ」の項目を設ける必要もない。
【００７５】
また、上述の実施形態では、対話制御処理（図１１）のステップＳ２０１で毎回ユーザを識別しているが、これに限られない。対話装置１００が起動直後に、対話制御処理（図１１）のステップＳ２０１のみに相当するユーザ識別処理を行って、対話ユーザを識別しておき、その後はステップＳ２０１を省略した対話制御処理を行っても良い。そして、ユーザ識別処理においては、対話装置１００が「顔を見せてください」と発話することによって、ユーザに顔をカメラ２２に向けてもらっても良い。また対話装置１００が、起動後に、「あなたの名前を教えてください」と発話して、カメラ２２を使用せずに、マイク２１を使用して、音声認識によってユーザ識別を行っても良い。
【００７６】
また、いずれのユーザ識別処理においてもユーザを識別できなかった場合のために、対話装置１００は、例えば「デフォルトユーザ」のようなユーザ名を定義しておき、識別不能のユーザのユーザ名は「デフォルトユーザ」等として扱うことにしても良い。
【００７７】
また、上述の実施形態では、対話装置１００が移動可能なロボットであり、センサ群２４、首関節３１、足回り部３２等を備えることで、様々な動作を行うことができた。しかし、対話装置は移動等の様々な動作を行えなくても、ユーザと対話ができるだけでも良い。この場合、センサ群２４、首関節３１、足回り部３２は不要である。
【００７８】
なお、対話装置１００の各機能は、通常のＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等のコンピュータによっても実施することができる。具体的には、上記実施形態では、対話装置１００が行う対話制御処理等のプログラムが、記憶部１２０のＲＯＭに予め記憶されているものとして説明した。しかし、プログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）及びＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  Ｄｉｓｃ）等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータに読み込んでインストールすることにより、上述の各機能を実現することができるコンピュータを構成してもよい。
【００７９】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【００８０】
（付記１）
ユーザ発話文を言語解析して前記ユーザ発話文に含まれる表現の特徴を示す情報であるユーザ表現特徴を取得する言語解析部と、
前記言語解析部が取得した前記ユーザ表現特徴の履歴をユーザ発話文履歴として記憶部に格納する履歴格納部と、
前記履歴格納部が格納したユーザ発話文履歴に基づいてシステム応答文を生成するシステム応答文生成部と、
前記システム応答文生成部が生成したシステム応答文を出力するシステム応答文出力部と、
を備える対話装置。
【００８１】
（付記２）
前記システム応答文生成部は、前記履歴格納部が格納したユーザ発話文履歴の中で出現頻度が基準頻度以上の前記ユーザ表現特徴に対応する表現を用いてシステム応答文を生成する、
付記１に記載の対話装置。
【００８２】
（付記３）
前記ユーザ表現特徴に対応する表現は、前記ユーザ表現特徴と同じ表現である、
付記２に記載の対話装置。
【００８３】
（付記４）
前記ユーザ表現特徴に対応する表現は、前記ユーザ表現特徴と対照的な表現である、
付記２に記載の対話装置。
【００８４】
（付記５）
前記言語解析部は、前記ユーザ発話文の種別を示す情報である発話種別をさらに取得し、
前記履歴格納部は、前記ユーザ発話文と前記ユーザ表現特徴と前記言語解析部が取得した発話種別の履歴をユーザ発話文履歴として前記記憶部に格納し、
前記システム応答文生成部は、前記履歴格納部が格納したユーザ発話文履歴から、前記発話種別毎に前記ユーザ表現特徴の出現頻度を算出し、前記言語解析部が取得した発話種別における前記ユーザ表現特徴の出現頻度が基準頻度以上の前記ユーザ表現特徴に対応する表現を用いてシステム応答文を生成する、
付記２から４のいずれか１つに記載の対話装置。
【００８５】
（付記６）
ユーザを識別するユーザ識別部をさらに備え、
前記履歴格納部は、前記ユーザ識別部が識別したユーザ毎にユーザ発話文履歴を前記記憶部に格納し、
前記システム応答文生成部は、前記履歴格納部が格納したユーザ発話文履歴の中で、前記ユーザ識別部が識別したユーザの前記ユーザ表現特徴の出現頻度が基準頻度以上の前記ユーザ表現特徴に対応する表現を用いてシステム応答文を生成する、
付記２から５のいずれか１つに記載の対話装置。
【００８６】
（付記７）
各ユーザの発話数を計数する発話数計数部をさらに備え、
前記システム応答文生成部は、前記履歴格納部が格納したユーザ発話文履歴の中で、前記発話数計数部が計数した発話数が最も多いユーザの前記ユーザ表現特徴の出現頻度が基準頻度以上の前記ユーザ表現特徴に対応する表現を用いてシステム応答文を生成する、
付記６に記載の対話装置。
【００８７】
（付記８）
前記ユーザ表現特徴は、前記ユーザ発話文の文末表現、前記ユーザ発話文の助詞使用パターン、前記ユーザ発話文に含まれるフィラー、のうちの少なくとも１つである、
付記１から７のいずれか１つに記載の対話装置。
【００８８】
（付記９）
ユーザが発話したユーザ発話文の履歴に基づき、前記ユーザ発話文に出現する頻度が高い特徴的な文末表現、助詞使用パターン又はフィラーに対応する表現を用いて生成したシステム応答文を出力する対話方法。
【００８９】
（付記１０）
ユーザ発話文を言語解析して前記ユーザ発話文に含まれる表現の特徴を示す情報であるユーザ表現特徴を取得する言語解析ステップと、
前記言語解析ステップで取得された前記ユーザ表現特徴の履歴をユーザ発話文履歴として記憶部に格納する履歴格納ステップと、
前記履歴格納ステップで格納されたユーザ発話文履歴に基づいてシステム応答文を生成するシステム応答文生成ステップと、
前記システム応答文生成ステップで生成されたシステム応答文を出力するシステム応答文出力ステップと、
を含む対話方法。
【００９０】
（付記１１）
コンピュータに、
ユーザ発話文を言語解析して前記ユーザ発話文に含まれる表現の特徴を示す情報であるユーザ表現特徴を取得する言語解析ステップ、
前記言語解析ステップで取得された前記ユーザ表現特徴の履歴をユーザ発話文履歴として記憶部に格納する履歴格納ステップ、
前記履歴格納ステップで格納されたユーザ発話文履歴に基づいてシステム応答文を生成するシステム応答文生成ステップ、及び、
前記システム応答文生成ステップで生成されたシステム応答文を出力するシステム応答文出力ステップ、
を実行させるためのプログラム。
【符号の説明】
【００９１】
２０…頭、２１…マイク、２２…カメラ、２３…スピーカ、２４…センサ群、３０…胴体、３１…首関節、３２…足回り部、３３…操作ボタン、１００…対話装置、１１０…制御部、１１１…音声認識部、１１２…言語解析部、１１３…履歴格納部、１１４…システム応答文生成部、１１５…システム応答文出力部、１１６…ユーザ識別部、１２０…記憶部、１２１…ユーザ発話文履歴、Ｕ…ユーザ
【図１】
2019061050.tif 000003
【図２】
2019061050.tif 000004
【図３】
2019061050.tif 000005
【図４】
2019061050.tif 000006
【図５】
2019061050.tif 000007
【図６】
2019061050.tif 000008
【図７】
2019061050.tif 000009
【図８】
2019061050.tif 000010
【図９】
2019061050.tif 000011
【図１０】
2019061050.tif 000012
【図１１】
2019061050.tif 000013