JP2022146699A - Program, device, and method for agent performing dialog using a plurality of characters - Google Patents

Program, device, and method for agent performing dialog using a plurality of characters Download PDF

Info

Publication number
JP2022146699A
JP2022146699A JP2021047801A JP2021047801A JP2022146699A JP 2022146699 A JP2022146699 A JP 2022146699A JP 2021047801 A JP2021047801 A JP 2021047801A JP 2021047801 A JP2021047801 A JP 2021047801A JP 2022146699 A JP2022146699 A JP 2022146699A
Authority
JP
Japan
Prior art keywords
user
character
words
individual
sub
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.)
Pending
Application number
JP2021047801A
Other languages
Japanese (ja)
Inventor
俊一 田原
Shunichi Tawara
元 服部
Hajime Hattori
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2021047801A priority Critical patent/JP2022146699A/en
Publication of JP2022146699A publication Critical patent/JP2022146699A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

To provide a program, device, and method for an agent that performs a dialog properly, by using a plurality of characters in accordance with an utterance content of a user.SOLUTION: A program is configured to make a computer function as: dialog control means that inputs an utterance sentence of a user, and outputs a response sentence of a character; character personality word registration means that registers a personality word for each emotional polarity as to each character; main character setting means that selects a main character performing the dialog with the user, and sets the main character to the dialog control means; utterance emotion estimation means that extracts the emotional polarity and personality word from the utterance sentence of the user; sympathy determination means that determines whether the emotional polarity and personality word of the user are included in the emotional polarity and personality word of the main character; sub character selection means that, when it is determined that the emotional polarity and personality word of the user are not included, selects a sub character in which the emotional polarity and personality word of the user are included, and sets the sub character to the dialog control means.SELECTED DRAWING: Figure 2

Description

本発明は、ユーザと対話するエージェント対話システムの技術に関する。 The present invention relates to technology of an agent interaction system that interacts with a user.

スマートフォンやタブレット、AI(Artificial Intelligence)スピーカのような端末を用いて、ユーザと自然に対話するエージェントが広く普及している。エージェントとは、コンピュータグラフィックスや人工音声のようなキャラクタが、ユーザとの間でテキストや音声によって対話する機能をいう。対話の際、スマートフォンのディスプレイには、エージェントの姿が表示されるものもある(チャットボット型)。エージェントは、ユーザから見た対話相手として、その時点における状況や、趣味趣向、感情に応じた対話を進行させる。
エージェントは、ユーザプロファイルと同様に、キャラクタに個性(年齢、性別等)を持つ。ユーザは、自ら共感できるような個性を持つキャラクタと対話することによって、強い親近感を持つことができる。
Agents that interact naturally with users using terminals such as smartphones, tablets, and AI (Artificial Intelligence) speakers are widely used. An agent is a function in which a character such as computer graphics or artificial voice interacts with a user through text or voice. During the conversation, some smartphone displays show the agent's appearance (chatbot type). The agent progresses the dialogue according to the current situation, tastes and preferences, and feelings as a dialogue partner from the user's point of view.
Agents have personalities (age, gender, etc.) in their characters as well as user profiles. A user can have a strong sense of familiarity by interacting with a character who has a personality with which he or she can sympathize.

従来、ユーザとの間で、SNS(Social Networking Service)の投稿システムによってテキストで対話する技術もある(例えば非特許文献1参照)。この技術によれば、感情極性(ポジティブ、ネガティブ、ニュートラル)毎に異なる投稿システムが用意されており、ユーザの発話内容の感情極性と同じ感情極性を持つ投稿システムが応答する。例えば、「今日は雪が降って嫌だなあ」とユーザが発話した場合、その発話内容について感情極性「ネガティブ」と判定する。この場合、ネガティブの感情極性を持つ投稿システムが例えば「確かに雪が降ってだるいな」と応答する。このように、ユーザと同じ感情に基づく応答文を出力することによって、ユーザに共感すると共に、対話満足度を向上させることができる。 Conventionally, there is also a technology of text-based dialogue with a user through a posting system of SNS (Social Networking Service) (see, for example, Non-Patent Document 1). According to this technology, different posting systems are prepared for each emotional polarity (positive, negative, neutral), and a posting system having the same emotional polarity as the user's utterance content responds. For example, when the user utters, "I don't like it snowing today," the content of the utterance is determined to have an emotional polarity of "negative." In this case, a posting system with a negative emotional polarity responds, for example, "It sure is snowing and I'm tired." In this way, by outputting a response sentence based on the same feeling as the user, it is possible to empathize with the user and improve the degree of interaction satisfaction.

田原俊一ら、「ウェブニュース関連ツイートの極性に着目した共感対話システムの提案と評価」、第80回全国大会講演論文集 2018.1 (2018): 29-30、[online]、[令和3年3月14日検索]、インターネット<URL:https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=187867&item_no=1&attribute_id=1&file_no=1>Shunichi Tahara et al., "Proposal and evaluation of an empathy dialogue system focusing on the polarity of web news-related tweets," Proceedings of the 80th National Conference 2018.1 (2018): 29-30, [online], [3rd year of Reiwa Searched on the 14th of the month], Internet <URL: https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=187867&item_no=1&attribute_id=1&file_no=1> AIと機械学習プロダクト、「感情分析」、[online]、[令和3年3月14日検索]、インターネット<URL:https://cloud.google.com/natural-language/docs/analyzing-sentiment?hl=ja>AI and Machine Learning Products, “Sentiment Analysis”, [online], [searched on March 14, 2021], Internet <URL: https://cloud.google.com/natural-language/docs/analyzing-sentiment ?hl=en> 石田真也ら、「傾聴対話システムのための発話を促す聞き手応答の生成」、SIG-SLUD, 5(01), 1-6.(2016)、[online]、[令和3年3月14日検索]、インターネット<URL:https://jsai.ixsq.nii.ac.jp/ej/index.php?action=pages_view_main&active_action=repository_action_common_download&item_id=1147&item_no=1&attribute_id=1&file_no=1&page_id=13&block_id=23>Shinya Ishida et al., "Generation of Listener Responses to Encourage Utterance for Active Listening Dialogue Systems," SIG-SLUD, 5(01), 1-6.(2016), [online], [March 14, 2021 Search], Internet <URL: https://jsai.ixsq.nii.ac.jp/ej/index.php?action=pages_view_main&active_action=repository_action_common_download&item_id=1147&item_no=1&attribute_id=1&file_no=1&page_id=13&block_id=23>

しかしながら、ユーザが、特定の個性を持つキャラクタと対話している際に、そのキャラクタの個性と合わないことも生じる。ユーザは、自らに共感しない応答をキャラクタから受けた場合、その対話に違和感を持つと考えられる。
例えば、ユーザと、「ゲーム好き」キャラクタとの間で、以下のような対話がなされたとする。
(キャラクタ):ゲームって好きだったりする?
(ユーザ) :ゲームは目に悪いからあまり好きではないかな。
(キャラクタ):・・・・・
キャラクタは、ゲーム好きという個性に基づく対話シナリオで構成されているために、ユーザの発話に共感できる応答文を出力することが困難となる。ゲーム好きの個性を持つキャラクタは、ゲーム好きでないユーザに対して共感できる応答文を出力することができない。
However, when the user is interacting with a character having a specific personality, it may happen that the character's personality does not match. If the user receives a response from the character that does not sympathize with the user, it is considered that the user feels uncomfortable with the dialogue.
For example, assume that the user and the "game-loving" character have the following dialogue.
(Character): Do you like games?
(User) : I guess I don't really like games because they're bad for my eyes.
(charactor):·····
Since the character is composed of a dialogue scenario based on the individuality of liking games, it is difficult to output a response sentence that can sympathize with the user's utterance. A character with a game-loving personality cannot output a response sentence that can empathize with a user who does not like games.

勿論、キャラクタは、ゲーム好きであるにも拘わらず、以下のように応答することもできる。
(キャラクタ):確かにゲームって目に悪いので僕も好きじゃないな。
しかしながら、予め設定されているキャラクタの個性と一貫性がない対話となってしまう。結局、そのキャラクタの対話シナリオでは、対話が破綻し、ユーザはキャラクタに対して違和感が生じることとなる。
Of course, the character can also respond as follows, even though he likes the game.
(Character): It's true that games are bad for your eyes, so I don't like them either.
However, the dialogue is inconsistent with the character's preset personality. Ultimately, in the dialogue scenario of the character, the dialogue breaks down, and the user feels uncomfortable with the character.

これに対し、本願の発明者らは、ユーザに対して複数のキャラクタによって応答することができないか、と考えた。即ち、ユーザの発話内容に応じて適切なキャラクタが応答することができれば、ユーザから見て対話が破綻しないのではないか、と考えた。 In response to this, the inventors of the present application considered whether it would be possible to respond to the user with a plurality of characters. In other words, it was thought that if an appropriate character could respond according to the user's utterance content, the dialogue would not collapse from the user's point of view.

