JP2019106054A - 対話システム - Google Patents

対話システム Download PDF

Info

Publication number
JP2019106054A
JP2019106054A JP2017238764A JP2017238764A JP2019106054A JP 2019106054 A JP2019106054 A JP 2019106054A JP 2017238764 A JP2017238764 A JP 2017238764A JP 2017238764 A JP2017238764 A JP 2017238764A JP 2019106054 A JP2019106054 A JP 2019106054A
Authority
JP
Japan
Prior art keywords
sentence
weight
slot
dialogue
amount
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
JP2017238764A
Other languages
English (en)
Inventor
尚水 吉田
Takami Yoshida
尚水 吉田
憲治 岩田
Kenji Iwata
憲治 岩田
浩司 藤村
Koji Fujimura
浩司 藤村
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2017238764A priority Critical patent/JP2019106054A/ja
Priority to CN201811008382.7A priority patent/CN110019746B/zh
Priority to US16/119,674 priority patent/US11087753B2/en
Publication of JP2019106054A publication Critical patent/JP2019106054A/ja
Priority to JP2021092863A priority patent/JP7249378B2/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training

Abstract

【課題】対話状態の履歴をより適切に処理できる対話システムを提供する。【解決手段】対話システムは、取得部及び処理部を含む。取得部は、第1文章を取得する。処理部は、第1対話状態の第1スロットに関する第1特徴量と、第1文章に係わる第1重みと、に基づく第1重み付け量を参照する。処理部は、第1文章に含まれる第1意図の第1スロットに関する第1意図量と、第1重みと異なり、第1文章に係わる第2重みと、に基づく第2重み付け量を参照する。処理部は、第1重み付け量および第2重み付け量を用いて、第1対話状態の後の第2対話状態の第1スロットに関する第2特徴量を出力する。【選択図】図5

Description

