IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特許7551579ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法
<>
  • 特許-ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法 図1
  • 特許-ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法 図2
  • 特許-ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法 図3
  • 特許-ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法 図4
  • 特許-ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法 図5
  • 特許-ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法 図6
  • 特許-ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法 図7
  • 特許-ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法 図8
  • 特許-ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-06
(45)【発行日】2024-09-17
(54)【発明の名称】ネガティブな発話をポジティブなオウム返しで返答するプログラム、装置及び方法
(51)【国際特許分類】
   G06F 16/90 20190101AFI20240909BHJP
   G06F 40/56 20200101ALI20240909BHJP
   G10L 15/10 20060101ALI20240909BHJP
   G10L 15/22 20060101ALI20240909BHJP
【FI】
G06F16/90 100
G06F40/56
G10L15/10 500N
G10L15/22 300Z
【請求項の数】 9
(21)【出願番号】P 2021135359
(22)【出願日】2021-08-23
(65)【公開番号】P2023030303
(43)【公開日】2023-03-08
【審査請求日】2023-07-14
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100135068
【弁理士】
【氏名又は名称】早原 茂樹
(72)【発明者】
【氏名】田原 俊一
(72)【発明者】
【氏名】服部 元
【審査官】甲斐 哲雄
(56)【参考文献】
【文献】特開2008-276543(JP,A)
【文献】特開2016-036500(JP,A)
【文献】特開2009-134008(JP,A)
【文献】特開2017-215468(JP,A)
【文献】特開2016-076117(JP,A)
【文献】特開2018-156273(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06F 40/00-40/58
G10L 15/00-15/34
(57)【特許請求の範囲】
【請求項1】
ユーザと対話するようにコンピュータを機能させるプログラムであって、
訓練段階として、ネガティブな単文と、その単文に対するポジティブな単文とを対応付けた教師データによって訓練し、推定段階として、ユーザ発話文に含まれるネガティブな単文から、推定スコアが所定閾値以上であり且つ最も高いポジティブな単文を推定し、当該ネガティブな単文を当該ポジティブな単文に変換したオウム返し的応答文を出力する感情極性変換エンジンと、
ユーザに対して対話シナリオに沿ったシナリオ的応答文を返答する中で、オウム返し的応答文を返答する対話エージェントと
してコンピュータを機能させることを特徴とするプログラム。
【請求項2】
感情極性がネガティブなユーザ発話文を選択する感情極性判定手段と
して更にコンピュータを機能させることを特徴とする請求項1に記載のプログラム。
【請求項3】
ユーザ発話文を、複数の単文に分割する単文分割手段と
して更に機能させ、
感情極性判定手段は、感情極性がネガティブな単文を選択する
ように更にコンピュータを機能させることを特徴とする請求項2に記載のプログラム。
【請求項4】
ユーザ発話文の単文と、当該単文の感情極性とを記録するユーザ発話単文記録手段と、
感情極性変換エンジンによってポジティブな単文が推定されなかった際に、ユーザ発話単文記録手段を用いて、現に発話された単文との類似度が所定閾値以上であり且つポジティブな感情極性の単文を検索する過去単文検索手段と
して機能させ、
対話エージェントは、過去単文検索手段によって検索されたポジティブな感情極性の単文をオウム返し的応答文として返答する
ようにコンピュータを機能させることを特徴とする請求項1から3のいずれか1項に記載のプログラム。
【請求項5】
対話エージェントは、過去単文検索手段によってポジティブな感情極性の単文が検索されなかった場合、相槌的応答文を返答する
ようにコンピュータを機能させることを特徴とする請求項に記載のプログラム。
【請求項6】
ユーザの顔が映る映像を取得する顔映像取得手段と、
映像から顔表情の感情極性を判定する顔表情判定手段と
を有し、
感情極性変換エンジンは、教師データに顔表情の感情極性を含めて訓練し、顔表情の感情極性も潜在的に考慮したポジティブな単文を推定する
ようにコンピュータを機能させることを特徴とする請求項1からのいずれか1項に記載のプログラム。
【請求項7】
話シナリオの中で、所定のカテゴリに基づいて対話が進行している際に、ネガティブな感情極性のユーザ発話文の回数を記録するネガティブカテゴリ記録手段と、
ネガティブカテゴリ記録手段によって所定回数以上となった前記所定のカテゴリに基づく対話を、ユーザに提示しないように対話エージェントに対して制御する対話シナリオ制御手段と
してコンピュータを機能させることを特徴とする請求項1からのいずれか1項に記載のプログラム。
【請求項8】
ユーザと対話する対話装置において、
訓練段階として、ネガティブな単文と、その単文に対するポジティブな単文とを対応付けた教師データによって訓練し、推定段階として、ユーザ発話文に含まれるネガティブな単文から、推定スコアが所定閾値以上であり且つ最も高いポジティブな単文を推定し、当該ネガティブな単文を当該ポジティブな単文に変換したオウム返し的応答文を出力する感情極性変換エンジンと、
ユーザに対して対話シナリオに沿ったシナリオ的応答文を返答する中で、オウム返し的応答文を返答する対話エージェントと
を有することを特徴とする対話装置。
【請求項9】
ユーザと対話する装置の対話方法において、
装置は、
訓練段階として、ネガティブな単文と、その単文に対するポジティブな単文とを対応付けた教師データによって訓練した感情極性変換エンジンを用いて、推定段階として、ユーザ発話文に含まれるネガティブな単文から、推定スコアが所定閾値以上であり且つ最も高いポジティブな単文を推定し、当該ネガティブな単文を当該ポジティブな単文に変換したオウム返し的応答文を出力する第1のステップと、
ユーザに対して対話シナリオに沿ったシナリオ的応答文を返答する中で、オウム返し的応答文を返答する第2のステップと
を実行することを特徴とする装置の対話方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザと対話する対話エージェントの技術に関する。
【背景技術】
【0002】
スマートフォンやタブレット端末を用いて、ユーザに対して自然に対話する「対話エージェント」の技術が普及している。この技術によれば、ディスプレイにコンピュータグラフィックスのキャラクタが、ユーザに対して音声やテキストで対話する。対話エージェントとしてのキャラクタは、ユーザから見て対話可能な1人の人物として認識でき、ユーザの状況や趣味趣向、感情に応じた対話を成立させる。キャラクタも、人物と同様のプロファイル(年齢、性別、出身地等の属性)を有し、ユーザは、そのキャラクタに対して親近感を持って対話することができる。
【0003】
対話エージェントは一般的に、予め登録された「対話シナリオ」に基づいてユーザとの対話を進行させる。このとき、ユーザ発話文が対話シナリオに沿っている場合には適切な応答文を返答できるが、そうでない場合には、ユーザ発話文に対してオウム返し的応答文を返答することも多い。
オウム返し的応答文とは、ユーザ発話文の一部の言葉をそのまま応答文としたものであり、これによって、ユーザは、対話エージェントが話を理解してくれているような錯覚を持ちやすい。そのために、ユーザは更に、新たな発話文を発話しようとする。カウンセリングに参考となる発話文(例えばユーザ自らの悩みなど)を、ユーザから更に引き出しやすくなる。
【0004】
図1は、従来技術における対話エージェントのオウム返し的応答文を表す説明図である。
【0005】
図1によれば、例えばスマートフォンである端末2のディスプレイに、対話アプリが表示されている。入力フォームに発話文を入力すると、対話エージェントのキャラクタからの応答文が表示される。勿論、発話文は、入力フォームへのテキスト入力に限られず、マイクによる発話音声の収音と、スピーカから応答文の発声とであってもよい。
図1(a)によれば、対話エージェントが、以下のようにユーザと対話をしている。
ユーザ :「週1回は運動しています」
対話エージェント:「週1回は運動しているんですね」
【0006】
従来、ユーザ発話文に含まれるポジティブな表現や願望表現に応じて、オウム返しの対象となる単文を選定する技術がある(例えば非特許文献1参照)。この技術によれば、ユーザ発話文に含まれる単文の内容がどのような感情極性を持つか、単文の中に願望表現が含まれるかを判定する。その後、ポジティブな表現や願望表現が含まれる単文を、優先的にオウム返し応答の対象とする。尚、単文がネガティブであると判定された場合は、その単文をオウム返しの対象単文から除外する。
【先行技術文献】
【非特許文献】
【0007】
【文献】田原俊一ら、「オウム返し対象単文選定方式の検討」、電子情報通信学会総合大会(2021)、[online]、[令和3年8月7日検索]、インターネット<URL:https://pdf.gakkai-web.net/ieice/2021gpro/0211_Dpro.pdf>
【文献】吉井健治、「カウンセリングの基本的技法: 相手のこころに近づく聴き方 十二の技」、鳴門教育大学研究紀要 30 (2015): 41-51、[online]、[令和3年8月7日検索]、インターネット<URL:https://naruto.repo.nii.ac.jp/?action=repository_action_common_download&item_id=27903&item_no=1&attribute_id=25&file_no=1>
【文献】Jianming Wu et al. “Effects of objective feedback of facial expression recognition during video support chat”, MUM '17: Proceedings of the 16th International Conference on Mobile and Ubiquitous Multimedia.、[online]、[令和3年8月7日検索]、インターネット<URL:https://www.researchgate.net/profile/Jianming-Wu-8/publication/320268230_Effects_of_Objective_Feedback_of_Facial_Expression_Recognition_during_Video_Support_Chat/links/5a655a99a6fdccb61c57fee2/Effects-of-Objective-Feedback-of-Facial-Expression-Recognition-during-Video-Support-Chat.pdf>
【文献】AIと機械学習プロダクト、「感情分析」、[online]、[令和3年8月7日検索]、インターネット<URL:https://cloud.google.com/natural-language/docs/analyzing-sentiment?hl=ja>
【文献】Devlin, Jacob, et al. "Bert: Pre-training of deep bidirectional transformers for language understanding." arXiv preprint arXiv:1810.04805 (2018)、[online]、[令和3年8月7日検索]、インターネット<URL:https://arxiv.org/pdf/1810.04805.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0008】
前述した非特許文献1に記載の技術によれば、ユーザ発話文に含まれる単文に対してネガティブと判定された場合、オウム返し応答が生成されない。ユーザは、例えば謙虚さに基づく自己否定から、ネガティブに発話する場合も多い。
図1(b)によれば、対話エージェントが、以下のようにユーザと対話をしている。
ユーザ :「週1回しか運動していません」
対話エージェント:「週1回しか運動していないんですね」
このような対話では、ユーザは自らのネガティブさを肯定されたように感じ、対話シナリオの中でも、ユーザの話を引き出しにくくなってしまう。結果的に、対話エージェントに対する信頼感や好感度も低下させることとなってしまう。
【0009】
そこで、本発明は、ユーザ発話文にネガティブな単文が含まれていても、ポジティブなオウム返し的応答文の返答によって、対話を進行させることができるプログラム、装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明によれば、ユーザと対話するようにコンピュータを機能させるプログラムであって、
訓練段階として、ネガティブな単文と、その単文に対するポジティブな単文とを対応付けた教師データによって訓練し、推定段階として、ユーザ発話文に含まれるネガティブな単文から、推定スコアが所定閾値以上であり且つ最も高いポジティブな単文を推定し、当該ネガティブな単文を当該ポジティブな単文に変換したオウム返し的応答文を出力する感情極性変換エンジンと、
ユーザに対して対話シナリオに沿ったシナリオ的応答文を返答する中で、オウム返し的応答文を返答する対話エージェントと
してコンピュータを機能させることを特徴とする。
【0011】
本発明のプログラムにおける他の実施形態によれば、
感情極性がネガティブなユーザ発話文を選択する感情極性判定手段と
して更にコンピュータを機能させることも好ましい。
【0012】
本発明のプログラムにおける他の実施形態によれば、
ユーザ発話文を、複数の単文に分割する単文分割手段と
して更に機能させ、
感情極性判定手段は、感情極性がネガティブな単文を選択する
ように更にコンピュータを機能させることも好ましい。
【0015】
本発明のプログラムにおける他の実施形態によれば、
ユーザ発話文の単文と、当該単文の感情極性とを記録するユーザ発話単文記録手段と、
感情極性変換エンジンによってポジティブな単文が推定されなかった際に、ユーザ発話単文記録手段を用いて、現に発話された単文との類似度が所定閾値以上であり且つポジティブな感情極性の単文を検索する過去単文検索手段と
して機能させ、
対話エージェントは、過去単文検索手段によって検索されたポジティブな感情極性の単文をオウム返し的応答文として返答する
ようにコンピュータを機能させることも好ましい。
【0016】
本発明のプログラムにおける他の実施形態によれば、
対話エージェントは、過去単文検索手段によってポジティブな感情極性の単文が検索されなかった場合、相槌的応答文を返答する
ようにコンピュータを機能させることも好ましい。
【0017】
本発明のプログラムにおける他の実施形態によれば、
ユーザの顔が映る映像を取得する顔映像取得手段と、
映像から顔表情の感情極性を判定する顔表情判定手段と
を有し、
感情極性変換エンジンは、教師データに顔表情の感情極性を含めて訓練し、顔表情の感情極性も潜在的に考慮したポジティブな単文を推定する
ようにコンピュータを機能させることも好ましい。
【0018】
本発明のプログラムにおける他の実施形態によれば、
話シナリオの中で、所定のカテゴリに基づいて対話が進行している際に、ネガティブな感情極性のユーザ発話文の回数を記録するネガティブカテゴリ記録手段と、
ネガティブカテゴリ記録手段によって所定回数以上となった前記所定のカテゴリに基づく対話を、ユーザに提示しないように対話エージェントに対して制御する対話シナリオ制御手段と
してコンピュータを機能させることも好ましい。
【0019】
本発明によれば、ユーザと対話する対話装置において、
訓練段階として、ネガティブな単文と、その単文に対するポジティブな単文とを対応付けた教師データによって訓練し、推定段階として、ユーザ発話文に含まれるネガティブな単文から、推定スコアが所定閾値以上であり且つ最も高いポジティブな単文を推定し、当該ネガティブな単文を当該ポジティブな単文に変換したオウム返し的応答文を出力する感情極性変換エンジンと、
ユーザに対して対話シナリオに沿ったシナリオ的応答文を返答する中で、オウム返し的応答文を返答する対話エージェントと
を有することを特徴とする。
【0020】
本発明によれば、ユーザと対話する装置の対話方法において、
装置は、
訓練段階として、ネガティブな単文と、その単文に対するポジティブな単文とを対応付けた教師データによって訓練した感情極性変換エンジンを用いて、推定段階として、ユーザ発話文に含まれるネガティブな単文から、推定スコアが所定閾値以上であり且つ最も高いポジティブな単文を推定し、当該ネガティブな単文を当該ポジティブな単文に変換したオウム返し的応答文を出力する第1のステップと、
ユーザに対して対話シナリオに沿ったシナリオ的応答文を返答する中で、オウム返し的応答文を返答する第2のステップと
を実行することを特徴とする。
【発明の効果】
【0021】
本発明のプログラム、装置及び方法によれば、ユーザ発話文にネガティブな単文が含まれていても、ポジティブなオウム返し的応答文の返答によって、対話を進行させることができる。
【図面の簡単な説明】
【0022】
図1】従来技術における対話エージェントのオウム返し的応答文を表す第1の説明図である。
図2】本発明における対話装置の基本的な第1の機能構成図である。
図3図2の機能構成における応答文の作成の流れを表す説明図である。
図4】感情極性変換エンジンの説明図である。
図5】本発明における対話エージェントのオウム返し的応答文を表す第2の説明図である。
図6】本発明における対話装置の第2の機能構成図である。
図7】感情極性変換エンジンと、対話エージェントと、過去単文検索部との関係を表すフローチャートである。
図8】本発明における対話装置の第3の機能構成図である。
図9】本発明における対話装置の第4の機能構成図である。
【発明を実施するための形態】
【0023】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0024】
<本発明における第1の基本的な実施形態>
図2は、本発明における対話装置の基本的な第1の機能構成図である。
【0025】
図2によれば、本発明の対話装置1は、ユーザに対して対話シナリオに沿った「シナリオ的応答文」を返答する中で、「オウム返し的応答文」を返答する対話エージェント10を有する。
対話装置1は、端末2と、ネットワークを介して発話文及び応答文をやりとりする。端末2には、例えば対話アプリがインストールされており、ユーザからの発話文を対話装置1へ送信すると共に、対話装置1から受信した応答文をユーザへ明示する。
勿論、対話装置1全体が対話アプリとして構成され、端末2にインストールされたものであってもよい。
【0026】
図2によれば、対話装置1は、対話シナリオを持つ対話エージェント10に加えて、感情極性変換エンジン13を有することに、本願発明の技術的思想としての特徴がある。また、基本構成として、単文分割部11と、感情極性判定部12とを更に有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、対話方法としても理解できる。
【0027】
[単文分割部11]
単文分割部11は、ユーザ発話文を入力し、複数の単文に分割する。ユーザ発話文には、複数の文や複文が混在しているために、それらを単文に分割する。分割された複数の単文は、感情極性判定部12へ出力される。
【0028】
単文分割部11は、以下の2つの処理を実行する。
(処理1)形態素解析器(例えばMeCab(登録商標))を用いて、ユーザ発話文を形態素に分割し、動詞や形容詞のような「述語」を抽出する。
(処理2)発話文に接続助詞が含まれている場合、その接続助詞の前後に抽出した述語を抽出する。述語とその述語に係る名詞を係受け解析器(例えばCaboCha(登録商標))を用いて、述語に係る句を「単文」として抽出する。
【0029】
図3は、図2の機能構成における応答文の作成の流れを表す説明図である。
【0030】
単文分割部11に、以下のユーザ発話文が入力されたとする。
「仕事が忙しいので、週1回しか運動していません。」
【0031】
複数の文からなるこの発話文を、以下のステップによって、単文に分割する。
(s1)形態素解析によって句点「。」を検出し、複数の文に分割する。
第2の文:「仕事が忙しいので」「週1回しか運動していません」
(s2)複文について、形態素解析によって、接続助詞「ので」を検出する。接続助詞の前後に、述語「忙しい」「していません」が含まれている。
第1の文:「・・・ので・・・していません」(複文)
そして、以下のように、句毎に、単文として分割する。
単文 :「仕事が忙しい」「週1回しか運動していません」
【0032】
[感情極性判定部12]
感情極性判定部12は、単文分割部11から出力された単文毎に、「感情極性」がネガティブか否かを判定する。
感情極性として、ポジティブ/ネガティブ/ニュートラルのいずれかを判定する。具体的には、Support Vector Machine等の判定器を使用する方法や、Google(登録商標)社が提供しているCloud Natural Language APIを使用する方法(例えば非特許文献2参照)がある。
【0033】
図3によれば、単文毎の感情極性は、以下のように判定される。
「仕事が忙しい」 -> ニュートラル
「週1回しか運動していません」 -> ★ネガティブ
感情極性判定部12は、単文の中で、感情極性がネガティブとなる1つの単文を決定する。決定した単文を、感情極性変換エンジン13へ出力する。
【0034】
[感情極性変換エンジン13]
感情極性変換エンジン13は、ネガティブな単文を、ポジティブなオウム返し的応答文に変換する。
変換されたオウム返し的応答文は、対話エージェント10へ出力される。
【0035】
感情極性変換エンジン13は、「ネガティブな単文」と、その単文に対する「ポジティブな単文」とを対応付けた教師データによって訓練したものである。感情極性変換エンジン13は、例えばBERT(Bidirectional Encoder Representations from Transformers)のような機械学習エンジンである(例えば非特許文献5参照)。
【0036】
図4は、感情極性変換エンジンの説明図である。
【0037】
図4によれば、以下のように、ユーザ発話の単文(説明変数)と、オウム返し的応答文(目的変数)とからなる複数の教師データによって、感情極性変換エンジン13は訓練されたものである。
週1、2回しか運動してないんですよね(ネガティブ) ->
週1、2回でも運動をしてるんですね(ポジティブ)
週2回しか運動できてないんですよ(ネガティブ) ->
週2回も運動してるじゃないですか!(ポジティブ)
昨日は家の周りを歩く程度でしたけどね(ネガティブ) ->
少し歩くのも健康的な行動ですよね(ポジティブ)
【0038】
そして、感情極性変換エンジン13は、推定段階として、「ネガティブな単文」から、推定スコアが所定閾値以上であり且つ最も高い「ポジティブな単文」を推定する。
機械学習エンジンによれば、ユーザ発話文のネガティブな単文を入力すると、オウム返し的応答文を出力すると共に、その適性度を表す推定スコアも出力される。
図4によれば、「週1回しか運動していません」というネガティブな単文が入力されると、複数のオウム返し的応答文が推定され、その応答文毎に推定スコアも推定される。
<推定されたポジティブな単文> <推定スコア>
週1回も運動してるじゃないですか! -> 0.89
週1回でも運動してるんですね -> 0.72
少し歩くのも健康的な行動ですよね -> 0.05
ここでは、所定閾値=0.70とすると、その所定閾値以上となる「週1回も運動してるじゃないですか!」「週1回でも運動してるんですね」が推定される。また、その中で、推定スコアが最も高いポジティブな単文「週1回も運動してるじゃないですか!」が、オウム返し的応答文として決定される。
【0039】
[対話エージェント10]
対話エージェント10は、既存のものであって、予め登録された「対話シナリオ」に基づいてユーザとの対話を進行させる。対話シナリオは、発話文と応答文とのシーケンスによって構成されている。発話文は、ユーザが発話するであろうと想定したテキストであり、応答文は、その発話文に対して対話エージェントが返答するテキストである。
対話エージェント10は、ユーザ発話文が対話シナリオに沿っている場合には適切なシナリオ的応答文を返答できるが、そうでない場合には、ユーザ発話文に対してオウム返し的応答文を返答して、次のユーザ発話文を待つ。
【0040】
対話エージェント10は、対話シナリオに沿っていない対話の際に、感情極性変換エンジン13によって決定された「ポジティブな単文」であるオウム返し的応答文を返答する。オウム返し的応答文は、基本的に、単文に含まれる「述語」と、述語に係る「名詞」とから構成される。また、動詞の直後に「んだね」、「のですね」といった助動詞や助詞を付けることによって、ユーザに寄り添った文とする。
【0041】
そして、対話エージェント10は、シナリオ的応答文、又は、オウム返し的応答文を、ユーザ操作の端末2へ送信する。
端末2は、例えばディスプレイにその応答文を表示したり、スピーカからその応答文を音声発話させることができる。
【0042】
図5は、本発明における対話エージェントのオウム返し的応答文を表す第2の説明図である。
図5によれば、従来技術となる図1(b)と異なって、以下のようにオウム返し的応答文を返答することができる。
ユーザ :「週1回しか運動していません」
対話エージェント:「週1回も運動してるじゃないですか!」
このような対話によって、ユーザはポジティブさを強く感じ、対話シナリオの中でも、ユーザの話を引き出しやすくなる。結果的に、対話エージェントに対する信頼感や好感度も高めることができる。
【0043】
<本発明における第2の実施形態>
ここでは、感情極性変換エンジン13の推定段階として、「ネガティブな単文」から、推定スコアが所定閾値以上となる「ポジティブな単文」を推定できなかった場合を想定する。その場合、例えば以下の2種類の応答文がある。
(例1)対話エージェント10は、相槌的応答文を返答する。例えば相槌「うんうん」「そうだね」のような応答文を返答する。
(例2)対話エージェント10は、過去のユーザ発話文の中から、現在のユーザ発話文に類似する「ポジティブな単文」を返答する。
【0044】
図6は、本発明における対話装置の第2の機能構成図である。
図6によれば、前述した例2を実施するべく、対話装置1の機能が構成されている。ここでは、図2と比較して、ユーザ発話単文記録部140と、過去単文検索部14とを更に有する。
【0045】
[ユーザ発話単文記録部140]
ユーザ発話単文記録部140は、ユーザ発話文の単文と、当該単文の感情極性とを記録する。ここでは、ユーザが過去の所定期間に発話した単文と、その感情極性とを記録したものである。所定期間としては、例えば直近から遡った過去期間(例えば過去3日間)であることが好ましい。
尚、ユーザ発話単文記録部140は、ユーザ発話文の単文の中で、ポジティブな単文のみを記録するものであってもよい。
【0046】
[過去単文検索部14]
過去単文検索部14は、感情極性変換エンジン13によって「ポジティブな単文」が推定できなかった際に、ユーザ発話単文記録部140を用いて、過去のユーザ発話文の中から、現在のユーザ発話文の単文に対して類似度が所定閾値以上高い「ポジティブな単文」を検索する。単文同士の類似度は、例えばcos類似度やDoc2vecなどの技術を適用することができる。
そして、対話エージェント10は、過去単文検索部14によって検索されたポジティブな単文を返答する。
【0047】
図6によれば、ユーザ発話文の単文「週1回しか運動していません」に対して、類似度が所定閾値以上となる、以下のような過去のユーザ発話の単文が検索される。
「運動、やる気ない時多いんですよ」
「1回あたりの運動時間は長いですね」
また、類似度が所定以上となる過去のユーザ発話文の単文の中で、感情極性が「ポジティブ」となる単文を選択する。図6によれば、以下の単文が検索される。
「1回あたりの運動時間は長いですね」 -> ポジティブ
【0048】
尚、対話エージェント10は、過去単文検索部14によって検索された単文をそのまま応答することなく、相槌や褒め言葉を加えて、「うんうん。でもさきほど運動時間は長いと言ってました。素晴らしいです。」などと応答することも好ましい。
【0049】
図7は、感情極性変換エンジンと、対話エージェントと、過去単文検索部との関係を表すフローチャートである。
【0050】
(S1)感情極性変換エンジン13によって推定された推定スコアが所定閾値以上である場合、対話エージェント10は、推定スコアが最大となる単文を、オウム返し的応答文として返答する。
また、感情極性変換エンジン13によって推定された推定スコアが所定閾値よりも低い場合、過去単文検索部14によって、過去の単文が検索される。
(S2)過去単文検索部14が、過去のユーザ発話文の中で、類似度が高く且つポジティブな単文を選択できた場合、対話エージェント10は、その過去の単文をオウム返し的応答文として返答する。
一方で、過去単文検索部14が、過去のユーザ発話文の中で、類似度が高く且つポジティブな単文を選択できなかった場合、対話エージェント10は、相槌のようなオウム返し的応答文を返答する。
【0051】
<本発明における第3の実施形態>
ここでは、ユーザ発話文のみならず、カメラによって撮影されたユーザの顔の映像を用いて、ユーザに表れるネガティブな感情極性を判定する場合を想定する。
【0052】
図8は、本発明における対話装置の第3の機能構成図である。
図8によれば、図2と比較して、顔映像取得部15と、顔表情判定部16とを更に有する。
【0053】
[顔映像取得部15]
顔映像取得部15は、端末2から、発話しているユーザの顔が映る映像を取得する。取得した映像は、顔表情判定部16へ出力する。
【0054】
[顔表情判定部16]
顔表情判定部16は、映像から顔表情の感情極性を判定する。例えば、ポジティブ、ネガティブ、ニュートラルのような3つの感情を判定する技術もある(例えば非特許文献3参照)。判定された顔表情の感情極性は、感情極性変換エンジン13へ出力される。
【0055】
感情極性変換エンジン13は、教師データに顔表情の感情極性を含めて訓練する。教師データとしては、図4と比較して、顔表情判定を更に追加している。これによって、感情極性変換エンジン13は、顔表情の感情極性も潜在的に考慮した「ポジティブな単文」を推定する。
【0056】
<本発明における第4の実施形態>
ここでは、対話エージェント10の対話シナリオの中で、ユーザがネガティブな発話をするであろうカテゴリについて、そのユーザに質問や返答をしないようにすることを想定する。そのために前提として、対話シナリオの応答文には、カテゴリが対応付けられているとする。
【0057】
図9は、本発明における対話装置の第4の機能構成図である。
【0058】
図9によれば、図2と比較して、ネガティブカテゴリ記録部17と、対話シナリオ制御部18とを更に有する。
【0059】
[ネガティブカテゴリ記録部17]
ネガティブカテゴリ記録部17は、対話シナリオの中で、ユーザへ質問文を提示し、ユーザ発話文を取得した際に、感情極性判定部12によってネガティブと判定された場合、当該質問文のカテゴリを検索し、各カテゴリの回数を記録する。
【0060】
[対話シナリオ制御部18]
対話シナリオ制御部18は、ネガティブカテゴリ記録部17によって所定条件下で所定回数以上となったカテゴリが存在する場合、対話シナリオの中で、当該カテゴリに基づく質問文を、ユーザに提示しないように制御する。
【0061】
対話シナリオ制御部18は、所定条件下の所定回数として、例えば同一のカテゴリに基づくシステム応答文に対して、ユーザ発話文の感情極性が3回連続してカウントされたば場合、対話シナリオの中で、そのカテゴリに基づくシステム応答文を提示しないようにする。これによって、ユーザとの対話ができる限りネガティブなものとならないようにし、ユーザの対話意欲の低下を防ぐことができる。
【0062】
例えば、「運動」カテゴリに基づいて対話が進行している際、「週1回しか運動してないんですよね」「たまに歩くくらいですよ」「ストレッチはあまりやってないです」などとユーザが発話した場合を想定する。その場合、ネガティブな感情極性のユーザ発話文が3回連続したと判定され、その後の対話シナリオの中で、「運動」カテゴリに基づくシステム応答文を提示しないようにする。
【0063】
以上、詳細に説明したように、本発明のプログラム、装置及び方法によれば、ユーザ発話文にネガティブな単文が含まれていても、ポジティブなオウム返し的応答文の返答によって、対話を進行させることができる。
これによって、ユーザはポジティブさを強く感じ、対話シナリオの中でも、ユーザの話を引き出しやすくなる。結果的に、対話エージェントに対する信頼感や好感度も高めることができる。
【0064】
尚、これにより、例えば「ユーザとポジティブに対話をすることができる」ことから、国連が主導する持続可能な開発目標(SDGs)の目標16「公正、平和かつ包摂的な社会を推進する」に貢献することが可能となる。
【0065】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【0066】
1 対話装置
10 対話エージェント
11 単文分割部
12 感情極性判定部
13 感情極性変換エンジン
14 過去単文検索部
140 ユーザ発話単文記録部
15 顔映像取得部
16 顔表情判定部
17 ネガティブカテゴリ記録部
18 対話シナリオ制御部
2 端末

図1
図2
図3
図4
図5
図6
図7
図8
図9