そこで、本発明は、ユーザの発話内容に応じて適切な複数のキャラクタを用いて対話するエージェントのプログラム、装置及び方法を提供することを目的とする。 SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a program, apparatus and method for an agent that interacts with a plurality of appropriate characters according to the contents of a user's utterance.

本発明によれば、ユーザの発話文を入力し、キャラクタの応答文を出力する対話制御手段を有するエージェントとしてコンピュータを機能させるプログラムであって、
各キャラクタについて、感情極性毎に個性語を登録するキャラクタ個性語登録手段と、
ユーザと対話する主キャラクタを選択し、主キャラクタを対話制御手段に設定する主キャラクタ選択手段と、
ユーザの発話文から、感情極性及び個性語を抽出する発話感情推定手段と、
ユーザの感情極性及び個性語が、主キャラクタの感情極性及び個性語に含まれているか否かを判定する共感判定手段と、
共感判定手段によって偽と判定された場合、ユーザの感情極性及び個性語が含まれている副キャラクタを選択し、副キャラクタを対話制御手段に設定する副キャラクタ選択手段と
してコンピュータを機能させることを特徴とする。
According to the present invention, a program for causing a computer to function as an agent having interaction control means for inputting a user's utterance sentence and outputting a character's response sentence,
Character individual word registration means for registering individual words for each character for each emotional polarity;
main character selection means for selecting a main character to interact with the user and setting the main character as interaction control means;
an utterance emotion estimating means for extracting emotion polarity and individual words from a user's utterance;
empathy determination means for determining whether or not the user's emotional polarity and individuality words are included in the main character's emotional polarity and individuality words;
When the sympathy determination means determines false, the computer functions as a secondary character selection means for selecting a secondary character containing the user's emotional polarity and individual words and setting the secondary character as the dialogue control means. and

本発明のプログラムにおける他の実施形態によれば、
感情極性は、ポジティブ及びネガティブに分類され、
個性語はそれぞれ、ポジティブ又はネガティブのいずれかに対応付けられる
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
Emotional polarity is classified into positive and negative,
It is also preferred to have the computer function so that each individual word is associated with either a positive or a negative.

本発明のプログラムにおける他の実施形態によれば、
発話感情推定手段は、主キャラクタと対話するユーザの発話文から、ネガティブ及び個性語を抽出し、
共感判定手段は、ユーザのネガティブ及び個性語が、主キャラクタのネガティブ及び個性語に含まれているか否かを判定し、
副キャラクタ選択手段は、ユーザのネガティブ及び個性語が含まれている副キャラクタを選択する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
The speech emotion estimation means extracts negative and individual words from the speech sentences of the user who interacts with the main character,
The sympathy determination means determines whether or not the negative and individual words of the user are included in the negative and individual words of the main character,
It is also preferred that the secondary character selection means causes the computer to select secondary characters that include the user's negative and personal words.

本発明のプログラムにおける他の実施形態によれば、
発話感情推定手段は、主キャラクタと対話するユーザの発話文から、ポジティブ及び個性語を抽出し、
共感判定手段は、ユーザのポジティブ及び個性語が、主キャラクタのポジティブ及び個性語に含まれているか否かを判定し、
副キャラクタ選択手段は、ユーザのポジティブ及び個性語が含まれている副キャラクタを選択する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
The speech emotion estimation means extracts positive and individual words from the speech sentences of the user who interacts with the main character,
The sympathy determination means determines whether or not the positive and individual words of the user are included in the positive and individual words of the main character,
It is also preferred that the secondary character selection means cause the computer to select secondary characters in which the user's positive and personal words are included.

本発明のプログラムにおける他の実施形態によれば、
各ユーザについて、ユーザの発話文から発話感情推定手段によって抽出された感情極性及び個性語を登録するユーザ個性語登録手段と
して機能させ、
副キャラクタ選択手段は、共感判定手段によって偽と判定された場合、ユーザ個性語登録手段に登録されたユーザの感情極性及び個性語と同一類似の感情極性及び個性語を含む副キャラクタを選択する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
For each user, it functions as a user's individual word registration means for registering the emotional polarity and individual words extracted from the user's uttered sentence by the uttered emotion estimation means,
The sub-character selection means selects a sub-character including an emotion polarity and a personality word identical or similar to the user's emotion polarity and personality word registered in the user's personality word registration means when the sympathy determination means determines false. It is also preferable to have the computer function

本発明のプログラムにおける他の実施形態によれば、
各ユーザについて、ユーザの発話文から発話感情推定手段によって抽出された感情極性及び個性語を登録するユーザ個性語登録手段と
して機能させ、
主キャラクタ選択手段は、ユーザ個性語登録手段に登録されたユーザの感情極性及び個性語と同一類似の感情極性及び個性語を含む主キャラクタを選択する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
For each user, it functions as a user's individual word registration means for registering the emotional polarity and individual words extracted from the user's uttered sentence by the uttered emotion estimation means,
It is also preferable that the main character selection means causes the computer to select a main character including the same or similar emotional polarity and personality word as the user's emotional polarity and personality word registered in the user's personality word registration means.

本発明のプログラムにおける他の実施形態によれば、
SNS(Social Networking Service)サーバから、ユーザのユーザアカウントから過去に投稿された投稿文群を収集する投稿文収集手段と、
ユーザの投稿文群から、特徴的な感情極性及び個性語を抽出し、ユーザ個性語登録手段へ登録する投稿感情推定手段と
してコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
Posted message collection means for collecting a group of posted messages posted in the past from a user account of a user from an SNS (Social Networking Service) server;
It is also preferable to make the computer function as posted emotion estimation means for extracting characteristic emotional polarities and individual words from a group of user's posted sentences and registering them in the user's individual word registration means.

本発明のプログラムにおける他の実施形態によれば、
対話制御手段は、主キャラクタ及び副キャラクタを同時に機能させ、ユーザと主キャラクタ及び副キャラクタとの間で対話を成立させる
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
It is also preferred that the dialogue control means cause the main character and the sub-character to function simultaneously, and to function the computer to establish dialogue between the user and the main character and the sub-character.

本発明のプログラムにおける他の実施形態によれば、
対話制御手段は、主キャラクタから副キャラクタを参加させる際に、副キャラクタを紹介する発話文をユーザへ出力する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
It is also preferable that the dialogue control means causes the computer to output to the user a spoken sentence introducing the sub-character when the sub-character participates from the main character.

本発明によれば、ユーザの発話文を入力し、キャラクタの応答文を出力する対話制御手段を有する対話装置であって、
各キャラクタについて、感情極性毎に個性語を登録するキャラクタ個性語登録手段と、
ユーザと対話する主キャラクタを選択し、主キャラクタを対話制御手段に設定する主キャラクタ選択手段と、
ユーザの発話文から、感情極性及び個性語を抽出する発話感情推定手段と、
ユーザの感情極性及び個性語が、主キャラクタの感情極性及び個性語に含まれているか否かを判定する共感判定手段と、
共感判定手段によって偽と判定された場合、ユーザの感情極性及び個性語が含まれている副キャラクタを選択し、副キャラクタを対話制御手段に設定する副キャラクタ選択手段と
を有することを特徴とする。
According to the present invention, a dialogue apparatus having dialogue control means for inputting a user's utterance sentence and outputting a character's response sentence,
Character individual word registration means for registering individual words for each character for each emotional polarity;
main character selection means for selecting a main character to interact with the user and setting the main character as interaction control means;
an utterance emotion estimating means for extracting emotion polarity and individual words from a user's utterance;
empathy determination means for determining whether or not the user's emotional polarity and individuality words are included in the main character's emotional polarity and individuality words;
a sub-character selection means for selecting a sub-character containing the user's emotional polarity and individual words and setting the sub-character to the dialog control means when the sympathy determination means determines false. .

本発明によれば、ユーザの発話文を入力し、キャラクタの応答文を出力する対話制御手段を有する装置の対話方法であって、
装置は、
各キャラクタについて、感情極性毎に個性語を登録するキャラクタ個性語登録部を有し、
ユーザと対話する主キャラクタを選択し、主キャラクタを対話制御手段に設定する第1のステップと、
ユーザの発話文から、感情極性及び個性語を抽出する第2のステップと、
ユーザの感情極性及び個性語が、主キャラクタの感情極性及び個性語に含まれているか否かを判定する第3のステップと、
第3のステップによって偽と判定された場合、ユーザの感情極性及び個性語が含まれている副キャラクタを選択し、副キャラクタを対話制御手段に設定する第4のステップと
を実行することを特徴とする。
According to the present invention, a dialogue method for a device having dialogue control means for inputting a user's utterance sentence and outputting a character's response sentence, comprising:
The device
having a character individual word registration unit for registering a character individual word for each emotional polarity for each character,
a first step of selecting a main character that interacts with the user and setting the main character as interaction control means;
a second step of extracting emotional polarity and individual words from the user's utterance;
a third step of determining whether or not the user's emotional polarities and individuality words are included in the main character's emotional polarities and individuality words;
and executing a fourth step of selecting a sub-character containing the user's emotional polarity and individual words and setting the sub-character to the dialog control means if the third step is determined to be false. and