本発明の実施形態は、対話システムに関する。
ユーザに情報を提供する1つの方法として、例えば、ユーザの音声を認識し、応答文を生成する対話システムがある。さらに、ユーザが入力した文字情報からユーザが望むサービスを提供する方法もある。対話システムは、ユーザによって音声または文字情報で入力された文章に基づき、ユーザUSの希望を推定する。推定されたユーザUSの希望は、対話状態と呼ばれる。対話システムは、現在の対話状態を推定する際に、過去の対話状態の履歴をより適切に処理できることが望ましい。
Matthew Henderson, Blaise Thomson, and Steve Young, "Robust Dialog State Tracking using Delexicalised Recurrent Neural Networks and Unsupervised Adaptation", IEEE Spoken Language Technology Workshop (SLT), 2014 Youngsoo Jang, Jiyeon Ham, Byung-Jun Lee, Youngjae Chang, Kee-Eung Kim, "Neural Dialog State Tracker for Large Ontologies by Attention Mechanism", IEEE Spoken Language Technology Workshop (SLT), 2016
本発明の実施形態は、対話状態の履歴をより適切に処理できる対話システムを提供する。
実施形態に係る対話システムは、取得部及び処理部を含む。前記取得部は、第1文章を取得する。前記処理部は、第1対話状態の第1スロットに関する第1特徴量と、前記第1文章に係わる第1重みと、に基づく第1重み付け量を参照する。前記処理部は、前記第1文章に含まれる第1意図の前記第1スロットに関する第1意図量と、前記第1重みと異なり、前記第1文章に係わる第2重みと、に基づく第2重み付け量を参照する。前記処理部は、前記第1重み付け量および前記第2重み付け量を用いて、前記第1対話状態の後の第2対話状態の前記第1スロットに関する第2特徴量を出力する。
第1実施形態に係る対話システムを例示する模式図である。 第1実施形態に係る対話システムの動作を例示する模式図である。 スロットパラメータ(バリュー)及びスロットを例示する図である。 第1実施形態に係る対話システムの動作を例示するフローチャートである。 第1実施形態に係る対話システムの動作を例示するフローチャートである。 第1実施形態に係る対話システムの動作を例示するフローチャートである。 第1実施形態に係る対話システムの動作を例示するフローチャートである。 第1実施形態に係る対話システムの動作を例示する模式図である。 第1実施形態に係る対話システムの別の動作を例示するフローチャートである。 第1実施形態に係る対話システムの動作を例示する模式図である。 第1実施形態に係る対話システムの動作を例示するフローチャートである。 第1実施形態の変形例に係る対話システムを例示する模式図である。 第1実施形態の変形例に係る対話システムを例示するフローチャートである。 第1実施形態の変形例に係る対話システムの動作を例示する模式図である。 第2実施形態に係る対話システム210を例示する模式図である。 第2実施形態に係る対話システムの動作を例示するフローチャートである。 実施形態に係る対話装置の構成を例示する模式図である。
以下に、本発明の各実施形態について図面を参照しつつ説明する。
本願明細書と各図において、既に説明したものと同様の要素には同一の符号を付して詳細な説明は適宜省略する。
図1は、第1実施形態に係る対話システムを例示する模式図である。
図1に示すように、対話システム110は、取得部10及び処理部20を含む。取得部10は、情報を取得する。処理部20は、その情報の処理を行う。
以下、まず、対話システムの例について説明する。
図2は、第1実施形態に係る対話システムの動作を例示する模式図である。
対話システム110は、ユーザUSが発した音声を認識し、応答文を生成する。対話システム110は、音声の認識及び応答文の生成により、ユーザUSと対話することで、ユーザUSの意図を推定する。対話システム110は、例えば、ユーザUSとの文字情報の授受により、ユーザUSの意図を推定しても良い。推定されたユーザUSの意図に応じて、対話システム110は、サービス(ユーザUSが望む情報など)を、ユーザUSに提供する。
例えば、対話システム110は、携帯電話(スマートフォン)で使用される。携帯電話の操作者であるユーザUSが、対話システム110に例えば音声で、種々の質問を行う。その質問に応じたサービス(情報)が、対話システム110からユーザUSに提供される。
図2は、ユーザUSが食事を望む場合の1つの例を示す。
文章TX1において、対話システム110は、ユーザUSの希望を尋ねる。この質問に対して、ユーザUSは、文章TX2において、希望する料理の種類を発声する。文章TX1及びTX2による情報の授受により、対話システム110は、料理の種類に関するユーザUSの意図を理解する。文章TX1及びTX2のように、対話システム110及びユーザUSの一方から他方に向けて情報が提供され、対話システム110及びユーザUSの他方から一方に向けて情報が提供される一連の流れを「ターン」と言う。
対話システム110は、例えば、その後の文章TX3において、場所の希望を尋ねる。この質問に対して、ユーザUSは、文章TX4において、希望する場所を発声する。2ターン目における情報の授受により、対話システム110は、場所に関するユーザUSの意図を理解する。
対話システム110は、ユーザUSの意図に適合する情報があるか検索する。具体的には、対話システム110は、川崎駅の中にある中華料理のレストランを検索する。例えば、川崎駅の中に中華料理のレストランが無い場合、対話システム110は、文章TX5においてそのことをユーザUSに伝える。この情報を受けて、ユーザUSは、例えば、文章TX6において、希望する料理の種類を取り消す。
この意図を受けて、対話システム110は、川崎駅の中にあるレストランを検索する。例えば、複数のレストランが見つかった場合、対話システム110は、文章TX7において、1つレストランの名前をユーザUSに伝える(提案する)。例えば、ユーザUSは、文章TX8において、この提案を受け入れることを対話システム110に伝える。
このように、対話システム110とユーザUSとの間の情報の授受により、対話システム110はユーザUSの意図を理解し、ユーザUSに対してサービス(情報)を提供する。ユーザUSの意図により適合したサービスを提供するためには、対話システム110が、ユーザUSの意図をより適切に理解できることが望ましい。対話システム110おいて適切な意図理解が可能なように、例えば、対話システム110には、情報を格納できる複数の「分類」が設けられる。例えば、複数の分類の1つが「料理の種類」に割り当てられる。複数の「分類」の別の1つが「場所」に割り当てられる。
複数の「分類」の1つ(料理の種類)に、複数の「言葉」(和食、中華料理、及びイタリア料理など)が格納可能である。例えば、「分類」に、「和食」の「言葉」が格納される場合には、ユーザUSが、「和食が食べたい」などの発声をすると、そのユーザUSの意図が適切に推定され、和食に関するレストランの情報が提供できる。「分類」に格納される複数の「言葉」を適切に設定することで、ユーザUSの意図を正確に推定することができる。「分類」に格納される複数の「言葉」は、例えば、対話システム110の設計時に設けられる。対話システム110とユーザUSとの「対話」の結果に応じて、経時的に学習が行われても良い。
ユーザUSの意図をより適切に理解するためには、レストランの増減に応じて、「言葉」が追加及び削除されることが好ましい。例えば、川崎駅の中に今までは中華料理のレストランが無く、新しく中華料理のレストランが開店するときには、「中華料理」に対応する「言葉」を、「料理の種類」の「分類」に追加することが望ましい。例えば、川崎駅の中にある和食のレストランが別の場所に移転し、川崎駅の中に和食のレストランが無くなる場合は、「和食」に対応する「言葉」を、「料理の種類」の「分類」から削除することが望ましい。
さらに、対話システム110は、ユーザUSの意図を、より正確に追跡できることが望ましい。例えば、文章TX2の取得により、対話システム110は、ユーザUSが中華料理のレストランを希望していると推定している。すなわち、対話状態の「料理の種類」に関する部分については、「中華料理(を希望)」である。文章TX4では、ユーザUSは、希望する料理の種類について言及していない。しかし、1ターン目の対話からユーザUSが中華料理を希望していることが分かる。このため、文章TX4の取得後も、対話状態の「料理の種類」に関する部分については、「中華料理」を維持することが望ましい。さらに、文章TX4の取得後は、対話状態の「場所」に関する部分については、「川崎駅の中(を希望)」となる。
一方、文章TX6では、「料理の種類」に関する希望が取り消される。このため、文章TX6を取得した後では、対話状態の「料理の種類」に関する部分については、「None(希望なし)」となり、対話状態の「場所」に関する部分については、「川崎駅の中」を維持することが望ましい。
上述したように、対話システム110については、「分類」に含まれる「言葉」の増減に対応しながら、対話状態の履歴をより適切に処理できることが望ましい。
図3は、スロットパラメータ(バリュー)及びスロットを例示する図である。
対話システム110は、推定の際に、予め設定された「分類」と、その「分類」に含まれる「言葉」を参照する。この「分類」は、スロットと呼ばれる。この「言葉」は、スロットパラメータまたはバリューと呼ばれる。図3は、レストランに関する複数のスロットS1〜Smを例示する。それぞれのスロットには、複数のバリューが設定される。例えば、料理の種類に関するスロットS1は、和食のバリューV11、中華料理のバリューV12、イタリア料理のバリューV13などを含む。場所に関するスロットS2は、川崎駅のバリューV21、東京駅のバリューV22、新宿駅のバリューV23などを含む。それぞれのバリューには、特徴量が設定されている。対話システム110は、複数のスロットS1〜Smを参照し、ユーザUSが意図しているバリューを推定して、そのバリューに関する応答文を生成する。
図4は、第1実施形態に係る対話システムの動作を例示するフローチャートである。
取得部10は、ユーザUSによって入力された文章を取得する(ステップSt1)。文章は、例えば、ユーザUSによって入力される。文章は、例えば、音情報(音声情報)及び文字情報の少なくともいずれかで表される。音声が入力され、その音声情報から導出された文字情報が、取得部10により取得されても良い。文章は、GUI(Graphical User Interface)部品へのタッチなどの操作情報に基づいても良い。取得部10は、例えば、キーボード、マイクロフォン、及びタッチパネルの少なくともいずれかを含む。
処理部20は、例えば、CPU(例えば、コンピュータなど)を含む。処理部20は、メモリを含んでも良い。処理部20は、取得部10によって取得された文章を解析する(ステップSt2)。これにより、文章に含まれるユーザUSの意図が推定される。処理部20は、取得された文章を解析し、重みパラメータを抽出する(ステップSt3)。処理部20は、抽出された重みパラメータに基づき重みを決定する(ステップSt4)。処理部20は、過去の対話状態を参照する(ステップSt5)。
処理部20は、文章に含まれるユーザUSの意図と、過去の対話状態と、重みと、を用いて現在の対話状態を推定する(ステップSt6)。処理部20は、推定された現在の対話状態を記憶する(ステップSt7)。処理部20は、対話が終了したか判定する(ステップSt8)。対話が終了していない場合、ステップS1に戻る。対話が終了した場合は、動作を終了する。
以下で、対話システム110のより具体的な一例を説明する。
対話システム110は、例えば、第1記憶部31、第2記憶部32、第3記憶部33、第4記憶部34、第1モデル記憶部41、及び第2モデル記憶部42をさらに含む。
第1記憶部31は、過去に推定された対話状態を記憶する。第1記憶部31は、さらに、対話状態の推定に用いられる情報を記憶する。この情報は、後述する、重み付け量及び特徴量などを含む。
第2記憶部32は、複数のスロットと、それぞれのスロットに含まれる複数のスロットパラメータと、を記憶する。
第3記憶部33は、単語をベクトルに変換するときに参照される。第3記憶部33は、例えば、word2vecまたはGloVeを用いて学習されたモデルを記憶する。または、第3記憶部33は、複数の単語と複数のベクトルのそれぞれの対応を記憶する。例えば、それぞれの単語には、1−of−K表現で表されるベクトルが割り当てられる。1−of−K表現で表されるベクトルの次元数は、第3記憶部33に記憶される単語の総数と同じである。このベクトルは、対応する単語の次元だけ「1」であり、他の次元は全て「0」である。
第4記憶部34は、重みパラメータの抽出に用いられるルール及びRNNの少なくともいずれかを記憶する。
第1モデル記憶部41は、単語分割モデルを記憶する。単語分割モデルは、形態素解析により文章を複数の単語に分割するときに参照される。単語分割モデルは、例えば、mecabまたはchasenなどのモデルで表される。
第2モデル記憶部42は、特徴量変換モデルを記憶する。特徴量変換モデルには、第3記憶部33を参照して生成された文章に基づくベクトルが入力される。特徴量変換モデルから、特徴量ベクトルが出力される。この特徴量ベクトルは、文章の文字数に依存しない、特定の次元数で表される。
例えば、特徴量変換モデルは、事前に学習されたReccurent Neural Network(RNN)である。RNNの入力層に取得した文章に基づくベクトルが入力される。中間層に含まれる複数のノードの少なくとも一部は、例えばLong Short−Term Memory(LSTM)構造である。
各スロットパラメータも、特徴量ベクトルに変換される。スロットパラメータを特徴量ベクトルへ変換する際、第3記憶部33に記憶された特徴量変換モデルが参照されても良いし、別のモデルが参照されても良い。または、各スロットパラメータが予め特徴量ベクトルに変換され、それらの特徴量ベクトルが第3記憶部33または別の記憶部に記憶されていても良い。
例えば、RNNは、教師付き学習によって事前に作成され得る。この教師付き学習では、ラベルが付与された発話文が用いられる。ラベルは、発話文に含まれる対話状態を示す。類似度(距離)計算の結果、確率が高いと推定されたスロットパラメータが正解のスロットパラメータ(ラベルに記されたスロットパラメータ)と異なる場合、その差を小さくするようにRNNのパラメータを修正する。これを繰り返し行うことで、RNNを学習する。
処理部20は、例えば、入力部21、解析部22、抽出部23、推定部24、及び決定部25を含む。
入力部21は、取得部10で取得した文章が入力される。入力部21は、この文章を解析部22及び抽出部23に送る。解析部22は、文章を解析し、この文章に含まれるユーザUSの意図を推定する。抽出部23は、第4記憶部34を参照し、取得した文章から重みパラメータを抽出する。
具体的には、解析部22は、第3記憶部33及び第1モデル記憶部41を参照し、入力部21に入力された文章をベクトルに変換する。解析部22は、第2モデル記憶部42を参照し、このベクトルを特徴量変換モデルに入力する。これにより、解析部22は、特徴量ベクトルを取得する。解析部22は、さらに、第2記憶部32を参照し、各スロットパラメータを特徴量ベクトルに変換する。解析部22は、文章に基づく特徴量ベクトルと、各スロットパラメータの特徴量ベクトルと、の類似度を計算する。類似度は、例えば、コサイン距離またはユークリッド距離で表される。解析部22は、例えば、類似度が高いスロットパラメータの確率が高くなるように正規化し、確率分布を生成する。解析部22は、解析結果を推定部24に送る。
重みパラメータは、文章におけるスロットへの言及の度合いに基づく。例えば、文章においてスロットへの言及が合ったときは、重みパラメータは「1」に設定される。言及がなかったときは、重みパラメータは「0」に設定される。または、重みパラメータは、文章におけるスロットへの言及の度合に応じて、0以上1以下の実数値が設定されても良い。抽出部23は、抽出した重みパラメータを決定部25へ送る。
重みパラメータの抽出には、例えばルール及びRNNの少なくともいずれかが用いられる。
例えば、重みパラメータは、ルールによって抽出される。この場合、「料理の種類」のスロットに関して、「○○を食べたい」という文があれば、重みパラメータを1にする。この文がなければ、重みパラメータを0にする。
ルールは、特定のスロットパラメータに依存しないように、言い回しを用いて作成される。これにより、スロットパラメータが追加または削除された場合であっても、重みパラメータを適切に抽出できる。
好ましくない一例として、[文章に「和食」が含まれていたら「料理の種類」のスロットに関する重みパラメータを1にする]というルールが設定される。この場合、「トルコ料理」などの他のスロットパラメータが文章に含まれている場合に、「料理の種類」のスロットに関する重みパラメータを1にできない。一方で、[「○○を食べたい」があったら「料理の種類」のスロットに関する重みパラメータを1にする]というルールでは、○○が和食またはトルコ料理であれば重みパラメータを1にできる。
RNNを用いて重みパラメータを抽出する場合、入力された文章を特徴量ベクトルに変換する。RNNは、この特徴量ベクトルが入力されると、1次元の実数値を出力する。RNNには、例えば、事前に教師付き学習が実施される。この教師付き学習では、スロットについて言及があったかを示すラベルが付与された文章が用いられる。
または、対話状態の推定までを一つのRNNとして構築しても良い。この場合、対話状態を示すラベルが付与された文章を用いた教師付き学習が事前に実施される。
決定部25は、抽出部23から重みパラメータを受け取る。決定部25は、重みパラメータに基づき、重みを決定する。換言すると、重みは、処理部20に入力された文章に係わる値である。重みは、推定部24が受け取った文章の意図と、過去の対話状態とを重み付けして統合するために用いられる。重みは、例えば0以上1以下の実数である。決定部25は、例えば、重みパラメータを、そのまま重みとする。重みパラメータが、0未満または1を超える値でありうる場合、重みパラメータが0以上1以下になるように、重みパラメータを正規化しても良い。決定部25は、正規化された重みパラメータを、重みとする。決定部25は、シグモイド関数を用いて重みパラメータを正規化しても良い。
推定部24は、第1記憶部31にアクセスし、第1記憶部31に記憶されている過去の対話状態の推定結果を参照する。決定部25は、重みパラメータに基づいて重みを決定する。決定部25は、重みを推定部24に送る。推定部24は、文章の解析結果と過去の対話状態とを重み付け統合し、現在の対話状態を決定する。
対話状態は各スロットパラメータへの確率分布であるので、例えばこの推定部24は発話文に含まれる対話状態と過去の対話状態とを重み付け和により、対話状態を推定する。
推定部24は、推定した対話状態を第1記憶部31に送る。第1記憶部31は、送られた対話状態を記憶する。推定部24は、推定した対話状態を出力する。
スロットパラメータが追加または削除された場合、解析部22は、類似度を計算する際に、追加または削除されたスロットパラメータの処理を追加または削除することで対応できる。スロットパラメータをベクトルに変換する処理では、共通のモデルが使用されるため、スロットパラメータの増減の影響を受けない。類似度は、コサイン距離またはユークリッド距離に基づくため、スロットパラメータに依存しない。文章に含まれる意図と過去の対話状態とを統合する際も、追加されたスロットパラメータについては過去の確率を0とする。これにより、削除されたスロットパラメータの確率を、対話状態から取り除くことができる。
過去にユーザUSが言及したスロットパラメータの確率は、スロットに言及されていないときに重みを小さくすることで記憶できる。図2に示す例では、ユーザUSは、1ターン目の発話で中華料理を希望し、2ターン目の発話で川崎駅を希望している。このとき、1ターン目の対話状態を推定する場合に、発話に基づく文章とスロットパラメータの「中華料理」との類似度が高くなる。その結果、1ターン目では、料理の種類に関する意図への重みが大きくなり、料理の種類は和食を希望していると推定できる。一方、2ターン目の対話状態を推定するとき、発話に基づく文章と料理の種類に含まれる全スロットパラメータとの類似度が低くなる。その結果、料理の種類に関する意図への重みが小さくなり、1ターン目での推定結果が保持される。このように、実施形態に係る対話システム110は、過去の履歴を保持しつつ、言及された場合には対話状態を更新できる。
図5は、第1実施形態に係る対話システムの動作を例示するフローチャートである。
上述した対話システム110によれば、以下の処理を実行可能である。
処理部20は、第1対話状態の第1スロットに関する第1特徴量を算出する(ステップSt11)。第1スロットは、例えば、「料理の種類」である。第1特徴量は、例えば、第1対話状態の「料理の種類」に関するユーザUSの希望を表す。
処理部20は、第1特徴量と、第1重みと、に基づいて第1重み付け量を算出する(ステップSt12)。第1重みは、第1文章に係わる。第1重み付け量は、例えば、第1特徴量と第1重みとの積である。または、第1重み付け量は、第1特徴量と第1重みとの積に基づく値である。処理部20は、第1重み付け量を第1記憶部31に記憶する(ステップSt13)。
処理部20は、第1意図量を算出する(ステップSt14)。第1意図量は、第1文章に含まれるユーザUSの第1意図の第1スロットに関する。例えば、第1意図量は、第1文章における「料理の種類」についてのユーザUSの希望を表す。
処理部20は、第1意図量と、第1文章に係わる第2重みと、に基づいて第2重み付け量を算出する(ステップSt15)。第2重みは、例えば第1重みと異なる。第2重み付け量は、例えば、第1意図量と第2重みとの積である。または、第2重み付け量は、第1意図量と第2重みとの積に基づく値である。処理部20は、第2重み付け量を第1記憶部31に記憶する(ステップSt16)。
処理部20は、第1記憶部31にアクセスし、第1記憶部31に記憶された第1重み付け量及び第2重み付け量を参照する(ステップSt17)。処理部20は、第1重み付け量及び第2重み付け量を用いて、第2特徴量を出力(算出)する(ステップSt18)。第2特徴量は、例えば、第1対話状態の後の第2対話状態の「料理の種類」に関するユーザUSの希望を表す。処理部20は、第2特徴量を第1記憶部31に記憶する(ステップSt19)。
対話システム110によれば、重み付けされた第1特徴量及び重み付けされた第1意図量に基づいて第2対話状態の第2特徴量が出力される。これにより、対話状態の第1スロットに関する履歴をより適切に処理できる。
図5に示したフローチャートについて、第1重み付け量及び第2重み付け量は、別のシステムで算出されて第1記憶部31に記憶されても良い。この場合、ステップSt11〜St17は、省略可能である。
対話システム110は、以下の処理を実行しても良い。
図6は、第1実施形態に係る対話システムの動作を例示するフローチャートである。
処理部20は、第1対話状態の第1スロットに関する第1特徴量と、第1対話状態の第2スロットに関する第3特徴量と、を算出する(ステップSt21)。例えば、第2スロットは「場所」である。第3特徴量は、「場所」に関するユーザUSの希望を表す。
処理部20は、第1重み付け量及び第3重み付け量を算出する(ステップSt22)。第1重み付け量は、第1特徴量及び第1重みに基づいて算出される。第3重み付け量は、第3特徴量及び第3重みに基づいて算出される。第1重み及び第3重みは、取得部10から入力された第1文章に係わる。第3重みは、第1重みと同じでも良いし、第1重みと異なっていても良い。第3重み付け量は、例えば、第3特徴量と第3重みとの積に基づく値である。処理部20は、第1重み付け量及び第3重み付け量を、第1記憶部31に記憶する(ステップSt23)。
処理部20は、第1意図量及び第2意図量を算出する(ステップSt24)。第1意図量は、第1文章に含まれるユーザUSの第1意図の第1スロットに関する。第2意図量は、第1意図の第2スロットに関する。例えば、第2意図量は、第1意図の「場所」についてのユーザUSの希望を表す。
処理部20は、第2重み付け量及び第4重み付け量を算出する(ステップSt25)。
第2重み付け量は、第1意図量と、第1文章に係わる第2重みと、に基づいて算出される。第4重み付け量は、第2意図量と、第1文章に係わる第4重みと、に基づいて算出される。第4重みは、例えば、第3重みと異なる。第4重み付け量は、例えば、第2意図量と第4重みとの積に基づく値である。処理部20は、第2重み付け量及び第4重み付け量を、第1記憶部31に記憶する(ステップSt26)。
処理部20は、第1記憶部31にアクセスし、第1重み付け量、第2重み付け量、第3重み付け量、及び第4重み付け量を参照する(ステップSt27)。処理部20は、第2特徴量及び第4特徴量を出力(算出)する(ステップSt28)。第4特徴量は、第3重み付け量及び第4重み付け量を用いて出力される。第4特徴量は、例えば、第2対話状態の「場所」に関するユーザUSの希望を表す。処理部20は、第2特徴量及び第4特徴量を第1記憶部31に記憶する(ステップSt29)。
この処理によれば、対話状態の第1スロットに関する履歴及び第2スロットに関する履歴を、それぞれより適切に処理できる。
対話システム110は、図5のフローチャートで表される処理の後に、さらに以下の処理を実行しても良い。
図7は、第1実施形態に係る対話システムの動作を例示するフローチャートである。
処理部20は、第1記憶部31にアクセスし、第2特徴量を参照する(ステップSt31)。処理部20は、第5重み付け量を算出する(ステップSt32)。第5重み付け量は、第2特徴量及び第5重みに基づいて算出される。第5重みは、第1文章の後に、取得部10で取得した第2文章に係わる。第5重み付け量は、例えば、第2特徴量と第5重みとの積に基づく値である。処理部20は、第5重み付け量を、第1記憶部31に記憶する(ステップSt33)。
処理部20は、第3意図量を算出する(ステップSt34)。第3意図量は、第2文章に含まれるユーザUSの第2意図の第1スロットに関する。例えば、第3意図量は、第2文章における「料理の種類」についてのユーザUSの希望を表す。
処理部20は、第3意図量と、第2文章に係わる第6重みと、に基づいて第6重み付け量を算出する(ステップSt35)。第6重みは、例えば第5重みと異なる。第6重み付け量は、例えば、第3意図量と第6重みとの積である。または、第6重み付け量は、第3意図量と第6重みとの積に基づく値である。処理部20は、第6重み付け量を第1記憶部31に記憶する(ステップSt36)。
処理部20は、第1記憶部31にアクセスし、第1記憶部31に記憶された第5重み付け量及び第6重み付け量を参照する(ステップSt37)。処理部20は、第5重み付け量及び第6重み付け量を用いて、第5特徴量を出力(算出)する(ステップSt38)。第5特徴量は、例えば、第2対話状態の後の第3対話状態の「料理の種類」に関するユーザUSの希望を表す。処理部20は、第5特徴量を第1記憶部31に記憶する(ステップSt39)。
図8は、第1実施形態に係る対話システムの動作を例示する模式図である。
図8は、ユーザUSが食事を望む場合の1つの例を示す。第1実施形態に係る対話システム110によれば、図8に示す例をより適切に処理できる。
図8に示す例において、ユーザUSは、文章TX11の質問に対して、文章TX12において、和食(第1対象)及び中華料理(第2対象)の2つの対象を希望している。その後、文章TX15において、対話システム110は、中華料理のレストランが見つからず、和食のレストランが見つかったことをユーザUSに伝える。文章TX15に対して、ユーザUSは、文章TX16において中華料理を否定している。
文章TX16は、中華料理の否定の意図のみを含む。しかし、文章TX16以前の対話から、ユーザUSは、和食を希望していることが明らかである。第1実施形態に係る対話システム110によれば、文章TX17において、和食のレストランが見つかったことをユーザUSに伝えることができる。
具体的には、対話システム110では、文章TX12を取得したときに、和食に対応する第1スロットパラメータの第1優先度と、中華料理に対応する第2スロットパラメータの第2優先度と、が、それより以前の状態に比べて高くなる。このとき、例えば、第1優先度及び第2優先度は、イタリア料理に対応する第3スロットパラメータの第3優先度よりも高くなる。第1優先度、第2優先度、及び第3優先度のそれぞれは、例えば、確率で表される。第1優先度及び第2優先度の向上は、それぞれ、第1スロットパラメータを希望する確率及び第2スロットパラメータを希望する確率の増大に対応する。
一方、文章TX16を取得すると、第2優先度が低下し、第1優先度が第2優先度よりも高くなる。これは、文章TX16から重みパラメータが抽出され、この重みパラメータに基づいて重みが決定されることによる。
例えば、文章TX14では、「料理の種類」のスロットパラメータへの言及は無い。従って、文章TX14に対応するベクトルと、「料理の種類」に含まれる各スロットパラメータのベクトルと、の間の類似度は小さくなる。文章TX16では、「料理の種類」の「中華料理」のスロットパラメータを否定している。従って、文章TX16に対応するベクトルと「中華料理」のスロットパラメータのベクトルとの間の類似度は高くなる。しかし、文章TX16は、中華料理を否定しているため、類似度は低い。例えば、言及が無い場合と否定の場合に応じて、重みパラメータを変化させることで、文章TX14を取得したときに第2優先度を低下させず、文章TX16を取得したときに第2優先度を大きく低下させることができる。この結果、対話システム110は、ユーザUSが、和食を希望していることを適切に推定できる。
上述した例では、第1記憶部31は、1ターン前の状態の対話状態を記憶している。第1記憶部31は、さらに過去の対話状態を記憶していても良い。例えば、第1記憶部31は、対話状態の第1履歴〜第N履歴(Nは、2以上の実数)を記憶している。第M履歴(Mは、1以上N以下の実数)は、Mターン前の対話状態の履歴である。推定部24は、第1記憶部31にアクセスし、第1履歴〜第N履歴の少なくとも1つを参照する。
決定部25は、入力された文章に含まれる意図と、対話状態の履歴と、に基づいて、それぞれの重みを決定する。例えば、第1記憶部31から推定部24に、第1履歴〜第N履歴が送られる場合、決定部25は、文章に含まれる意図及び第1履歴〜第N履歴のそれぞれに対する重みを決定する。
推定部24は、解析部22から文章の解析結果を受け取る。推定部24は、決定部25から複数の重みを受け取る。推定部24は、解析部22による文章の解析結果と、複数の重みと、1ターン前からNターン前までの対話状態と、に基づいて対話状態を推定する。
図9は、第1実施形態に係る対話システムの別の動作を例示するフローチャートである。
ステップSt40及びSt41は、図4に示したフローチャートのステップSt1及びSt2と同様に実行される。抽出部23は、入力された文章から複数の重みパラメータを抽出する(ステップSt42)。複数の重みパラメータは、それぞれ、過去の複数の対話状態にどの程度注目すべきかを表す。例えば、推定部24による対話状態の推定に第1履歴〜第N履歴が用いられる場合、N個の重みパラメータが抽出される。複数の重みパラメータのそれぞれは、例えば、「1」または「0」で表わされる。例えば、「1」は、その履歴に注目すべきことを表し、「0」は、その履歴に注目しないことを表す。複数の重みパラメータのそれぞれは、注目すべき度合いを表す0以上1以下の実数値であっても良い。または、複数の重みパラメータのそれぞれは、注目すべき度合いを表すベクトルであっても良い。
具体的な重みパラメータの抽出には、例えばニューラルネットワークの一種であるアテンションメカニズムが用いられる。第1履歴〜第N履歴及び単語ベクトルの系列として表された文章をRNNに入力することで、N個の重みパラメータが出力される。この場合、複数の重みパラメータのそれぞれは、実数でも良く、複数次元のベクトルでも良い。
このRNNは、何ターン前の発話に注目すべきかの正解ラベルが付与された学習データを用いて事前に学習される。正解ラベルに対して抽出されるべき重みが異なる場合、その差を縮めるようにRNNのパラメータが学習される。または、対話状態の正解ラベルが付与された学習データを用いてRNNを学習することもできる。
決定部25は、N個の重みパラメータに基づいてN個の重みを決定する(ステップSt43)。N個の重みパラメータが、それぞれ、そのままN個の重みとして決定されても良い。ニューラルネットワークを用いて、N個の重みパラメータをN個の重みに変換しても良い。N個の重みパラメータを正規化してN個の重みが決定されても良い。
決定部25は、第1記憶部31を参照し、複数の過去の対話状態を参照する(ステップSt44)。決定部25は、文章に含まれるユーザUSの意図と、複数の過去の対話状態と、複数の重みと、を用いて現在の対話状態を推定する(ステップSt45)。決定部25は、第1記憶部31に記憶された過去の対話状態がL個以上か判定する(ステップSt46)。記憶された対話状態がL個より少ない場合、決定部25は、最新の対話状態を第1記憶部31に記憶し(ステップSt47)、ステップSt48に進む。記憶した対話状態がL個以上の場合、第1記憶部31は、記憶しているL個の対話状態のうち最も古いものを最新の対話状態により上書きする(ステップSt49)。ステップSt48は、図4に示したフローチャートのステップSt8と同様に実施される。
この方法によれば、対話状態の履歴をより適切に処理できる。例えば、話題が転換した後に以前の話題に戻る場合でも、対話状態をより高精度に推定できる。
図10は、第1実施形態に係る対話システムの動作を例示する模式図である。
図10に示す例では、4ターン目の文章TX28で、話題(ユーザUSの希望)が転換し、以前の話題に戻っている。すなわち、ユーザUSは、文章TX28で、話題を1ターン目の文章TX22で言及した中華料理に戻している。
例えば、対話システム110が用いられる場合、3ターン目の文章TX26が入力された結果、対話状態の「料理の種類」については、「和食」の確率が1となる。一方、文章TX28では、「料理の種類」に関する言及が無い。この結果、文章TX26が入力された時点の対話状態と、文章TX28と、に基づいて、ユーザUSが中華料理を希望していると推定することが容易ではない。
上述した方法によれば、少なくとも2ターン以上前の履歴を用いて現在の対話状態が推定される。例えば、抽出部23は、文章TX28に基づいて、1ターン前の対話状態ではなく、より過去の対話状態に注目すべきとする重みパラメータを抽出する。4ターン目の推定を行う際に1ターン目にかかる重みが大きく、3ターン目にかかる重みが小さくなる。すなわち、対話状態の「料理の種類」について、「和食」の確率を下げ、「中華料理」の確率を高めることができる。
この対話システム110によれば、図5のフローチャートで表される処理の後に、さらに以下の処理を実行可能である。
図11は、第1実施形態に係る対話システムの動作を例示するフローチャートである。
ステップSt51〜St56は、それぞれ、図7に示したフローチャートのステップSt31〜St36と同様に実行される。処理部20は、第1記憶部31にアクセスし、第1特徴量を参照する(ステップSt57)。処理部20は、第7重み付け量を算出する(ステップSt58)。第7重み付け量は、第1特徴量及び第7重みに基づいて算出される。第7重みは、第2文章に係わる。第7重みは、例えば、第5重みおよび第6重みのそれぞれと異なる。第7重み付け量は、例えば、第1特徴量と第7重みとの積に基づく値である。処理部20は、第7重み付け量を、第1記憶部31に記憶する(ステップSt59)。
処理部20は、第1記憶部31にアクセスし、第1記憶部31に記憶された第5重み付け量、第6重み付け量、及び第7重み付け量を参照する(ステップSt60)。処理部20は、第5重み付け量、第6重み付け量、及び第7重み付け量を用いて、第5特徴量を出力(算出)する(ステップSt61)。処理部20は、第5特徴量を第1記憶部31に記憶する(ステップSt62)。
この対話システム110によれば、第2対話状態の第5特徴量が、重み付けされた第2特徴量、重み付けされた第3意図量、及び重み付けされた第1特徴量に基づいて出力される。これにより、対話状態の第1スロットに関する履歴をさらに適切に処理できる。
図12は、第1実施形態の変形例に係る対話システムを例示する模式図である。
図12に示した対話システム120は、抽出部23を含んでいない。この場合、重みは、例えば、取得された文章におけるスロットへの言及の有無または言及の度合いに基づいて決定される。
決定部25は、例えば、重みを決定する際に、人手により作成されたルールを参照する。または、重みを推定するモデルが予め作成されても良い。決定部25は、重みを決定する際に、このモデルを参照する。重みは、推定部24が解析部22から受け取った発話文に含まれる対話状態に基づいて決定されても良い。例えば、発話文に含まれる対話状態のうち最も確率が高いものに基づき重みを決めても良い。また、発話文に含まれる対話状態のうち、全てのスロットパラメータの確率の合計や平均値に基づき重みを決めても良い。さらに、発話文に含まれる対話状態からニューラルネットワークにより重みを決めても良い。このネットワークは、入力として各スロットパラメータの確率を受け取り、重みを出力する。このネットワークは事前に発話文に含まれる対話状態を示すラベルが付与された発話文を用いた教師付き学習によって作成され得る。
図13は、第1実施形態の変形例に係る対話システムを例示するフローチャートである。
取得部10は、ユーザによって入力された文章を取得する(ステップSt71)。処理部20は、取得部10によって取得された文章を解析する(ステップSt72)。これにより、文章に含まれるユーザの意図が推定される。処理部20は、文章に基づいて重みを決定する(ステップSt73)。さらに、処理部20は、過去の対話状態を参照する(ステップSt74)。
処理部20は、文章に含まれるユーザの意図と、過去の対話状態と、重みと、を用いて現在の対話状態を推定する(ステップSt75)。処理部20は、推定された現在の対話状態を記憶する(ステップSt76)。処理部20は、対話が終了したか判定する(ステップSt77)。対話が終了していない場合、ステップS71に戻る。対話が終了した場合は、動作を終了する。
図14は、第1実施形態の変形例に係る対話システムの動作を例示する模式図である。
図14に示す例では、文章TX31〜TX34を含む1ターン目および2ターン目の対話により、例えば、「料理の種類」については、「中華料理」の確率が1となる。「場所」については、「川崎駅」の確率が1となる。その後の文章TX35において、ユーザUSは、和食を希望している。より具体的には、この文章TX35は、ユーザUSが中華料理では無く和食を希望する意図を含む。対話システム120によれば、文章TX35の取得に基づき、「和食」の確率を「中華料理」の確率よりも高めることができる。この結果、対話システム120は、川崎駅の中の和食のレストランを検索し、その検索結果を文章TX36においてユーザUSに伝える。
図14に示す例のように、対話システム120は、第1対象を希望する第1文章を取得すると、第1対象に対応する第1スロットパラメータの第1優先度を、第2対象に対応する第2スロットパラメータの第2優先度よりも高める。そして、対話システム120は、第1文章の取得の後に第2対象を希望する第2文章を取得すると、第2優先度を第1優先度よりも高める。
対話システム120の上述した処理は、第1文章に基づく対話状態および第2文章に含まれる意図のそれぞれに対して、重みが決定されることで可能となる。重みが用いられない場合、文章TX36に基づく対話状態は、例えば、「和食」および「中華料理」のそれぞれの確率が0.5に設定される。重みが用いられることで、「和食」の優先度(確率)を「中華料理」の優先度よりも高くできる。従って、対話システム120によれば、対話システム110と同様に、対話状態の履歴をより適切に処理できる。
図15は、第2実施形態に係る対話システム210を例示する模式図である。
対話システム210は、ユーザによって入力された文章だけでなく、直前に対話システム210が提供した情報(質問)も用いて処理を行う。
対話システム210は、例えば、第5記憶部35、第6記憶部36、第7記憶部37、第3モデル記憶部43、及び出力部50をさらに含む。処理部20は、システム応答取得部26及び対話制御部27をさらに含む。
第5記憶部35は、システム応答ベクトル辞書を記憶する。この辞書は、対話システム110が出力する質問をベクトルに変換するときに参照される。システム応答ベクトル辞書は、例えば、抽象的な複数のタグと複数の数値とのそれぞれの対応、複数のスロットと複数の数値とのそれぞれの対応、及び複数のスロットパラメータと複数の数値とのそれぞれの対応を記憶する。
タグは、文章の意図を抽象的に表現する。例えば、複数のタグは、「質問」及び「確認」などのタグを含む。文章が質問に関する場合は、「質問」のタグが付される。文章が確認に関する場合は、「確認」のタグが付される。
それぞれのタグには、対応する数値が割り当てられる。例えば、「質問」のタグには、1が割り当てられる。「確認」のタグには、2が割り当てられる。同様に、それぞれのスロット及びスロットパラメータには、対応する数値が割り当てられる。例えば、「料理の種類」のスロットには、1が割り当てられる。「場所」のスロットには、2が割り当てられる。「和食」のスロットパラメータには、1が割り当てられる。「中華料理」のスロットパラメータには、2が割り当てられる。
第6記憶部36は、対話コンテンツを記憶する。対話コンテンツは、対話システム210の出力において紹介されるコンテンツを含む。コンテンツは、例えば、料理の種類、店舗の名前、場所、価格帯などである。
第7記憶部37は、シナリオを記憶する。シナリオは、推定された対話状態に基づき、システム応答を決めるために用いられる。例えば、シナリオは、ルールで表される。例えば、ルールの1つは、「和食の確率が0.9以上である場合、質問(場所)を出力する」である。ルールの別の1つは、「和食の確率が0.2以上0.9以下の場合、料理の種類が和食か確認を出力する」である。
シナリオは、事前に学習されたモデルで表されても良い。このモデルは、例えば、各スロットパラメータの確率に基づき、システム応答を選択する。
第3モデル記憶部43は、応答生成モデルを記憶する。応答生成モデルは、抽象的なタグ、スロット、およびスロットパラメータに基づき、システム応答を生成するために用いられる。応答生成モデルは、例えば、ブランクを含むテンプレートを保持する。例えば、抽象的なタグは「質問(〇〇)」であり、テンプレートは「〇〇にご希望はありますか?」である。別の例では、抽象的なタグは「確認(〇〇=△△)」であり、テンプレートは「〇〇は△△ということでよろしいですか?」である。
システム応答取得部26は、対話状態推定に直前のシステム応答を反映させるため、システム応答を受け取る。システム応答は、対話システム210からユーザに対して出力される文章である。システム応答取得部26は、対話制御部27からシステム応答を受け取る。システム応答取得部26は、解析部22に受け取ったシステム応答を送る。
解析部22は、入力部21から文章を受け取る。解析部22は、システム応答取得部26からシステム応答を受け取る。解析部22は、ユーザによって入力された文章とシステム応答とから、文章に含まれるユーザの意図を推定する。解析部22は、推定した意図(文章の解析結果)を推定部24に送る。抽出部23は、ユーザによって入力された文章及びシステム応答から、重みパラメータを抽出する。抽出部23は、抽出した重みパラメータを決定部25に送る。
決定部25は、重みパラメータ及び過去の対話状態に基づき、重みを決定し、推定部24に送る。推定部24は、文章の解析結果と過去の対話状態とを重み付け統合し、現在の対話状態を決定する。推定部24は、推定された対話状態を、対話制御部27に送る。対話制御部27は、推定された対話状態に基づく文章(システム応答)を、システム応答取得部26及び出力部50に送る。
出力部50は、システム応答を受け取ると、システム応答を出力する。例えば、出力部50は、モニタである。この場合、出力部50は、システム応答を表示する。出力部50は、スピーカであり、システム応答を音声で出力しても良い。出力部50は、プリンタであり、システム応答を印刷して表示しても良い。
システム応答は、例えば、テキスト、音声信号、及び抽象化されたタグの少なくともいずれかを用いて表される。例えば、「料理の種類にご希望はありますか」という質問文は、抽象化したタグでは、「質問(料理の種類)」で表される。「希望の料理の種類は和食ということでよろしいですか?」という質問文は、抽象化したタグでは、「確認(料理の種類=和食)」で表される。「レストランAはいかがでしょうか?」という質問文は、抽象化したタグでは、「提案(名前=レストランA)」で表される。「場所は川崎で、電話番号は1234−5678です」という回答文は、抽象化したタグでは、「回答(場所=川崎、電話番号=1234−5678)」で表される。このように、タグは、スロットとスロットパラメータの組で表される。
ユーザにより入力された文章に注目すべき度合は、システム応答に注目すべき度合いと同じとは限らない。例えば、システム応答が「手続きAに関するお問い合わせということでよろしいでしょうか?」と質問する。ユーザがその質問に対して「はい」と答える。この場合、手続きAに対応するスロットパラメータに注目すべきである。対話状態を推定するための文章の重要性は低い。システム応答へ注目すれば、対話状態を適切に推定できる。
図16は、第2実施形態に係る対話システムの動作を例示するフローチャートである。
対話制御部27は、システム応答を決定し(ステップSt80)、システム応答をシステム応答取得部26及び出力部50に送る。例えば、対話が開始した直後は、「いらっしゃいませ。ご用件をお伺いします」がシステム応答である。その後は、対話状態に基づきシステム応答が決定される。この応答制御には、例えば、事前に作成されたルールまたは事前に学習されたモデルが用いられる。
システム応答取得部26は、システム応答を取得する(ステップSt81)。解析部22は、ユーザにより入力された文章とシステム応答を解析し(ステップSt82および83)、ユーザの意図を推定する。文章については、対話システム110と同様にして意図を推定する。システム応答については、例えばシステム応答のタグの中に該当するスロットパラメータが含まれているか否かを判定する。例えば、タグの中に該当するスロットパラメータが含まれている場合は「1」で表される。タグの中に該当するスロットパラメータが含まれていない場合は「0」で表される。
抽出部23は、ユーザにより入力された文章とシステム応答に基づき、重みパラメータを抽出する(ステップSt84)。ステップSt85〜St89は、それぞれ、図4に示したフローチャートのステップSt4〜St8と同様に実行される。
対話システム210によれば、対話状態をより適切に推定できる。例えば、対話システム210がユーザに対して質問し、対話システム210がその質問に対する回答を取得したときに、ユーザの意図をより適切に推定できる。
一例として、対話システムがユーザに対し「料理ジャンルは和食ということでよろしいでしょうか?」と質問する。この質問に対して、ユーザは、「そう」と答える。この場合、ユーザにより入力された「そう」の文章だけからユーザが和食を希望していると推定することは容易ではない。
対話システム210によれば、システム応答取得部26が、システム応答を取得する。これにより、重みパラメータを抽出する際に、「そう」が肯定を表していることが分かり、システム応答への重みを大きくできる。この結果、ユーザが和食を希望していると適切に推定できる。
図17は、実施形態に係る対話装置の構成を例示する模式図である。
上述した各実施形態に係る対話システムは、例えば、図15に示した対話装置310により実現される。対話装置310は、一例として、一般のコンピュータ(情報処理装置)と同様のハードウェア構成により実現される。対話装置310は、CPU(Central Processing Unit)311と、取得部312と、出力部313と、ROM(Read Only Memory)314と、RAM(Random Access Memory)315と、記憶部316と、通信装置317と、バス318とを含む。各部は、バス318により接続される。
CPU311は、ROM314または記憶部316に予め記憶された各種プログラムと協働して各種処理を実行し、対話装置310を構成する各部の動作を統括的に制御する。CPU311は、処理において、RAM315の所定領域を作業領域として用いる。CPU311は、ROM314または記憶部316に予め記憶されたプログラムと協働して、取得部312、出力部313、及び通信装置317等を実現させる。
取得部312は、例えば、キーボード、マイクロフォン、及びタッチパネルの少なくともいずれかを含む。取得部312は、ユーザから入力された情報を指示信号として受け付け、その指示信号をCPU311に出力する。出力部313は、例えば、モニタ、スピーカ、及びモニタの少なくともいずれかを含む。出力部313は、CPU311から出力された信号に基づいて、各種情報を出力する。
ROM314は、対話装置310の制御に用いられるプログラムおよび各種設定情報等を書き換え不可能に記憶する。RAM315は、SDRAM(Synchronous Dynamic Random Access Memory)等の揮発性の記憶媒体である。RAM315は、CPU311の作業領域として機能する。具体的には、対話装置310が用いる各種変数およびパラメータ等を一時記憶するバッファ等として機能する。
記憶部316は、フラッシュメモリ等の半導体による記憶媒体、磁気的または光学的に記録可能な記憶媒体等の書き換え可能な記録装置である。記憶部316は、対話装置310の制御に用いられるプログラムおよび各種設定情報等を記憶する。記憶部316は、第1記憶部31〜第7記憶部37及び第1モデル記憶部41〜第3モデル記憶部43が記憶する情報を記憶する。通信装置317は、外部の機器と通信して情報の送受信を行うために用いられる。
以上で説明した各実施形態によれば、対話状態の履歴をより適切に処理できる対話システム及び対話状態推定方法を提供できる。以上で説明した各実施形態をシステムに実行させるためのプログラム及びそのプログラムを記憶した記憶媒体を用いることで、対話状態の履歴をより適切に処理できる。
以上、具体例を参照しつつ、本発明の実施の形態について説明した。しかし、本発明の実施形態は、これらの具体例に限定されるものではない。例えば、取得部、処理部、記憶部、モデル記憶部、出力部などの各要素の具体的な構成に関しては、当業者が公知の範囲から適宜選択することにより本発明を同様に実施し、同様の効果を得ることができる限り、本発明の範囲に包含される。
また、各具体例のいずれか2つ以上の要素を技術的に可能な範囲で組み合わせたものも、本発明の要旨を包含する限り本発明の範囲に含まれる。
その他、本発明の実施の形態として上述した対話システムを基にして、当業者が適宜設計変更して実施し得る全ての対話システムも、本発明の要旨を包含する限り、本発明の範囲に属する。
その他、本発明の思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の範囲に属するものと了解される。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10 取得部、 20 処理部、 21 入力部、 22 解析部、 23 抽出部、 24 推定部、 25 決定部、 26 システム応答取得部、 27 対話制御部、 31 第1記憶部、 32 第2記憶部、 33 第3記憶部、 34 第4記憶部、 35 第5記憶部、 36 第6記憶部、 37 第7記憶部、 41 第1モデル記憶部、 42 第2モデル記憶部、 43 第3モデル記憶部、 50 出力部、 110、120、210 対話システム、 310 対話装置、 311 CPU、 312 取得部、 313 出力部、 314 ROM、 315 RAM、 316 記憶部、 317 通信装置、 318 バス、 S1〜Sm スロット、 St1〜St8、St11〜St19、St21〜St29、St31〜St39、St40〜St49、St51〜St62、St71〜77、St80〜89 ステップ、 TX1〜TX8、TX11〜TX18、TX21〜TX29、TX31〜TX38 文章、 US ユーザ、 V11〜V13、V21〜V23、Vm1〜Vmn バリュー

