(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-02-13
(54)【発明の名称】要求対話における誤り訂正及び抽出
(51)【国際特許分類】
G10L 15/10 20060101AFI20230206BHJP
G10L 15/00 20130101ALI20230206BHJP
G06F 3/16 20060101ALI20230206BHJP
G06F 3/01 20060101ALI20230206BHJP
【FI】
G10L15/10 500T
G10L15/00 200H
G06F3/16 650
G06F3/16 610
G06F3/01 510
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022535208
(86)(22)【出願日】2020-12-14
(85)【翻訳文提出日】2022-08-09
(86)【国際出願番号】 US2020064828
(87)【国際公開番号】W WO2021119586
(87)【国際公開日】2021-06-17
(32)【優先日】2019-12-13
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】520173819
【氏名又は名称】ズーム ビデオ コミュニケーションズ インコーポレイテッド
【氏名又は名称原語表記】Zoom Video Communications, Inc.
【住所又は居所原語表記】55 Almaden Blvd., 6th Floor, San Jose, CA 95113 U.S.A.
(74)【代理人】
【識別番号】100137969
【氏名又は名称】岡部 憲昭
(74)【代理人】
【識別番号】100104824
【氏名又は名称】穐場 仁
(74)【代理人】
【識別番号】100121463
【氏名又は名称】矢口 哲也
(72)【発明者】
【氏名】コンスタンチン,ステファン
(72)【発明者】
【氏名】ヴァイベル,アレキサンダー
【テーマコード(参考)】
5E555
【Fターム(参考)】
5E555AA15
5E555AA46
5E555BA02
5E555BA03
5E555BA05
5E555BA06
5E555BA38
5E555BA88
5E555BA90
5E555BB02
5E555BB03
5E555BB05
5E555BB06
5E555BB38
5E555BB40
5E555BC04
5E555CA12
5E555CA41
5E555CA42
5E555CA44
5E555CA47
5E555CB12
5E555CB64
5E555CB66
5E555CC01
5E555DA23
5E555EA19
5E555EA27
5E555FA00
(57)【要約】
システムは、ユーザからの要求に応じて動作するように構成されている機械と、機械向けのユーザからの操作モードの対話ストリームを検知するための検知手段と、を備える。システムはまた、訓練対話ストリームデータセット中の各訓練例について、機械向けの訂正要求を出力するように、機械学習を通じてニューラルネットワークを訓練するように構成されているコンピューティングシステムも備える。コンピューティングシステムはまた、操作モードにおいて、訓練されたニューラルネットワークを使用し、検知手段により検知されている、機械向けのユーザからの操作モード対話ストリームに基づき、機械向けの操作モードの訂正要求を生成するようにも構成されている。
【選択図】
図4
【特許請求の範囲】
【請求項1】
システムであって、
ユーザからのユーザ意図に応じて動作するように構成されている機械と、
前記機械の前記ユーザからの操作モードの通信を検知するための検知手段と、
前記検知手段と通信しているコンピュータシステムと、を備え、前記コンピュータシステムが、
訓練データセット中の各訓練例について、前記機械向けの1つまたは複数の訂正ユーザ意図を出力するため、機械学習を通じてニューラルネットワークを訓練し、かつ
操作モードにおいて、前記訓練されたニューラルネットワークを使用し、前記検知手段により検知される、前記機械向けの前記ユーザからの前記操作モードの通信に基づき、前記機械向けの1つまたは複数の訂正された操作モードのユーザ意図を生成、するように構成されている、システム。
【請求項2】
前記訓練データセットが訓練通信を含み、前記訓練通信が、前記機械向けの訓練ユーザ意図、および前記訓練ユーザ意図の訓練訂正をそれぞれ含み、
前記操作モードの通信が、前記機械向けの操作モードのユーザ意図、および前記操作モードのユーザ意図に対する操作モードの訂正を含む、
請求項1に記載のシステム。
【請求項3】
前記ニューラルネットワークが、
前記訓練データセット中の前記訓練ユーザ意図における修復対象を識別し、前記訓練データセット中の前記訓練ユーザ意図に対する訂正における訓練修復を識別し、前記訓練データセット中の識別された前記修復対象および前記修復に基づき、前記機械向けの前記1つまたは複数の訂正ユーザ意図を生成するように訓練され、かつ
前記操作モードにおいて、前記操作モードのユーザ意図において識別された操作モードの修復対象と、前記操作モードの訂正において識別された操作モードの修復とに基づき、前記機械向けの前記1つまたは複数の訂正された操作モードのユーザ意図を生成するように構成されている、請求項2に記載のシステム。
【請求項4】
前記ニューラルネットワークが、前記操作モードにおいて、前記機械向けの第2の操作モードのユーザ意図において識別された操作モードの修復対象と、前記機械向けの事前操作モードの通信において識別された操作モードの修復とに基づき、前記機械向けの第2の操作モードの訂正ユーザ意図を生成するように構成されている、請求項3に記載のシステム。
【請求項5】
前記コンピュータシステムが、前記操作モードのユーザ意図において識別された修復対象と、前記識別された修復対象の前記1つまたは複数の訂正ユーザ意図との間の関係を学習するように訓練されている、第2のニューラルネットワークをさらに備える、請求項3に記載のシステム。
【請求項6】
前記ニューラルネットワークが固定サイズの出力語彙を有する、請求項1に記載のシステム。
【請求項7】
前記ニューラルネットワークが、前記訓練データセット中の通信用ワードトークンにラベルを割り当て、前記割り当てられたラベルに基づき、前記訓練データセット中の各訓練例について、前記1つまたは複数の訂正ユーザ意図を決定するように訓練されている、請求項3に記載のシステム。
【請求項8】
前記ニューラルネットワークが、固定サイズの出力語彙を有さない、請求項1に記載のシステム。
【請求項9】
前記機械がロボットを含む、請求項2に記載のシステム。
【請求項10】
前記ユーザによる前記操作モードの訂正が、前記ロボットによる不適当な動作に対する前記ユーザによる応答を含み、
前記検知手段が、前記ロボットによる前記不適当な動作に対する前記ユーザによる前記応答を検知するための手段を含む、
請求項9に記載のシステム。
【請求項11】
前記応答が、前記ユーザによる物理的応答、前記ユーザによる言語応答、前記ユーザによる直示的応答、および前記ユーザによるジェスチャからなる群から選択される応答を含む、請求項10に記載のシステム。
【請求項12】
前記機械が、コンピュータ、モバイル端末、装置、家庭用エンターテインメントシステム、パーソナルアシスタント、自動車システム、健康管理システムおよび医療機器からなる群から選択されるプロセッサベースのデバイスを含む、請求項1に記載のシステム。
【請求項13】
前記検知された操作モードのユーザ意図が、前記ユーザからの音声を含み、
前記検知手段が、マイクロフォンおよび自然言語プロセッサ(NLP)を含む、
請求項1に記載のシステム。
【請求項14】
前記検知された操作モードのユーザ意図が、テキストを含む電子メッセージを含み、
前記検知手段が、前記電子メッセージ中の前記テキストを処理するための自然言語プロセッサ(NLP)を含む、
請求項1に記載のシステム。
【請求項15】
前記検知手段が、モーションセンサ、カメラ、圧力センサ、近接センサ、湿度センサ、周囲光センサ、GPS受信機、およびタッチセンサ式ディスプレイからなる群から選択されるセンサを含む、請求項1に記載のシステム。
【請求項16】
前記検知手段が前記機械の一部である、請求項1に記載のシステム。
【請求項17】
前記コンピュータシステムが前記機械の一部である、請求項1に記載のシステム。
【請求項18】
前記機械向けの前記ユーザからの前記ユーザ意図が、前記機械向けの前記ユーザからの命令要求を含む、請求項1に記載のシステム。
【請求項19】
前記検知手段により検知される前記操作モードの通信が、テキスト、話し言葉、ジェスチャなどの物理的なもの、頭の動き、動作からなる群から選択される通信モダリティを含む、請求項1に記載のシステム。
【請求項20】
前記検知手段により検知された前記操作モードの通信が対話ストリームを含み、前記対話ストリームが前記ユーザからの対話を含む、請求項1に記載のシステム。
【請求項21】
訓練データセット中の各訓練例について、ユーザからのユーザ意図に応じて動作するように構成されている機械向けの1つまたは複数の訂正ユーザ意図を出力するよう、機械学習を通じてニューラルネットワークを訓練することと、
前記ニューラルネットワークの訓練後の前記ニューラルネットワークの操作モードにおいて、
検知手段により、前記機械向けのユーザからの操作モードの通信を検知することと、
前記検知手段と通信しているコンピュータシステムにより、前記訓練されたニューラルネットワークを使用し、前記検知手段により検知された前記操作モードの通信に基づき、前記機械向けの1つまたは複数の訂正された操作モードのユーザ意図を生成することと、を含む、方法。
【請求項22】
前記訓練データセットが、前記機械向けの訓練ユーザ意図および前記訓練ユーザ意図の訓練訂正をそれぞれ含む、訓練通信を含み、
前記操作モードの通信が、前記機械向けの操作モードのユーザ意図、および前記ユーザ意図に対する操作モードの訂正を含む、
請求項21に記載の方法。
【請求項23】
前記ニューラルネットワークを訓練することが、
前記訓練データセット中の前記訓練ユーザ意図における修復対象を識別し、前記訓練データセット中の前記訓練ユーザ意図に対する訂正における訓練修復を識別し、前記訓練データセット中の識別された前記修復対象および前記修復に基づき、前記機械向けの前記1つまたは複数の訂正ユーザ意図を生成するように前記ニューラルネットワークを訓練することを含み、
前記1つまたは複数の訂正された操作モードのユーザ意図を生成することが、前記操作モードのユーザ意図において識別された操作モードの修復対象と、前記操作モードの訂正において識別された操作モードの修復に基づき、前記機械向けの前記1つまたは複数の訂正された操作モードのユーザ意図を生成することを含む、請求項22に記載の方法。
【請求項24】
前記操作モードにおいて、前記ニューラルネットワークにより、前記機械向けの第2の操作モードのユーザ意図で識別された操作モードの修復対象と、前記機械向けの事前操作モードの通信で識別された操作モードの修復と、に基づき、前記機械向けの第2の操作モードの訂正ユーザ意図をさらに含む、請求項23に記載の方法。
【請求項25】
前記機械がロボットを含み、
前記ユーザによる前記操作モードの訂正が、前記ロボットによる不適当な動作に対する前記ユーザによる応答を含み、
前記操作モードの通信を検知することが、前記検知手段により、前記ロボットによる前記不適当な動作に対する前記ユーザによる前記応答を検知することを含む、
請求項22に記載の方法。
【請求項26】
前記応答を検知することが、前記ユーザによる物理的応答、前記ユーザによる言語応答、前記ユーザによる直示的応答、および前記ユーザによるジェスチャからなる群から選択される応答を、前記検知手段により検知することを含む、請求項25に記載の方法。
【発明の詳細な説明】
【背景技術】
【0001】
[0001](優先権主張)
本出願は、上記と同じ名称及び発明者らによる、2019年12月13日に出願された、米国仮出願番号第62/947,946号の優先権を主張するものであり、本明細書の一部を構成するものとしてその全体を援用する。
【0002】
[0002]誤り及び曖昧性は、対話中、回避するのが困難である。訂正によって誤りから復帰し、曖昧性を解消することが可能となる。例えば、家庭用ロボットは、「洗浄済ナイフをカトラリー用の引き出しに入れて」という要求を受け取るが、ロボットは、引き出しのうちどれがカトラリー用の引き出しなのかを識別しない。ロボットは、引き出しのうち1つを選択し、そこにナイフを入れる。この選択が間違っている場合には、ユーザは、例えば「違います、シンク右の引き出しに入れて」などと言ってロボットを訂正しなくてはならない。代わりに、ロボットはどの引き出しがカトラリー用の引き出しかを尋ねる可能性がある。例えば「シンク右の引き出しです」といった人間による説明応答もまた、応答が曖昧性を解消するため、訂正である。別のタイプの訂正は、例えば「気が変わりました、フォークを入れてください」と言うなど、ユーザの気が変わった時に発生する。
【発明の概要】
【発明が解決しようとする課題】
【0003】
[0003]これらの訂正のタイプ全てが同様の方式で処理可能である。したがって、本発明は、一般的な一態様では、要求及び訂正を受け取って訂正要求を出力する、ソフトウェアベースの機械学習コンポーネントに関する。この訂正要求を受け取るためには、一実装形態では、訂正句は、要求内の対応する表現と置き換えられる。「洗浄済ナイフをカトラリー用の引き出しに入れて」という要求は、その訂正である「違います、シンク右の引き出しに入れて」とともに、「洗浄済ナイフをシンク右の引き出しに入れて」に変換される。こうしたコンポーネントは、実際の対話コンポーネントで訂正を処理することと比較すると、2つの利点を有する。第1に、オープンドメイン訂正コンポーネントが存在する場合には、訂正を学習する必要がないため、これは実際の対話コンポーネントに必要とされる訓練データの量を減少させる。第2に、こうしたタイプの訂正コンポーネントは、修復対象と修復表現とのペアを出力するように拡張され得る。この例では、カトラリー用の引き出しとシンク右の引き出しといった1つのペアが存在する。これらの表現ペアは、例えば対話システムの生涯学習コンポーネントにおける学習に使用され、将来的な対話における訂正の必要を減少させることができる。例えば、ロボットは、引き出しのうちどれがカトラリー用の引き出しかを学習可能である。
【課題を解決するための手段】
【0004】
[0004]したがって、一般的な一態様では、本発明は、機械、検知手段、及びコンピュータシステムを備えるシステムに関する。例えば、ロボット又はコンピュータであり得る機械は、ユーザからの要求に応じて動作するように構成されている。検知手段は、機械向けのユーザからの操作モードの対話ストリームを検知するためのものである。コンピュータシステムは、訓練対話ストリームデータセット中の各訓練例について、機械向けの訂正要求を出力するよう、機械学習を通じて訓練されているニューラルネットワークを備える。コンピュータシステムはまた、操作モードでは、訓練されたニューラルネットワークを使用し、ユーザからの操作モードの対話ストリームに基づき、機械向けの訂正された操作モード要求を生成する。
【0005】
[0005]一般的な別の態様では、本発明は、機械学習を通じてニューラルネットワークを訓練し、訓練対話ストリームのデータセット中の各訓練例について、ユーザからの要求に応じて動作するように構成されている機械向けの訂正要求を出力する工程を含む方法に関する。この方法はまた、ニューラルネットワークの訓練後のニューラルネットワークの操作モードにおいて、(i)検知手段により、機械向けのユーザから操作モードの対話ストリームを検知する工程、及び(ii)検知手段と通信しているコンピュータシステムにより、訓練されたニューラルネットワークを使用し、操作モードの対話ストリームに基づき、機械向けの操作モードの訂正された要求を生成する工程、を含む。
【0006】
[0006]本発明の実装により実現可能であるこれら及び他の利点は、以下の説明から明らかになるであろう。
【0007】
[0007]本発明の種々の実装及び実施形態は、以下の図面とともに例として本明細書に記載されている。
【図面の簡単な説明】
【0008】
【
図1】修復用語を用いて注釈付けされた、非流暢な発話を表す。
【
図2】コピー(C)及び削除(D)ラベルでラベル付けされた、非流暢な発話を表す。
【
図3】修復用語を用いて注釈付けされた、要求句及び訂正句を表す。
【
図4】本発明の種々の実施形態によるシステムを表す。
【
図5】本発明の種々の実施形態による、
図4の誤り訂正モジュールニューラルネットワークの訓練データセットを生成するための例示的なテンプレートを表す。
【
図6】本発明の種々の実施形態による、
図4の誤り訂正モジュールニューラルネットワークを訓練するための例の検証及びテストデータセットのサイズを表す。
【
図7】本発明の種々の実施形態によるシーケンスラベリングアプローチ及びシーケンス間アプローチを表す。
【
図8】本発明の種々の実施形態による、
図4の誤り訂正モジュールニューラルネットワークに関する評価結果を示す。
【
図9】本発明の種々の実施形態による
図4のコンピュータシステムを表す。
【発明を実施するための形態】
【0009】
[0017]要求訂正のタスクは、非流暢さを除去するタスクに関連する。非流暢さ除去においては、修復対象(どの表現を置き換えるべきか)、割り込みポイント(訂正が開始する箇所)、追加のつなぎ言葉(どの句が訂正用の信号句であるのか)、及び修復句(訂正表現)が存在する。
図1は、この用語を用いて注釈付けされた、非流暢な発話を表す。
【0010】
[0018]非流暢さ除去のため、多くの作業が行われている。これらの作業は、非流暢な発話のトークンを削除し、流暢な発話を得るのに十分であると想定されている。コピー及び削除ラベルを有する、非流暢な発話を
図2に表す。ただし訂正のタスクにおいて、遠距離置換が発生する可能性がある。こうした遠距離置換を
図3に表す。
【0011】
[0019]一般的な一態様では、本発明は、要求又は対話ストリームにおいて誤り訂正を行うシステムに関する。
図4は、種々の実施形態によるシステムの一例である。
図4に示されるように、システム10はユーザ及び機械を備え得る。ユーザは、例えば機械向けの要求11A、及び必要な場合には訂正11Bを含む、対話ストリームなどの通信又は交換を出力する。訂正11Bは、例えば(直接的又は間接的に)機械からの質問(聞き取れるもの又はテキスト)に応答して、又はユーザによる機械の不適当な動作の視認、それ以外の場合にはその検知に応答して、ユーザにより発され得る。機械は、例えば
図4に表され、移動可能な電気機械ロボット12などの、対話ストリームにおけるユーザからのコマンド又は要求に応答して動作を行う、任意の機械であり得る。他の実施形態では、機械は、例えばノートパソコン、PC、サーバ、ワークステーション、メインフレーム、モバイル端末(例えば、スマートフォン又はタブレットコンピュータ)、ウェアラブルコンピュータデバイス又はデジタルパーソナルアシスタントなどのコンピュータデバイスであり得る。さらに他の実装では、機械は、キッチン用又は他の家庭用装置、電動工具、医療機器、医療診断機器、自動車システム(例えば、車両のエレクトロニック若しくはエンジンコントロールユニット(ECU))など、1個以上のプロセッサを備える装置又は工具であり得る。機械はまた、自動運転車両などの自動運転モバイル端末、又はその一部であり得る。
【0012】
[0020]
図4に表されているように、システム10は、種々の実装において、ユーザからの対話ストリーム(例えば、要求11A及び訂正11Bを含む)を受信するコンピュータシステム14を備え、このシステムから機械向けの訂正要求を生成する。コンピュータシステム14は、ユーザからの要求及び訂正を検知するための検知手段を備えてもよい。例えば、聞き取り可能な要求をユーザが発している
図4の例に表されているように、検知手段は、1個以上のマイクロフォン16と、マイクロフォン16により取得された、ユーザからの聞き取り可能な発話を処理するための自然言語処理(natural language processing:NLP)モジュール18と、を備えてもよい。コンピュータシステム14はまた、例えば、受信された対話ストリームに基づき、機械向けの訂正要求を生成するために訓練されている、機械学習ニューラルネットワークを好ましくは実装する誤り訂正モジュール20も備える。コンピュータシステム14はまた、ロボット/機械に対して訂正要求を出力する出力デバイス19も備え得る。
【0013】
[0021]検知手段は、
図4に表されているように、マイクロフォン16と、NLPモジュール18とを備え得る。これに関連して、ユーザによる応答(例えば、訂正)は、言語応答であり得る。他の実装では、システム10の文脈及び目的に応じて、(マイクロフォンに加えて、又はその代わりに)他のタイプの検知手段が使用され得る。例えば、検知手段はまた、例えばロボット12上のモーションセンサなどのモーションセンサも備え得る。これは、ユーザ(又は第三者若しくは他の何か)によって、ロボット12に付与されている訂正されたモーションを検知するものである。キッチンロボットの例を使用すると、ユーザはカトラリー用の引き出しに向かってロボット12を押すことができ、コンピュータシステム14は、訂正要求を生成するため、訂正としてユーザからロボット12へと入力される検知されたモーションを使用することができる。このモーションセンサは、加速器及び/又はジャイロスコープであり得る。
【0014】
[0022]場合により、検知手段はまた、(1)ユーザによる物理的応答、モーション又はジェスチャなどのモーションを捕捉するカメラと、(2)ユーザによる物理的応答、モーション又はジェスチャを要求11A、又は説明11Bとして解釈するように訓練されているモジュール(例えば、ニューラルネットワーク)と、も備え得る。加えて、検知手段は例えば、(1)ユーザによるタッチ入力を受信する、コンピュータシステム14上のタッチセンサ式ディスプレイと、(2)ユーザによるタッチ入力を解釈するためのモジュールと、を備え得る。加えて、検知手段は、ユーザからのテキストを受信かつ処理するためのソフトウェアプログラムを備え得る。例えば、ユーザは、ロボット12のためのテキストベースの要求及び訂正を含むテキストベースの対話ストリームを生成するため、「app」(例えば、モバイル端末向けのソフトウェアアプリケーション)又は他のタイプのコンピュータプログラム(例えば、ブラウザ)を利用してもよい。
【0015】
[0023]これに関連して、「対話ストリーム」という用語は、本明細書で使用される場合、発話されたワード又はテキストのみを含む対話に限定されない。むしろ、対話ストリームは発話されたワード、テキスト、カメラシステムにより認識されているジェスチャ、タッチ式ユーザインタフェースにより受信された入力、ユーザによりロボットに付与されている検知されたモーションなどを含む、要求及び説明を作製するのに好適な形式又はモダリティである、要求のシーケンス及びそれに続く説明であり得る。加えて、元の要求及び説明は、同様又は異なるモダリティを使用し得る。例えば、元の要求は、発話されたワード又はテキストを含み得るが、それに続く説明は、ユーザにより認識されたジェスチャ、タッチ式ユーザインタフェースを介してユーザから受信された入力、ユーザによりロボットに付与されている検知されたモーションなどを含み得る。加えて、ユーザは一人である必要はない。ある人間は初期要求を作製し得るが、別の人間は説明を作製し得る。加えて、ユーザは人間である必要さえも有さないが、その代わりに、ユーザは例えば、バーチャルアシスタント(例えば、Apple社のSiri、Google Assistant、Amazon社のAlexaなど)などの知能システム、又はその他のタイプの知能システムであり得る。
【0016】
[0024]機械向けのユーザ要求は、例えば機械向けの直接要求又は命令であり得る。キッチン系ロボット機器にとって、要求又は命令は「私にお茶を作って」などのようなものであり得る。ユーザ要求は、知覚又は検出された機械向けのユーザの意図など、あまり直接的でない可能性もある。キッチン系ロボットの例を続けると、ユーザは「お茶が欲しいのですが」と言うこともあり得る。こうした場合、機械は、「お茶を飲む」ことに対するユーザの意図を、キッチンロボットに茶を作らせるという要求に翻訳するように訓練され得る。したがって、本明細書で使用される場合、「ユーザ意図」と言う用語は機械向けのユーザによる意図を指す。ユーザ意図は、機械向けの直接要求又は説明である場合があるが、機械のユーザにとって知覚された意図であり得る。
【0017】
[0025]加えて、システムの種々の実施形態及び実装はユーザと機械の間の「対話ストリーム」と言う用語で本明細書に記載されているが、「対話ストリーム」は発話形態の対話を含む必要が必ずしもなく、続いて生じる対話を必ずしも必要とせず、2者間の対話(例えば、ユーザと機械)に限定される必要もないことは、この説明から明らかである。例えば、本明細書に説明されるように、話し言葉に加えて、又は話し言葉の代わりに、ユーザはテキスト又はモーションを使用し、機械向けのユーザ意図を表し得る。このモーションはジェスチャ、頷き、ユーザにより機械に付与された動きなどであり得る。検知手段は、ユーザにより表現される、任意の形式のユーザ意図を検出するように構成されなければならない。これに関連して、検知手段はマイクロフォン、テキスト又は話し言葉のためのNLP、モーションセンサ、カメラ、圧力センサ、近接センサ、湿度センサ、周囲光センサ、GPS受信機、及び/又はタッチセンサ式ディスプレイ(例えば、タッチセンサ式ディスプレイを介したユーザからの入力を受信するため)を含み得る。ユーザと機械との間の対話ストリーム又は通信交換は、連続している必要はない。ストリーム又は交換の全て又は一部は、並列又は同時であり得る。
【0018】
[0026]
図4は、ユーザ及び機械に関連していない、並びにユーザ及び機械から分離しているものとしてコンピュータシステム14を表す。この表された実施形態では、コンピュータシステム14は、聞き取り可能な訂正要求を発する。この場合には、出力デバイス19は、ロボット12の近くのスピーカであり、これはロボット12のマイクロフォンによって取得され、それに応じてロボットにより処理される。他の実装では、出力デバイス19は、無線ネットワークを介してロボット12と電子無線通信を発する、無線通信回路である。無線データネットワークは、Bluetoothネットワーク、Zigbeeネットワーク、Wi-Fiネットワーク、無線メッシュネットワーク、又は他の好適な無線ネットワークなどのアドホック及び/又はインフラストラクチャ無線ネットワークを含み得る。
【0019】
[0027]他の実装では、コンピュータシステム14は、ロボット/機械12の一部であり得る、又はこれと一体化され得る。すなわちこれは、例えば検知手段及び誤り訂正モジュール20は、ロボット/機械12の一部であり得る、又はこれと一体化され得る。その場合、出力デバイス19は、データバスを介して、ロボット/機械12の操作を制御するロボット/機械12のコントローラにコマンドを発することができる。
【0020】
[0028]コンピュータシステム14はまた、分散システムを含み得る。例えば、マイクロフォン16又は他の入力デバイスは、リモートNLPモジュール18及び誤り訂正モジュール20と無線通信し、ユーザにより携帯、使用又は持ち運びされているデバイスの一部であり得る。例えば、NLPモジュール18及び誤り訂正モジュール20は、マイクロフォン(又は他の入力デバイス)から離れているクラウドコンピューティングシステム又は他のコンピューティングシステムの一部であり得る。その場合、入力デバイスは、NLPモジュール18と無線通信(例えば、Wi-Fiなどのアドホック及び/又はインフラストラクチャ無線ネットワーク)であり得る。
【0021】
[0029]誤り訂正モジュール20は、ユーザから受信した対話ストリームに基づき、ロボット/機械向けの訂正要求を生成するのに十分な訓練例により訓練される、深層ニューラルネットワークなどの1つ又は複数の機械学習ネットワーク(の全体)を用いて実装され得る。種々の実装形態では、訓練は、ロボット/機械向けの意図された文脈又はドメインを考慮かつ活用することができる。例えば、キッチンロボット例については、誤り訂正モジュール20は対話ストリームを活用することができ、かつ/又は訂正要求は、キッチンに関連する用語(例えば、引き出し、ナイフ、フォークなど)を含む可能性が高い。同様に、医療診断設定については、誤り訂正モジュール20は対話ストリームを活用することができ、かつ/又は訂正要求は、医療用語などを含む可能性が高い。
【0022】
[0030]以下は、ニューラルネットワークを訓練する、ある方法を記載する。要求及び対応する訂正を含むデータセットが作成され得る。誤り動作及び説明のための質問などのロボット/機械の出力は、データセットの一部ではない。例えば、訓練データセットは、キッチンロボットなどの特定のドメインであり得る。あるバージョンのデータセットは、指定の物体を指定の位置に持っていくタスク及び指定のレシピを調理するタスクに重点を置くことができる。指定の物体を指定の位置に持っていくタスクのため、何人か(例えば7人)の参加者それぞれからの多くの(例えば20の)発話、及びそれに対応して多くの(例えば20の)訂正応答。指定のレシピを調理するタスクのため、参加者それぞれからの、さらにいくつかの(例えば10の)発話、及びそれに対応していくつかの(例えば10の)訂正応答を収集することができる。収集されたデータの例は、「洗浄済ナイフをカトラリー用の引き出しに入れて」という要求、ロボットの妥当ではない動作には「違います、シンク右の引き出しに入れて」といった訂正、「シンク右の引き出しです」と言う説明、又は「気が変わりました、フォークを入れてください」といったユーザの心境の変化である。訂正応答は、物体、位置、物体とその位置、又はレシピを訂正又はわかりやすく説明するために収集された。収集されたデータを使用し、自然言語の多様性を網羅しようとするテンプレートを構築した。この多様性を高めるため、類義語、新規物体、新規位置、及び/又は新規レシピを収集されたデータに加えることが可能である。例示的なテンプレートを
図5に表す。例えば、要求に関する15個のテンプレートを作成し、訂正応答に関する45個のテンプレートを作成することができる。この結果、誤り訂正モジュール20を訓練するため、74,309件の要求及び訂正ペアが使用可能である。
【0023】
[0031]こうした文脈におけるデータセットは2つのターゲットを有し得る。第1のターゲットは訂正要求である。一方、第2のターゲットは修復対象と修復表現のペアである。検証及びテストデータセットでは、未知の表現の処理、未知のテンプレート、未知の表現及びテンプレート、及びドメイン外のテンプレート及び表現といった4つの能力を試験することが可能である。未知の表現の処理を試験することに関して、訓練データセットのテンプレートを使用することが可能であり、全ての表現を訓練データセット内では生じない表現に置き換えることができる。自然言語の多様性に関して汎化を試験するため、訓練データセットの全てのテンプレートを同じ意味を有する未知のテンプレートで置き換えることができる。記載されている両方のテストを組み合わせるため、未知の表現とテンプレートのみが使用され得る。例えば、再訓練なく他のドメイン又はタスクに訓練モデルが使用可能かどうかを試験するため、製品を購入するタスク及び指定の物体を指定の位置に取り付けるタスクを使用することが可能である。ある検証では、検証に関する400件の要求と訂正のペア、及び試験のための1727件のペアが使用されている。
図6の表は、個々のテストのペア数を表す。
【0024】
[0032]訂正及び抽出のため、種々の実施形態では、シーケンスラベリングアプローチを使用することができる。こうした実施形態では、ニューラルネットワークは、C(コピー)、D(削除)、R1(置き換えられる可能性がある表現1)、R2(置き換えられる可能性がある表現2)、S1(表現1に置き換える表現)、又はS2(表現2に置き換える表現)などのある特定のトークンに関する要求及び訂正において、全ワードトークンをラベル付けするために訓練される。訂正ターゲットについては、S1及びS2のラベル付け表現は、R1及びR2のラベル付け表現を置き換えるために使用され得る。抽出ターゲットについては、出力は、R1とS1のペア、及びR2とS2のペアであり得る。
図7は、例示的な要求及び訂正ペアへのラベリングを表し、両ターゲットが与えられている。シーケンスラベリングについて、固有表現抽出ツールを備えた、転移学習バージョンの微調整BERTベースモデル(12個のTransformerブロック、768個の隠れサイズ、12個のセルフアテンションヘッド、及び110M個のパラメータ)が使用され得る。微調整BERT(Transformerによる双方向に処理を行うエンコーダ)ベースモデルについての詳細は、J.Devlin,et al.,「BERT:Pre-training of deep bidirectional transformers for language understanding,」Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics(NACL),2019に見出すことができ、本明細書の一部を構成するものとしてその全体を援用する。訓練データセットの3つのエポックは、例えば2e
-5の初期微調整学習率で微調整され得る。こうした文脈におけるTransformerは、連続データを処理するが、この連続データを順に処理する必要はない深層学習モデルである。
【0025】
[0033]シーケンスラベリングアプローチの代替として、シーケンス間アプローチを使用することができる。この場合、訂正ストリームは神経ネットワークから直接出力されている。シーケンス間アプローチについては、Transformerモデルを訓練することができ、又は予め訓練されたTransformerモデルを微調整することができる。Transformerの訓練についての詳細は、Vaswani et al.,「Attention Is All You Need,」arXiv 1706.03762(2017)に提供されており、予め訓練された微調整Transformerモデルについての詳細は、Raffel et al.,「Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer,」arXiv 1910.10683(2019)に提供されている。
【0026】
[0034]アーキテクチャは、評価指標正解率で評価され得る。こうした評価では、訂正要求及び修復対象と修復表現とのペアといった両方のターゲットがそれらの基準と等しい場合には、要求と訂正のペアは正確に変換され得る。
図8は、本発明の例示的な一例についてのデータセットの結果を表す。この評価された実施形態では、未知の表現と訓練された表現の置換、又は未知のテンプレートと訓練されたテンプレートの置換は、訓練モデルの問題を引き起こさなかった。それぞれ98.54%又は97.03%の正解率が得られた。両方を組み合わせることで、性能は90.24%に低下した。この例に関しては、ドメイン外の表現及びテンプレートについては88.35%の正解率が得られた。
【0027】
[0035]したがって、誤り訂正モジュールは、ロボット/機械を制御するための対話ストリームの訓練データセットに基づき、訂正ストリーム又は訂正要求を出力するように訓練されている機械学習ニューラルネットワーク(又はニューラルネットワークの収集物)を含み得る。この場合、訓練データセットストリームは、元々の要求及びそれに続く説明を含み得る。ひとたび訓練され、操作モードとなると、誤り訂正モジュールは、マイクロフォン又は他の検知手段により検知された対話ストリームに基づき、ロボット/機械向けの訂正ストリームを生成することができる。例えば、誤り訂正モジュールのニューラルネットワークは、適切な訓練例を用いて、要求及び要求に対する訂正の修復中の修復対象を識別し、かつ識別された修復対象及び修復に基づき、機械向けの訂正ストリームを生成するように訓練され得る。誤り訂正モジュールは、識別された修復対象及び修復から新規情報をさらに学習するため、ニューラルネットワークなど、別の機械学習システムを含み得る。再度キッチンの例を使用すると、元々の要求が「フォークをカトラリー用の引き出しに入れて」であり、訂正が「冷蔵庫左の引き出しではなく、冷蔵庫右の引き出しでなくてはならない」である場合、誤り訂正モジュール20は、このシステムを以後使用するため、コンピュータシステム14が訂正なしに訂正要求を作製可能であるよう、カトラリー用の引き出しが冷蔵庫の右にあることを学習することができる。例えば、元々の要求が「フォークをカトラリー用の引き出しに入れて」である場合、新しい知識を用いて、誤り訂正モジュール20は、「フォークをカトラリー用の引き出しに入れて、この引き出しは冷蔵庫の右にあります」という訂正要求を自動的に作製することができる。
【0028】
[0036]誤り訂正モジュールの1つ以上のニューラルネットワークは、固定サイズ又は非固定サイズの出力語彙を任意に有し得る。特に、ニューラルネットワークに対するシーケンスラベリングアプローチは、例えばC、R1、R2、D、S1、S2といった固定サイズの出力語彙を有し得る。シーケンス間アプローチ(正確な対話は、訂正した対話から直接推論される)では、固定サイズの語彙アプローチに加え、非固定サイズの語彙(例えば、訂正を含む関連する対話の全トークン)アプローチが使用され得る。これらのアプローチのワードトークンは例えば、ワード全体、またワードのサブ部分であり得る。
【0029】
[0037]検知手段は、検知モダリティの組み合わせを含み得る。キッチンの例を続けると、ユーザの訂正は、「ここで」という単語で開始しているが、同時に位置を指し示している可能性がある。これは、直示的な応答/訂正の一例である。マイクロフォン/NLPは、ユーザによる「ここで」という発話を検知することができ、カメラはユーザにより指し示された位置を検知することができる。したがって、ユーザの元々の要求が「ナイフをカトラリー用の引き出しに入れて」であり、その訂正が、冷蔵庫の右の引き出しを指し示しながら「違います、ここです」と言うことである場合、誤り訂正モジュール20は、「ナイフをカトラリー用の引き出しに入れて、冷蔵庫の右です」という訂正要求を生成することができる。
【0030】
[0038]
図9は、種々の実施形態によるコンピュータシステム14の図である。図示された実施形態では、複数(N)個のセットのプロセッサコア2404A-Nを備えるように、図示されたコンピュータシステム14は複数のプロセッサユニット2402A-Bを備える。各プロセッサユニット2402A-Bは、オンボードメモリ(ROM又はRAM)(図示せず)及びオフボードメモリ2406A-Bを備えてもよい。オンボードメモリは、主記憶装置である揮発性記憶装置、及び/又は不揮発性記憶装置(例えば、プロセッサコア2404A-Nにより直接アクセス可能な記憶装置)を含んでもよい。オフボードメモリ2406A-Bは、例えば、ROM、HDD、SSD、フラッシュなど、補助記憶装置である不揮発性記憶装置(例えば、プロセッサコア2404A-Nにより直接アクセス可能ではない記憶装置)を含んでもよい。プロセッサコア2404A-Nは、CPUコア、GPUコア及び/又はAIアクセラレータコアであり得る。GPUコアは並列で動作し(例えば、一般的な目的のGPU(GPGPU)パイプライン)、それゆえに典型的には、CPUコアの集団よりも効果的にデータを処理するが、GPUの全てのコアは一度に同じコードを実行する。AIアクセラレータは、人工ニューラルネットワークを加速させるように設計されたマイクロプロセッサの1種類である。これらは典型的には、さらにホストプロセッサ2410を備えるデバイスのコプロセッサとして使用される。AIアクセラレータは、CPUコアの64ビット精度に対してのAIアクセラレータの8ビット精度など、CPUコアよりも低い精度で動作する数万の行列乗算ユニットを典型的には有する。
【0031】
[0039]種々の実施形態では、異なるプロセッサコア2404は、NLPモジュール18及び/又は誤り訂正モジュール20の異なるコンポーネントを訓練かつ/又は実装し得る。例えば、一実施形態では、第1のプロセッサユニット2402AのコアはNLPモジュール18を実装し得、第2のプロセッサユニット2402Bは誤り訂正モジュール20を実装し得る。1つ又は複数のホストプロセッサ2410は、プロセッサユニット2402A-Bを調整かつ制御し得る。他の実施形態では、システム2400は1つのプロセッサユニット2402を用いて実装され得る。複数のプロセッサユニットが存在する実施形態では、プロセッサユニットは同じ場所に配置され得る、又は分散され得る。例えば、プロセッサユニット2402は、好適な有線及び/又は無線データ通信リンクを使用し、LAN、WAN、インターネットなどのデータネットワークにより相互接続されてもよい。データは、データバス(好ましくは、高速データバス)又はネットワークリンク(例えば、イーサネット)などの好適なデータリンクを使用し、種々の処理ユニット2402間で共有されてもよい。
【0032】
[0040]NLPモジュール18及び誤り訂正モジュール20用のソフトウェア、及び本明細書に記載の他のコンピュータ機能は、NET、C、C++、又はPythonを使用して、及び従来の機能的な又はオブジェクト指向の技術などの任意の好適なコンピュータプログラミング言語を使用し、コンピュータソフトウェアで実施されてもよい。例えば、誤り訂正モジュール20は、保存されているソフトウェアモジュールを用いて実装されてもよく、それ以外の場合には、例えばRAM、ROM、補助記憶装置などのコンピュータ可読媒体内で維持されてもよい。機械学習システムの1つ又は複数の処理コア(例えば、CPU又はGPUコア)は、続いてそれぞれの機械学習システムの機能(例えば、生徒、コーチなど)を実装するためにソフトウェアモジュールを実行し得る。コンピュータソフトウェア用のプログラミング言語及び他のコンピュータ実装命令は、実行前にコンパイラ若しくはアセンブラにより機械言語へと翻訳されてもよく、かつ/又はインタプリタにより実行時に直接翻訳されてもよい。アセンブリ言語の例としては、ARM、MIPS、及びx86、高レベル言語の例としては、Ada、BASIC、C、C++、C#、COBOL、Fortran、Java、Lisp、Pascal、Object Pascal、Haskell、ML、スクリプト言語の例としては、Bourneスクリプト、JavaScript、Python、Ruby、Lua、PHP及びPerlが挙げられる。
【0033】
[0041]一般的な一態様では、したがって、本発明はインテリジェントコンピュータベースのシステム及び方法に関する。種々の実装によるシステムは、ユーザからのユーザ意図(例えば要求)に応じて動作するように構成されている機械と、機械向けのユーザからの操作モードの通信(例えば、対話ストリーム)を検知するための検知手段と、を備える。システムはまた、検知手段と通信するコンピュータシステムも備える。コンピュータシステムは、訓練データセット中の各訓練例について、機械向けの訂正ユーザ意図(要求)を出力する、機械学習を通じてニューラルネットワークを訓練するように構成されている。コンピュータシステムはまた、操作モードにおいて、訓練されたニューラルネットワークを使用し、検知手段により検知されている、機械向けのユーザからの操作モードの通信(対話ストリーム)に基づき、機械向けの操作モードの訂正ユーザ意図(要求)を生成するようにも構成されている。
【0034】
[0042]本発明による方法は、機械学習を通じてニューラルネットワークを訓練し、訓練対話ストリームのデータセット中の各訓練例について、ユーザからの要求に応じて動作するように構成されている機械向けの訂正要求を出力する工程を含み得る。この方法はまた、ニューラルネットワークの訓練後のニューラルネットワークの操作モードにおいて、検知手段により、機械向けのユーザから操作モードの対話ストリームを検知すること、及び検知手段と通信しているコンピュータシステムにより、訓練されたニューラルネットワークを使用し、操作モードの対話ストリームに基づき、機械向けの操作モードの訂正された要求を生成すること、を含む。
【0035】
[0043]種々の実装により、訓練対話ストリームデータセットは、それぞれ機械向けの訓練要求及び訓練要求向けの訓練訂正を含む訓練対話ストリームを含み、操作モードの対話ストリームは、機械向けの操作モードの要求及び要求に対する操作モードの訂正を含む。
【0036】
[0044]種々の実装により、ニューラルネットワークは、訓練対話ストリームデータセット中の訓練要求における修復対象を識別し、かつ訓練対話ストリームデータセットの訓練要求に対する訂正における訓練修復を識別し、訓練対話ストリームデータセット中の修復対象及び修復に基づき、機械向けの訂正要求を生成するように訓練されている。ニューラルネットワークはまた、操作モードで、操作モード要求で識別された操作モードの修復対象、及び操作モードの訂正で識別された操作モードの修復に基づき、機械向けの訂正操作モード要求を生成するように構成されている。
【0037】
[0045]種々の実装形態では、ニューラルネットワークは、操作モードにおいて、機械向けの第2の操作モードの要求で識別された操作モードの修復対象、及び機械向けの事前操作モードの対話ストリームで識別された操作モードの修復に基づき、機械向けの第2の操作モードの訂正要求を生成するように構成されている。
【0038】
[0046]種々の実装形態では、ニューラルネットワークは、訓練対話ストリームデータセット中の対話ストリームのワードトークンにラベルを割り当て、割り当てられたラベルに基づき、訓練対話ストリームデータセット中の各訓練例について訂正要求を決定するように訓練されている。
【0039】
[0047]種々の実装形態では、機械はロボットを含む。かかる実装では、ユーザによる操作モードの訂正は、ロボットによる不適当な動作に対する、ユーザによる応答を含み得る。加えて、検知手段は、ロボットによる不適当な動作に対する、ユーザによる応答を検知するための手段を含み得る。加えて、応答は、ユーザによる物理的応答、ユーザによる言語応答、ユーザによる直示的応答、及びユーザによるジェスチャからなる群から選択される応答を含み得る。
【0040】
[0048]種々の実装形態では、機械は、例えばコンピュータ、モバイル端末、装置、家庭用エンターテインメントシステム、パーソナルアシスタント、自動車システム、健康管理システム、又は医療機器などのプロセッサベースのデバイスを含む。
【0041】
[0049]種々の実装形態では、検知された操作モード要求は、ユーザからの音声を含み、検知手段はマイクロフォン及び自然言語プロセッサ(NLP)を含む。加えて、検知された操作モード要求は、テキストを含む電子メッセージを含み得、検知手段は、電子メッセージ中のテキストを処理するための自然言語プロセッサ(NLP)を含み得る。加えて、検知手段はモーションセンサ、カメラ、及びタッチセンサ式ディスプレイを含み得る。検知手段は機械の一部であり得、コンピュータシステムは機械の一部であり得る。
【0042】
[0050]本明細書に提示されている実施例は、本発明の潜在的かつ特定の実装形態を例示することを意図している。実施例は、当業者にとって、本発明の例示を主な目的として意図していることが理解されよう。実施例の特定の態様は、必ずしも本発明の範囲を制限しようと意図するものではない。さらには、本発明の図面及び明細書は、本発明を明確に理解するために関連する要素を例示するために簡略化されており、明確化を目的として他の要素を排除している。種々の実施形態が本明細書に記載されているが、これらの実施形態への種々の修復、変更、及び改案は、少なくともいくらかの利点を達成することで当業者に想起され得ることは明らかである。したがって、開示された実施形態は、本明細書に記載の実施形態の範囲から逸脱することなく、そのような全ての修復、変更、及び改案を含むことが意図されている。
【国際調査報告】