本発明のエージェントのプログラム、装置及び方法によれば、ユーザの発話内容に応じて適切な複数のキャラクタを用いて対話することができる。 According to the agent program, device, and method of the present invention, it is possible to interact using a plurality of appropriate characters according to the content of the user's utterance.

ユーザとキャラクタとの間の対話を表す第1の説明図である。FIG. 4 is a first explanatory diagram showing interaction between a user and a character; 本発明における対話装置の機能構成図である。1 is a functional configuration diagram of an interactive device according to the present invention; FIG. ユーザ個性語登録部及びキャラクタ個性語登録部における登録内容を表す説明図である。FIG. 4 is an explanatory diagram showing registered contents in a user individual word registration unit and a character individual word registration unit; 発話感情推定部、共感判定部及び副キャラクタの処理を表す説明図である。FIG. 10 is an explanatory diagram showing processing of an utterance emotion estimation unit, an empathy determination unit, and a sub-character; 対話制御部の対話シナリオを表す説明図である。FIG. 4 is an explanatory diagram showing a dialog scenario of a dialog control unit; ユーザとキャラクタとの間の対話を表す第2の説明図である。FIG. 11 is a second explanatory diagram showing interaction between a user and a character;

以下、本発明の実施の形態について、図面を用いて詳細に説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、ユーザとキャラクタとの間の対話を表す第1の説明図である。 FIG. 1 is a first explanatory diagram showing interaction between a user and a character.

図1によれば、対話装置1は、ユーザ操作に基づく端末2と通信し、ユーザにするエージェントとして機能する。
端末2には、ユーザとの対話インタフェースとなるユーザプログラムが実装されている。端末2は、例えばスマートフォンやタブレットであって、エージェントのキャラクタを表示するディスプレイを有する。端末2には、対話装置1から受信したキャラクタが表示され、そのキャラクタの応答文がユーザへ明示される。これに対し、ユーザの発話文の文字入力を受け付ける。
また、端末2は、例えば、AIスピーカ(例えばAlexa(登録商標))であって、ユーザに対するマイク及びスピーカを有するものであってもよい。端末2は、キャラクタの応答文を音声としてユーザへ発話することができる。また、音声認識によって、ユーザは自声の発話によって発話文を入力することができる。
According to FIG. 1, an interactive device 1 communicates with a terminal 2 based on user operations and functions as an agent to the user.
A user program is installed in the terminal 2 as an interactive interface with the user. The terminal 2 is, for example, a smart phone or a tablet, and has a display for displaying an agent character. The character received from the interactive device 1 is displayed on the terminal 2, and the response sentence of the character is clearly shown to the user. On the other hand, the character input of the user's utterance sentence is received.
The terminal 2 may also be, for example, an AI speaker (such as Alexa (registered trademark)) and have a microphone and speaker for the user. The terminal 2 can utter the response sentence of the character to the user as voice. In addition, speech recognition allows the user to input an utterance sentence by speaking his/her own voice.

最初に、ユーザと対話するキャラクタは、自らの個性に合った話題をユーザに提示する。それに対するユーザの発話文に応じて、対話シナリオに応じて進行させることができる。
但し、各キャラクタの対話シナリオは、それぞれの個性に応じたものであって、ユーザの発話文に対して常に共感できる応答文を記述することはできない。
First, a character that interacts with the user presents the user with topics that match their personality. Depending on the user's utterance sentence to it, it can progress according to a dialogue scenario.
However, the dialogue scenario of each character corresponds to the individuality of each character, and it is not possible to write a response sentence that can always sympathize with the user's utterance sentence.

図1(a)によれば、端末2を操作するユーザ@aと、「メイクとバド好きOL」のキャラクタBとは、以下のように対話を進行させている。
キャラクタB:「バドミントンってする?」
ユーザ@a :「うん、バドミントンよくするよ」
キャラクタB:「そうなんだ、私も大好き!」
ユーザ@a :「私は掃除も好きよ」
キャラクタB:「・・・・・・」
ここで、キャラクタBが、「掃除」に対してネガティブな個性を持つ場合に、対話シナリオの中で「掃除」についてポジティブな応答文が記述されていない。
According to FIG. 1(a), the user @a who operates the terminal 2 and the character B who is an "OL who likes make-up and buds" are interacting as follows.
Character B: "Do you play badminton?"
User@a: "Yeah, I play badminton a lot."
Character B: "Yes, I love you too!"
User@a: "I also like cleaning."
Character B: "..."
Here, if character B has a negative personality for "cleaning", no positive response sentence for "cleaning" is described in the dialogue scenario.

図1(b)によれば、端末2を操作するユーザ@bと、「掃除好きサラリーマン」のキャラクタCとは、以下のように対話を進行させている。
キャラクタC:「掃除って好き?」
ユーザ@b :「掃除ってめんどくさいな」
キャラクタC:「・・・・・・」
ここで、キャラクタCが、「掃除」に対してポジティブな個性を持つ場合に、対話シナリオの中で「掃除」についてネガティブな応答文が記述されていない。
According to FIG. 1(b), the user @b who operates the terminal 2 and the character C, who is a "salaryman who likes to clean", have a conversation as follows.
Character C: "Do you like cleaning?"
User@b: "Cleaning is troublesome."
Character C: "..."
Here, when the character C has a positive personality for "cleaning", no negative response sentence for "cleaning" is described in the dialogue scenario.

図2は、本発明における対話装置の機能構成図である。 FIG. 2 is a functional configuration diagram of the interactive device in the present invention.

図2によれば、エージェントを実行する対話装置1は、ユーザプログラムを実行する端末2と、ネットワークを介して接続されている。
対話装置1は、端末2からユーザの発話文を入力し、キャラクタに応じた応答文を出力する。対話装置1は、ユーザとの間で、キャラクタによってできる限り自然な対話を進行させる。
According to FIG. 2, a dialogue device 1 executing an agent is connected via a network to a terminal 2 executing a user program.
The dialogue device 1 inputs a user's utterance sentence from the terminal 2 and outputs a response sentence corresponding to the character. The dialogue device 1 allows characters to interact with a user as naturally as possible.

図2によれば、対話装置1は、対話制御部10と、ユーザ個性語登録部101と、キャラクタ個性語登録部102と、主キャラクタ選択部11と、発話感情推定部12と、共感判定部13と、副キャラクタ選択部14と、投稿文収集部15と、投稿感情推定部16と、対話インタフェース17を有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、装置の対話方法としても理解できる。 According to FIG. 2, the dialogue device 1 includes a dialogue control unit 10, a user individual word registration unit 101, a character individual word registration unit 102, a main character selection unit 11, an utterance emotion estimation unit 12, and an empathy determination unit. 13 , a secondary character selection unit 14 , a posted message collection unit 15 , a posted emotion estimation unit 16 , and a dialogue interface 17 . These functional components are implemented by executing a program that causes a computer installed in the device to function. In addition, the processing flow of these functional components can also be understood as an interaction method of the device.

図3は、ユーザ個性語登録部及びキャラクタ個性語登録部における登録内容を表す説明図である。 FIG. 3 is an explanatory diagram showing registered contents in the user individual word registration unit and the character individual word registration unit.

[ユーザ個性語登録部101]
ユーザ個性語登録部101は、ユーザについて、感情極性毎に個性語を登録する。
感情極性としては、例えばポジティブ及びネガティブに分類され、個性語それぞれは、ポジティブ又はネガティブのいずれかに対応付けられる。
図3によれば、ユーザ個性語登録部101には、ユーザ@aの個性に応じて、以下のように個性語が登録されている。
ユーザ@a
ポジティブ:バドミントン、モンブラン、掃除
ネガティブ:通勤、勉強、散歩
[User Personality Word Registration Unit 101]
The user's personality word registration unit 101 registers a personality word for each emotional polarity of the user.
Emotional polarities are classified into, for example, positive and negative, and each individual word is associated with either positive or negative.
According to FIG. 3, in the user personality word registration unit 101, the following personality words are registered according to the personality of the user @a.
User@a
Positive: badminton, mont blanc, cleaning
Negative: commuting, studying, walking

[キャラクタ個性語登録部102]
キャラクタ個性語登録部102は、各キャラクタについて、感情極性毎に個性語を登録する。
図3によれば、キャラクタ個性語登録部102には、キャラクタの個性に応じて、以下のように個性語が登録されている。
キャラクタA(ゲーム好き20代)
ポジティブ:ゲーム、動画、散歩
ネガティブ:仕事、バドミントン、掃除
キャラクタB(メイクとバド好きOL)
ポジティブ:スイーツ、バドミントン、メイク
ネガティブ:通勤、勉強、掃除
キャラクタC(掃除好きサラリーマン)
ポジティブ:仕事、パソコン、掃除
ネガティブ:動画、ゲーム、散歩
[Character individual word registration unit 102]
The character individual word registration unit 102 registers individual words for each emotional polarity for each character.
According to FIG. 3, in the character individual word registration unit 102, the following individual words are registered according to the character's individuality.
Character A (20s who likes games)
Positive: games, videos, walks
Negative: work, badminton, cleaning Character B (OL who likes make-up and bud)
Positive: sweets, badminton, makeup
Negative: commuting, studying, cleaning Character C (salaryman who likes cleaning)
Positive: work, computer, cleaning
Negative: videos, games, walks