Claims (12)

  1. 第1文章を取得する取得部と、
    第1対話状態の第1スロットに関する第1特徴量と、前記第1文章に係わる第1重みと、に基づく第1重み付け量を参照し、
    前記第1文章に含まれる第1意図の前記第1スロットに関する第1意図量と、前記第1重みと異なり、前記第1文章に係わる第2重みと、に基づく第2重み付け量を参照し、
    前記第1重み付け量および前記第2重み付け量を用いて、前記第1対話状態の後の第2対話状態の前記第1スロットに関する第2特徴量を出力する、
    処理部と、
    を備えた対話システム。
  2. 前記第1重みは、前記第1文章における前記第1スロットへの言及の第1度合いに係わる請求項1記載の対話システム。
  3. 前記第1度合いが第1状態のとき、前記第1重みは前記第2重みよりも大きく、
    前記第1度合いが第2状態のとき、前記第2重みは前記第1重みよりも大きく、
    前記第1状態における前記第1度合いは、前記第2状態における前記第1度合いよりも小さい請求項2記載の対話システム。
  4. 前記第1スロットは、複数の第1スロットパラメータを含み、
    前記処理部は、前記第1文章に対応する第1ベクトルと、前記複数の第1スロットパラメータのそれぞれのベクトルと、の類似度に基づいて前記第1意図量を算出する請求項1〜3のいずれか1つに記載の対話システム。
  5. 前記第1重み付け量は、前記第1特徴量と前記第1重みとの積に基づき
    前記第2重み付け量は、前記第1意図量と前記第2重みとの積に基づく請求項1〜4のいずれか1つに記載の対話システム。
  6. 前記第2特徴量は、前記第1重み付け量と前記第2重み付け量との和に基づく請求項1〜5のいずれか1つに記載の対話システム。
  7. 前記処理部は、さらに、
    前記第1対話状態の第2スロットに関する第3特徴量と、前記第1文章に係わる第3重みと、に基づく第3重み付け量を参照し、
    前記第1意図の前記第2スロットに関する第2意図量と、前記第3重みと異なり、前記第1文章に係わる第4重みと、に基づく第4重み付け量を参照し、
    前記第3重み付け量および前記第4重み付け量を用いて、前記第2対話状態の前記第2スロットに関する第4特徴量を出力する、
    請求項1〜6のいずれか1つに記載の対話システム。
  8. 前記取得部は、前記第1文章の取得の後に第2文章をさらに取得し、
    前記処理部は、さらに、
    前記第2特徴量と、前記第2文章に係わる第5重みと、に基づく第5重み付け量を参照し、
    前記第2文章に含まれる第2意図の前記第1スロットに関する第2意図量と、前記第5重みと異なり、前記第2文章に係わる第6重みと、に基づく第6重み付け量を参照し、
    前記第5重み付け量および前記第6重み付け量を用いて、前記第2対話状態の後の第3対話状態の前記第1スロットに関する第5特徴量を出力する、
    請求項1〜7のいずれか1つに記載の対話システム。
  9. 前記処理部は、
    前記第1特徴量と、前記第5重みおよび前記第6重みと異なり、前記第2文章に拘わる第7重みと、に基づく第7重み付け量をさらに参照し、
    前記第5重み付け量、前記第6重み付け量、及び第7重み付け量を用いて前記第5特徴量を出力する、
    請求項8記載の対話システム。
  10. 第1対象及び第2対象を希望する第1文章を取得すると、前記第1対象に対応する第1スロットパラメータの第1優先度及び前記第2対象に対応する第2スロットパラメータの第2優先度を高め、
    前記第1文章の取得の後に前記第2対象を否定する第2文章を取得すると、前記第1優先度を前記第2優先度よりも高める、
    処理部を備えた対話システム。
  11. 前記処理部は、前記第1文章を取得すると、前記第1優先度及び前記第2優先度を、第3対象に対応する第3スロットパラメータの第3優先度よりも高める請求項10記載の対話システム。
  12. 第1対象を希望する第1文章を取得すると、前記第1対象に対応する第1スロットパラメータの第1優先度を、第2対象に対応する第2スロットパラメータの第2優先度よりも高め、
    前記第1文章の取得の後に前記第2対象を希望する第2文章を取得すると、前記第2優先度を前記第1優先度よりも高める、
    処理部を備えた対話システム。
