JP2020067585A - コミュニケーション装置およびコミュニケーション装置の制御プログラム - Google Patents

コミュニケーション装置およびコミュニケーション装置の制御プログラム Download PDF

Info

Publication number
JP2020067585A
JP2020067585A JP2018200832A JP2018200832A JP2020067585A JP 2020067585 A JP2020067585 A JP 2020067585A JP 2018200832 A JP2018200832 A JP 2018200832A JP 2018200832 A JP2018200832 A JP 2018200832A JP 2020067585 A JP2020067585 A JP 2020067585A
Authority
JP
Japan
Prior art keywords
utterance
response
probability
response generation
generation module
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.)
Granted
Application number
JP2018200832A
Other languages
English (en)
Other versions
JP7063230B2 (ja
Inventor
亮輔 中西
Ryosuke Nakanishi
亮輔 中西
美奈 舩造
Mina Funatsukuri
美奈 舩造
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2018200832A priority Critical patent/JP7063230B2/ja
Priority to US16/661,495 priority patent/US11222638B2/en
Priority to CN201911016606.3A priority patent/CN111192577B/zh
Publication of JP2020067585A publication Critical patent/JP2020067585A/ja
Application granted granted Critical
Publication of JP7063230B2 publication Critical patent/JP7063230B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • G10L13/027Concept to speech synthesisers; Generation of natural phrases from machine-based concepts
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/0005Manipulators having means for high-level communication with users, e.g. speech generator, face recognition means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/008Artificial life, i.e. computing arrangements simulating life based on physical entities controlled by simulated intelligence so as to replicate intelligent life forms, e.g. based on robots replicating pets or humans in their appearance or behaviour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1822Parsing for meaning understanding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Artificial Intelligence (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Robotics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mechanical Engineering (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Manipulator (AREA)

Abstract

【課題】多様な応答発話を生成することにより、ユーザに話し相手と認められ得るコミュニケーション装置等を提供する。【解決手段】コミュニケーション装置は、ユーザの発話である入力発話を入力する入力部と、入力発話が、発話内容の種類として予め定められた複数の分類クラスのそれぞれに属する確率であるクラス確率を演算する演算部と、応答の類型ごとに設けられた、類型に対応する応答発話をそれぞれ生成する複数の応答生成モジュールと、複数の応答生成モジュールのそれぞれに設定された、複数の分類クラスごとの関連度合を示す関連確率、および演算部が演算したクラス確率に基づいて複数の応答生成モジュールから1つを選択し、選択された応答生成モジュールが生成する応答発話をユーザへ発する出力発話と決定する決定部と、出力発話を出力する出力部とを備える。【選択図】図7

Description

本発明は、コミュニケーション装置およびコミュニケーション装置の制御プログラムに関する。
ユーザの発話を解析して意味内容を把握し、そのタイプに応じた応答発話を生成して音声またはテキストによりユーザに提示する技術が知られている(例えば、特許文献1参照)。
特開2010−140282号公報
従来の発話応答装置によると、ユーザの発話に対する応答発話が画一的となり、ユーザは、装置を使用するにつれてある程度応答発話を予測できるようになってしまっていた。すなわち、ユーザは、発話応答装置に話し相手としての生命感や自由な意志を感じることができず、対話に飽きることがあった。
本発明は、このような問題を解決するためになされたものであり、多様な応答発話を生成することにより、ユーザに話し相手と認められ得るコミュニケーション装置等を提供するものである。
本発明の第1の態様におけるコミュニケーション装置は、ユーザの発話である入力発話を入力する入力部と、入力発話が、発話内容の種類として予め定められた複数の分類クラスのそれぞれに属する確率であるクラス確率を演算する演算部と、応答の類型ごとに設けられた、類型に対応する応答発話をそれぞれ生成する複数の応答生成モジュールと、複数の応答生成モジュールのそれぞれに設定された、複数の分類クラスごとの関連度合を示す関連確率、および演算部が演算したクラス確率に基づいて複数の応答生成モジュールから1つを選択し、選択された応答生成モジュールが生成する応答発話をユーザへ発する出力発話と決定する決定部と、出力発話を出力する出力部とを備える。このように構成されたコミュニケーション装置によれば、クラス確率と関連確率の掛け合わせによって出力発話が決定されるので、入力発話に対する出力発話の選択バリエーションが増大し、対話に多様性や意外性を持たせることができる。
また、上記のコミュニケーション装置は、決定部が、複数の応答生成モジュールのうち、関連確率とクラス確率を掛け合わせた選択確率が予め定められた基準値以上の値となる応答生成モジュールからランダムに1つを選択するように構成しても良い。このように構成することにより、対話により意外性を持たせることができる。
さらに、決定部が、以前に選択された応答生成モジュールが選択される確率が低くなるように設定された過去係数を関連確率に掛け合わせて、複数の応答生成モジュールから1つを選択するように構成しても良い。このように構成することにより、同じような応答発話が出力されることを回避することができる。
また、上記のコミュニケーション装置において複数の応答生成モジュールは、決定部によって選択されてから、選択された応答生成モジュールが応答発話を生成するようにしても良い。選択されてから応答発話を生成すれば、選択されていない応答生成モジュールが応答発話を生成する無駄を省くことができる。
本発明の第2の態様におけるコミュニケーション装置の制御プログラムは、ユーザの発話である入力発話を入力する入力ステップと、入力発話が、発話内容の種類として予め定められた複数の分類クラスのそれぞれに属する確率であるクラス確率を演算する演算ステップと、応答の類型ごとに設けられた、類型に対応する応答発話をそれぞれ生成する複数の応答生成モジュールのそれぞれに設定された、複数の分類クラスごとの関連度合を示す関連確率、および演算ステップで演算したクラス確率に基づいて複数の応答生成モジュールから1つを選択し、選択された応答生成モジュールが生成する応答発話をユーザへ発する出力発話と決定する決定ステップと、出力発話を出力する出力ステップとをコンピュータに実行させる。このような制御プログラムによって制御されたコミュニケーション装置によれば、クラス確率と関連確率の掛け合わせによって出力発話が決定されるので、入力発話に対する出力発話の選択バリエーションが増大し、対話に多様性や意外性を持たせることができる。
本発明により、多様な応答発話を生成することにより、ユーザに話し相手と認められ得るコミュニケーション装置等を提供することができる。
第1の実施例に係るロボットとユーザのコミュニケーションの例を示す図である。 ロボットのシステム構成図である。 関連確率を定義する参照テーブルの一例である。 ユーザの発話を受けてから応答するまでの処理を示すフロー図である。 応答生成モジュールの選択処理を示すフロー図である。 第2の実施例に係るロボットとユーザのコミュニケーションの例を示す図である。 ロボットとサーバのシステム構成図である。 第3の実施例に係るスマートフォンを示す図である。
以下、発明の実施の形態を通じて本発明を説明するが、特許請求の範囲に係る発明を以下の実施形態に限定するものではない。また、実施形態で説明する構成の全てが課題を解決するための手段として必須であるとは限らない。
図1は、第1の実施例に係るロボット100とユーザのコミュニケーションの例を示す図である。ロボット100は、ユーザである人間と音声対話を行うコミュニケーション装置である。ロボット100は、キャラクタを具現化したキャラクタ装置であり、対話に合わせて眼の表情や視線方向が変化するように構成しても良い。
ロボット100は、外観として動物を模しており、頭部110と胴体部120を有する。頭部110のいずれかの位置には、マイク101が隠されて配置されている。マイク101は、ユーザの発話音声を入力発話として入力する入力部としての機能を担う。ロボット100の口の位置には、スピーカ102が隠されて配置されている。また、スピーカ102は、ロボット100が生成した音声を発する出力部としての機能を担う。ユーザは、口の位置から出力される音声に、ロボット100が喋っているような感覚を覚える。図示するように、例えばユーザがロボット100に「今日の天気はどうなるの?」と話しかけると、ロボット100は、その話しかけに反応して、「晴れのちくもりだよ。」などと発話する。
図2は、ロボット100のシステム構成図である。ロボット100は、主なシステム構成として、マイク101、スピーカ102、制御部200、発話データベース210、知識データベース220、およびメモリ230を備えている。制御部200は、例えばCPUによって構成され、機能ごとの実行を担う機能実行部としても動作し、主に、発話解析部201、クラス確率演算部202、生成モジュール決定部203、発話制御部204、および応答生成モジュール群205として動作する。
マイク101は、主な機能として、ロボット100が対話する相手であるユーザの発話音声を集音する。マイク101は、集音したユーザの発話音声を音声信号に変換し、ユーザからの入力発話として発話解析部201へ引き渡す。
発話解析部201は、マイク101から受け取った入力発話を解析してテキスト化し、ユーザの発話内容を認識する。発話解析部201は、具体的には、一般的な音声認識技術を用いてユーザの発話内容を認識する。例えば、テキスト化された入力発話に単語分析等を施して、DNNモデルやロジスティック回帰モデルを用いて発話内容を認識する。発話解析部201は、認識した発話内容をクラス確率演算部202と応答生成モジュール群205へ引き渡す。
クラス確率演算部202は、発話解析部201から受け取った入力発話が、発話内容の種類として予め定められた複数の分類クラスのそれぞれに属する確率であるクラス確率を演算する。本実施例では、入力発話の種類を「質問」「情報提供」「要求」「非対話」の4つに分類する。そして、これら4つの分類のそれぞれを分類クラスと称し、クラス確率演算部202は、入力発話が「質問クラス」「情報提供クラス」「要求クラス」「非対話クラス」に属する推定確率としてクラス確率を演算する。
例えば、質問クラスのクラス確率は、入力発話の内容が、ユーザは何かを知りたがっていると推定される確率である。例えば、入力発話が「今日の天気はどうなるの」であれば、ユーザは今日の天気を知りたがっていると推定されるので、質問クラスのクラス確率が大きい値となる。情報提供クラスのクラス確率は、入力発話の内容が、ユーザは何かを伝えたがっていると推定される確率である。例えば、入力発話が「僕は、野菜が嫌いだよ」であれば、ユーザはロボット100に自身の特徴を知って貰いたいと推定されるので、情報提供クラスのクラス確率が大きい値となる。
要求クラスのクラス確率は、入力発話の内容が、ユーザは何かをして欲しいと推定される確率である。例えば、入力発話が「リビングの電灯をつけて」であれば、ユーザはロボット100にリビングの電灯をつける制御信号を送信させたいと推定されるので、要求クラスのクラス確率が大きい値となる。非対話クラスのクラス確率は、入力発話の内容が、ロボット100に向けられたものでないと推定される確率である。例えば、入力発話が「ああ、眠い」であれば、ユーザは独り言をしゃべっていると推定されるので、非対話クラスのクラス確率が大きい値となる。
クラス確率演算部202は、知識データベース220を参照して、クラス確率を演算する。知識データベース220は、例えばハードディスクドライブの記録媒体によって構成されており、多くの単語とその属性、単語間の係り受け関係を定義する解析文法などが格納されている。知識データベース220は、ロボット100が内蔵していなくても良く、例えばロボット100が接続可能なネットワークに接続されていても良い。クラス確率演算部202は、例えば、入力発話に含まれる複数の単語のうち、知識データベース220を参照して同一属性を有する単語の数やその属性の種類、解析文法から考慮対象から除外する単語等を決定し、予め定められた演算式に従ってクラス確率を演算する。例えば、入力発話「今日の天気はどうなるの」に対して、質問クラス確率70%、情報提供クラス確率5%、要求クラス確率10%、非対話クラス15%などの結果を出力する。クラス確率演算部202は、入力発話がそれぞれの分類クラスに属するクラス確率を出力したら、生成モジュール決定部203へ引き渡す。
なお、知識データベース220を用いた解析的演算手法によらず、ロジスティック回帰やDNN(Deep Neural Network)を用いた人工知能による演算手法を採用しても良い。この場合、入力発話を与えるとそれぞれの分類クラスに属するクラス確率を出力する学習済みモデルを用意しておくと良い。クラス確率演算部202は、発話解析部201から入力発話を受け取るごとに、学習済みモデルを用いてクラス確率を演算する。
応答生成モジュール群205は、設定された応答類型に対応する応答発話を生成する応答生成モジュールの集合体である。本実施例では、応答類型として「質問応答」「連想応答」「用例応答」「共感応答」「模倣応答」の5つが予め設定されている。そして、それぞれの応答類型に合致する応答発話を生成する応答生成モジュールとして、質問応答生成モジュール205a、連想応答生成モジュール205b、用例応答生成モジュール205c、共感応答生成モジュール205d、模倣応答生成モジュール205eが用意されている。
応答質問は、質問に対して回答を返す応答類型である。例えば、入力発話が「明日は雨かな」である場合に、質問応答生成モジュール205aは、「明日は晴れのちくもりです」との応答発話を生成する。連想応答は、入力文から連想されるフレーズを返す応答類型である。例えば、入力発話が「明日は雨かな」である場合に、連想応答生成モジュール205bは、「風をひかないようにね」との応答発話を生成する。
用例応答は、入力発話に近いフレーズを返す応答類型である。例えば、入力発話が「明日は雨かな」である場合に、用例応答生成モジュール205cは、「今日は良い天気ですね」との応答発話を生成する。共感応答は、入力発話に含まれる感情に寄り添うフレーズを返す応答類型である。例えば、入力発話が「明日は雨かな」である場合には、感情の属性を有する単語を含まないので、共感応答生成モジュール205dは、応答発話を生成しない。模倣応答は、入力発話の部分または全体を模倣してオウム返しする応答類型である。例えば、入力発話が「明日は雨かな」である場合に、模倣応答生成モジュール205eは、「明日ですか?」との応答発話を生成する。
それぞれの応答生成モジュールは、発話データベース210を参照して、応答類型に合致する応答発話を生成する。発話データベース210は、例えばハードディスクドライブの記録媒体によって構成されており、コーパスとして体系化された個々の用語は、再生可能な発話データを伴って格納されている。発話データベース210は、ロボット100が内蔵していなくても良く、例えばロボット100が接続可能なネットワークに接続されていても良い。
生成モジュール決定部203は、クラス確率演算部202から受け取ったクラス確率と、メモリ230に記憶されている参照テーブル221を読み出して得た関連確率とに基づいて、応答生成モジュール群205から1つの応答生成モジュールを選択する。具体的な選択手法については、後に詳述する。生成モジュール決定部203は、選択した応答生成モジュールが生成した応答発話を当該応答生成モジュールから取得し、これを出力発話として採用することを決定する。
発話制御部204は、受け取った出力発話を音声信号に変換してスピーカ102へ引き渡す。スピーカ102は、発話制御部204で変換された音声信号を受け取って、出力発話を音声として出力する。なお、メモリ230は、フラッシュメモリなどの不揮発性記憶媒体であり、参照テーブル231の他にも、ロボット100を制御するための制御プログラム、制御や演算に用いられる様々なパラメータ値、関数、ルックアップテーブル等を記憶している。
図3は、関連確率を定義する参照テーブル231の一例である。関連確率は、応答生成モジュールのそれぞれに設定された、上述の分類クラスごとの関連度合を示す値である。例えば、質問応答生成モジュール205aに対しては、質問クラスとの関連確率が70%、情報提供クラスとの関連確率が15%、要求クラスとの関連確率が10%、非対話クラスとの関連確率が5%と定義されている。同様に、連想応答生成モジュール205b、用例応答生成モジュール205c、共感応答生成モジュール205d、模倣応答生成モジュール205eのそれぞれに対しても、質問クラスとの関連確率、情報提供クラスとの関連確率、要求クラスとの関連確率、非対話クラスとの関連確率が定義されている。
生成モジュール決定部203は、クラス確率演算部202から受け取った分類クラスごとのクラス確率を、参照テーブル231の各関連確率に掛け合わせた選択確率を算出する。例えば、質問クラス確率50%、情報提供クラス確率25%、要求クラス確率10%、非対話クラス15%と演算されたクラス確率に対する質問応答生成モジュール205aの選択確率は、算出される確率をP(応答生成モジュール|分類クラス)で表現すると、
P(質問応答|質問)=70%×50%=35%
P(質問応答|情報提供)=15%×25%=3.75%
P(質問応答|要求)=10%×10%=1%
P(質問応答|非対話)=5%×15%=0.75%
となる。同様に連想応答生成モジュール205bの選択確率は、
P(連想応答|質問)=10%×50%=5%
P(連想応答|情報提供)=40%×25%=10%
P(連想応答|要求)=20%×10%=2%
P(連想応答|非対話)=30%×15%=4.5%
となる。用例応答生成モジュール205cの選択確率、共感応答生成モジュール205dの選択確率、模倣応答生成モジュール205eの選択確率も同様に計算する。
生成モジュール決定部203は、このように計算した選択確率のうち、最も大きな値となる選択確率(上記の例ではP(質問応答|質問)=35%)を探索し、その値に対応する応答生成モジュール(上記の例では質問応答生成モジュール205a)を選択する。そして、生成モジュール決定部203は、選択した応答生成モジュールが生成した応答発話(例えば、「明日は晴れのちくもりです」)を取得し、その応答発話を出力発話とする。
なお、選択した応答生成モジュールが応答発話を生成しない場合には、選択確率が次に大きな値を示す応答生成モジュールを選択し、その応答生成モジュールが生成する応答発話を出力発話とする。また、複数の選択確率が同値で最大値となる場合には、それらの最大値に対応する応答生成モジュールからランダムに1つを選択すると良い。
このような選択確率を計算して出力発話を決定する手法によれば、入力発話に対する出力発話の選択バリエーションが増大し、対話に多様性や意外性を持たせることができる。すなわち、話し掛ける表現が少しでも異なれば、ロボット100から返ってくる音声も異なり得るので、ユーザが対話にすぐに飽きてしまうという可能性が軽減される。特に、単に知識を尋ねるような単発的な対話でなく、言葉のキャッチボールが繰り返される雑談的な対話においては、このような多様性や意外性が対話継続の中心的要素となるので効果的である。
さらに多様性や意外性を発揮させるために、生成モジュール決定部203は、計算された選択確率から予め定められた基準値以上のものを抽出し、その選択確率に対応する応答生成モジュールからランダムに1つを選択しても良い。例えば、選択確率の基準値をP=35%と設定した場合に、P>Pとなる選択確率が質問応答生成モジュール205aと用例応答生成モジュール205cと共感応答生成モジュール205dに現れたとすると、この3つの中からランダムに1つを選択する。
また、継続的に対話を行う場合には、一連の対話の中ですでに選択された応答生成モジュールの選択確率が低くなるように算出しても良い。例えば、過去に選択された頻度や直前に選択されたかによって変化する過去係数(0以上1未満の数)を関連確率に掛け合わせた上で選択確率を算出する。このようにして、すでに選択された応答生成モジュールの選択確率が低くなるように算出すれば、同じような応答発話が出力されることを回避することができる。
次に、制御部200が行うユーザの発話を受けてから応答するまでの処理の流れについて説明する。図4は、ユーザの発話を受けてから応答するまでの処理を示すフロー図である。ユーザが1フレーズを発話してから、ロボット100が1フレーズ返すまでの処理を表わしている。
制御部200は、ステップS101で、マイク101を介してユーザ発話を取得すると、機能ブロックとしての発話解析部201が、ステップS102で、当該ユーザ発話を入力発話として解析し認識する。発話解析部201は、認識した発話内容をクラス確率演算部202と応答生成モジュール群205へ引き渡す。
クラス確率演算部202は、ステップS103で、入力発話が分類クラスのそれぞれに属する確率であるクラス確率を演算する。クラス確率演算部202は、入力発話がそれぞれの分類クラスに属するクラス確率を演算したら、生成モジュール決定部203へその値を引き渡す。
生成モジュール決定部203は、ステップS104で、メモリ230から参照テーブル231を読み出し、各応答生成モジュールの分類クラスごとの関連確率を取得する。そして、ステップS105で、応答生成モジュール群205の中から1つの応答生成モジュールを決定する。ステップS105の具体的な処理の流れを、図5を用いて説明する。
図5は、応答生成モジュールの選択処理を示すサブフロー図である。生成モジュール決定部203は、ステップS1051で、まず、過去係数を算出する。過去係数は、それぞれの応答生成モジュールに対して算出され、算出対象となる応答生成モジュールが過去に選択された頻度や直前に選択されたかによって増減する。生成モジュール決定部203は、ステップS1052へ進み、過去係数と関連確率とクラス確率を掛け合わせた選択確率Pから、基準値Pより大きくなるものを探索し、その選択確率に対応する応答生成モジュールを抽出する。
そして、ステップS1053で、抽出された複数の応答生成モジュールからランダムに1つを選択する。基準値Pより大きい選択確率Pが1つしか存在しない場合には、当該選択確率に対応する応答生成モジュールを選択する。また、基準値Pより大きい選択確率Pが1つも存在しない場合には、最大値の選択確率に対応する応答生成モジュールを選択する。
図4のフローに戻る。応答生成モジュール群205の各応答生成モジュールは、ステップS106で、発話解析部201が認識した発話内容を受け、自らの応答類型に合致する応答発話を生成する。なお、ステップS106は、ステップS103からステップS105に並行して実行しても良いし、ステップS102の前やステップS105の後に実行しても良い。
生成モジュール決定部203は、ステップS107へ進み、ステップS105で選択した応答生成モジュールが応答発話を生成しているか否かを確認する。応答発話を生成していない場合(ステップS107:NO)は、ステップS108へ進み、応答生成モジュールを再選択する。例えば上述のように、選択確率が次に大きな値を示す応答生成モジュールを選択する。あるいは、残りの応答生成モジュールからランダムに選択しても良い。
ステップS105で選択した応答生成モジュールが応答発話を生成していれば(ステップS107:YES)、ステップS109へ進み、当該応答発話を取得して出力発話とする。発話制御部204は、ステップS110で、生成モジュール決定部203から受け取った出力発話を音声信号に変換して、スピーカ102から発声させる。以上により、一連の処理を終了する。再びユーザからの発話があれば、同様に繰り返す。
なお、上述の処理フローでは、すべての応答生成モジュールがそれぞれ応答発話を生成する例を説明したが、生成モジュール決定部203によって選択された応答生成モジュールのみが、その選択を受けて応答発話を生成するように構成しても良い。この場合は、ステップS106の「応答発話の生成」は、ステップS105の後に実行される。選択されてから選択された応答生成モジュールが応答発話を生成すれば、選択されていない応答生成モジュールが応答発話を生成する無駄を省くことができる。一方で、生成モジュール決定部203の選択に先立ってそれぞれの応答生成モジュールが応答発話を生成すれば、迅速な応答が実現される。これらの仕様は、ロボット100が利用される環境等に応じて決定されると良い。
次に、第2の実施例について説明する。図6は、第2の実施例に係るロボットとのコミュニケーションの例を示す図である。第1の実施例では、ロボット100が単独でユーザとコミュニケーションが取れるように、主要な機能要素を全て本体に備える構成であったが、第2の実施例におけるロボット100’は、演算に関する機能要素をサーバ300に任せる構成を採用する。
例えばユーザがロボット100’に「今日の天気はどうなるの?」と話しかけると、ロボット100’のマイクがその音声を取り込む。ロボット100’は、取り込んだ音声を音声信号に変換して、無線通信によりサーバ300へ送信する。サーバ300は、これらの情報を用いて、応答音声(図の例では「晴れのちくもりだよ。」)の音声データを選択して、ロボット100’へ送信する。ロボット100’は、受け取った音声データに対応する音声をスピーカ102から発する。
図7は、ロボット100’とサーバ300のシステム構成図である。第1の実施例で説明した要素と原則的に同じ機能を担う要素には同じ名称を付して、その機能についての説明を省略する。本実施例においては、サーバ300が、諸々の演算等を実行するコミュニケーション装置の実体として機能する。
ロボット100’は、ロボット100と同様にマイク101、スピーカ102を備える。制御部190は、マイク101から受け取った音声信号を音声データに変換し、通信部191を介して、サーバ300へ送信する。また、制御部190は、通信部191を介して受信した音声データを音声信号に変換し、スピーカ102から発声させる。通信部191は、ネットワークを介してサーバ300と制御信号や音声データの授受を行うための通信インタフェースであり、例えば無線LANユニットである。
サーバ300は、ロボット100と同様に制御部200、発話データベース210、知識データベース220、メモリ230を備える。また、ネットワークを介してロボット100’と制御信号や音声データの授受を行うための通信インタフェースである通信部291を備える。通信部290は、例えば無線LANユニットである。
発話解析部201は、通信部291を介して、ユーザ発話を入力発話として受け取る。また、発話制御部204は、生成モジュール決定部203から受け取った出力発話の音声データを通信部291へ引き渡す。
このような第2の実施例のシステム構成であっても、第1の実施例と同様に、ユーザとのコミュニケーションを実現できる。また、演算に関する機能をサーバ300に集約することで、ロボット100’の構成を簡易にすることができ、ロボット100’に高性能な制御チップを設けなくても、円滑なコミュニケーションを実現できる。また、サーバ300が演算に関する機能を担うのであれば、複数のロボット100’からの演算要請にシーケンシャルに応えることもできるので、システム全体としての製造コストを軽減することもできる。
次に、第3の実施例について説明する。図8は、第3の実施例に係るスマートフォン700を示す図である。第1の実施例および第2の実施例においては、キャラクタを具現化したロボット100、100’をユーザが対話する相手としたが、第3の実施例においては、スマートフォン700に表示した映像キャラクタ800を対話する相手とする。キャラクタをロボットとして実体化すれば、ユーザは、ペットのように感じることができ、より愛着を持てるようになるが、スマートフォン700でより簡便にキャラクタを表現することもできる。
スマートフォン700のシステム構成は、図2を用いて説明した第1の実施例におけるロボット100のシステム構成とほぼ共通する。共通する構成についてはその説明を省略して、異なる構成について以下に説明する。
スマートフォン700は、表示パネル710、マイク711、スピーカ712を備える。表示パネル710は、例えば液晶パネルであり、映像キャラクタ800を表示する。マイク711は、第1の実施例におけるマイク101と置き換わる要素であり、ユーザの発話音声を集音する。スピーカ712は、第1の実施例におけるスピーカ102と置き換わる要素であり、発話制御部204で変換された音声信号を受け取って、出力発話を音声出力する。
また、表示パネル710には、ユーザの発話である入力発話を文字で示す入力テキストウィンドウ721が表示される。発話解析部201は、入力発話を文字変換して入力テキストウィンドウ721を生成し、表示パネル710に表示する。さらに、表示パネルには、選択された応答発話である出力発話を文字で示す出力テキストウィンドウ722が表示される。発話制御部204は、出力発話を文字変換して出力テキストウィンドウ722を生成し、表示パネル710に表示する。
このように、入力発話および出力発話を文字情報として表示すれば、視覚的にも対話を確認することができる。また、音声出力をオフにすれば、ユーザは、静かな環境においても、周囲に迷惑をかけることなく、コミュニケーションを楽しむことができる。また、入力発話も音声としてではなく、スマートフォン700の文字入力機能を用いて文字で与えれば、ユーザは、音声を介さずにコミュニケーションを楽しむことができる。この場合は、入力発話も出力発話も文字情報として処理される。
このようにスマートフォン700をコミュニケーション装置として機能させれば、コミュニケーション装置としての専用ハードウェアを必要としないので、ユーザはより気軽にキャラクタとの対話を楽しむことができる。また、スマートフォン700の他のアプリケーションに連動させて映像キャラクタ800と対話できるように構成すれば、様々な用途に応用できる。なお、スマートフォン700は、第2の実施例のように、サーバが連携するシステムであっても良い。
100、100’ ロボット、101 マイク、102 スピーカ、110 頭部、120 胴体部、190 制御部、191 通信部、200 制御部、201 発話解析部、202 クラス確率演算部、203 生成モジュール決定部、204 発話制御部、205 応答生成モジュール群、205a 質問応答生成モジュール、205b 連想応答生成モジュール、205c 用例応答生成モジュール、205d 共感応答生成モジュール、205e 模倣応答生成モジュール、210 発話データベース、220 知識データベース、230 メモリ、231 参照テーブル、291 通信部、700 スマートフォン、710 表示パネル、711 マイク、712 スピーカ、721 入力テキストウィンドウ、722 出力テキストウィンドウ、800 映像キャラクタ

Claims (5)

  1. ユーザの発話である入力発話を入力する入力部と、
    前記入力発話が、発話内容の種類として予め定められた複数の分類クラスのそれぞれに属する確率であるクラス確率を演算する演算部と、
    応答の類型ごとに設けられた、前記類型に対応する応答発話をそれぞれ生成する複数の応答生成モジュールと、
    前記複数の応答生成モジュールのそれぞれに設定された、前記複数の分類クラスごとの関連度合を示す関連確率、および前記演算部が演算した前記クラス確率に基づいて前記複数の応答生成モジュールから1つを選択し、選択された応答生成モジュールが生成する応答発話を前記ユーザへ発する出力発話と決定する決定部と、
    前記出力発話を出力する出力部と
    を備えるコミュニケーション装置。
  2. 前記決定部は、前記複数の応答生成モジュールのうち、前記関連確率と前記クラス確率を掛け合わせた選択確率が予め定められた基準値以上の値となる応答生成モジュールからランダムに1つを選択する請求項1に記載のコミュニケーション装置。
  3. 前記決定部は、以前に選択された応答生成モジュールが選択される確率が低くなるように設定された過去係数を前記関連確率に掛け合わせて、前記複数の応答生成モジュールから1つを選択する請求項1または2に記載のコミュニケーション装置。
  4. 前記複数の応答生成モジュールは、前記決定部によって選択されてから、選択された応答生成モジュールが前記応答発話を生成する請求項1から3のいずれか1項に記載のコミュニケーション装置。
  5. ユーザの発話である入力発話を入力する入力ステップと、
    前記入力発話が、発話内容の種類として予め定められた複数の分類クラスのそれぞれに属する確率であるクラス確率を演算する演算ステップと、
    応答の類型ごとに設けられた、前記類型に対応する応答発話をそれぞれ生成する複数の応答生成モジュールのそれぞれに設定された、前記複数の分類クラスごとの関連度合を示す関連確率、および前記演算ステップで演算した前記クラス確率に基づいて前記複数の応答生成モジュールから1つを選択し、選択された応答生成モジュールが生成する応答発話を前記ユーザへ発する出力発話と決定する決定ステップと、
    前記出力発話を出力する出力ステップと
    をコンピュータに実行させるコミュニケーション装置の制御プログラム。
JP2018200832A 2018-10-25 2018-10-25 コミュニケーション装置およびコミュニケーション装置の制御プログラム Active JP7063230B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018200832A JP7063230B2 (ja) 2018-10-25 2018-10-25 コミュニケーション装置およびコミュニケーション装置の制御プログラム
US16/661,495 US11222638B2 (en) 2018-10-25 2019-10-23 Communication device and control program for communication device
CN201911016606.3A CN111192577B (zh) 2018-10-25 2019-10-24 交流装置及交流装置的控制程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018200832A JP7063230B2 (ja) 2018-10-25 2018-10-25 コミュニケーション装置およびコミュニケーション装置の制御プログラム

Publications (2)

Publication Number Publication Date
JP2020067585A true JP2020067585A (ja) 2020-04-30
JP7063230B2 JP7063230B2 (ja) 2022-05-09

Family

ID=70327099

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018200832A Active JP7063230B2 (ja) 2018-10-25 2018-10-25 コミュニケーション装置およびコミュニケーション装置の制御プログラム

Country Status (3)

Country Link
US (1) US11222638B2 (ja)
JP (1) JP7063230B2 (ja)
CN (1) CN111192577B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022120500A (ja) * 2021-02-05 2022-08-18 Necパーソナルコンピュータ株式会社 学習支援システム、学習支援方法、及びプログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11443731B2 (en) 2020-04-09 2022-09-13 Rovi Guides, Inc. Systems and methods for generating synthesized speech responses to voice inputs by training a neural network model based on the voice input prosodic metrics and training voice inputs
US11568859B2 (en) * 2020-08-31 2023-01-31 Uniphore Software Systems, Inc. Method and apparatus for extracting key information from conversational voice data

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003255990A (ja) * 2002-03-06 2003-09-10 Sony Corp 対話処理装置及び方法並びにロボット装置
JP2017102247A (ja) * 2015-12-01 2017-06-08 国立研究開発法人産業技術総合研究所 音声対話システム、音声対話制御法およびプログラム
JP2017527926A (ja) * 2014-07-03 2017-09-21 マイクロソフト テクノロジー ライセンシング,エルエルシー 社交的会話入力に対するコンピュータレスポンスの生成
JP2018041124A (ja) * 2016-09-05 2018-03-15 株式会社Nextremer 対話制御装置、対話エンジン、管理端末、対話装置、対話制御方法、対話方法、およびプログラム
JP2018132704A (ja) * 2017-02-16 2018-08-23 トヨタ自動車株式会社 対話装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4980917A (en) * 1987-11-18 1990-12-25 Emerson & Stern Associates, Inc. Method and apparatus for determining articulatory parameters from speech data
US6224383B1 (en) * 1999-03-25 2001-05-01 Planetlingo, Inc. Method and system for computer assisted natural language instruction with distracters
US6883014B1 (en) * 2000-10-19 2005-04-19 Amacis Limited Electronic message distribution
US7398209B2 (en) * 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
JP2004086001A (ja) * 2002-08-28 2004-03-18 Sony Corp 会話処理装置、および会話処理方法、並びにコンピュータ・プログラム
JP4623278B2 (ja) * 2004-12-22 2011-02-02 日本電気株式会社 音声対話装置、支援装置、生成装置、音声対話方法、支援方法、生成方法およびプログラム
JP4826275B2 (ja) * 2006-02-16 2011-11-30 株式会社豊田中央研究所 応答生成装置、方法及びプログラム
CN101399590A (zh) * 2007-09-27 2009-04-01 株式会社Ntt都科摩 一种多用户预编码系统中的反馈选择方法及反馈选择装置
US20090209345A1 (en) * 2008-02-14 2009-08-20 Aruze Gaming America, Inc. Multiplayer participation type gaming system limiting dialogue voices outputted from gaming machine
JP5286062B2 (ja) 2008-12-11 2013-09-11 日本電信電話株式会社 対話装置、対話方法、対話プログラムおよび記録媒体
US9576573B2 (en) * 2011-08-29 2017-02-21 Microsoft Technology Licensing, Llc Using multiple modality input to feedback context for natural language understanding
JP5611155B2 (ja) * 2011-09-01 2014-10-22 Kddi株式会社 コンテンツに対するタグ付けプログラム、サーバ及び端末
GB2513105A (en) * 2013-03-15 2014-10-22 Deepmind Technologies Ltd Signal processing systems
US20130326375A1 (en) * 2013-08-07 2013-12-05 Liveperson, Inc. Method and System for Engaging Real-Time-Human Interaction into Media Presented Online
US10262268B2 (en) * 2013-10-04 2019-04-16 Mattersight Corporation Predictive analytic systems and methods
JP6450138B2 (ja) * 2014-10-07 2019-01-09 株式会社Nttドコモ 情報処理装置及び発話内容出力方法
JP6604542B2 (ja) * 2015-04-02 2019-11-13 パナソニックIpマネジメント株式会社 対話方法、対話プログラム及び対話システム
US9953648B2 (en) * 2015-05-11 2018-04-24 Samsung Electronics Co., Ltd. Electronic device and method for controlling the same
CN106205611B (zh) * 2016-06-29 2020-03-27 北京儒博科技有限公司 一种基于多模态历史响应结果的人机交互方法及系统
US20180060786A1 (en) * 2016-08-30 2018-03-01 Wipro Limited System and Method for Allocating Tickets
CN108153800B (zh) * 2016-12-06 2023-05-23 松下知识产权经营株式会社 信息处理方法、信息处理装置以及记录介质
EP4125029A1 (en) * 2017-03-23 2023-02-01 Samsung Electronics Co., Ltd. Electronic apparatus, controlling method of thereof and non-transitory computer readable recording medium
CN109417504A (zh) * 2017-04-07 2019-03-01 微软技术许可有限责任公司 自动聊天中的语音转发
US10878198B2 (en) * 2018-01-04 2020-12-29 Facebook, Inc. Intent arbitration for a virtual assistant

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003255990A (ja) * 2002-03-06 2003-09-10 Sony Corp 対話処理装置及び方法並びにロボット装置
JP2017527926A (ja) * 2014-07-03 2017-09-21 マイクロソフト テクノロジー ライセンシング,エルエルシー 社交的会話入力に対するコンピュータレスポンスの生成
JP2017102247A (ja) * 2015-12-01 2017-06-08 国立研究開発法人産業技術総合研究所 音声対話システム、音声対話制御法およびプログラム
JP2018041124A (ja) * 2016-09-05 2018-03-15 株式会社Nextremer 対話制御装置、対話エンジン、管理端末、対話装置、対話制御方法、対話方法、およびプログラム
JP2018132704A (ja) * 2017-02-16 2018-08-23 トヨタ自動車株式会社 対話装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022120500A (ja) * 2021-02-05 2022-08-18 Necパーソナルコンピュータ株式会社 学習支援システム、学習支援方法、及びプログラム

Also Published As

Publication number Publication date
US11222638B2 (en) 2022-01-11
CN111192577B (zh) 2023-10-13
US20200135197A1 (en) 2020-04-30
CN111192577A (zh) 2020-05-22
JP7063230B2 (ja) 2022-05-09

Similar Documents

Publication Publication Date Title
US11475881B2 (en) Deep multi-channel acoustic modeling
US11823678B2 (en) Proactive command framework
US11545174B2 (en) Emotion detection using speaker baseline
US20240153489A1 (en) Data driven dialog management
US11081104B1 (en) Contextual natural language processing
US11393473B1 (en) Device arbitration using audio characteristics
KR20210070213A (ko) 음성 사용자 인터페이스
KR20120054845A (ko) 로봇의 음성인식방법
US11574637B1 (en) Spoken language understanding models
US11276403B2 (en) Natural language speech processing application selection
KR20080023030A (ko) 온라인 방식에 의한 화자 인식 방법 및 이를 위한 장치
WO2020211820A1 (zh) 语音情感识别方法和装置
CN111192577B (zh) 交流装置及交流装置的控制程序
US10600419B1 (en) System command processing
US11468892B2 (en) Electronic apparatus and method for controlling electronic apparatus
US20230377574A1 (en) Word selection for natural language interface
KR20190143583A (ko) 대화 이해 ai 시스템에 의하여, 머신러닝을 대화 관리 기술에 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법 및 컴퓨터 판독가능 기록 매체
US20230306964A1 (en) Device-specific skill processing
KR20200017160A (ko) 음성을 인식하는 장치, 방법 및 컴퓨터 판독 가능 매체
Lin et al. Nonverbal acoustic communication in human-computer interaction
US20240194197A1 (en) Systems, devices and methods for affective computing
Wang Speech recognition enhancement based on wireless network sensors application in interactive intelligent teaching system
Dodić APPROACH OF DIFFERENT MODELS OF MACHINE LEARNING IN AUTOMATIC SPEECH RECOGNITION OF BALKAN LANGUAGES
JP5988501B2 (ja) 対話行為出力装置、方法、及びプログラム、並びに対話システム及び方法
KR20240073991A (ko) 음성 합성 서비스 제공 방법 및 그 시스템

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220322

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220404

R151 Written notification of patent or utility model registration

Ref document number: 7063230

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151