[主キャラクタ選択部11]
主キャラクタ選択部11は、複数のキャラクタの中から、ユーザと対話する「主キャラクタ」を選択し、その主キャラクタを対話制御部10に設定する。
少なくとも、ユーザが対話のアプリケーションを起動した際には、最初に主キャラクタが選択される。
[Main character selection unit 11]
The main character selection unit 11 selects a “main character” that interacts with the user from among a plurality of characters, and sets the main character in the interaction control unit 10 .
At least when a user launches an interactive application, the main character is initially selected.

主キャラクタ選択部11は、ユーザ個性語登録部101に登録されたユーザの感情極性及び個性語と同一類似の感情極性及び個性語を含む「主キャラクタ」を選択する。
例えば、感情極性「ポジティブ」のみについて、ユーザの個性語と同一類似の個性語を含むキャラクタを選択するものであってもよい。勿論、感情極性「ポジティブ」「ネガティブ」の両方について、ユーザの個性語と同一類似の個性語を最も多く含むキャラクタを選択するものであってもよい。
The main character selection unit 11 selects a “main character” that includes emotional polarities and individual words that are identical to and similar to the user's emotional polarities and individual words registered in the user's individual word registration unit 101 .
For example, for only the emotional polarity "positive", a character including a personality word identical or similar to the user's personality word may be selected. Of course, for both of the emotional polarities "positive" and "negative," the character that contains the greatest number of individual words identical or similar to the user's individual word may be selected.

図3によれば、ユーザ個性語登録部101とキャラクタ個性語登録部102との個性語群同士の一致率が表されている。その中で、平均一致率が最も高いキャラクタが主キャラクタとして選択される。
ユーザ@aとキャラクタAとの比較
ポジティブ一致率:0.0%
ネガティブ一致率:33.3% (「散歩」で一致)
平均一致率 :16.7%
ユーザ@aとキャラクタBとの比較
ポジティブ一致率:33.3% (「バドミントン」で一致)
ネガティブ一致率:66.6% (「通勤」「勉強」で一致)
平均一致率 :50.0%
ユーザ@aとキャラクタCの比較
ポジティブ一致率:33.3% (「バドミントン」で一致)
ネガティブ一致率:33.3% (「散歩」で一致)
平均一致率 :33.3%
この場合、ユーザ@aに対して、平均一致率が最も高いキャラクタBが選択される。
According to FIG. 3, the rate of matching between individual word groups in the user individual word registration unit 101 and the character individual word registration unit 102 is shown. Among them, the character with the highest average match rate is selected as the main character.
Comparison between user @a and character A
Positive match rate: 0.0%
Negative match rate: 33.3% (matched with "walking")
Average match rate: 16.7%
Comparison between user@a and character B
Positive match rate: 33.3% (matched on "Badminton")
Negative match rate: 66.6% (matched for "commuting" and "study")
Average match rate: 50.0%
Comparison of user@a and character C
Positive match rate: 33.3% (matched on "Badminton")
Negative match rate: 33.3% (matched with "walking")
Average match rate: 33.3%
In this case, character B with the highest average match rate is selected for user @a.

また、他の実施形態として、個性語同士の一致率ではなく、個性語群同士の類似度によって比較することもできる。例えば各個性語をWord2vec(登録商標)によってベクトル化し、そのベクトルが所定範囲内で類似するか否かによって判定する。「Word2vec」とは、単語の意味や文法を捉えるために単語をベクトル表現化して次元を圧縮する技術をいう。勿論、Word2vecに限ることなく、各単語の品詞又は意味を解析した特徴ベクトルに変換することができればよい。 As another embodiment, the similarity between individual word groups can be used for comparison instead of the match rate between individual words. For example, individual words are vectorized by Word2vec (registered trademark), and determination is made based on whether the vectors are similar within a predetermined range. "Word2vec" is a technology that converts words into vectors and compresses the dimensions in order to capture the meaning and grammar of words. Of course, it is not limited to Word2vec as long as it can be converted into a feature vector obtained by analyzing the part of speech or meaning of each word.

図3によれば、例えば、ユーザ@aのポジティブの個性語「モンブラン」と、キャラクタBのポジティブの個性語「スイーツ」とは、所定範囲内のベクトル同士として類似し、一致するものとして判定することもできる。 According to FIG. 3, for example, the positive individual word "Mont Blanc" of the user @a and the positive individual word "sweets" of the character B are similar as vectors within a predetermined range and are determined to match. can also

[発話感情推定部12]
発話感情推定部12は、対話制御部10から入力されたユーザの発話文から、感情極性及び個性語を抽出する。そして、発話感情推定部12は、感情極性及び個性語を、共感判定部13へ出力する。
[Utterance emotion estimation unit 12]
The uttered emotion estimation unit 12 extracts the emotion polarity and individual words from the user's utterance text input from the dialogue control unit 10 . Then, the speech emotion estimation unit 12 outputs the emotion polarity and the individual words to the empathy determination unit 13 .

発話感情推定部12は、学習エンジンを用いて感情極性及個性語を推定する。「感情極性」は、例えば「ポジティブ」「ネガティブ」「ニュートラル」に分類されるものであってもよいし、4つ以上に分類されるものであってもよい。
感情極性は、具体的には、Support Vector Machine等の判定器や、Google(登録商標)が提供しているCloud Natural Language APIを用いることができる(例えば非特許文献2参照)。
個性語は、具体的には、CRF(Conditional Random Fields)を用いることができる(例えば非特許文献1参照)。この技術によれば、品詞や品詞の出現順序といった複数の特徴量を学習したモデルを用いて、ユーザの発話文から重要語となる個性語を抽出することができる。
The speech emotion estimation unit 12 estimates emotion polarity and individual words using a learning engine. The "emotional polarity" may be classified into, for example, "positive", "negative", and "neutral", or may be classified into four or more.
Specifically, the emotional polarity can be determined using a determiner such as Support Vector Machine or Cloud Natural Language API provided by Google (registered trademark) (see, for example, Non-Patent Document 2).
Specifically, CRFs (Conditional Random Fields) can be used for individual words (see, for example, Non-Patent Document 1). According to this technique, it is possible to extract individual words that are important words from a user's utterance using a model that has learned a plurality of feature quantities such as parts of speech and the order in which the parts of speech appear.

図4は、発話感情推定部、共感判定部及び副キャラクタの処理を表す説明図である。 FIG. 4 is an explanatory diagram showing the processing of the speech emotion estimating section, the sympathy determining section, and the sub-character.

前述した図1(a)のように、ユーザ@aの発話文「私は掃除も好きよ」に対して、感情極性「ポジティブ」及び個性語「掃除」が推定される。
また、図1(b)のように、ユーザ@bの発話文「掃除ってめんどくさいな」に対して、感情極性「ネガティブ」及び個性語「掃除」が推定される。
As shown in FIG. 1(a) described above, the emotional polarity "positive" and the individual word "cleaning" are estimated for the user @a's utterance sentence "I also like cleaning."
Also, as shown in FIG. 1B, the emotion polarity "negative" and the individual word "cleaning" are estimated for the uttered sentence "Cleaning is troublesome" of the user @b.

他の実施形態として、発話感情推定部12は、推定した感情極性及び個性語を、ユーザ個性語登録部101へ登録することも好ましい。ユーザ個性語登録部101には、感情極性及び個性語が累積的に登録されていく。例えば、ユーザ個性語登録部101には、ユーザ@aについて感情極性「ポジティブ」及び個性語「掃除」が登録され、また、ユーザ@bについて感情極性「ネガティブ」及び個性語「掃除」が登録される。
これによって、所定期間経過後、又は、アプリケーション再起動後に、主キャラクタ選択部11によって選択される主キャラクタも更新されることとなる。
As another embodiment, it is also preferable that the speech emotion estimation unit 12 registers the estimated emotional polarity and individual words in the user individual word registration unit 101 . Emotional polarities and individual words are cumulatively registered in the user's individual word registration unit 101 . For example, the user's personality word registration unit 101 registers the emotional polarity "positive" and the personality word "cleaning" for the user @a, and registers the emotional polarity "negative" and the personality word "cleaning" for the user @b. be.
As a result, the main character selected by the main character selection unit 11 is also updated after the predetermined period of time has elapsed or after the application is restarted.

