(57)【要約】      （修正有）【課題】大量のデータを用意することなく、入力された発話文に対して応答文を生成することができるようにする。【解決手段】応答文生成装置１０において、応答タイプ判定部１１７は、発話内容解析部１１２により解析された発話文の解析結果に基づいて、発話文の種類を示す発話タイプを決定し、当該発話タイプと、発話タイプ毎に、発話タイプの発話に対して応答タイプの規則を定めたタイプ変換規則１１８とに基づいて、決定された発話タイプに対する応答タイプを判定し、応答文生成部１１９が、応答タイプと、応答文データベース（ＤＢ）１２０とに基づいて、応答文を生成する。【選択図】図１
2019175011.tif 000002
【特許請求の範囲】
【請求項１】
入力された発話文に対して、応答文を生成する応答文生成装置であって、
前記発話文を解析するテキスト解析部と、
前記テキスト解析部による前記発話文の解析結果に基づいて、前記発話文の種類を示す発話タイプを決定し、前記発話タイプと、発話タイプ毎に、当該発話タイプに対してどのような反応を返すかの種類を示す応答タイプの規則を定めたタイプ変換規則とに基づいて、前記決定された発話タイプに対する応答タイプを判定する応答タイプ判定部と、
前記応答タイプ毎に、前記応答タイプの前記応答文を格納する応答文データベースと、
前記応答タイプ判定部により判定された前記応答タイプと、前記応答文データベースとに基づいて、前記応答文を生成する応答文生成部と、
を備えることを特徴とする応答文生成装置。
【請求項２】
前記発話タイプは、発話文が表す感情及び主観的評価の生起、発現、若しくは喚起行為、意図、又は判断の種類を示すものであり、
前記タイプ変換規則は、前記発話タイプ毎に、前記発話タイプが示す感情及び主観的評価の生起、発現、若しくは喚起行為、意図、又は判断の種類に対して、どのような反応を返すかの種類を示す応答タイプを定めたものである
ことを特徴とする請求項１記載の応答文生成装置。
【請求項３】
前記テキスト解析部により解析された前記発話文の解析結果に基づいて、前記発話文の内容を表す表現の種類を示す述語タイプと、前記発話文のモダリティ情報とを抽出する発話内容解析部
を更に備え、
前記応答タイプ判定部は、前記発話内容解析部により抽出された前記述語タイプ及び前記モダリティ情報に基づいて、前記発話文の種類を示す発話タイプを決定し、前記発話タイプと、前記発話タイプ毎に、前記発話タイプの発話に対して応答すべき応答文の種類を示す応答タイプの規則を定めたタイプ変換規則とに基づいて、前記決定された発話タイプに対する応答タイプを判定する
ことを特徴とする請求項１記載の応答文生成装置。
【請求項４】
前記タイプ変換規則は、１以上のキャラクタの各々に対して定めたものであり、
前記応答文データベースは、前記１以上のキャラクタの各々に対して定められた、前記応答タイプ毎の前記応答文を格納し、
前記応答タイプ判定部は、前記１以上のキャラクタのうちの予め設定された前記キャラクタに対して定めたタイプ変換規則を用いて、前記決定された発話タイプに対する応答タイプを判定し、
前記応答文生成部は、前記予め設定された前記キャラクタに対して定められた、前記応答タイプ判定部により判定された前記応答タイプの前記応答文を用いて、前記応答文を生成する
ことを特徴とする請求項１〜３の何れか１項記載の応答文生成装置。
【請求項５】
前記１以上のキャラクタが、複数のキャラクタであり、
予め定めた条件を満たす場合に、前記設定された前記キャラクタを他のキャラクタに切り替えるキャラクタ切替部
を更に備えることを特徴とする請求項４記載の応答文生成装置。
【請求項６】
前記発話内容解析部は、前記テキスト解析部により解析された前記発話文の解析結果に基づいて、前記発話文のテンス情報、極性情報、及び受動若しくは能動を示す態情報のうち少なくとも何れか１つと、前記発話文の内容を表す表現の種類を示す述語タイプと、前記発話文のモダリティ情報とを抽出し、
前記応答タイプ判定部は、前記発話内容解析部により抽出された前記発話文のテンス情報、極性情報、及び受動若しくは能動を示す態情報のうち少なくとも何れか１つと、前記述語タイプと、前記モダリティ情報とに基づいて、前記発話文の種類を示す発話タイプを決定する
ことを特徴とする請求項１〜請求項５の何れか１項記載の応答文生成装置。
【請求項７】
応答すべき応答文の種類を示す応答タイプ毎に、前記応答タイプの応答文を格納する応答文データベースを含み、入力された発話文に対して、前記応答文を生成する応答文生成装置に用いられる応答文生成方法であって、
テキスト解析部が、前記発話文を解析し、
応答タイプ判定部が、前記テキスト解析部による前記発話文の解析結果に基づいて、前記発話文の種類を示す発話タイプを決定し、前記発話タイプと、前記発話タイプ毎に、前記発話タイプの発話に対して前記応答タイプの規則を定めたタイプ変換規則とに基づいて、前記決定された発話タイプに対する応答タイプを判定し、
応答文生成部が、前記応答タイプ判定部により判定された前記応答タイプと、前記応答文データベースとに基づいて、前記応答文を生成する
を備えることを特徴とする応答文生成方法。
【請求項８】
コンピュータを、請求項１乃至６の何れか１項記載の応答文生成装置の各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、応答文生成装置、応答文生成方法、およびプログラムに係り、特に、入力された発話文に対して応答文を生成するための応答文生成装置、応答文生成方法、およびプログラムに関する。
【背景技術】
【０００２】
雑談対話システムにおいて、「バックチャネル（相手の会話に対する聞き手の短いリアクション）」は、相手の話を聞いていることや、理解していることを伝えることができ、コミュニケーションの円滑化に有効である。
【０００３】
このような背景から、「はい」、「うん」のような典型的な「相槌」だけでなく、「確かに」、「そうですよね」のような短い発話も含めた応答文を生成する手法が提案されている（非特許文献１）。
【０００４】
非特許文献１では、短文を投稿するソーシャルネットワーキングサービス（ＳＮＳ）から発話とそのリプライを抽出し、リプライを応答候補文として、発話と応答候補文のつながりの強さ、応答候補文のバックチャネルらしさ等を判定することにより、応答文を生成する。
【０００５】
また、例えば、「黙れ」というユーザの発話があった場合に、「ごめんなさい…」という謝罪をするキャラクタもあれば、「やだ」のように否定するキャラクタのように、キャラクタによりバックチャネルが異なる。
【０００６】
これらのキャラクタ性は、特にユーザの感情的な発話に対する応答に表れやすい。ユーザの感情を予測し、その感情を生起する発話を生成する手法が提案されている（非特許文献２）。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】福田拓也、若林啓、“雑談システムにおけるTwitterデータからの統計的バックチャネル応答抽出手法”、人工知能学会論文誌 Vol.33 No.1、2018.
【非特許文献２】長谷川貴之、鍜治伸裕、吉永直樹、豊田正史、“オンライン上の対話における聞き手の感情の予測と喚起”、人工知能学会論文誌 Vol.29 No.1、2014.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、ユーザの発話に対する相槌や短い応答文はシステムのキャラクタによって異なるため、非特許文献１のような大量のデータが前提となる手法を、複数のキャラクタに対応させるためには、さらに大量のデータが必要になってしまう、という問題があった。
【０００９】
また、非特許文献２の手法は、ある発話に対し、ある感情を生起させる発話文を生成することができるが、非特許文献１と同様にあらかじめ大量のデータが必要である、という問題があった。
【００１０】
更に、上記のＳＮＳを対象とした場合、複数の異なるキャラクタの話者の発話が含まれるため、一貫した発話にならない可能性がある、という問題があった。
【００１１】
本発明は上記の点に鑑みてなされたものであり、大量のデータを用意することなく、入力された発話文に対して応答文を生成することができる応答文生成装置、応答文生成方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る応答文生成装置は、入力された発話文に対して、応答文を生成する応答文生成装置であって、前記発話文を解析するテキスト解析部と、前記テキスト解析部による前記発話文の解析結果に基づいて、前記発話文の種類を示す発話タイプを決定し、前記発話タイプと、前記発話タイプ毎に、前記発話タイプの発話に対して応答すべき応答文の種類を示す応答タイプの規則を定めたタイプ変換規則とに基づいて、前記決定された発話タイプに対する応答タイプを判定する応答タイプ判定部と、前記応答タイプ毎に、前記応答タイプの前記応答文を格納する応答文データベースと、前記応答タイプ判定部により判定された前記応答タイプと、前記応答文データベースとに基づいて、前記応答文を生成する応答文生成部と、を備えて構成される。
【００１３】
また、本発明に係る応答文生成方法は、応答すべき応答文の種類を示す応答タイプ毎に、前記応答タイプの応答文を格納する応答文データベースを含み、入力された発話文に対して、前記応答文を生成する応答文生成装置に用いられる応答文生成方法であって、テキスト解析部が、前記発話文を解析し、応答タイプ判定部が、前記テキスト解析部による前記発話文の解析結果に基づいて、前記発話文の種類を示す発話タイプを決定し、前記発話タイプと、前記発話タイプ毎に、前記発話タイプの発話に対して前記応答タイプの規則を定めたタイプ変換規則とに基づいて、前記決定された発話タイプに対する応答タイプを判定し、応答文生成部が、前記応答タイプ判定部により判定された前記応答タイプと、前記応答文データベースとに基づいて、前記応答文を生成する。
【００１４】
本発明に係る応答文生成装置及び応答文生成方法によれば、応答すべき応答文の種類を示す応答タイプ毎に、応答タイプの応答文を格納する応答文データベースを含み、テキスト解析部が、発話文を解析し、応答タイプ判定部が、前記テキスト解析部による前記発話文の解析結果に基づいて、発話文の種類を示す発話タイプを決定し、発話タイプと、発話タイプ毎に、発話タイプの発話に対して応答タイプの規則を定めたタイプ変換規則とに基づいて、決定された発話タイプに対する応答タイプを判定し、応答文生成部が、応答タイプ判定部により判定された応答タイプと、応答文データベースとに基づいて、応答文を生成する。
【００１５】
このように、解析された発話文の解析結果に基づいて、発話文の種類を示す発話タイプを決定し、当該発話タイプと、発話タイプ毎に、発話タイプの発話に対して応答タイプの規則を定めたタイプ変換規則とに基づいて、決定された発話タイプに対する応答タイプを判定し、応答タイプと、応答文データベースとに基づいて、応答文を生成することにより、大量のデータを用意することなく、入力された発話文に対して応答文を生成することができる。
【００１６】
また、本発明に係る応答文生成装置の前記発話タイプは、発話文が表す感情及び主観的評価の生起、発現、若しくは喚起行為、意図、又は判断の種類を示すものであり、前記タイプ変換規則は、前記発話タイプ毎に、前記発話タイプが示す感情及び主観的評価の生起、発現、若しくは喚起行為、意図、又は判断の種類に対して、どのような反応を返すかの種類を示す応答タイプを定めたものであるとすることができる。
【００１７】
また、本発明に係る応答文生成装置は、前記テキスト解析部により解析された前記発話文の解析結果に基づいて、前記発話文の内容を表す表現の種類を示す述語タイプと、前記発話文のモダリティ情報とを抽出する発話内容解析部を更に備え、前記応答タイプ判定部は、前記発話内容解析部により抽出された前記述語タイプ及び前記モダリティ情報に基づいて、前記発話文の種類を示す発話タイプを決定し、前記発話タイプと、前記発話タイプ毎に、前記発話タイプの発話に対して応答すべき応答文の種類を示す応答タイプの規則を定めたタイプ変換規則とに基づいて、前記決定された発話タイプに対する応答タイプを判定することができる。
【００１８】
また、本発明に係る前記１以上のキャラクタが、複数のキャラクタであり、応答文生成装置は、予め定めた条件を満たす場合に、前記設定された前記キャラクタを他のキャラクタに切り替えるキャラクタ切替部を更に備えることができる。
【００１９】
また、本発明に係る応答文生成装置は、前記テキスト解析部により解析された前記発話文の解析結果に基づいて、前記発話文が誰についての発話であるか、または誰に対しての発話であるかを示す対象ラベルを決定する発話対象同定部を更に備え、前記応答タイプ判定部は、前記発話内容解析部により抽出された前記発話文のテンス情報、極性情報、及び受動若しくは能動を示す態情報のうち少なくとも何れか１つと、前記述語タイプと、前記モダリティ情報と、前記発話対象同定部により決定された前記対象ラベルとに基づいて、前記発話文の種類を示す発話タイプを決定することができる。
【００２０】
本発明に係るプログラムは、上記の応答文生成装置の各部として機能させるためのプログラムである。
【発明の効果】
【００２１】
本発明の応答文生成装置、応答文生成方法、およびプログラムによれば、大量のデータを用意することなく、入力された発話文に対して応答文を生成することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態に係る応答文生成装置の構成を示すブロック図である。
【図２】本発明の実施の形態に係る応答文生成装置の発話文の解析結果の例１を示す図である。
【図３】本発明の実施の形態に係る応答文生成装置の発話文の解析結果の例２を示す図である。
【図４】本発明の実施の形態に係る応答文生成装置の発話文の解析結果の例３を示す図である。
【図５】本発明の実施の形態に係る応答文生成装置の体言・独立語辞書の例を示す図である。
【図６】本発明の実施の形態に係る応答文生成装置の用言辞書の例を示す図である。
【図７】本発明の実施の形態に係る応答文生成装置のラベルの例を示す図である。
【図８】本発明の実施の形態に係る応答文生成装置の対象辞書の例を示す図である。
【図９】本発明の実施の形態に係る応答文生成装置のタイプ変換規則の例を示す図である。
【図１０】本発明の実施の形態に係る応答文生成装置の応答文データベースの例を示す図である。
【図１１】本発明の実施の形態に係る応答文生成装置の応答タイプの例を示す図である。
【図１２】本発明の実施の形態に係る応答文生成装置の応答文生成処理ルーチンを示すフローチャートである。
【図１３】本発明のその他の実施の形態に係る応答文生成装置の構成を示すブロック図である。
【発明を実施するための形態】
【００２３】
以下、本発明の実施の形態について図面を用いて説明する。
【００２４】
＜本発明の実施の形態に係る応答文生成装置の構成＞
図１を参照して、本発明の実施の形態に係る応答文生成装置１０の構成について説明する。図１は、本発明の実施の形態に係る応答文生成装置１０の構成を示すブロック図である。
【００２５】
応答文生成装置１０は、ＣＰＵと、ＲＡＭと、後述する応答文生成処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
【００２６】
図１に示すように、本実施形態に係る応答文生成装置１０は、入力部１００と、演算部１１０と、出力部１３０とを備えて構成される。
【００２７】
入力部１００は、発話文の入力を受け付ける。発話文は、人間が入力した文に限定されず、人間の発話を音声認識等によってテキストに変換されたものでも、ロボットやチャットボットが生成したもの等でもよい。
【００２８】
そして、入力部１００は、受け付けた発話文を、テキスト解析部１１１に渡す。
【００２９】
演算部１１０は、入力された発話文に対して、応答文を生成する。
【００３０】
具体的には、演算部１１０は、テキスト解析部１１１と、発話内容解析部１１２と、体言・独立語辞書１１３と、用言辞書１１４と、発話対象同定部１１５と、対象辞書１１６と、応答タイプ判定部１１７と、タイプ変換規則１１８と、応答文生成部１１９と、応答文データベース（ＤＢ）１２０とを備えて構成される。
【００３１】
テキスト解析部１１１は、入力部１００が受け付けた発話文を解析する。
【００３２】
具体的には、テキスト解析部１１１は、入力された発話文に対して、既知の技術である形態素解析、係り受け解析、固有表現抽出を行い、形態素情報（品詞、終止形等）、係り受け情報、および固有表現情報（固有表現のタイプ）を解析する。
【００３３】
解析結果の例を図２〜図４に示す。図２は、発話文が「頭痛い」である場合（以下、例１）、図３は、発話文が「あんたなんか嫌い」である場合（以下、例２）、図４は発話文が「○○さんなんか嫌い」である場合（以下、例３）についての解析結果を示す図である。
【００３４】
ここで、図２〜４の文節情報は「文節ＩＤ、係り先文節ＩＤ／係りタイプ、主辞形態素番号／機能語形態素番号」の情報を含む情報である。
【００３５】
なお、本実施形態では、固有表現の定義はＩＲＥＸ（ＵＲＬ：https：//nlp.cs.nyu.edu/irex/index-j.html）に従う場合について説明しているが、他の固有表現体系に基づいてもよい。
【００３６】
そして、テキスト解析部１１１は、解析結果である形態素情報、係り受け情報、及び固有表現情報を、発話内容解析部１１２及び発話対象同定部１１５に渡す。
【００３７】
体言・独立語辞書１１３は、品詞が「名詞」、「独立詞」、「間投詞」、「感動詞」等の体言・独立語である語と、ラベルとを紐付けて記憶している。体言・独立語辞書１１３の例を図５に示す。
【００３８】
用言辞書１１４は、品詞が「動詞語幹」、「形容詞幹」、「名詞：形容（形容動詞）」等の用言である語と、ラベルとを紐付けて記憶している。用言辞書１１４の例を図６に示す。
【００３９】
体言・独立語辞書１１３及び用言辞書１１４のラベルは、各語が表現する、主観的評価、感情、感情の生起・発現・喚起行為等に関する表現の種類を抽象化したものである。
【００４０】
このラベルは、“／”等の区切り文字を利用して複数のラベルを含む詳細ラベルとすることができる。
【００４１】
例えば、図５及び図６の例では、述語等、発話文の内容を表す表現に対して複数のラベルが当てはまる場合に、区切り文字（“／”）で分割して、後ろにいくほど詳細なラベルとなるように作成してある。
【００４２】
図７にラベルの例を示す。図７の例において、左図では、事態・評価の極性（ＰＯＳ（ポジティブ）／ＮＥＧ（ネガティブ）、主観的評価（望ましい、望ましくない））を示すラベルを、中央図では、感情を示すラベルを、右図では、感情の生起・発現・喚起行為（挨拶を含む、典型的なやり取りの表現等）を示すラベルを示している。
【００４３】
発話内容解析部１１２は、発話文が何を述べているかを解析するための情報を抽出する。より具体的には、テキスト解析部１１１により解析された発話文の解析結果に基づいて、発話文のテンス情報、極性情報、及び受動若しくは能動を示す態情報と、発話文の内容を表す表現の種類を示す述語タイプと、発話文のモダリティ情報とを抽出する。
【００４４】
具体的には、発話内容解析部１１２は、テキスト解析部１１１の解析結果である形態素情報、係り受け情報、及び固有表現情報から、発話文の内容を表す表現の種類を示す述語タイプ、テンス情報、極性情報、態情報、及びモダリティ情報を抽出する。
【００４５】
まず、発話内容解析部１１２は、述語等、発話文の内容を表す表現を抽出し、体言・独立語辞書１１３及び用言辞書１１４を用いて述語タイプを判定する。ここで、内容を表す表現のうち、独立詞等は正確には述語ではないが、本実施形態では説明の便宜上まとめて述語と呼ぶ。述語は、発話文の最後の文節の主辞を抽出することにより抽出することができる。
【００４６】
次に、発話内容解析部１１２は、述語タイプの判定を行う。述語タイプの判定は、発話文が体言・独立語辞書１１３又は用言辞書１１４に存在する表現を含むかを判定することにより行う。表現が含まれる場合、辞書の該当する表現のラベルを述語タイプとする。
【００４７】
発話内容解析部１１２は、抽出した述語の品詞を確認し、品詞が「動詞語幹」、「形容詞幹」、「名詞：形容（形容動詞）」であれば、終止形で用言辞書１１４を検索し、マッチする語があればそのラベルを述語タイプとする。
【００４８】
また、品詞が「名詞」、「独立詞」、「間投詞」、「感動詞」であれば、表記で体言・独立語辞書１１３を検索し、マッチする語があればそのラベルを述語タイプとする。
【００４９】
例えば、用言辞書１１４が図６である場合、例１の場合であれば、「痛い」が用言辞書１１４のラベル「Ｎ＿ＳＴＡＴＥ」に該当し、例２及び例３の場合であれば、「嫌い」が用言辞書１１４のラベル「ＮＥＧ／ＤＩＳＧＵＳＴ」に該当する。
【００５０】
また、発話文が体言・独立語辞書１１３又は用言辞書１１４に存在する表現を含まない場合、発話内容解析部１１２は、述語タイプを空のままにして、後続の処理を行う。
【００５１】
次に、発話内容解析部１１２は、述語の表記より後に出現する機能語を抽出し、テンス情報（過去）、極性情報（肯定・否定）、態情報（受動・能動・使役等）、及びモダリティ情報（願望・意志・命令・禁止等）を抽出する。
【００５２】
＜＜（Ａ）テンス情報の抽出＞＞
述語の後ろに「接尾辞：終止」を含む、形態素表記「た」が存在する場合、テンス情報を「過去」とする。例えば、「頭が痛かった」だと「過去」となる。
【００５３】
＜＜（Ｂ）極性情報の抽出＞＞
述語の後ろに、終止形が否定を表す接尾辞の「ない」、「ません」、「ぬ」、「ず」となる形態素が存在すれば「否定」、そうでなければ「肯定」とする。例えば、「好きじゃない」だと「否定」となる。
【００５４】
＜＜（Ｃ）態情報の抽出＞＞
述語の後ろに、終止形が「れる」、「られる」となる形態素表記が存在すれば「受動」、「せる」、「させる」となる形態素が存在すれば「使役」、それ以外は「能動」とする。例えば、「食べさせられた」だと「使役」となる。
【００５５】
＜＜（Ｄ）モダリティ情報の抽出＞＞
述語の後ろに、終止形が「たい」となる形態素が存在すれば「願望」とする。例えば、「どこか行きたい」だと「願望」となる。
【００５６】
また、動詞が、「しろ」、「帰れ」のような命令形であれば「命令」とする。述語が動詞の基本形で、その直後に「な」が存在すれば「禁止」とする。例えば、「しゃべるな」だと「禁止」となる。
【００５７】
また、述語が動詞で、かつ、直後の形態素表記が「て」の場合、「くれ」、「ください」、「いただく」、「ちょうだい」、「もらう」、「ほしい」、及び「もらいたい」の何れの表記が後続するか、後続する表記が何も存在しない場合は「依頼」とする。例えば、「励ましてほしい」だと「依頼」となる。
【００５８】
そして、発話内容解析部１１２は、抽出した述語タイプ、テンス情報、極性情報、態情報、及びモダリティ情報を、応答タイプ判定部１１７に渡す。
【００５９】
発話対象同定部１１５は、テキスト解析部１１１により解析された発話文の解析結果に基づいて、発話文が誰についての発話であるか、または誰に対しての発話であるかを示す対象ラベルを決定する。
【００６０】
具体的には、発話対象同定部１１５は、テキスト解析部１１１の解析結果である形態素情報、係り受け情報、及び固有表現情報から（処理１）格と項の抽出を行い、（処理２）対象ラベルの決定を行う。抽出する項は、上記の「誰について」または「何について」を表し、格は項が表す意味的な役割（統語的関係や、行為の行われる場所・物体の所有者等）を示す情報である。
【００６１】
以下では、ルールベースの手法で格と項の抽出を行っているが、述語構造解析技術（一般的なものでよい）を用いて、格と項を抽出してもよい。なお、発話内容解析部１１２における述語（発話の内容を表す表現）を抽出する処理も同様に、述語構造解析技術を用いてよい。
【００６２】
＜＜処理１＞＞
まず、発話対象同定部１１５は、テキスト解析部１１１の解析結果から、各文節に助詞、格助詞、連用助詞（以下、格表記）が存在するか否かを確認する。格表記が存在しない場合、その文節が最後からひとつ前の文節で、かつ、主辞しか存在しない場合は「格省略」（格表記が存在しないことを表わすラベル）を格表記とする。例えば、例１（「頭痛い」）の場合には、「格省略」となる。
【００６３】
格表記が存在する場合、または、格表記が存在しない場合であっても、その文節が最後からひとつ前の文節でなく、若しくは、主辞以外が存在する場合、格表記よりも前の名詞（未知語、接尾辞等を含む）の連続を抽出して項表記とし、以下の規則により項クラスを決定し、格表記と対とする。
【００６４】
＜＜＜規則１＞＞＞
項表記が、あらかじめ用意した対象辞書１１６（図８参照）の表記に存在する名詞連続であれば、その表記に紐付くラベルを項クラスに決定する。
【００６５】
＜＜＜規則２＞＞＞
項表記が、対象辞書１１６に登録されておらず、かつ、固有表現情報が存在すれば、固有表現のクラスを項クラスに決定する。
【００６６】
＜＜＜規則３＞＞＞
項表記が、「あなた」、「お前」、「てめえ」、「あんた」等の第二者を表す表現であれば、「ＹＯＵ」を項クラスに決定する。もしシステムに名前がある場合、当該システムの名前もこの規則に含めてよい。
【００６７】
上記規則により、発話対象同定部１１５は、[格表記：項クラス]ペアを抽出する。例えば、上記の例２の場合、格表記が「なんか」、項クラスが「ＹＯＵ」となるため、［なんか：ＹＯＵ］となる。また、例３の場合には、［なんか：ＰＥＲＳＯＮ］となる。なお、例２、例３では該当する表現が一つしかないが、該当する表現が複数あればすべて抽出する。
【００６８】
また、上記規則１〜３に該当しない場合には、項クラスは無いものとする。
【００６９】
＜＜処理２＞＞
次に、発話対象同定部１１５は、抽出した[格表記：項クラス]ペアに基づいて、対象ラベルを決定する。
【００７０】
発話対象同定部１１５は、抽出した[格表記：項クラス]ペアが１つの場合、そのペアの項表記を対象ラベルとする。例えば、例２及び例３では、いずれも抽出された[格表記：項クラス]ペアは１つのため「ＹＯＵ」と「ＰＥＲＳＯＮ」をそれぞれ対象ラベルとする。
【００７１】
発話対象同定部１１５は、[格表記：項クラス]ペアが複数あった場合、以下の優先順で格表記をチェックし、最も優先度の高い格表記の項クラスを対象ラベルとする。
［優先順］が＞は＞も＞って＞なんか＞なんて＞を＞に＞で＞へ＞について＞その他＞格省略。
【００７２】
ここでは、格表記を用いた優先順位付けを行っているが、対象言語を英語等の日本語以外の言語とする場合等には、その言語における格を用いて優先順位付けのルールを記述すればよい。
【００７３】
ここで、対象ラベルとは、発話が誰（何）について、もしくは、誰（何）に対しての発話なのかを同定し、抽象化したものである。
【００７４】
なお、項クラスが無い場合には、対象ラベルも無いものとする。
【００７５】
そして、発話対象同定部１１５は、決定した対象ラベルを、応答タイプ判定部１１７に渡す。
【００７６】
対象辞書１１６は、項表記と、その項表記に対応するラベルとを紐付けて記憶している。ラベルは自由に定義可能だが、例えば、固有表現ラベル（固有表現抽出で使用する定義）、ＥＶＥＮＴ（イベント名）、ＮＧ（放送禁止用語等のＮＧワード）を定義することができる（図８）。
【００７７】
タイプ変換規則１１８は、特定のキャラクタに対して定められた、発話タイプから応答タイプに変換するためのタイプ変換規則である。
【００７８】
具体的には、タイプ変換規則１１８には、発話タイプ、条件、及び応答タイプの組からなるタイプ変換規則が記載される（図９）。条件及び応答タイプは、カンマ（“，”）等の区切り文字を利用して、複数記載することができる。発話タイプの記載は必須であり、条件の記載は任意である。
【００７９】
条件には対象ラベル、テンス情報、極性情報、態情報、モダリティ情報の内容を記載することができる。このように、条件には対象ラベル、モダリティ情報に対応する規則の記載も可能であり、その場合には発話タイプに対象ラベル、モダリティ情報を記載する。
【００８０】
応答タイプ判定部１１７は、発話内容解析部１１２により抽出された発話文のテンス情報、極性情報、及び受動若しくは能動を示す態情報のうち少なくとも何れか１つと、述語タイプと、モダリティ情報と、発話対象同定部１１５により決定された対象ラベルとに基づいて、発話文の種類を示す発話タイプを決定し、発話タイプと、発話タイプ毎に、発話タイプの発話に対して応答すべき応答文の種類を示す応答タイプの規則を定めたタイプ変換規則１１８とに基づいて、決定された発話タイプに対する応答タイプを判定する。
【００８１】
例えば、発話タイプは、発話文が表す感情及び主観的評価の生起、発現、若しくは喚起行為、意図、又は判断の種類を示すものであり、タイプ変換規則は、発話タイプ毎に、当該発話タイプが示す感情及び主観的評価の生起、発現、若しくは喚起行為、意図、又は判断の種類に対して、どのような反応を返すかの種類を示す応答タイプを定めたものである。
【００８２】
具体的には、まず、応答タイプ判定部１１７は、以下の規則により発話タイプを決定する。
【００８３】
＜＜規則１＞＞
述語タイプがある場合、（１）ＰＯＳもしくはＮＥＧで、極性情報が「否定」の場合、述語タイプがＰＯＳならばＮＥＧに、ＮＥＧならばＰＯＳに書き換えて発話タイプとし、（２）上記（１）以外の場合には述語タイプを発話タイプとする。
【００８４】
＜＜規則２＞＞
述語タイプが空の場合、極性情報が肯定でモダリティ情報が存在すれば、モダリティ情報を発話タイプとする。
【００８５】
＜＜規則３＞＞
上記の規則１〜２に当てはまらず、述語タイプもモダリティ情報も空の場合、対象ラベルが存在すれば対象ラベルを発話タイプとする。
【００８６】
＜＜規則４＞＞
上記の規則１〜３に当てはまらない場合、発話タイプを「ＤＥＦＡＵＬＴ」とする。
【００８７】
次に、応答タイプ判定部１１７は、決定した発話タイプで、あらかじめ用意したタイプ変換規則１１８を検索する。
【００８８】
発話タイプに詳細ラベルが存在する場合、区切り文字（本実施例では"／"）で分割して、後方のラベル（後ろにいくほど詳細なラベル）からタイプ変換規則１１８を検索し、規則が見つかった時点で検索を停止する。
【００８９】
規則に条件が存在する場合は、その条件を満たす規則のみを採用し、その規則の応答タイプを判定結果とする。条件付きの規則に合致しない場合、条件なしの規則を採用し、その規則の応答タイプを判定結果とする。
【００９０】
該当するタイプ変換規則１１８が存在しない場合、「ＤＥＦＡＵＬＴ」の応答タイプを判定結果とする。
【００９１】
例えば、例１の場合、発話タイプは「Ｎ＿ＳＴＡＴＥ」、テンス情報・極性情報・態情報・モダリティ情報・対象ラベル「無」となる。この場合、「Ｎ＿ＳＴＡＴＥ」で図９に示すタイプ変換規則１１８を検索し、応答タイプは「ＢＣ＿Ｎ」であると判定する。
【００９２】
また、例えば例２の場合、発話タイプは「ＮＥＧ／ＤＩＳＧＵＳＴ」、テンス情報・極性情報・態情報・モダリティ情報は「無」、対象ラベルは「ＹＯＵ」となる。この場合、まず「ＤＩＳＧＵＳＴ」で図９に示すタイプ変換規則１１８を検索しても、当該発話タイプが存在しないため「ＮＥＧ」でタイプ変換規則１１８を検索する。「ＮＥＧ」を発話タイプとするタイプ変換規則１１８のうち、条件「ＹＯＵ」が存在する規則が採用され、応答タイプは「ＳＡＤＮＥＳＳ」であると判定する。
【００９３】
また、例３の場合、発話タイプは「ＮＥＧ／ＤＩＳＧＵＳＴ」、テンス情報・極性情報・態情報・モダリティ情報は「無」、対象ラベルは「ＰＥＲＳＯＮ」となる。この場合、例２と同様にＮＥＧを発話タイプとするタイプ変換規則１１８のうち、条件付きに合致する規則が存在しないため、条件なしの規則が採用され、応答タイプは「ＷＨＹ」であると判定する。
【００９４】
そして、応答タイプ判定部１１７は、判定結果である応答タイプを、応答文生成部１１９に渡す。
【００９５】
応答文ＤＢ１２０は、特定のキャラクタに対して定められた、応答タイプ毎の応答文を格納する。応答文には、発話に対する１０文字程度の短い応答文である短応答文や、特定のキャラクタまたは特定の状況に応じた典型的な応答文等が含まれる。
【００９６】
応答文ＤＢ１２０の例を図１０に示す。図１０に示すように、データベースは応答タイプと応答発話のペアの集合である。応答発話はカンマ（,）等の区切り文字を利用して、複数記載することができる。
【００９７】
応答文生成部１１９は、応答タイプ判定部１１７により判定された応答タイプと、応答文ＤＢ１２０とに基づいて、応答文を生成する。
【００９８】
具体的には、応答文生成部１１９は、応答タイプ判定部１１７で判定された応答タイプに基づき、あらかじめ用意した応答文ＤＢ１２０を用いて応答文を生成する。
【００９９】
応答文生成部１１９は、入力された応答タイプで応答文ＤＢ１２０を検索し、応答発話を取得し、応答発話候補リスト（図示しない）に格納する。取得した応答発話が複数から成る場合は区切り文字で分割して候補リストに格納する。
【０１００】
応答文生成部１１９は、応答タイプが複数存在する場合は、すべての応答タイプで応答文ＤＢ１２０を検索し、応答発話を応答発話候補リストに格納する。
【０１０１】
次に、応答発話候補リストの中からランダムに一つを選択して、選択した応答発話を応答文として生成する。
【０１０２】
例えば、例１では、応答タイプが「ＢＣ＿Ｎ」であるため、「ＢＣ＿Ｎ」で応答文ＤＢ１２０を検索し、「あらら…」を応答発話候補リストに格納し、１つしか候補がないため「あらら…」を応答文として生成する。
【０１０３】
また、例えば例２では、応答タイプが「ＳＡＤＮＥＳＳ」であるため、「ＳＡＤＮＥＳＳ」で応答文ＤＢ１２０を検索し、「しくしく…」、「悲しいです」という２つの応答発話を応答発話候補リストに格納し、いずれか（たとえば「しくしく…」を応答文として生成する。
【０１０４】
また、例３では、応答タイプが「ＷＨＹ」であるため、「ＷＨＹ」で応答文ＤＢ１２０を検索し、「どうしたんですか？」という応答発話を応答発話候補リストに格納し、１つしか候補がないため「どうしたんですか？」を応答文として生成する。
【０１０５】
そして、応答文生成部１１９は、生成した応答文を、出力部１３０に渡す。
【０１０６】
出力部１３０は、応答文生成部１１９により生成された応答文を出力する。
【０１０７】
例えば、例１の場合、入力部１００に発話文「頭痛い」が入力されると、出力部１３０は、「あらら…」を出力することとなる。
【０１０８】
また、例えば例２の場合、入力部１００に発話文「あんたなんか嫌い」が入力されると、出力部１３０は、「しくしく…」を出力することとなる。
【０１０９】
また、例３の場合、入力部１００に発話文「○○さんなんか嫌い」が入力されると、出力部１３０は、「どうしたんですか？」を出力することとなる。
【０１１０】
このように、タイプ変換規則１１８と応答文ＤＢ１２０とを用いることにより、大量の学習データによって応答文を生成する場合よりもコストを抑えることができる。
【０１１１】
＜本発明の実施の形態に係る応答文生成装置の作用＞
図１２は、本発明の実施の形態に係る応答文生成処理ルーチンを示すフローチャートである。
【０１１２】
入力部１００に発話文が入力されると、演算部１１０において、図１２に示す応答文生成処理ルーチンが実行される。
【０１１３】
まず、ステップＳ１００において、入力部１００は、発話文の入力を受け付ける。
【０１１４】
ステップＳ１１０において、上記ステップＳ１００により受け付けた発話文を解析する。
【０１１５】
ステップＳ１２０において、発話内容解析部１１２は、上記ステップＳ１１０により解析された発話文の解析結果に基づいて、発話文のテンス情報、極性情報、及び受動若しくは能動を示す態情報と、発話文の内容を表す表現の種類を示す述語タイプと、発話文のモダリティ情報とを抽出する。
【０１１６】
ステップＳ１３０において、発話対象同定部１１５は、上記ステップＳ１１０により解析された発話文の解析結果に基づいて、発話文が誰についての発話であるか、または誰に対しての発話であるかを示す対象ラベルを決定する。
【０１１７】
ステップＳ１４０において、応答タイプ判定部１１７は、上記ステップＳ１２０により抽出された発話文のテンス情報、極性情報、及び受動若しくは能動を示す態情報のうち少なくとも何れか１つと、述語タイプと、モダリティ情報と、上記ステップＳ１３０により決定された対象ラベルとに基づいて、発話文の種類を示す発話タイプを決定し、発話タイプと、発話タイプ毎に、発話タイプの発話に対して応答すべき応答文の種類を示す応答タイプの規則を定めたタイプ変換規則１１８とに基づいて、決定された発話タイプに対する応答タイプを判定する。
【０１１８】
ステップＳ１５０において、応答文生成部１１９は、上記ステップＳ１４０により判定された応答タイプと、応答文ＤＢ１２０とに基づいて、応答文を生成する。
【０１１９】
ステップＳ１６０において、出力部１３０は、上記ステップＳ１５０により生成された応答文を出力する。
【０１２０】
以上説明したように、本発明の実施形態に係る応答文生成装置１０によれば、解析された発話文の解析結果に基づいて抽出された述語タイプ及びモダリティ情報に基づいて、発話文の種類を示す発話タイプを決定し、当該発話タイプと、発話タイプ毎に、発話タイプの発話に対して応答タイプの規則を定めたタイプ変換規則とに基づいて、決定された発話タイプに対する応答タイプを判定し、応答タイプと、応答文データベースとに基づいて、応答文を生成するため、大量のデータを用意することなく、入力された発話文に対して応答文を生成することができる。
【０１２１】
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【０１２２】
上記の実施形態では、抽出した全ての情報を応答タイプ判定部１１７に渡しているが、少なくとも述語タイプと、モダリティ情報とがあれば、応答タイプを判定することができる。また、発話文のテンス情報、極性情報、及び受動若しくは能動を示す態情報のうち少なくとも何れか１つと、発話文の内容を表す表現の種類を示す述語タイプと、発話文のモダリティ情報とを抽出する構成としてもよい。応答タイプ判定部１１７に渡す発話内容の情報が多ければ、より発話文に適した応答タイプが判定されるため、より発話文に適した応答文を低コストに生成することができる。
【０１２３】
また、上記の実施形態では、タイプ変換規則１１８と応答文ＤＢ１２０とが１つのキャラクタについて構成されている場合について述べたが、タイプ変換規則１１８と応答文ＤＢ１２０とを複数のキャラクタ毎に構成することもできる。すなわち、応答文生成装置１０が、複数のキャラクタに対応する複数のタイプ変換規則１１８と、複数のキャラクタに対応する複数の応答文ＤＢ１２０とを備えて構成する（図１３）。
【０１２４】
この場合、タイプ変換規則１１８は、複数のキャラクタの各々について、当該キャラクタにおけるタイプ変換規則１１８となるように構成することができる。また、応答文ＤＢ１２０は、複数のキャラクタの各々について、当該キャラクタにおける応答タイプ毎の応答文を格納するように構成することができる。
【０１２５】
そして、応答タイプ判定部１１７は、複数のキャラクタのうちの予め設定されたキャラクタに対応するタイプ変換規則１１８を用いて、決定した発話タイプから応答タイプを判定する。
【０１２６】
複数のキャラクタのうち、予め設定されたキャラクタに対応したタイプ変換規則１１８を用いることで、入力された発話文から読み取れる内容（例えば感情及び主観的評価の生起、発現、若しくは喚起行為、意図、又は判断等）に対して、システムがどのような振舞いをするかについてキャラクタ性を出すことができる。
【０１２７】
例えば、ユーザの怒り「ＮＥＧ」に対し、悲しむ「ＳＡＤＮＥＳＳ」振舞いや、驚く「ＳＵＲＰＲＩＳＥ」振舞いをするように、キャラクタ毎のタイプ変換規則１１８により判定することができる。
【０１２８】
このように、キャラクタ毎のタイプ変換規則としてタイプ変換規則１１８を複数のキャラクタについて作ることにより、同一の発話文に対し、異なる応答文を返すことができ、キャラクタ毎に様々な振舞いをすることが可能になる。
【０１２９】
また、この場合、応答文生成部１１９は、複数のキャラクタのうちの予め設定されたキャラクタに対応する応答文ＤＢ１２０と、応答タイプ判定部１１７により判定された応答タイプとに基づいて、応答文を生成する。
【０１３０】
設定されたキャラクタについての応答タイプ毎の応答文を用いることにより、入力された発話文に対して、当該キャラクタのタイプ変換規則１１８を用いて判定された応答タイプに基づく振舞いとして、例えば「口調」等のキャラクタ性を出すことができる。
【０１３１】
例えば、応答タイプ「ＤＥＦＡＵＬＴ」の応答発話として、「そうなんですね、なるほど」等の敬語を基調とした口調や、「ふーん、へー」等の親しい間柄を基調とした口調等を持つ応答文を生成することができる。
【０１３２】
複数のキャラクタの各々に対し、応答タイプ毎の応答文を作ることにより、同一の発話文に対し、異なる口調等を持つ応答文を生成することができ、キャラクタ毎に様々な振舞いをすることが可能となる。
【０１３３】
また、この場合、入力部１００がキャラクタ設定情報の入力を受け付け、キャラクタ切替部（図示しない）に当該キャラクタ設定情報を渡し、キャラクタ切替部が、キャラクタ設定情報に基づいてキャラクタを設定し、設定したキャラクタを応答タイプ判定部１１７及び応答文生成部１１９に渡すように構成してもよい。
【０１３４】
また、複数のタイプ変換規則１１８と、複数の応答文ＤＢ１２０とは、必ずしも１対１対応させなくてもよく、例えば、キャラクタ切替部により、用いるタイプ変換規則１１８と応答文ＤＢ１２０との組み合わせを切り替えて、表現するキャラクタを変更してもよい。
【０１３５】
すなわち、図１３のように、タイプ変換規則１１８が「キャラクタＡ：短気」及び「キャラクタＢ：ぼんやり」の２つ、応答文ＤＢ１２０が「キャラクタａ：丁寧」及び「キャラクタｂ：乱暴」の２つとして用意されているとすると、キャラクタＡとａの組み合わせ及びキャラクタＢとｂの組み合わせという２パターンに限定せずに、キャラクタＡとａ、キャラクタＡとｂ、キャラクタＢとａ、キャラクタＢとｂという４パターンの組み合わせを用いてキャラクタを表現することができる。
【０１３６】
また、キャラクタ切替部は、予め定めた条件を満たす場合に、設定されたキャラクタを他のキャラクタに途中で切り替えることができる構成としてもよい。
【０１３７】
例えば、発話タイプ又は応答タイプとして判定されたタイプの回数をカウントして、閾値を超えた場合に、キャラクタを変更する構成としてもよい。１つの対話内で、応答タイプが怒り「ＮＥＧ」と判定された回数がｎ回あった場合や、ｍ回続いた場合に、現在のキャラクタよりも怒りっぽいキャラクタや、ユーザをなだめるキャラクタに変更して応答文を生成する。また、変更したキャラクタにおいて、１つの対話内で、応答タイプが怒り「ＮＥＧ」と判定された回数が減ったと判定できる場合に、元のキャラクタに戻すとことができる。
【０１３８】
このような構成により、キャラクタにあたかも感情を持たせたような振舞いをさせることができる。また、キャラクタ毎に閾値（上記のｎやｍ）を変更することで、更にキャラクタ性を持たせることができる。
【０１３９】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【０１４０】
１０   応答文生成装置
１００ 入力部
１１０ 演算部
１１１ テキスト解析部
１１２ 発話内容解析部
１１３ 体言・独立語辞書
１１４ 用言辞書
１１５ 発話対象同定部
１１６ 対象辞書
１１７ 応答タイプ判定部
１１８ タイプ変換規則
１１９ 応答文生成部
１２０ 応答文データベース（ＤＢ）
１３０ 出力部
【図１】
2019175011.tif 000003
【図２】
2019175011.tif 000004
【図３】
2019175011.tif 000005
【図４】
2019175011.tif 000006
【図５】
2019175011.tif 000007
【図６】
2019175011.tif 000008
【図７】
2019175011.tif 000009
【図８】
2019175011.tif 000010
【図９】
2019175011.tif 000011
【図１０】
2019175011.tif 000012
【図１１】
2019175011.tif 000013
【図１２】
2019175011.tif 000014
【図１３】
2019175011.tif 000015