JP2017238764A 2017-12-13 2017-12-13 対話システム Pending JP2019106054A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017238764A JP2019106054A (ja) 2017-12-13 2017-12-13 対話システム
CN201811008382.7A CN110019746B (zh) 2017-12-13 2018-08-31 对话系统
US16/119,674 US11087753B2 (en) 2017-12-13 2018-08-31 Dialog system
JP2021092863A JP7249378B2 (ja) 2017-12-13 2021-06-02 対話装置、プログラム、及び対話方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017238764A JP2019106054A (ja) 2017-12-13 2017-12-13 対話システム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021092863A Division JP7249378B2 (ja) 2017-12-13 2021-06-02 対話装置、プログラム、及び対話方法

Publications (1)

Publication Number Publication Date
JP2019106054A true JP2019106054A (ja) 2019-06-27

Family

ID=66697149

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2017238764A Pending JP2019106054A (ja) 2017-12-13 2017-12-13 対話システム
JP2021092863A Active JP7249378B2 (ja) 2017-12-13 2021-06-02 対話装置、プログラム、及び対話方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2021092863A Active JP7249378B2 (ja) 2017-12-13 2021-06-02 対話装置、プログラム、及び対話方法

Country Status (3)

Country Link
US (1) US11087753B2 (ja)
JP (2) JP2019106054A (ja)
CN (1) CN110019746B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102567447B1 (ko) * 2018-03-05 2023-08-16 구글 엘엘씨 자동화 어시스턴트를 이용한 이전 대화 컨텍스트사이의 전환
KR102133825B1 (ko) * 2018-06-22 2020-07-16 서강대학교 산학협력단 단어자질을 강화한 음성 대화 방법 및 시스템
US11971910B2 (en) * 2018-10-22 2024-04-30 International Business Machines Corporation Topic navigation in interactive dialog systems
KR102281581B1 (ko) * 2019-07-17 2021-07-23 에스케이텔레콤 주식회사 목표지향 대화시스템에서의 대화상태 추적방법 및 장치
US11250216B2 (en) * 2019-08-15 2022-02-15 International Business Machines Corporation Multiple parallel delineated topics of a conversation within the same virtual assistant
US11636438B1 (en) 2019-10-18 2023-04-25 Meta Platforms Technologies, Llc Generating smart reminders by assistant systems
US11567788B1 (en) 2019-10-18 2023-01-31 Meta Platforms, Inc. Generating proactive reminders for assistant systems
CN110827831A (zh) * 2019-11-15 2020-02-21 广州洪荒智能科技有限公司 基于人机交互的语音信息处理方法、装置、设备及介质
US11727926B1 (en) * 2020-09-18 2023-08-15 Amazon Technologies, Inc. Systems and methods for noise reduction
WO2023219261A1 (ko) * 2022-05-09 2023-11-16 삼성전자주식회사 대화 컨텐츠를 기반으로 이벤트를 생성하는 전자 장치, 제어 방법 및 비일시적 컴퓨터 판독 가능 저장 매체

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004354787A (ja) * 2003-05-30 2004-12-16 Nippon Telegr & Teleph Corp <Ntt> 統計情報を用いた対話方法及びその装置と、対話プログラム及びそのプログラムを記録した記録媒体
JP2005301780A (ja) * 2004-04-14 2005-10-27 Sony Corp 情報処理装置および情報処理方法、並びに、プログラム

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3716870B2 (ja) * 1995-05-31 2005-11-16 ソニー株式会社 音声認識装置および音声認識方法
US7346492B2 (en) * 2001-01-24 2008-03-18 Shaw Stroz Llc System and method for computerized psychological content analysis of computer and media generated communications to produce communications management support, indications, and warnings of dangerous behavior, assessment of media images, and personnel selection support
US8041570B2 (en) * 2005-05-31 2011-10-18 Robert Bosch Corporation Dialogue management using scripts
US20100076843A1 (en) * 2006-02-28 2010-03-25 Speaksoft, Inc. Live-agent-enabled teis systems
WO2008034111A2 (en) * 2006-09-14 2008-03-20 Google Inc. Integrating voice-enabled local search and contact lists
JP2010020273A (ja) * 2007-12-07 2010-01-28 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US8793119B2 (en) * 2009-07-13 2014-07-29 At&T Intellectual Property I, L.P. System and method for generating manually designed and automatically optimized spoken dialog systems
US9263058B2 (en) * 2010-06-24 2016-02-16 Honda Motor Co., Ltd. Communication system and method between an on-vehicle voice recognition system and an off-vehicle voice recognition system
US9329832B2 (en) * 2011-05-09 2016-05-03 Robert Allen Blaisch Voice internet system and method
JP5967569B2 (ja) * 2012-07-09 2016-08-10 国立研究開発法人情報通信研究機構 音声処理システム
US9070366B1 (en) * 2012-12-19 2015-06-30 Amazon Technologies, Inc. Architecture for multi-domain utterance processing
WO2014109421A1 (ko) * 2013-01-09 2014-07-17 엘지전자 주식회사 단말기 및 그 동작 제어 방법
US9231898B2 (en) * 2013-02-08 2016-01-05 Machine Zone, Inc. Systems and methods for multi-user multi-lingual communications
AU2014233517B2 (en) * 2013-03-15 2017-05-25 Apple Inc. Training an at least partial voice command system
US9898789B2 (en) * 2013-04-16 2018-02-20 Palo Alto Research Center Incorporated Method and a system for providing hosted services based on a generalized model of a health/wellness program
US9589565B2 (en) * 2013-06-21 2017-03-07 Microsoft Technology Licensing, Llc Environmentally aware dialog policies and response generation
WO2015075975A1 (ja) * 2013-11-25 2015-05-28 三菱電機株式会社 対話制御装置及び対話制御方法
US9361589B2 (en) * 2013-11-28 2016-06-07 Akademia Gorniczo-Hutnicza Im. Stanislawa Staszira W. Krakowie System and a method for providing a dialog with a user
JP6235360B2 (ja) * 2014-02-05 2017-11-22 株式会社東芝 発話文収集装置、方法、及びプログラム
US9263042B1 (en) * 2014-07-25 2016-02-16 Google Inc. Providing pre-computed hotword models
US20160034249A1 (en) * 2014-07-31 2016-02-04 Microsoft Technology Licensing Llc Speechless interaction with a speech recognition device
US9836452B2 (en) * 2014-12-30 2017-12-05 Microsoft Technology Licensing, Llc Discriminating ambiguous expressions to enhance user experience
JP6334815B2 (ja) * 2015-03-20 2018-05-30 株式会社東芝 学習装置、方法、プログラムおよび音声対話システム
WO2016157642A1 (ja) * 2015-03-27 2016-10-06 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP6604542B2 (ja) * 2015-04-02 2019-11-13 パナソニックIpマネジメント株式会社 対話方法、対話プログラム及び対話システム
US10229671B2 (en) * 2015-12-02 2019-03-12 GM Global Technology Operations LLC Prioritized content loading for vehicle automatic speech recognition systems
KR102447513B1 (ko) * 2016-01-22 2022-09-27 한국전자통신연구원 점증적 대화지식 자가학습 기반 대화장치 및 그 방법
US9978367B2 (en) * 2016-03-16 2018-05-22 Google Llc Determining dialog states for language models
JP6391887B2 (ja) * 2016-04-11 2018-09-19 三菱電機株式会社 応答生成装置、対話制御システムおよび応答生成方法
US10431205B2 (en) * 2016-04-27 2019-10-01 Conduent Business Services, Llc Dialog device with dialog support generated using a mixture of language models combined using a recurrent neural network
JP6671020B2 (ja) * 2016-06-23 2020-03-25 パナソニックIpマネジメント株式会社 対話行為推定方法、対話行為推定装置及びプログラム
WO2018000278A1 (zh) * 2016-06-29 2018-01-04 深圳狗尾草智能科技有限公司 一种基于状态机上下文敏感多轮对话管理系统及方法
US10451430B2 (en) * 2016-07-26 2019-10-22 International Business Machines Corporation Navigation alerting using conversation analysis
CN107704482A (zh) * 2016-08-09 2018-02-16 松下知识产权经营株式会社 方法、装置以及程序
US11183170B2 (en) * 2016-08-17 2021-11-23 Sony Corporation Interaction control apparatus and method
US10403273B2 (en) * 2016-09-09 2019-09-03 Oath Inc. Method and system for facilitating a guided dialog between a user and a conversational agent
US9947319B1 (en) * 2016-09-27 2018-04-17 Google Llc Forming chatbot output based on user state
US10796217B2 (en) * 2016-11-30 2020-10-06 Microsoft Technology Licensing, Llc Systems and methods for performing automated interviews
US10636418B2 (en) * 2017-03-22 2020-04-28 Google Llc Proactive incorporation of unsolicited content into human-to-computer dialogs
US10224032B2 (en) * 2017-04-19 2019-03-05 International Business Machines Corporation Determining an impact of a proposed dialog act using model-based textual analysis
US10360908B2 (en) * 2017-04-19 2019-07-23 International Business Machines Corporation Recommending a dialog act using model-based textual analysis
US10453454B2 (en) * 2017-10-26 2019-10-22 Hitachi, Ltd. Dialog system with self-learning natural language understanding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004354787A (ja) * 2003-05-30 2004-12-16 Nippon Telegr & Teleph Corp <Ntt> 統計情報を用いた対話方法及びその装置と、対話プログラム及びそのプログラムを記録した記録媒体
JP2005301780A (ja) * 2004-04-14 2005-10-27 Sony Corp 情報処理装置および情報処理方法、並びに、プログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
杉山 聡 外2名: "対話履歴を利用した協調的応答生成", 言語処理学会第6回年次大会発表論文集, JPN6020021666, 7 March 2000 (2000-03-07), JP, pages 227 - 230, ISSN: 0004290193 *
福井 教順 外3名: "補助シナリオを利用したマルチモーダル対話システムの検討", 第69回(平成19年)全国大会講演論文集(2) 人工知能と認知科学, JPN6020021664, 6 March 2007 (2007-03-06), JP, pages 2 - 409, ISSN: 0004455785 *