[共感判定部13]
共感判定部13は、発話感情推定部12から出力されたユーザの感情極性及び個性語が、主キャラクタの感情極性及び個性語に含まれているか否かを判定する。「偽」と判定された場合、副キャラクタ選択部14へ、その旨を出力する。
[Empathy determination unit 13]
The sympathy determination unit 13 determines whether or not the user's emotional polarities and individual words output from the uttered emotion estimating unit 12 are included in the main character's emotional polarities and individual words. If it is determined to be “false”, that effect is output to the sub-character selection unit 14 .

共感判定部13は、感情極性「ポジティブ」「ネガティブ」に応じて判定する。具体的には、発話感情推定部12によってユーザのネガティブが推定された場合、主キャラクタのネガティブにその個性語が含まれているか否かを判定する。逆に、発話感情推定部12によってユーザのポジティブが推定された場合、主キャラクタのポジティブにその個性語が含まれているか否かを判定する。 The sympathy determination unit 13 makes a determination according to the emotional polarity “positive” or “negative”. Specifically, when the spoken emotion estimation unit 12 estimates the negative of the user, it is determined whether or not the individual word is included in the negative of the main character. Conversely, when the speech emotion estimation unit 12 estimates that the user is positive, it is determined whether or not the individual word is included in the positive of the main character.

例えば図1(a)、図3及び図4によれば、ユーザ@aの発話文から感情極性「ポジティブ」及び個性語「掃除」が推定された場合、主キャラクタBの「ポジティブ」にその個性語「掃除」が含まれているか否かを判定する。
また、例えば図1(b)によれば、ユーザ@bの発話文から感情極性「ネガティブ」及び個性語「掃除」が推定された場合、主キャラクタCの「ネガティブ」にその個性語「掃除」が含まれているか否かを判定する。
勿論、個性語同士を比較する際に、個性語のベクトル同士が所定範囲内の距離にある場合、類似するものとして含まれていると判定するものであってもよい。
For example, according to FIGS. 1(a), 3, and 4, when the emotional polarity "positive" and the personality word "cleaning" are estimated from the utterance sentence of the user @a, the personality of the main character B is "positive." Determine if the word "cleaning" is included.
Further, for example, according to FIG. 1B, when the emotional polarity "negative" and the individual word "cleaning" are estimated from the utterance sentence of the user @b, the individual word "cleaning" is added to the main character C's "negative". Determine whether it contains
Of course, when comparing individual words, if the vectors of the individual words are within a predetermined distance, it may be determined that they are similar.

[副キャラクタ選択部14]
副キャラクタ選択部14は、共感判定部13によって「偽」と判定された場合、ユーザの感情極性(ポジティブ又はネガティブ)にその個性語が含まれている副キャラクタを選択する。
[Secondary character selection unit 14]
When the sympathy determination unit 13 determines "false", the sub-character selection unit 14 selects a sub-character whose personality word is included in the user's emotional polarity (positive or negative).

例えば前述した図1(a)によれば、ユーザ@aの発話文から推定された感情極性「ポジティブ」及び個性語「掃除」を含む副キャラクタCが選択される。
例えば前述した図1(b)によれば、ユーザ@bの発話文から推定された感情極性「ネガティブ」及び個性語「掃除」を含む副キャラクタAが選択される。
For example, according to FIG. 1(a) described above, the secondary character C including the emotional polarity "positive" and the individual word "cleaning" estimated from the utterance sentence of the user @a is selected.
For example, according to FIG. 1(b) described above, the sub-character A including the emotional polarity "negative" and the individual word "cleaning" estimated from the utterance sentence of the user @b is selected.

他の実施形態として、副キャラクタ選択部14は、ユーザ個性語登録部101に登録されたユーザの感情極性及び個性語と同一類似の感情極性及び個性語を含む副キャラクタを選択するものであってもよい。即ち、単に個性語を含む副キャラクタを選択することなく、その感情極性に含まれる全ての個性語をベクトル化し、ベクトル同士の距離によって比較するものであってもよい。 In another embodiment, the sub-character selection unit 14 selects a sub-character including an emotional polarity and a personality word identical or similar to the user's emotional polarity and personality word registered in the user's personality word registration unit 101. good too. That is, instead of simply selecting a sub-character containing a personality word, all personality words included in the emotion polarity may be vectorized and compared based on the distance between the vectors.

例えば前述した図1(a)によれば、キャラクタ毎に、感情極性「ポジティブ」に含まれる個性語群のベクトル積と、ユーザ@aの個性語「掃除」のベクトルとを比較し、コサイン類似度が最も高くなるキャラクCが選択される。
例えば前述した図1(b)によれば、キャラクタ毎に、感情極性「ネガティブ」に含まれる個性語群のベクトル積と、ユーザ@bの個性語「掃除」のベクトルとを比較し、コサイン類似度が最も高くなるキャラクタAが選択される。
S(a,b)=cosθ=(Va・Vb)/(|Va||Vb|)
S(a,b):コサイン類似度
Va:ユーザの発話文の個性語のベクトル
Vb:キャラクタの個性語のベクトル
コサイン類似度S(a,b)は、0~1の値となり、類似性が高いほど1に近づく。
For example, according to FIG. 1A described above, for each character, the vector product of the individual word group included in the emotional polarity "positive" is compared with the vector of the individual word "cleaning" of the user @a, and the cosine similarity is obtained. Character C with the highest degree is selected.
For example, according to FIG. 1B described above, for each character, the vector product of the individual word group included in the emotional polarity "negative" is compared with the vector of the individual word "cleaning" of the user @b, and the cosine similarity is obtained. Character A with the highest degree is selected.
S(a,b)=cos θ=(Va·Vb)/(|Va||Vb|)
S(a,b): cosine similarity
Va: vector of individual words in the user's utterance
Vb: Character's individual word vector The cosine similarity S(a,b) is a value between 0 and 1, and approaches 1 as the similarity increases.

[対話制御部10]
対話制御部10は、ユーザの発話文を入力し、キャラクタの応答文を出力する。
対話制御部10には、「主キャラクタ」に加えて、「副キャラクタ」も設定できる。即ち、対話制御部10は、「主キャラクタ」及び「副キャラクタ」を同時に機能させ、ユーザと主キャラクタ及び副キャラクタとの間で対話を成立させることができる。主キャラクタは、常に対話中に存在するものであって、副キャラクタは、主キャラクタがユーザに共感させる応答文を出力できない場合に、代わってユーザと対話する。
[Dialogue control unit 10]
The dialog control unit 10 inputs a user's utterance sentence and outputs a character's response sentence.
In addition to the "main character", the "secondary character" can also be set in the dialogue control section 10. FIG. That is, the dialogue control section 10 can cause the "main character" and the "sub-character" to function at the same time, and establish a dialogue between the user and the main character and the sub-character. The main character is always present during the dialogue, and the sub-character interacts with the user in place of the main character when the main character cannot output a response sentence that resonates with the user.

図5は、対話制御部の対話シナリオを表す説明図である。 FIG. 5 is an explanatory diagram showing a dialogue scenario of the dialogue control unit.

図5によれば、対話制御部10からユーザへ出力される応答文毎に、個性語(タグ)が付与されている。
(応答文) (個性語)
ゲームって好き? -> ゲーム
バドミントンって好き? -> バドミントン
掃除って好き? -> 掃除
各個性語を含む応答文に対して、ユーザがどのような感情極性の発話文を発話するかが重要となる。そのために、ユーザの発話文における感情極性に応じて、対話制御部10から出力する応答文を、対話シナリオとして登録しておく。
According to FIG. 5, a unique word (tag) is assigned to each response sentence output from the dialogue control unit 10 to the user.
(Response sentence) (Individual word)
do you like games? -> Game Do you like badminton? -> Badminton Do you like cleaning? -> Cleaning It is important what kind of emotional polarity the user utters in response sentences containing individual words. For this purpose, a response sentence output from the dialogue control unit 10 is registered as a dialogue scenario according to the emotional polarity of the user's uttered sentence.

例えば図5(a)によれば、主キャラクタBの場合、ユーザ@aの発話文から感情極性「ポジティブ」及び個性語「バドミントン」が推定された場合、主キャラクタBの「ポジティブ」にその個性語「バドミントン」が含まれている。そのために、「そうなんだ、私も大好き!」を応答することとなる。 For example, according to FIG. 5A, in the case of the main character B, when the emotional polarity "positive" and the personality word "badminton" are estimated from the utterance sentence of the user @a, the personality of the main character B becomes "positive". It contains the word "badminton". Therefore, the response is "Yes, I love you too!".

例えば図5(b)によれば、主キャラクタBの場合、ユーザ@aの発話文から感情極性「ポジティブ」及び個性語「掃除」が推定された場合、主キャラクタBの「ポジティブ」にその個性語「掃除」が含まれておらず、本来であれば「そうなんですね」を応答してしまう。このとき、副キャラクタCが選択されていれば、「掃除すると気持ちいいよね」を応答することができる。 For example, according to FIG. 5B, in the case of the main character B, when the emotional polarity "positive" and the personality word "cleaning" are estimated from the utterance sentence of the user @a, the personality of the main character B is "positive". The word "cleaning" is not included, and the response would normally be "That's right." At this time, if the secondary character C is selected, it is possible to respond with "It feels good to clean, isn't it?".

例えば図5(c)によれば、主キャラクタCの場合、ユーザ@bの発話文から感情極性「ネガティブ」及び個性語「掃除」が推定された場合、主キャラクタBの「ネガティブ」にその個性語「掃除」が含まれておらず、本来であれば「そうか」を応答してしまう。このとき、副キャラクタAが選択されていれば、「同じ!苦手なんだ」を応答することができる。 For example, according to FIG. 5(c), in the case of the main character C, when the emotional polarity "negative" and the personality word "cleaning" are estimated from the utterance sentence of the user @b, the personality of the main character B "negative" Since the word "cleaning" is not included, the response would normally be "Yes". At this time, if the sub-character A is selected, it is possible to respond with "same! I'm not good at it."

尚、一度出力された応答文は、それに対するユーザの発話文を忘却しない限り、二度と出力しないようにする。そのために、ユーザに対して、主キャラクタ及び副キャラクタの応答文を殆ど出力してしまった場合、そのユーザの感情極性及び個性語に応じて、他のキャラクタを呼び出すことも好ましい。これによって、対話内容が広がることを期待できる。 It should be noted that a response sentence that has been output once will not be output again unless the user's utterance sentence in response to it is forgotten. Therefore, when most of the response sentences of the main and sub-characters have been output to the user, it is also preferable to call up other characters according to the user's emotional polarity and personality words. It is hoped that this will expand the scope of the dialogue.

[投稿文収集部15]
投稿文収集部15は、SNSサーバ3から、ユーザのユーザアカウントから過去に投稿された投稿文群を収集する。
SNSサーバは、不特定多数のユーザから投稿された投稿文を公開するものあって、対話装置1は、インターネットを介してSNSサーバ3にアクセスすることができる。例えば、以下のような投稿文を収集したとする。
ユーザ@a
「明日バドミントンしに行くんだけど楽しみ」
「掃除するの苦手だな」
「散歩する暇があったら、他のことするよね」
[Posted text collection unit 15]
The posted text collection unit 15 collects, from the SNS server 3, a group of posted texts posted in the past from user accounts of users.
The SNS server publishes messages posted by an unspecified number of users, and the interactive device 1 can access the SNS server 3 via the Internet. For example, suppose that the following posted sentences are collected.
User@a
"I'm going to play badminton tomorrow, but I'm looking forward to it."
"I'm not good at cleaning"
"If you have time to take a walk, do something else."

[投稿感情推定部16]
投稿感情推定部16は、ユーザの投稿文群から、特徴的な感情極性及び個性語を抽出し、ユーザ個性語登録部101へ登録する。
これによって、ユーザの個性語を、ユーザ自らが設定することなく、ユーザの日常の投稿文から自動的に登録される。また、ユーザの日常的な感情極性及び個性語から、ユーザの物事に対して同じ感情を抱いている主キャラクタが選択される。
ユーザ@a
「明日バドミントンしに行くんだけど楽しみ」
->感情極性「ポジティブ」、個性語「バドミントン」
「掃除するの苦手だな」->感情極性「ネガティブ」、個性語「掃除」
「散歩する暇があったら、他のことするよね」
->感情極性「ネガティブ」、個性語「散歩」
投稿感情推定部16は、前述した発話感情推定部12と同様のアルゴリズムによって、感情極性及び個性語を推定するものであってもよい。
[Posted emotion estimation unit 16]
The posted emotion estimation unit 16 extracts characteristic emotional polarities and individual words from the user's posted text group, and registers them in the user individual word registration unit 101 .
As a result, the user's individual word is automatically registered from the user's daily posted sentences without setting by the user himself/herself. Also, a main character who has the same feelings as the user about things is selected from the user's everyday emotional polarities and individual words.
User@a
"I'm going to play badminton tomorrow, but I'm looking forward to it."
->Emotional Polarity "Positive" Personality Word "Badminton"
"I'm not good at cleaning"-> emotional polarity "negative", personality word "cleaning"
"If you have time to take a walk, do something else."
-> Emotional polarity "negative", personality word "walk"
The posted emotion estimation unit 16 may estimate the emotion polarity and the individual word by the same algorithm as the speech emotion estimation unit 12 described above.

他の実施形態として、投稿感情推定部16は、投稿コメント投稿文の中で、重要な個性語を抽出するために、Bag of Wordsによってベクトル化するものであってもよい。具体的には、ユーザの投稿文を形態素解析によって複数の単語に分解した上で、Bag of Wordsを用いて特徴ベクトルに変換する。「Bag-of-Words」とは、文に含まれる各単語の出現頻度のみを表現したベクトルをいう。ここでは、単語の出現順は無視される。 As another embodiment, the posted emotion estimating unit 16 may vectorize by Bag of Words in order to extract important individual words from posted comments. Specifically, a user's posted text is broken down into a plurality of words by morphological analysis, and then converted into feature vectors using Bag of Words. "Bag-of-Words" refers to a vector that expresses only the appearance frequency of each word contained in a sentence. The word order is ignored here.

[対話インタフェース17]
対話インタフェース17は、ユーザとキャラクタとの間で対話フォームを介して対話させる。キャラクタ毎に、そのキャラクタの姿を描写した画像(キャラクタアイコン)も表示することが好ましい。
対話インタフェース17は、ユーザに対して、キャラクタの吹き出しとしてキャラクタの応答文を表示する。ユーザが発話文をテキストで入力する場合、ユーザに対して入力フォームを表示して入力させる。
また、対話インタフェース17は、キャラクタの応答文を、音声変換処理によって変換した音声として出力するものであってもよい。また、ユーザが応答文を音声で入力する場合、端末2のディスプレイにマイク入力ボタンを表示する。ユーザから発話された音声を音声認識処理によって変換したテキストを、ユーザの発話文として取得する。
[Dialogue interface 17]
The dialogue interface 17 allows dialogue between the user and the character through a dialogue form. It is preferable to also display an image (character icon) depicting the figure of the character for each character.
The dialog interface 17 displays the character's response sentence as a character balloon to the user. When a user inputs an utterance in text form, an input form is displayed for the user to input.
Further, the dialog interface 17 may output the response sentence of the character as a voice converted by a voice conversion process. Also, when the user inputs a response sentence by voice, a microphone input button is displayed on the display of the terminal 2 . A text obtained by converting the voice uttered by the user by voice recognition processing is acquired as the uttered sentence of the user.

尚、対話インタフェース17は、例えばスマートフォンやタブレットのような端末2に予めインストールされたアプリケーションと通信する。端末2に表示される対話フォームは、アプリケーションを実行することによって機能する。 The interactive interface 17 communicates with an application pre-installed in the terminal 2, such as a smartphone or tablet. The interactive form displayed on terminal 2 functions by executing an application.

図6は、ユーザとキャラクタとの間の対話を表す第2の説明図である。 FIG. 6 is a second explanatory diagram showing interaction between the user and the character.

図6(a)によれば、図1(a)に対応するものであって、端末2を操作するユーザ@aと、「メイクとバド好きOL」のキャラクタBとは、以下のように対話を進行させている。
キャラクタB:「バドミントンってする?」
ユーザ@a :「うん、バドミントンよくするよ」
キャラクタB:「そうなんだ、私も大好き!」
ユーザ@a :「私は掃除も好きよ」
キャラクタB:「貴方に合う人、紹介するよ」
キャラクタC:「掃除すると気持ちいいよね」
ユーザ@a :「そうよね」
このように、ユーザの感情極性とキャラクタBの感情極性とが異なる個性語について、キャラクタCが応答することによって、ユーザに対して共感する応答文で対話することができる。
According to FIG. 6(a), which corresponds to FIG. 1(a), the user @a who operates the terminal 2 and the character B who is an "OL who likes make-up and buds" interact as follows. is proceeding.
Character B: "Do you play badminton?"
User@a: "Yeah, I play badminton a lot."
Character B: "Yes, I love you too!"
User@a: "I also like cleaning."
Character B: "I'll introduce you to someone who suits you."
Character C: "It feels good to clean."
User@a: "That's right."
In this manner, the character C responds to a unique word in which the emotional polarity of the user and the emotional polarity of the character B are different, so that the user can have a dialogue with a response sentence that sympathizes with the user.

図6(b)によれば、図1(b)に対応するものであって、端末2を操作するユーザ@bと、「掃除好きサラリーマン」のキャラクタCとは、以下のように対話を進行させている。
キャラクタC:「掃除って好き?」
ユーザ@b :「掃除ってめんどくさいな」
キャラクタC:「友達、紹介するよ」
キャラクタA:「同じ!苦手なんだ」
ユーザ@b :「そうそう」
このように、ユーザの感情極性とキャラクタBの感情極性とが異なる個性語について、キャラクタAが応答することによって、ユーザに対して共感する応答文で対話することができる。
According to FIG. 6(b), which corresponds to FIG. 1(b), the user @b who operates the terminal 2 and the character C, who is a "salaryman who likes to clean," have a dialogue as follows. I am letting
Character C: "Do you like cleaning?"
User@b: "Cleaning is troublesome."
Character C: "I'll introduce you to my friend."
Character A: "Same! I'm not good at it."
User@b: "Yeah yeah"
In this way, character A responds to individual words in which the emotional polarity of the user and the emotional polarity of character B are different.