Also Published As

Publication number Publication date
JP2021131907A (ja) 2021-09-09
US11087753B2 (en) 2021-08-10
CN110019746B (zh) 2023-10-10
US20190180743A1 (en) 2019-06-13
JP7249378B2 (ja) 2023-03-30
CN110019746A (zh) 2019-07-16

Similar Documents

Publication Publication Date Title
JP7249378B2 (ja) 対話装置、プログラム、及び対話方法
CN110111775B (zh) 一种流式语音识别方法、装置、设备及存储介质
Shi et al. Contextual spoken language understanding using recurrent neural networks
CN108062954B (zh) 语音识别方法和装置
US20120130716A1 (en) Speech recognition method for robot
US20200160863A1 (en) Electronic apparatus for processing user utterance and controlling method thereof
US10224030B1 (en) Dynamic gazetteers for personalized entity recognition
CN111161726B (zh) 一种智能语音交互方法、设备、介质及系统
CN111445898B (zh) 语种识别方法、装置、电子设备和存储介质
CN112673421A (zh) 训练和/或使用语言选择模型以自动确定用于口头话语的话音辨识的语言
JP6927318B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP6370962B1 (ja) 生成装置、生成方法および生成プログラム
CN110998719A (zh) 信息处理设备和信息处理方法
EP3980991B1 (en) System and method for recognizing user&#39;s speech
CN115017919B (zh) 用于支持训练数据快速构建和流程自定义的多场景对话系统及方法
CN114416989A (zh) 一种文本分类模型优化方法和装置
CN110717027B (zh) 多轮智能问答方法、系统以及控制器和介质
CN115712657A (zh) 基于元宇宙的用户需求挖掘方法及系统
CN113051384A (zh) 基于对话的用户画像抽取方法及相关装置
KR20190094087A (ko) 머신러닝 기반의 대화형 ai 에이전트 시스템과 연관된, 사용자 맞춤형 학습 모델을 포함하는 사용자 단말 및 사용자 맞춤형 학습 모델이 기록된 컴퓨터 판독가능 기록 매체
CN113327575A (zh) 一种语音合成方法、装置、计算机设备和存储介质
CN112863496B (zh) 一种语音端点检测方法以及装置
CN115017914A (zh) 语言处理方法、装置、电子设备以及存储介质
CN112037772A (zh) 基于多模态的响应义务检测方法、系统及装置
CN113555021A (zh) 用于对IoT设备执行动作的设备、方法及计算机程序

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190815

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200603

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200622

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200821

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210302