図6のように、対話制御部10は、主キャラクタから副キャラクタを参加させる際に、副キャラクタを紹介する発話文をユーザへ出力することが好ましい。ユーザから見て急にキャラクタが切り替わることは、違和感となる。例えば「貴方に合う人、紹介するよ」と応答することによって、副キャラクタの唐突な出現を感じさせないようにする。 As shown in FIG. 6, the dialogue control section 10 preferably outputs to the user an utterance sentence introducing the sub-character when the sub-character participates from the main character. The sudden switching of characters from the user's point of view is uncomfortable. For example, by replying, "I'll introduce you to someone who suits you," the sudden appearance of the secondary character is prevented.

また、ユーザと主キャラクタとの間に、副キャラクタが参加した場合であっても、主キャラクタが主導で、ユーザとの間で対話を進行させる。主キャラクタがユーザに共感できる応答文を出力できない場合にのみ、副キャラクタが応答文を出力する。 Also, even if a sub-character participates between the user and the main character, the main character takes the lead in advancing the dialogue with the user. The sub character outputs a response sentence only when the main character cannot output a response sentence that can empathize with the user.

更に、ユーザの感情極性に対して、主キャラクタ及び副キャラクタでできる限り近い個性語に基づく応答文(話題)を出力するものであってもよい。ユーザと主キャラクタ及び副キャラクタとの全員が、感情極性として同じ話題であるほど、ユーザも共感し、対話の満足度も向上すると考えられる。 Furthermore, a response sentence (topic) based on a personality word that is as close as possible to the main character and sub-character may be output with respect to the emotional polarity of the user. It is thought that the more the user, the main character, and the sub-character all have the same emotional polarity, the more the user will sympathize with the topic, and the more satisfied the dialogue will be.

更に、ユーザの感情極性及び個性語に対して、主キャラクタ及び副キャラクタの両方とも適切な応答文を出力できない場合、現行の副キャラクタを除外し、再度、副キャラクタ選択部14によって別途の副キャラクタを選択するものであってもよい。但し、ユーザの発話内容が、単にキャラクタの個性に合わないとしてキャラクタの切り替わりが頻繁になると、もはやユーザから見て対話の一貫性がなく違和感しか生じない。そのために、副キャラクタが選択された後、対話のやりとりが一定回数以上行われるまで、副キャラクタの再選択を実行しない。
尚、主キャラクタは、副キャラクタが切り替わる場合、例えば「なるほどね。そうそう。○○(現行の副キャラクタ)さんは急用で帰るみたい。その代わり、あなたの同じことを思ってる別の方を呼びますね。」などと、仲介的な応答文を出力することが好ましい。
Furthermore, if neither the main character nor the sub-character can output an appropriate response sentence to the user's emotional polarity and personality word, the current sub-character is excluded, and another sub-character is selected by the sub-character selection unit 14 again. may be selected. However, if the content of the user's utterance simply does not match the individuality of the character and the characters are switched frequently, the dialogue will no longer be consistent from the user's point of view and will only cause discomfort. For this reason, after the sub-character is selected, re-selection of the sub-character is not executed until dialogue is exchanged a certain number of times or more.
In addition, when the secondary character is switched, the main character will say something like "I see. That's right. ○○ (the current secondary character) seems to be going home on an urgent business. Instead, he will call someone else who is thinking the same thing as you. It is preferable to output an intermediary response sentence such as, for example,

以上、詳細に説明したように、本発明のエージェントのプログラム、装置及び方法によれば、ユーザの発話内容に応じて適切に複数のキャラクタを用いて対話することができる。 As described in detail above, according to the agent program, device and method of the present invention, it is possible to interact appropriately using a plurality of characters according to the content of the user's utterance.

本発明によれば、ユーザの感情極性及び個性語に対して、主キャラクタが共感できる応答文を出力できない場合に、その感情極性に共感できる副キャラクタを対話に参加させることができる。このように、ユーザの発話文の感情と同じ感情を持つキャラクタを参加させることによって、ユーザが共感する対話を実現することができる。 According to the present invention, when the main character cannot output a response sentence with which the main character can sympathize with the user's emotional polarity and individual words, a secondary character who can sympathize with the emotional polarity can participate in the dialogue. In this way, a dialogue that the user can sympathize with can be realized by having a character who has the same emotion as the user's uttered sentence participate.

前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。 For the various embodiments of the present invention described above, various changes, modifications and omissions within the spirit and scope of the present invention can be easily made by those skilled in the art. The foregoing description is exemplary only and is not intended to be limiting. The invention is to be limited only as limited by the claims and the equivalents thereof.

1 対話装置
10 対話制御部
101 ユーザ個性語登録部
102 キャラクタ個性語登録部
11 主キャラクタ選択部
12 発話感情推定部
13 共感判定部
14 副キャラクタ選択部
15 投稿文収集部
16 投稿感情推定部
17 対話インタフェース
2 端末
3 SNSサーバ
1 Dialogue Device 10 Dialogue Control Unit 101 User Personality Word Registration Unit 102 Character Personality Word Registration Unit 11 Main Character Selection Unit 12 Spoken Emotion Estimation Unit 13 Empathy Determination Unit 14 Secondary Character Selection Unit 15 Posted Sentence Collection Unit 16 Posted Emotion Estimation Unit 17 Dialogue Interface 2 Terminal 3 SNS server

Claims (11)

ユーザの発話文を入力し、キャラクタの応答文を出力する対話制御手段を有するエージェントとしてコンピュータを機能させるプログラムであって、
各キャラクタについて、感情極性毎に個性語を登録するキャラクタ個性語登録手段と、
ユーザと対話する主キャラクタを選択し、主キャラクタを対話制御手段に設定する主キャラクタ選択手段と、
ユーザの発話文から、感情極性及び個性語を抽出する発話感情推定手段と、
ユーザの感情極性及び個性語が、主キャラクタの感情極性及び個性語に含まれているか否かを判定する共感判定手段と、
共感判定手段によって偽と判定された場合、ユーザの感情極性及び個性語が含まれている副キャラクタを選択し、副キャラクタを対話制御手段に設定する副キャラクタ選択手段と
してコンピュータを機能させることを特徴とするプログラム。
A program that causes a computer to function as an agent having dialogue control means for inputting a user's utterance sentence and outputting a character's response sentence,
Character individual word registration means for registering individual words for each character for each emotional polarity;
main character selection means for selecting a main character to interact with the user and setting the main character as interaction control means;
an utterance emotion estimating means for extracting emotion polarity and individual words from a user's utterance;
empathy determination means for determining whether or not the user's emotional polarity and individuality words are included in the main character's emotional polarity and individuality words;
When the sympathy determination means determines false, the computer functions as a secondary character selection means for selecting a secondary character containing the user's emotional polarity and individual words and setting the secondary character as the dialogue control means. A program to
感情極性は、ポジティブ及びネガティブに分類され、
個性語はそれぞれ、ポジティブ又はネガティブのいずれかに対応付けられる
ようにコンピュータを機能させることを特徴とする請求項1に記載のプログラム。
Emotional polarity is classified into positive and negative,
2. The program according to claim 1, causing a computer to function so that each individual word is associated with either positive or negative.
発話感情推定手段は、主キャラクタと対話するユーザの発話文から、ネガティブ及び個性語を抽出し、
共感判定手段は、ユーザのネガティブ及び個性語が、主キャラクタのネガティブ及び個性語に含まれているか否かを判定し、
副キャラクタ選択手段は、ユーザのネガティブ及び個性語が含まれている副キャラクタを選択する
ようにコンピュータを機能させることを特徴とする請求項2に記載のプログラム。
The speech emotion estimation means extracts negative and individual words from the speech sentences of the user who interacts with the main character,
The sympathy determination means determines whether or not the negative and individual words of the user are included in the negative and individual words of the main character,
3. The program according to claim 2, wherein the sub-character selection means causes the computer to select sub-characters containing negative and personal words of the user.
発話感情推定手段は、主キャラクタと対話するユーザの発話文から、ポジティブ及び個性語を抽出し、
共感判定手段は、ユーザのポジティブ及び個性語が、主キャラクタのポジティブ及び個性語に含まれているか否かを判定し、
副キャラクタ選択手段は、ユーザのポジティブ及び個性語が含まれている副キャラクタを選択する
ようにコンピュータを機能させることを特徴とする請求項2又は3に記載のプログラム。
The speech emotion estimation means extracts positive and individual words from the speech sentences of the user who interacts with the main character,
The sympathy determination means determines whether or not the positive and individual words of the user are included in the positive and individual words of the main character,
4. The program according to claim 2 or 3, wherein the sub-character selection means causes the computer to select sub-characters containing positive and personal words of the user.
各ユーザについて、ユーザの発話文から発話感情推定手段によって抽出された感情極性及び個性語を登録するユーザ個性語登録手段と
して機能させ、
副キャラクタ選択手段は、共感判定手段によって偽と判定された場合、ユーザ個性語登録手段に登録されたユーザの感情極性及び個性語と同一類似の感情極性及び個性語を含む副キャラクタを選択する
ようにコンピュータを機能させることを特徴とする請求項1から4のいずれか1項に記載のプログラム。
For each user, it functions as a user's individual word registration means for registering the emotional polarity and individual words extracted from the user's uttered sentence by the uttered emotion estimation means,
The sub-character selection means selects a sub-character including an emotion polarity and a personality word identical or similar to the user's emotion polarity and personality word registered in the user's personality word registration means when the sympathy determination means determines false. 5. The program according to any one of claims 1 to 4, which causes a computer to function.
各ユーザについて、ユーザの発話文から発話感情推定手段によって抽出された感情極性及び個性語を登録するユーザ個性語登録手段と
して機能させ、
主キャラクタ選択手段は、ユーザ個性語登録手段に登録されたユーザの感情極性及び個性語と同一類似の感情極性及び個性語を含む主キャラクタを選択する
ようにコンピュータを機能させることを特徴とする請求項1から4のいずれか1項に記載のプログラム。
For each user, it functions as a user's individual word registration means for registering the emotional polarity and individual words extracted from the user's uttered sentence by the uttered emotion estimation means,
The main character selecting means causes the computer to select a main character including the same or similar emotional polarity and personality word as the user's emotional polarity and personality word registered in the user's personality word registration means. Item 5. The program according to any one of items 1 to 4.
SNS(Social Networking Service)サーバから、ユーザのユーザアカウントから過去に投稿された投稿文群を収集する投稿文収集手段と、
ユーザの投稿文群から、特徴的な感情極性及び個性語を抽出し、ユーザ個性語登録手段へ登録する投稿感情推定手段と
してコンピュータを機能させることを特徴とする請求項6に記載のプログラム。
Posted message collection means for collecting a group of posted messages posted in the past from a user account of a user from an SNS (Social Networking Service) server;
7. The program according to claim 6, causing a computer to function as posted emotion estimation means for extracting characteristic emotional polarities and individual words from a group of user's posted sentences and registering them in user's individual word registration means.
対話制御手段は、主キャラクタ及び副キャラクタを同時に機能させ、ユーザと主キャラクタ及び副キャラクタとの間で対話を成立させる
ようにコンピュータを機能させることを特徴とする請求項1から7のいずれか1項に記載のプログラム。
8. The dialogue control means causes the computer to function so as to cause the main character and the sub-character to function simultaneously, and establish dialogue between the user and the main character and the sub-character. The program described in Section.
対話制御手段は、主キャラクタから副キャラクタを参加させる際に、副キャラクタを紹介する発話文をユーザへ出力する
ようにコンピュータを機能させることを特徴とする請求項1から7のいずれか1項に記載のプログラム。
8. The dialogue control means according to any one of claims 1 to 7, wherein when the main character makes the sub-character participate, the dialogue control means causes the computer to output to the user an utterance sentence introducing the sub-character. program as described.
ユーザの発話文を入力し、キャラクタの応答文を出力する対話制御手段を有する対話装置であって、
各キャラクタについて、感情極性毎に個性語を登録するキャラクタ個性語登録手段と、
ユーザと対話する主キャラクタを選択し、主キャラクタを対話制御手段に設定する主キャラクタ選択手段と、
ユーザの発話文から、感情極性及び個性語を抽出する発話感情推定手段と、
ユーザの感情極性及び個性語が、主キャラクタの感情極性及び個性語に含まれているか否かを判定する共感判定手段と、
共感判定手段によって偽と判定された場合、ユーザの感情極性及び個性語が含まれている副キャラクタを選択し、副キャラクタを対話制御手段に設定する副キャラクタ選択手段と
を有することを特徴とする対話装置。
A dialogue apparatus having dialogue control means for inputting a user's utterance sentence and outputting a character's response sentence,
Character individual word registration means for registering individual words for each character for each emotional polarity;
main character selection means for selecting a main character to interact with the user and setting the main character as interaction control means;
an utterance emotion estimating means for extracting emotion polarity and individual words from a user's utterance;
empathy determination means for determining whether or not the user's emotional polarity and individuality words are included in the main character's emotional polarity and individuality words;
a sub-character selection means for selecting a sub-character containing the user's emotional polarity and individual words and setting the sub-character to the dialog control means when the sympathy determination means determines false. interactive device.
ユーザの発話文を入力し、キャラクタの応答文を出力する対話制御手段を有する装置の対話方法であって、
装置は、
各キャラクタについて、感情極性毎に個性語を登録するキャラクタ個性語登録部を有し、
ユーザと対話する主キャラクタを選択し、主キャラクタを対話制御手段に設定する第1のステップと、
ユーザの発話文から、感情極性及び個性語を抽出する第2のステップと、
ユーザの感情極性及び個性語が、主キャラクタの感情極性及び個性語に含まれているか否かを判定する第3のステップと、
第3のステップによって偽と判定された場合、ユーザの感情極性及び個性語が含まれている副キャラクタを選択し、副キャラクタを対話制御手段に設定する第4のステップと
を実行することを特徴とする対話方法。

A dialogue method for a device having dialogue control means for inputting a user's utterance sentence and outputting a character's response sentence,
The device
having a character individual word registration unit for registering a character individual word for each emotional polarity for each character,
a first step of selecting a main character that interacts with the user and setting the main character as interaction control means;
a second step of extracting emotional polarity and individual words from the user's utterance;
a third step of determining whether or not the user's emotional polarities and individuality words are included in the main character's emotional polarities and individuality words;
and executing a fourth step of selecting a sub-character containing the user's emotional polarity and individual words and setting the sub-character to the dialog control means if the third step is determined to be false. How to interact with.

JP2021047801A 2021-03-22 2021-03-22 Program, device, and method for agent performing dialog using a plurality of characters Pending JP2022146699A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021047801A JP2022146699A (en) 2021-03-22 2021-03-22 Program, device, and method for agent performing dialog using a plurality of characters

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021047801A JP2022146699A (en) 2021-03-22 2021-03-22 Program, device, and method for agent performing dialog using a plurality of characters

Publications (1)

Publication Number Publication Date
JP2022146699A true JP2022146699A (en) 2022-10-05

Family

ID=83461241

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021047801A Pending JP2022146699A (en) 2021-03-22 2021-03-22 Program, device, and method for agent performing dialog using a plurality of characters

Country Status (1)

Country Link
JP (1) JP2022146699A (en)

Similar Documents

Publication Publication Date Title
CN107870977B (en) Method, system, and medium for forming chat robot output based on user status
Pavalanathan et al. More emojis, less:) The competition for paralinguistic function in microblog writing
Burgers et al. Humor markers
CN110427472A (en) The matched method, apparatus of intelligent customer service, terminal device and storage medium
Wanner et al. Kristina: A knowledge-based virtual conversation agent
JP6804763B2 (en) Dialogue system, dialogue device and computer program for it
JP7105749B2 (en) Agent program, device and method for uttering text corresponding to character
CN112488239B (en) Method and apparatus for artificial intelligence based computer-aided uniform system
JP7096172B2 (en) Devices, programs and methods for generating dialogue scenarios, including utterances according to character.
Kao et al. Model of multi-turn dialogue in emotional chatbot
Svikhnushina et al. User expectations of conversational chatbots based on online reviews
Ma et al. Enthusiasts, pragmatists, and skeptics: investigating users’ attitudes towards emotion-and personality-aware voice assistants across cultures
CN112910761A (en) Instant messaging method, device, equipment, storage medium and program product
WO2020027073A1 (en) Information processing device and information processing method
JP2022146699A (en) Program, device, and method for agent performing dialog using a plurality of characters
Irfan et al. Coffee with a hint of data: towards using data-driven approaches in personalised long-term interactions
BEZİRGAN¹ et al. Digital communications and emoji use in tourism enterprises
JP6858721B2 (en) Dialogue controls, programs and methods capable of conducting content dialogue
JP6821542B2 (en) Dialogue control devices, programs and methods that can carry out multiple types of dialogue in succession.
KR20210015977A (en) Apparatus for realizing coversation with died person
JP7257349B2 (en) Program, device and method for estimating characteristic gesture of target person
JP6502233B2 (en) Text impression analysis program, apparatus and method for comparing subjective impression and objective point impression for input text
CN113785540B (en) Method, medium and system for generating content promotions using machine learning nominators
JP7368335B2 (en) Programs, devices and methods for interacting with positive parroting responses
Joshi et al. Sarcasm detection using contextual incongruity

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240307