(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-02-06
(54)【発明の名称】自然言語処理、理解及び生成を可能にする方法及びシステム
(51)【国際特許分類】
G06F 40/56 20200101AFI20240130BHJP
G06F 40/30 20200101ALI20240130BHJP
G06F 16/90 20190101ALI20240130BHJP
【FI】
G06F40/56
G06F40/30
G06F16/90 100
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023545253
(86)(22)【出願日】2022-01-28
(85)【翻訳文提出日】2023-09-22
(86)【国際出願番号】 US2022014213
(87)【国際公開番号】W WO2022165109
(87)【国際公開日】2022-08-04
(32)【優先日】2021-01-28
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2022-01-27
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】523282316
【氏名又は名称】エンボディード,インコーポレイテッド
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】シェーラー,ステファン
(72)【発明者】
【氏名】ミューニック,マリオ
(72)【発明者】
【氏名】ピリャニアン,パオロ
(72)【発明者】
【氏名】ベンソン,デイブ
(72)【発明者】
【氏名】ベグトール,ジャスティン
(72)【発明者】
【氏名】リテーシュ,マーシー
(72)【発明者】
【氏名】シン,テイラー
(72)【発明者】
【氏名】ソーントン,キャサリン
(72)【発明者】
【氏名】ガードナー,エリカ
(72)【発明者】
【氏名】ギッテルソン,ベンジャミン
(72)【発明者】
【氏名】ハロン,ウィルソン
(72)【発明者】
【氏名】クラボー,ケイトリン
(72)【発明者】
【氏名】イップ,ジョー
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175EA01
(57)【要約】
【課題】ロボット装置と個人との間のマルチターンコミュニケーションを確立するためのシステム及び方法が開示される。
【解決手段】実装形態は、個人の発話と関連する1つ又は複数の入力テキストファイルを受け取り、1つ又は複数の入力テキストファイルが禁止事項と関連しないことを検証するために、1つ又は複数の入力テキストファイルをフィルタリングし、個人の発話における意図を判定するために、1つ又は複数の入力テキストファイルを分析し、分析された意図に基づいてアクションを実施し、実施されたアクションに基づいて、1つ又は複数の出力テキストファイルを生成し、作成された1つ又は複数の出力テキストファイルをマークアップモジュールに伝達し、受け取られた1つ又は複数の出力テキストファイルを感情について分析し、感情分析に基づいて、情緒インジケータ及び/又はマルチモード出力アクションを1つ又は複数の出力テキストファイルに関連付け、禁止発話フィルタにより、1つ又は複数の出力テキストファイルが禁止事項を含まないことを検証することができる。
【選択図】
図3A
【特許請求の範囲】
【請求項1】
ロボット装置と個人との間のマルチターンコミュニケーションを確立又は生成する方法であって、
1つ又は複数のプロセッサによる実行のために、1つ又は複数の物理メモリ装置から命令にアクセスすること、
前記1つ又は複数のプロセッサにより、前記1つ又は複数の物理メモリ装置からアクセスされた命令を実行すること、
前記1つ又は複数のプロセッサ上で前記命令を実行した結果として得られた信号値を前記物理メモリ装置の少なくとも1つに保存すること
を含み、
前記アクセスされた命令は、前記ロボット装置と前記個人との間の会話相互作用を強化するためのものであり、
前記会話相互作用命令を実行することは、
発話-テキスト認識演算装置から、前記個人の発話と関連する1つ又は複数の入力テキストファイルを受け取ることと、
前記1つ又は複数の入力テキストファイルが禁止事項と関連しないことを検証するために、禁止発話フィルタを介して前記1つ又は複数の入力テキストファイルをフィルタリングすることと、
前記個人の発話における意図を判定するために、前記1つ又は複数の入力テキストファイルを分析することと、
前記分析された意図に少なくとも部分的に基づいて、前記1つ又は複数の入力テキストファイルに対してアクションを実施することと、
前記実施されたアクションに基づいて、1つ又は複数の出力テキストファイルを生成することと、
前記作成された1つ又は複数の出力テキストファイルをマークアップモジュールに伝達することと、
前記マークアップモジュールにより、前記受け取られた1つ又は複数の出力テキストファイルを感情について分析することと、
前記感情分析に少なくとも部分的に基づいて、前記ロボット装置のための情緒インジケータ及び/又はマルチモード出力アクションを前記1つ又は複数の出力テキストファイルに関連付けることと、
前記禁止発話フィルタにより、前記1つ又は複数の出力テキストファイルが禁止事項を含まないことを検証することと、
ロボット装置ペルソナパラメータへの準拠を検証するために、前記1つ又は複数の出力テキストファイル、前記関連する情緒インジケータ及び前記マルチモード出力アクションを分析することと、
前記1つ又は複数の出力テキストファイル、前記関連する情緒インジケータ及び前記マルチモード出力アクションを前記ロボット装置に伝達することと
を更に含む、方法。
【請求項2】
前記会話相互作用命令を実行することは、前記1つ又は複数の入力テキストファイルが受け取られる前に、前記ロボット装置内のダイアログマネージャモジュールを介して前記1つ又は複数の入力テキストファイルをフィルタリングして、前記1つ又は複数の入力テキストファイルを処理するために、クラウドに基づく演算装置のソーシャルチャットモジュールが利用されるべきであるかどうかを判定することを更に含む、請求項1に記載の方法。
【請求項3】
前記ロボット装置内の前記ダイアログマネージャモジュールは、前記クラウドに基づく演算装置の前記ソーシャルチャットモジュールに前記1つ又は複数の入力テキストファイルを伝達するか否かを判定するために、前記1つ又は複数の入力テキストファイルを分析して、特別なコマンドが受け取られたかどうか、オープンクエスチョンが存在するかどうか、又は前記ロボット装置上において合致する既存の会話パターンの欠如があるかどうかを判定する、請求項2に記載の方法。
【請求項4】
前記会話相互作用命令を実行することは、前記1つ又は複数の出力テキストファイルの受け取りで遅延が発生し得ると意図マネージャモジュールが判定する場合、応答時間の遅延を隠蔽するために、遅延出力テキストファイル及び/又は遅延マルチモード出力アクションファイルを生成することを更に含む、請求項1に記載の方法。
【請求項5】
前記会話相互作用命令を実行することは、前記1つ又は複数の入力テキストファイルが前記禁止事項と関連すると前記禁止発話フィルタが識別する場合、前記禁止発話フィルタが知識データベースと通信し、及び前記知識データベースが1つ又は複数の安全出力テキストファイルをチャットモジュールに伝達することを更に含む、請求項1に記載の方法。
【請求項6】
前記会話相互作用命令を実行することは、
前記1つ又は複数の入力テキストファイルが特別な話題を含むかどうかを判定するために、特別話題フィルタを介して前記1つ又は複数の入力テキストファイルをフィルタリングすることと、
前記1つ又は複数の入力テキストファイルが前記特別な話題を含むと前記特別話題フィルタが判定する場合、1つ又は複数の専門的なリダイレクトテキストファイルを取得することと、
処理のために前記1つ又は複数の専門的なリダイレクトテキストファイルを前記マークアップモジュールに伝達することと
を更に含む、請求項1に記載の方法。
【請求項7】
特別な話題は、クリスマス、休日又は誕生日の話題を含む、請求項1に記載の方法。
【請求項8】
前記会話相互作用命令を実行することは、前記1つ又は複数の出力テキストファイル、前記関連する情緒インジケータ及び前記マルチモード出力アクションが前記ロボット装置ペルソナパラメータに準拠しないと出力ペルソナフィルタが判定する場合、ソーシャルチャットモジュールにより、受け入れ可能な出力テキストファイル、関連する情緒インジケータ及び/又はマルチモード出力アクションを知識データベース及び/又は前記1つ若しくはメモリモジュール内で検索することを更に含む、請求項1に記載の方法。
【請求項9】
前記会話相互作用命令を実行することは、前記ソーシャルチャットモジュールが1つ又は複数の受け入れ可能な出力テキストファイル、関連する情緒インジケータ及び/又はマルチモード出力アクションを見出す場合、前記ソーシャルチャットモジュールが前記受け入れ可能な出力テキストファイル、関連する情緒インジケータ及び/又はマルチモード出力アクションを前記ロボット装置に伝達することを更に含む、請求項8に記載の方法。
【請求項10】
前記会話相互作用命令を実行することは、前記ソーシャルチャットモジュールが1つ又は複数の受け入れ可能な出力テキストファイル、関連する情緒インジケータ及び/又はマルチモード出力アクションを見出さない場合、
前記ソーシャルチャットモジュールが前記知識データベース及び/又は前記1つ若しくは複数のメモリ装置から1つ又は複数のリダイレクトテキストファイルを取得することと、
処理のために前記1つ又は複数のリダイレクトテキストファイルを前記マークアップモジュールに伝達することと
を更に含む、請求項8に記載の方法。
【請求項11】
ソーシャルチャットモジュールからの前記1つ又は複数の出力テキストファイルは、前記1つ又は複数の出力テキストファイル内に含まれる単語が、所定の保存された語彙ガイドライン外であるかどうかを判定するために分析され、
前記1つ又は複数の出力テキストファイルが前記所定の保存された語彙ガイドライン外である場合、
前記ソーシャルチャットモジュールは、所定の保存された語彙ガイドライン外の単語に類似する単語を取得するために、サードパーティアプリケーションプログラミングインターフェイスと通信し、及び
所定の保存された語彙ガイドライン外の前記単語を置換するために、前記取得された類似の単語を前記1つ又は複数の出力テキストファイル内に挿入する、請求項1に記載の方法。
【請求項12】
前記会話相互作用命令を実行することは、
前記ユーザーの発話からコンテキストテキスト情報を抽出するために、コンテキストモジュールにより、前記1つ又は複数のテキストファイルを分析することと、
前記抽出されたコンテキスト情報を前記1つ又は複数のメモリモジュールに保存することと
を更に含む、請求項1に記載の方法。
【請求項13】
前記会話相互作用命令を実行することは、前記アクションが前記1つ又は複数の入力テキストファイルに対して実施された後、前記1つ又は複数のメモリモジュールからの前記コンテキスト情報が、前記生成された1つ又は複数の出力テキストファイル内に挿入され得る状況を識別することを更に含む、請求項12に記載の方法。
【請求項14】
前記会話相互作用命令を実行することは、前記アクションが前記1つ又は複数の入力テキストファイルに対して実施された後、前記1つ又は複数のメモリモジュールからの他の事実情報が、前記生成された1つ又は複数の出力テキストファイル内に挿入され得る状況を識別することを更に含む、請求項12に記載の方法。
【請求項15】
前記会話相互作用命令を実行することは、
関連するコンテキストテキスト情報を生成するために、前記抽出されたコンテキストテキスト情報から冗長なテキストを削除することと、
前記関連するコンテキストテキスト情報を前記1つ又は複数のメモリモジュールに保存することと
を更に含む、請求項12に記載の方法。
【請求項16】
前記1つ又は複数の入力テキストファイルに対して実施される前記アクションは、前記1つ又は複数の入力テキストファイル内で要求される事実情報を識別することを含み、
前記1つ又は複数の入力テキストファイルに対して実施される前記アクションは、外部演算装置又はソフトウェアプログラムから、前記要求される事実情報を取得するために、サードパーティアプリケーションプログラミングインターフェイスと通信することを含むか、又は
前記1つ又は複数の入力テキストファイルに対して実施される前記アクションは、前記マークアップモジュールに伝達される前記生成された1つ又は複数の出力テキストファイルに、前記取得された事実情報を追加することを含む、請求項1に記載の方法。
【請求項17】
前記1つ又は複数の入力テキストファイルに対して実施される前記アクションは、前記1つ又は複数の入力テキストファイル内で要求される事実情報を識別することを含み、
前記1つ又は複数の入力テキストファイルに対して実施される前記アクションは、前記要求される事実情報を取得するために、知識データベース及び/又は前記1つ若しくは複数のメモリモジュールと通信することを含むか、又は
前記1つ又は複数の入力テキストファイルに対して実施される前記アクションは、前記マークアップモジュールに伝達される前記生成された1つ又は複数の出力テキストファイルに、前記取得された事実情報を追加することを含む、請求項1に記載の方法。
【請求項18】
前記会話相互作用命令を実行することは、
前記マークアップモジュールにより、関連する会話的及び/又は隠喩的側面について、前記受け取られた1つ又は複数の出力テキストファイルを分析することと、
前記会話的及び/又は隠喩的分析に少なくとも部分的に基づいて、前記ロボット装置のための情緒インジケータ及び/又はマルチモード出力アクションを前記1つ又は複数の出力テキストファイルに関連付けることと
を更に含む、請求項1に記載の方法。
【請求項19】
前記会話相互作用命令を実行することは、
前記マークアップモジュールにより、コンテキスト情報について、前記受け取られた1つ又は複数の出力テキストファイルを分析することと、
前記コンテキスト情報分析に少なくとも部分的に基づいて、前記ロボット装置のための情緒インジケータ及び/又はマルチモード出力アクションを前記1つ又は複数の出力テキストファイルに関連付けることと
を更に含む、請求項1に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願
本特許協力条約(PCT)出願は、2022年1月27日付けで出願された「Methods and systems enabling natural language processing, understanding, and generation」という名称の米国仮特許出願第63/303,860号及び2021年1月28日付けで出願された「SocialX Chat - Methods and systems enabling natural language processing, understanding, and generation on the edge」という名称の米国仮特許出願第63/143,000号に対する優先権を主張するものであり、これらの開示は、両方とも参照によりその全体が本明細書に援用される。
【0002】
本出願は、2020年2月29日付けで出願された米国特許出願第62/983,592号「SYSTEMS AND METHODS TO MANAGE CONVERSATION INTERACTIONS BETWEEN A USER AND A ROBOT COMPUTING DEVICE OR CONVERSATION AGENT」及び2020年2月29日付けで出願された米国特許出願第62/983,592号「SYSTEMS AND METHODS FOR SHORT- AND LONG-TERM DIALOG MANAGEMENT BETWEEN A ROBOT COMPUTING DEVICE/DIGITAL COMPANION AND A USER」に関連し、これらの内容は、参照によりその全体が本明細書に援用される。
【0003】
開示の分野
本開示は、ロボット装置と個人、消費者又はユーザーとの間のマルチターンコミュニケーションを確立又は生成するためのシステム及び方法に関し、このシステム又は方法は、コミュニケーションの生成を支援するために、SocialXクラウドに基づく会話モジュールを利用する。
【背景技術】
【0004】
背景
人工知能(AI)の登場以来、人間ユーザーとの自然なコミュニケーションの能力を有する自律型エージェントを生成するという強い要求が存在し続けている。会話エージェント(例えば、Alexa、Google Home又はSiri)は、人々の日常生活に進出する一方、その会話能力は、依然として非常に限られている。具体的には、会話相互作用が機能するのは、コマンド-応答相互作用とも称される単一トランザクション方式においてのみである(即ち人間ユーザーが明示的な要求を行い、エージェントが単一の応答を提供する)。しかし、マルチターンの会話相互作用は、稀であるか又は存在せず、情報を収集し、及び/又は曖昧さを低減するための直接的な要求を超えない。例えば、サンプル会話は、ユーザー「アレクサ、予約して」、アレクサ/装置「わかりました。どのレストランですか?」、ユーザー「サンタモニカのタールアンドローゼズ」であり、アレクサが予約を実施するというものであり得る。現在の機械学習技術(即ちGPT-2又はGPT-3などのトランスフォーマモデル)は、現時点の意図に基づくトランザクション会話エージェントのものを超えた可能性をもたらす。これらのモデルは、明らかに人間らしいストーリー、会話、ニュース記事を生成することができる(例えば、OpenAIは、(宣伝行為ではあるが)これらの技術について公的に利用可能な状態にするには危険過ぎるとしている)。
【0005】
しかし、これらの現在の機械学習モデルには、いくつかの大きい欠点が付随し、第1に、これらのモデルは、大規模であり、(例えば、ロボット演算装置などの)限られた演算パワー及びメモリを有する小規模なIoT装置上で稼働することができない。第2に、GPUによって加速された装置上で稼働する場合でも、これらのモデルは、リアルタイム会話エージェントのための法外な出力を生成するのに数秒を必要とする。一般に、このような会話エージェントのための検知-行為ループは、人間又は消費者との関わりを維持するために400~500ms未満である必要がある。第3に、これらの大規模な機械学習モデルは、膨大な量のデータ(基本的にインターネットのすべて)に基づいてトレーニングされ、従って、(1)卑猥な言葉遣い、(2)誤った及び検証されない情報(例えば、Michael Crichtonが「Jurassic Park」という映画の監督であるとモデルは主張し得るが、Michael Crichtonは、本の著者であるに過ぎない)、(3)特定の観点ではなく、一般的な観点を表すこと(例えば、一例では、このモデルは、民主党員であり得るが、その後、共和党員であり得、一例では、好ましい食べ物がステーキであり得るが、その後、モデルは、厳格なビーガンであり得るなど)、(4)トレーニングが膨大な時間及びエネルギーを必要とし、従って、モデルが単一の時点を表す(例えば、従来技術のモデルの大部分は、2019年に収集されたデータに基づいてトレーニングされ、従ってCovid-19についての知識をまったく有しない)、及び(5)この場合にも、このデータがインターネットに書き込むすべての人々に由来するという事実に起因して、使用される言葉遣いが一般的なものであり、単一のペルソナの音声を表さない(例えば、一例では、モデルは、「Toy Storyは、私の大好きな映画です」というような子供によって表現されたと思われる文章を生成し得るが、その後、これは、「私は、3人の子供を持ち、会計士として働いています」を生成し得るであろう)という欠点を有する。第4に、これら自体によって採用されるモデルは、依然として数回の会話ターンで消滅する短期メモリのみを有し、人間ユーザー又は消費者との長期の関係を構築する能力を有しない。
【発明の概要】
【課題を解決するための手段】
【0006】
概要
本開示の一態様は、ロボット装置と個人との間のマルチターンコミュニケーションを確立又は生成するように構成されたシステムに関する。システムは、機械可読命令によって構成された1つ又は複数のハードウェアプロセッサを含み得る。1つ又は複数のプロセッサは、発話-テキスト認識を実行する演算装置から、個人の発話と関連する1つ又は複数の入力テキストファイルを受け取るように構成され得る。1つ又は複数のプロセッサは、1つ又は複数の入力テキストファイルが禁止事項と関連しないことを検証するために、禁止発話フィルタを介して1つ又は複数の入力テキストファイルをフィルタリングするように構成され得る。1つ又は複数のプロセッサは、個人の発話における意図を判定するために、1つ又は複数の入力テキストファイルを分析するように構成され得る。1つ又は複数のプロセッサは、分析された意図に少なくとも部分的に基づいて、1つ又は複数の入力テキストファイルに対してアクションを実施するように構成され得る。1つ又は複数のプロセッサは、実施されたアクションに基づいて、1つ又は複数の出力テキストファイルを生成するように構成され得る。1つ又は複数のプロセッサは、作成された1つ又は複数の出力テキストファイルをマークアップモジュールに伝達するように構成され得る。1つ又は複数のプロセッサは、マークアップモジュールにより、受け取られた1つ又は複数の出力テキストを感情について分析するように構成され得る。1つ又は複数のプロセッサは、感情分析に少なくとも部分的に基づいて、ロボット装置のための情緒インジケータ及び/又はマルチモード出力アクションを1つ又は複数の出力テキストファイルに関連付けるように構成され得る。1つ又は複数のプロセッサは、禁止発話フィルタにより、1つ又は複数の出力テキストファイルが禁止事項を含まないことを検証するように構成され得る。1つ又は複数のプロセッサは、ロボット装置ペルソナパラメータへの準拠を検証するために、1つ又は複数の出力テキストファイル、関連する情緒インジケータ及び/又はマルチモード出力アクションを分析するように構成され得る。
【0007】
本技術のこれら及び他の特徴及び特性、並びに関係する構造要素の動作方法及び機能、並びに製造部品及び経済の組合せは、添付図面を参照する以下の説明及び添付の請求項を検討することで更に明らかとなり、これらの添付図面のすべては、本明細書の一部を形成し、これらの添付図面では、同一の参照符号が様々な図で対応する部分を表す。しかし、図面は、例示及び説明を目的とするものに過ぎず、本発明の限定の定義となることを意図しないことを明示的に理解されたい。本明細書及び請求項で使用される「1つの(a)」、「1つの(an)」及び「その」という単数形は、文脈が明瞭にそうでないことを規定しない限り、複数の参照物を含む。
【図面の簡単な説明】
【0008】
図面の簡単な説明
【
図1A】いくつかの実施形態によるロボット演算装置のシステムアーキテクチャを描写する図である。
【
図1B】1つ又は複数の実装形態による、子供及び/又は親と関与するためのソーシャルロボット又はデジタルコンパニオンのためのシステムを示す。
【
図1C】1つ又は複数の実装形態による、子供及び/又は親と関与するためのソーシャルロボット又はデジタルコンパニオンのためのシステムを示す。
【
図2】いくつかの実装形態による例示的なロボット演算装置のシステムアーキテクチャを示す。
【
図3A】いくつかの実施形態による、SocialXクラウドに基づく会話システムのシステムアーキテクチャを示す。
【
図3B】いくつかの実施形態による、SocialXクラウドに基づくシステムでチャット要求を処理するためのデータフローを示す。
【
図3C】いくつかの実施形態による、ロボットのバックストーリーに関係する質問を処理するためのデータフローを示す。
【
図3D】いくつかの実施形態による、意図分類要求を処理するためのデータフローを示す。
【
図3E】いくつかの実施形態による、サードパーティアプリケーションによって質問に回答するためのデータフローを示す。
【
図3F】いくつかの実施形態による、会話サマリ要求を処理するためのデータフローを示す。
【
図3G】いくつかの実施形態による、ペルソナ違反インシデントを処理し、取り扱うためのデータフローを示す。
【
図3H】いくつかの実施形態による、出力違反インシデンス又は発生を処理するためのデータフローを示す。
【
図3I】いくつかの実施形態による、入力発話又はテキスト違反インシデンス又は発生のためのデータフローを示す。
【
図3J】いくつかの実施形態による、ロボット及び/又は消費者コミュニケーションに関する過去の情報に対する要求を処理するためのデータフローを示す。
【
図3K】1つ又は複数の実装形態による、ロボット装置と個人との間のマルチターンコミュニケーションを確立又は生成するように構成されたシステム300を示す。
【
図3L】いくつかの実施形態による、会話モジュール内におけるマルチモード意図認識の利用を示す。
【
図3M】いくつかの実施形態による、意図認識のための環境キュー、パラメータ、計測又はファイルの利用を示す。
【
図3N】いくつかの実施形態による、ユーザーが質問に対する回答の提供に関与するサードパーティ演算装置を示す。
【
図4A】1つ又は複数の実装形態による、ロボット装置と個人との間のマルチターンコミュニケーションを確立するために、クラウドに基づく会話モジュールを利用する方法400を示す。
【
図4B】1つ又は複数の実装形態による、ロボット装置と個人との間のマルチターンコミュニケーションを確立するために、クラウドに基づく会話モジュールを利用する方法を更に示す。
【
図4C】いくつかの実施形態による、要求された事実情報の取得及び事実情報の提供を示す。
【
図4D】いくつかの実施形態による、特別な話題を識別し、特別な話題から離れるように会話をリダイレクトする、SocialXクラウドに基づく会話モジュールの方法を示す。
【
図4E】いくつかの実施形態による、ユーザー及び/又は消費者に応答する際に遅延技術を利用するためのクラウドに基づく会話モジュールを示す。
【
図4F】いくつかの実施形態による、1つ又は複数の入力テキストファイルから文脈情報を抽出及び/又は保存するためのクラウドに基づく会話モジュールを示す。
【
図4G】いくつかの実施形態による、関連する会話的及び/又は隠喩的側面について1つ又は複数の入力テキストファイルを分析することを示す。
【発明を実施するための形態】
【0009】
詳細な説明
本明細書における主題は、長期メモリを有する安全なペルソナに基づくマルチモード自然会話エージェントと、正しい、現時点の及び事実の情報に対するアクセスとを可能にする新規のアルゴリズム及びシステムの構成を表す。これは、会話エージェントが機能するために、会話モデル及び/又はモジュールがコンテキスト及び過去の会話を追跡する必要があるからである。会話モジュール又はエージェントは、マルチユーザーコンテキストを追跡する必要があり、この場合、システムは、グループのそれぞれのメンバとの会話を記録し、グループのメンバの構成及び役割を記憶する。会話モジュール又はエージェントは、言語出力のみならず、適切な顔面表現、ジェスチャ及び音声の抑揚によって構成されるマルチモード通信を生成する必要もある。加えて、人間ユーザー及び/又はその選択肢に応じて、会話エージェントは、特定のモジュールに対する様々な制限又はアクセス(例えば、子供コンテンツ対大人コンテンツ)を伴って様々なペルソナになりすまし得ることも要する。これらのペルソナは、ペルソナに関する既存の情報の知識ベース又はデータベースを活用する会話エージェント又はモジュールによって維持することができる。本明細書に記述される主題は、対話型会話エージェント、モジュール又は装置が広い範囲の社会的状況で自然に及び効率的に通信することを可能にする。本発明は、現時点の従来技術のエージェント、モジュール又は装置システムと以下の方式で異なる。第1に、本会話エージェント、モジュール又は装置は、環境を追跡し、及びその周りの世界の永続的な観察を維持するために、マイクロフォンアレイ、カメラ、レーダー、lidar及び赤外線カメラを有するマルチモード入力を活用する。2020年2月29日付けで出願された米国特許出願第62/983,595号「MULTIMODAL BEAMFORMING AND ATTENTION FILTERING FOR MULTIPARTY INTERACTIONS」を参照されたい。第2に、本会話エージェント、モジュール又は装置システムは、2020年2月29日付けで出願された米国特許出願第62/983,590号「SYSTEMS AND METHODS TO MANAGE CONVERSATION INTERACTIONS BETWEEN A USER AND A ROBOT COMPUTING DEVICE OR CONVERSATION AGENT」に記述される方法及びシステムを活用することにより、その周りのユーザーの関与を追跡する。第3に、ユーザーが関与すると、会話エージェント、モジュール又は装置は、ユーザーのコメント、質問及び/又は情動の意図及び意味を更に良好に理解するために、ユーザーの挙動を分析し、言語学的コンテキスト、顔面表現、姿勢、ジェスチャ、音声の抑揚などを評価する。第4に、会話エージェント、モジュール又は装置は、討論に加わるための(例えば、消費者若しくはユーザーに応答するか、又はユーザーとの会話ターンを開始するための)会話エージェント、モジュール又は装置のターンである時点を識別するために、ユーザーのマルチモード自然挙動を分析する。
【0010】
第5に、会話エージェント、モジュール又は装置は、会話エージェント、モジュール又は装置が応答する時点になると、マルチモード出力及び信号を利用及び/又は活用することにより、ユーザーに対して応答する。2020年2月29日付けで出願された米国特許出願第62/983,592号「SYSTEMS AND METHODS TO MANAGE CONVERSATION INTERACTIONS BETWEEN A USER AND A ROBOT COMPUTING DEVICE OR CONVERSATION AGENT」及び2020年2月29日付けで出願された米国特許出願第62/983,592号「SYSTEMS AND METHODS FOR SHORT- AND LONGTERM DIALOG MANAGEMENT BETWEEN A ROBOT COMPUTING DEVICE/DIGITAL COMPANION AND A USER」を参照されたい。第6に、会話エージェント、モジュール又は装置システムは、特別なコマンド(例えば、モキシー、チャットしよう)、計画されたスケジューリング、特別なマークアップ(例えば、オープンクエスチョン)及び/又はロボット上のオーサリングされたパターンの欠如若しくはミスマッチ(即ちフォールバック処理)に基づいて、及び/又は発話-テキスト変換モジュールから受け取られた1つ若しくは複数のテキストファイルの概念若しくはコンテキストの複雑さに応じて、クラウドに基づくNLPモジュールに関与するための時点を識別する。第7に、会話エージェント、モジュール又は装置システムは、受け取られた1つ又は複数の入力テキストファイル内の要求と、SocialXクラウドに基づくモジュールからの応答の受け取りとの間に時間遅延が存在する可能性が高いという事実を隠蔽するために、(「う~ん、それについて考えさせてください」と発話し、及び更に考える挙動をシミュレートするように顔面表現を利用することにより)隠蔽技法を利用し得る(考える挙動を表示するためにマルチモード出力を利用し得る)。会話エージェント、モジュール又は装置システムがこの挙動及びこれらのアクションを利用する理由は、ユーザーの関与を維持し、エージェントの検知-行為ループを緊密化するために、これらが不可欠であるためである。
【0011】
第8に、いくつかの実施形態では、会話エージェント、モジュール又は装置システムからのすべての入力及び出力には、タブーの話題、タブーの言葉遣い、ペルソナ違反フレーズ及び他の範囲外応答を識別するために、意図認識装置モデルモジュールのアンサンブルによるフィルタリングを提供することができる。第9に、タブーの話題などが会話エージェント、モジュール又は装置システムによって識別されると、会話エージェント、モジュール又は装置は、リダイレクト要求をシグナリングすることができると共に、会話の話題を安全な空間内に即座に変更する(又は迅速に変更する)ために、リダイレクトアルゴリズムを開始及び/又は起動することができる。第10に、いくつかの実施形態では、会話エージェント、モジュール又は装置は、ユーザー及び自動化されたエージェントの画像を保護するために、慎重に吟味された相互作用シーケンスである、(1つ又は複数のメモリモジュール及び/又は知識データベースに保存される)手動でオーサリングされ、及び専門的である応答をトリガする特別な話題(例えば、社会正義、自傷行為、メンタルヘルスなど)を識別する更なる入力フィルタを含み得る。第11に、いくつかの実施形態では、会話エージェント、モジュール及び/又は装置は、出力フィルタを含み得る。いくつかの実施形態では、出力フィルタは、ペルソナ違反(例えば、実施されたもののモキシーロボットが、自らが子供を有するか又は若いころにロックコンサートに行ったと主張する)又はタブー話題違反(例えば、暴力、薬物など)を識別することができ、その結果、会話エージェント、モジュール及び装置は、この違反について通知され、会話エージェント、モジュール及び/又は装置のアルゴリズムは、1つ又は複数の次善の解決策(例えば、1つ又は複数のテキストファイルの他のグループ)を即座又は迅速に検索することができる。いくつかの実施形態では、検索は、ビームサーチ若しくはkトップサーチ又はこれらに類似したものであり得、ペルソナ違反出力ファイルに応答し、及び/又はそれを置換するために利用される1つ又は複数のテキストファイルの受け入れ可能なグループを取得し、及び/又はそれを見出し得る。1つ又は複数の出力テキストファイルの置換は、ペルソナ違反(又は任意の他の違反)を含まない。このような応答(例えば、受け入れ可能な1つ又は複数の出力テキストファイル)が短時間の検索後に見出されない場合(即ち、ロボットは、例えば、2~5秒内などのリアルタイムに近接した状態で応答する必要がある)、(事前オーサリングされた)リダイレクトフレーズ又は(出力テキストファイルの形態における)再設定された話題が選択され得、応答及び/又はペルソナ違反以前の出力テキストファイルのための置換として提供され得る。これらのリダイレクトフレーズは、現時点の話題との一貫性を維持するために特定の話題と関係付けられ得るか(例えば、「宇宙から地球がどのように見えるかについてどう思う?」、「人間が火星に住むことがあると思う?」などの宇宙旅行に関する話)、新しい話題を導入し得るか(例えば、「何か別のことについて話してくれませんか?本当は、動物についてもっと知りたかったです。最大の動物は、何ですか?」)、又はメモリモジュール、若しくは知識ベース、若しくはデータベースから直接的に導出され得る(例えば、「先週、アイスクリームについて話しました。その後、あなたは食べましたか?」)。第12に、語彙違反(例えば、会話エージェント、モジュール又は装置がユーザー母集団の語彙外の単語を生成するか又は生じさせる)が検出された場合、会話エージェント、モジュール又は装置は、単語類似性アルゴリズム、サードパーティシソーラス又はこれらに類似したものを活用することにより、語彙の内側である同義単語又は表現を選択し得(例えば、「Ailuropoda melanoleuca」という生物学的に正しい用語を使用する代わりに、エージェントは、パンダベアを選択するであろう)、語彙違反を生成した単語を出力又入力テキストファイル内の選択された単語によって置換し得る。第13に、コンテキストモジュールは、1つ又は複数の入力テキストファイルを連続的に監視し得、交換された事実(例えば、ユーザーが来週休暇を取得するためにその名称又は意図を主張するなど)を追跡するために会話を収集及びフォローし得、これらの事実を1つ又は複数のメモリモジュール内に(テキストファイルの形態で)保存し得る。いくつかの実施形態では、会話エージェントモジュール又は装置は、1つ又は複数のメモリモジュールから記憶事実を取得するために絶好の瞬間を識別し得、テキストファイルの形態で突っ込んだ質問を挿入するためにこれらの事実を使用し得るか(例えば、あなたの先週の休暇はどうでしたか?)又はテキストファイル応答を生成するために事実を活用し得る(こんにちは、ジョンさん。お会いできて嬉しいです)。いくつかの実施形態では、会話エージェント、モジュール又は装置は、処理され、1つ又は複数のメモリモジュールに保存されるコンテキストの量を低減するために、現時点の会話の要約を生成することができる。いくつかの実施形態では、会話エージェント、モジュール又は装置は、入力された1つ又は複数のテキストファイルを分析することができると共に、例えば冗長な情報のみならず、過剰に詳細な情報を除去することができる(例えば、「ビーチに行くために、ルート10で繁華街からサンタモニカまで行った」と表す入力された1つ又は複数のテキストファイルは、「ビーチに行った」と表す1つ又は複数の入力テキストファイルに低減することができる)。
【0012】
第14に、会話エージェント、モジュール又は装置は、特定のデータを要求するように追求する事実質問又は情報取得質問(例えば、米国の第14代大統領が誰か)を識別する入力フィルタを含み得る。いくつかの実施形態では、このような事実質問が識別されると、入力フィルタは、サードパーティアプリケーションプログラミングインターフェイスを通して(限定されないが、ブリタニカ百科事典又はウィキペディアを含む)サードパーティ演算装置から情報を取得するために質問及び回答モジュールと通信することができる。別の実施形態では、質問又は回答モジュールは、メモリモジュール及び/又は知識データベースに保存される提供されたコンテキストから直接的に情報を引き出すか又は取得するために、要求された情報に合致する適切なコンテキスト(例えば、モキシーが以前に子供に対して話したというGRLからのストーリー)を識別し得る共に、(質問/回答モジュール内の)質問/回答アルゴリズムを使用し得る。いくつかの実施形態では、次いで、応答して出力テキストファイルを生成するために、チャットモジュールがこの情報を利用することができると共に、エージェントのマルチモード挙動生成を経験する前に、マークアップモジュールが情緒インジケータ若しくはパラメータ及び/又はマルチモード出力アクションを1つ又は複数の出力テキストファイルに関連付けた後、取得された回答を含む出力テキストファイルが人間ユーザーに伝達される。第15に、マークアップモジュールは、1つ又は複数の出力テキストファイルを受け取ることができると共に、感情ファイラは、出力テキストファイルのムード及び/又は感情、出力テキストファイルの関連する会話及び/又は隠喩的側面、及び/又は1つ若しくは複数の出力テキストファイルの文脈的情報若しくは側面を識別することができる(例えば、GRLからのキャラクタが命名されるか、又はパンダベアなどの別の命名されたエンティティ)。いくつかの実施形態では、会話エージェント、モジュール又は装置のマークアップモジュールは、これらのアクションをロボット演算装置上で生成するために、マルチモード出力アクション(例えば、顔面表現、ジェスチャ(指し示しなど)、音声(音の抑揚)を制御する挙動マークアップのみならず、ヘッドアップディスプレイ(例えば、パンダベアの画像)を生成し得る。
【0013】
図1B及び
図1Cは、子供及び/又は親に関与するためのソーシャルロボット、デジタルコンパニオン又はロボット演算装置のためのシステムを示す。いくつかの実装形態では、ロボット演算装置105(又はデジタルコンパニオン)は、子供に関与することができると共に、子供との間で通信の相互作用を確立することができる。いくつかの実装形態では、通信の相互作用でマルチターン会話を確立する(例えば、両者が交互に会話する)という目的を伴って、ロボット演算装置105と子供111との間に双方向通信が存在することになる。いくつかの実装形態では、ロボット演算装置105は、発話された単語(例えば、オーディオアクション)、視覚的アクション(表示画面上の眼又は顔面表現の運動)及び/又は物理的アクション(例えば、ロボット演算装置の首又は頭又は付属肢の運動)を介して子供と通信することができる。いくつかの実装形態では、ロボット演算装置105は、子供のボディランゲージ、子供の顔面表現を評価するために撮像装置を利用することができると共に、子供の発話を評価及び分析するために発話認識ソフトウェアを利用することができる。
【0014】
いくつかの実装形態では、子供は、1つ又は複数の電子装置110を有することもできる。いくつかの実装形態では、1つ又は複数の電子装置110は、子供が、学習ラボラトリにアクセスし、及び/又はウェブサイト上に収容される対話型ゲームに関与するために、サーバー演算装置上のウェブサイトにログインすることを可能にし得る。いくつかの実装形態では、子供の1つ又は複数の演算装置110は、ウェブサイト120にアクセスするためにクラウド演算装置115と通信することができる。いくつかの実装形態では、ウェブサイト120は、サーバー演算装置上に収容され得る。いくつかの実装形態では、ウェブサイト120は、子供がロボット演算装置105と関連するデジタルキャラクタ又はペルソナと相互作用し得る(グローバルロボティクスラボラトリ(GRL)と称され得る)学習ラボラトリを含み得る。いくつかの実装形態では、ウェブサイト120は、子供が競争又はゴール設定エクササイズに関与し得る対話型ゲームを含み得る。いくつかの実装形態では、他のユーザーは、eコマースウェブサイト又はプログラムとインターフェイスすることができ得、この場合、他のユーザー(例えば、親又は保護者)は、ロボットと関連する品目(例えば、コミックブック、おもちゃ、バッジ又は他の提携品目)を購入することができる。
【0015】
いくつかの実装形態では、ロボット演算装置又はデジタルコンパニオン105は、1つ又は複数の撮像装置、1つ又は複数のマイクロフォン、1つ又は複数のタッチセンサ、1つ又は複数のIMUセンサ、1つ若しくは複数のモーター及び/又はモーターコントローラ、1つ若しくは複数の表示装置若しくはモニタ及び/又は1つ若しくは複数のスピーカを含み得る。いくつかの実装形態では、ロボット演算装置は、1つ又は複数のプロセッサ、1つ若しくは複数のメモリ装置及び/又は1つ若しくは複数の無線通信トランシーバを含み得る。いくつかの実装形態では、コンピュータ可読命令は、1つ又は複数のメモリ装置に保存され得、多数のアクション、特徴及び/又は機能を実行するために実行可能であり得る。いくつかの実装形態では、ロボット演算装置は、以上に列挙されたロボット演算装置のコンポーネントからキャプチャ及び/又は取得されたデータ、パラメータ及び計測、オーディオファイル及び/又は画像ファイルに対して分析処理を実行することができる。
【0016】
いくつかの実装形態では、1つ又は複数のタッチセンサは、ユーザー(子供、親若しくは保護者)がロボット演算装置に接触したかどうか又は別の物体若しくは個人がロボット演算装置と接触したかどうかを計測することができる。いくつかの実装形態では、1つ又は複数のタッチセンサは、例えば、それが、探索的な接触、押しのける行為、ハグ又は別のタイプのアクションであるかどうかを判定するために、接触の力及び/又は接触の大きさを計測することができる。いくつかの実装形態では、例えば、ロボット演算装置の付属肢又は手の前部又は後部又はロボット演算装置の腹エリア上にタッチスクリーンを配置又は位置決めすることができる。従って、ソフトウェア及び/又はタッチセンサは、子供が手を握るか若しくはロボット演算装置の手を掴むか、又は子供がロボット演算装置の腹を撫でているかを判定することができる。いくつかの実装形態では、他のタッチセンサは、子供がロボット演算装置をハグしているかどうかを判定することができる。いくつかの実装形態では、タッチセンサは、他のロボット演算装置ソフトウェアとの関連で利用され得、この場合、ロボット演算装置は、子供がストーリーの1つの経路をフォローすることを所望する場合、その左手を保持するか、又は子供がストーリーの他方の経路をフォローすることを所望する場合、左手を保持するように子供に話し得るであろう。
【0017】
いくつかの実装形態では、1つ又は複数の撮像装置は、ロボット演算装置と相互作用する子供、親又は保護者の画像及び/又はビデオをキャプチャすることができる。いくつかの実装形態では、1つ又は複数の撮像装置は、子供、親又は保護者の周りのエリアの画像及び/又はビデオをキャプチャすることができる。いくつかの実装形態では、1つ又は複数のマイクロフォンは、子供、親又は保護者によって発話されたサウンド又は口頭コマンドをキャプチャすることができる。いくつかの実装形態では、プロセッサ又はオーディオ処理装置によって実行可能であるコンピュータ可読命令は、キャプチャされたサウンド又は発声を処理のためにオーディオファイルに変換することができる。
【0018】
いくつかの実装形態では、1つ又は複数のIMUセンサは、ロボット演算装置の様々な部分の速度、加速度、向き及び/又は場所を計測することができる。いくつかの実装形態では、例えば、IMUセンサは、付属肢又は首の運動の速度を判定することができる。いくつかの実装形態では、例えば、IMUセンサは、例えば、手を振っているか又は休止位置にあるかを識別するために、首、頭、身体又は付属肢などのロボット演算装置のセクションの向きを判定することができる。いくつかの実装形態では、IMUセンサの使用は、相対的にフレンドリーに又はユーザーに関与するように見えるように、ロボット演算装置がその様々なセクションを方向付けすることを可能にし得る。
【0019】
いくつかの実装形態では、ロボット演算装置は、1つ又は複数のモーター及び/又はモーターコントローラを有することができる。いくつかの実装形態では、コンピュータ可読命令は、1つ又は複数のプロセッサによって実行可能であり得、モーターがロボット演算装置のセクションを運動させるようにするために信号又はコマンドをモーターに送信するように、コマンド又は命令を1つ又は複数のモーターコントローラに伝達することができる。いくつかの実装形態では、セクションは、ロボット演算装置の付属肢又はアーム及び/又はロボット演算装置の首又は頭を含み得る。
【0020】
いくつかの実装形態では、ロボット演算装置は、ディスプレイ又はモニタを含み得る。いくつかの実装形態では、モニタは、ロボット演算装置が顔面表現(例えば、眼、鼻、口表現)を表示するのみならず、ビデオ又はメッセージを子供、親又は保護者に表示することを可能にし得る。
【0021】
いくつかの実装形態では、ロボット演算装置は、1つ又は複数のスピーカを含み得、これらは、出力モーダリティと称され得る。いくつかの実装形態では、1つ又は複数のスピーカは、ロボット演算装置が単語、フレーズ及び/又は文章を伝達し、従ってユーザーとの会話に関与することを可能にするか又は許容し得る。加えて、1つ又は複数のスピーカは、子供、親又は保護者がアクションを実施し、及び/又はロボット演算装置と関与するとき、子供、親又は保護者のためにオーディオサウンド又は音楽を放出することができる。
【0022】
いくつかの実装形態では、システムは、親演算装置125を含み得る。いくつかの実装形態では、親演算装置125は、1つ若しくは複数のプロセッサ及び/又は1つ若しくは複数のメモリ装置を含み得る。いくつかの実装形態では、コンピュータ可読命令は、親演算装置125がいくつかの特徴及び/又は機能を実行するようにするために1つ又は複数のプロセッサによって実行可能であり得る。いくつかの実装形態では、これらの特徴及び機能は、システムのための親インターフェイスを生成及び稼働させることを含み得る。いくつかの実装形態では、親演算装置125によって実行可能であるソフトウェアは、ユーザー(例えば、子供、親又は保護者)設定を変更することもできる。いくつかの実装形態では、親演算装置125によって実行可能であるソフトウェアは、親又は保護者がシステム内でその独自のアカウント又はその子供のアカウントを管理することも可能にし得る。いくつかの実装形態では、親演算装置125によって実行可能であるソフトウェアは、親又は保護者がロボット演算装置の特定の機能が利用されることを可能にするための親の同意を開始又は完了させることを可能にし得る。いくつかの実装形態では、親演算装置125によって実行可能であるソフトウェアは、親又は保護者がゴール又は閾値を設定するか、又はロボット演算装置からキャプチャされるもの及びシステムによって分析及び/又は利用されるものを設定することを可能にし得る。いくつかの実装形態では、親演算装置125の1つ又は複数のプロセッサによって実行可能であるソフトウェアは、親又は保護者が、ロボット演算装置が動作する方式、その子供が確立されたゴールに向かって進捗する方式及び/又は子供がロボット演算装置と相互作用する方式を観察するために、システムによって生成された異なる分析を検討することを可能にし得る。
【0023】
いくつかの実装形態では、システムは、クラウドサーバー演算装置115を含み得る。いくつかの実装形態では、クラウドサーバー演算装置115は、1つ又は複数のプロセッサ及び1つ又は複数のメモリ装置を含み得る。いくつかの実装形態では、コンピュータ可読命令は、1つ又は複数のメモリ装置から取得され得、クラウドサーバー演算装置115が計算及び/又は更なる機能を実行するようにするために1つ又は複数のプロセッサによって実行可能であり得る。いくつかの実装形態では、ソフトウェア(例えば、1つ又は複数のプロセッサによって実行可能であるコンピュータ可読命令)は、すべてのユーザー(例えば、子供、親及び/又は保護者)のためのアカウントを管理することができる。いくつかの実装形態では、ソフトウェアは、クラウドサーバー演算装置115の1つ又は複数のメモリ装置内における個人的に識別可能な情報の保存を管理することもできる。いくつかの実装形態では、ソフトウェアは、子供、親又は保護者からキャプチャされたサウンドファイルのオーディオ処理(例えば、発話認識及び/又はコンテキスト認識)のみならず、ロボット演算装置115によって発話され得る発話及び関係するオーディオファイルの生成を実行することもできる。いくつかの実装形態では、クラウドサーバー演算装置115内のソフトウェアは、ロボット演算装置から受け取られた画像のビデオ処理を実行及び/又は管理することができる。
【0024】
いくつかの実装形態では、クラウドサーバー演算装置115のソフトウェアは、様々なセンサ及び/又は他の入力モーダリティからの受け取られた入力を分析することできるのみならず、設定されたゴールの実現に向かう子供の進捗について他のソフトウェアアプリケーションから情報を収集することもできる。いくつかの実装形態では、クラウドサーバー演算装置ソフトウェアは、分析処理を実行するために1つ又は複数のプロセッサによって実行可能であり得る。いくつかの実装形態では、分析処理は、子供が確立されたゴールとの関係でどの程度良好に実行するかに関する挙動分析であり得る。
【0025】
いくつかの実装形態では、クラウドサーバー演算装置のソフトウェアは、例えば、子供がストーリーを好むかなどのユーザー又は子供がコンテンツに応答する方式、拡張コンテンツ及び/又はロボット演算装置の1つ又は複数の出力モーダリティによって生成される出力に関する入力を受け取ることができる。いくつかの実装形態では、クラウドサーバー演算装置は、コンテンツに対する子供の応答に関する入力を受け取ることができると共に、コンテンツがどの程度良好に機能するか及びコンテンツの特定の部分が機能不全状態にあり得るかどうかに関する分析を実行することができる(例えば、飽きているか又は潜在的に誤動作するか若しくは動作しないものとして知覚される)。
【0026】
いくつかの実装形態では、クラウドサーバー演算装置のソフトウェアは、センサ、電池、モーター、ディスプレイ及び/又は他のコンポーネントなどのロボット演算装置のハードウェアコンポーネントからパラメータ又は計測などの入力を受け取ることができる。いくつかの実装形態では、クラウドサーバー演算装置のソフトウェアは、ハードウェアコンポーネントからパラメータ及び/又は計測を受け取ることができると共に、ロボット演算装置が誤動作するか及び/又は最適な方式で動作しないかを判定するために受け取られたパラメータ、計測又はデータに対してIOT分析処理を実行することができる。
【0027】
いくつかの実装形態では、クラウドサーバー演算装置115は、1つ又は複数のメモリ装置を含み得る。いくつかの実装形態では、1つ又は複数のメモリ装置の一部分は、様々なアカウント保持者のためのユーザーデータを保存することができる。いくつかの実装形態では、ユーザーデータは、ユーザー住所、ユーザーゴール、ユーザー詳細及び/又は選好であり得る。いくつかの実装形態では、ユーザーデータは、暗号化され得、及び/又はストレージは、セキュアストレージであり得る。
【0028】
図1Bは、いくつかの実装形態によるロボット演算装置を示す。いくつかの実装形態では、ロボット演算装置105は、演算装置を含む装置、デジタルコンパニオン、電気-機械装置であり得る。これらの用語は、本明細書で相互交換可能に利用される場合がある。いくつかの実装形態では、
図1Bに示されるように、ロボット演算装置105は、頭組立体103d、表示装置106d、少なくとも1つの機械的付属肢105d(
図1bには2つが示される)、ボディ組立体104d、垂直方向軸回転モーター163及び水平方向軸回転モーター162を含み得る。いくつかの実装形態では、ロボット120は、マルチモード出力システム122、マルチモード知覚システム123及び装置制御システム121(
図1Bには示されないが、以下の
図2には示される)を含む。いくつかの実装形態では、表示装置106dは、顔面表現106bが示されるか又は図示されることを可能にし得る。いくつかの実装形態では、顔面表現106bは、2つ以上のデジタル眼、デジタル鼻及び/又はデジタル口によって示すことができる。いくつかの実装形態では、垂直方向軸回転モーター163は、頭組立体103dが一側部から他側部へ運動することを可能にし得、この結果、頭組立体103dは、人間の頭を一側部から他側部に振ることのような人間の首運動を真似ることができる。いくつかの実装形態では、水平方向軸回転モーター162は、頭組立体103dが、人間の頭を上下に振ることのような上下方向に運動することを可能にし得る。いくつかの実装形態では、ボディ組立体104dは、1つ又は複数のタッチセンサを含み得る。いくつかの実装形態では、ボディ組立体の1つ又は複数のタッチセンサは、ロボット演算装置が接触又はハグされているかどうかを判定することを可能にし得る。いくつかの実装形態では、1つ又は複数の付属肢105dは、1つ又は複数のタッチセンサを有することができる。いくつかの実装形態では、1つ又は複数のタッチセンサのいくつかは、付属肢105dの(手を表し得る)端部に配置することができる。いくつかの実装形態では、この結果、ロボット演算装置105は、ユーザー又は子供が付属肢の端部に接触するかどうか(ユーザーがユーザーの手を握ることを表し得る)を判定することができる。
【0029】
図1Aは、ロボット演算装置のシステムアーキテクチャを描写する図である。
図2は、実装形態によるロボット演算装置(例えば、
図1Bの105)のシステムアーキテクチャを描写する図である。いくつかの実装形態では、
図2のロボット演算装置又はシステムは、単一のハードウェア装置として実装することができる。いくつかの実装形態では、
図2のロボット演算装置及びシステムは、複数のハードウェア装置として実装することができる。いくつかの実装形態では、
図2のロボット演算装置及びシステムは、ASIC(用途固有の集積回路)として実装することができる。いくつかの実装形態では、
図2のロボット演算装置及びシステムは、FPGA(フィールドプログラム可能なゲートアレイ)として実装することができる。いくつかの実装形態では、
図2のロボット演算装置及びシステムは、SoC(システムオンチップ)として実装することができる。いくつかの実装形態では、バス201は、プロセッサ226A~N、メインメモリ227(例えば、ランダムアクセスメモリ(RAM))、読み出し専用メモリ(ROM)228、1つ又は複数のプロセッサ可読ストレージ媒体210及び1つ又は複数のネットワーク装置211とインターフェイスすることができる。いくつかの実装形態では、バス201は、表示装置(例えば、102c)及びユーザー入力装置の少なくとも1つとインターフェイスする。いくつかの実装形態では、バス101は、マルチモード出力システム122とインターフェイスする。いくつかの実装形態では、マルチモード出力システム122は、オーディオ出力コントローラを含み得る。いくつかの実装形態では、マルチモード出力システム122は、スピーカを含み得る。いくつかの実装形態では、マルチモード出力システム122は、表示システム又はモニタを含み得る。いくつかの実装形態では、マルチモード出力システム122は、モーターコントローラを含み得る。いくつかの実装形態では、モーターコントローラは、
図1Bのロボットシステムの1つ又は複数の付属肢(105d)を制御するように構築することができる。いくつかの実装形態では、モーターコントローラは、
図1Bのロボットシステムの付属肢(例えば、105d)のモーターを制御するように構築することができる。いくつかの実装形態では、モーターコントローラは、モーターを制御するように構築することができる(例えば、電動型の機械的なロボット付属肢のモーター)。
【0030】
いくつかの実装形態では、バス201は、(マルチモード入力システム又はマルチモード入力モーダリティと称され得る)マルチモード知覚システム123とインターフェイスすることができる。いくつかの実装形態では、マルチモード知覚システム123は、1つ又は複数のオーディオ入力プロセッサを含み得る。いくつかの実装形態では、マルチモード知覚システム123は、人間反応検出サブシステムを含み得る。いくつかの実装形態では、マルチモード知覚システム123は、1つ又は複数のマイクロフォンを含み得る。いくつかの実装形態では、マルチモード知覚システム123は、1つ又は複数のカメラ又は撮像装置を含み得る。
【0031】
いくつかの実装形態では、1つ又は複数のプロセッサ226A~226Nは、ARMプロセッサ、X86プロセッサ、GPU(グラフィカル処理ユニット)及びこれらに類似したものの1つ又は複数を含み得る。いくつかの実装形態では、プロセッサの少なくとも1つは、積和演算のためのネイティブサポートを提供するSIMD(シングルインストラクションマルチプルデータ)システムをサポートする少なくとも1つの算術論理演算ユニット(ALU)を含み得る。
【0032】
いくつかの実装形態では、中央処理ユニット(プロセッサ)、GPU及びマルチプロセッサユニット(MPU)の少なくとも1つが含まれ得る。いくつかの実装形態では、プロセッサ及びメインメモリは、処理ユニット225を形成する。いくつかの実装形態では、処理ユニット225は、RAM、ROM及び機械可読ストレージ媒体の1つ又は複数に通信可能に結合された1つ又は複数のプロセッサを含み、処理ユニットの1つ又は複数のプロセッサは、バスを介して、RAM、ROM及び機械可読ストレージ媒体の1つ又は複数によって保存される命令を受け取り、1つ又は複数のプロセッサは、受け取られた命令を実行する。いくつかの実装形態では、処理ユニットは、ASIC(用途固有の集積回路)である。
【0033】
いくつかの実装形態では、処理ユニットは、SoC(システムオンチップ)であり得る。いくつかの実装形態では、処理ユニットは、積和演算のためのネイティブサポートを提供するSIMD(シングルインストラクションマルチプルデータ)システムをサポートする少なくとも1つの算術論理演算ユニット(ALU)を含み得る。いくつかの実装形態では、処理ユニットは、Intel Xeonプロセッサなどの中央処理ユニットである。他の実装形態では、処理ユニットは、NVIDIA Teslaなどのグラフィカル処理ユニットを含む。
【0034】
いくつかの実装形態では、1つ又は複数のネットワークアダプタ装置又はネットワークインターフェイス装置205は、データ及びコマンドを交換するための1つ又は複数の有線又は無線インターフェイスを提供することができる。このような有線及び無線インターフェイスは、例えば、ユニバーサルシリアルバス(USB)インターフェイス、Bluetoothインターフェイス、Wi-Fiインターフェイス、Ethernetインターフェイス、近距離通信(NFC)インターフェイス及びこれらに類似したものを含む。いくつかの実装形態では、1つ又は複数のネットワークアダプタ装置又はネットワークインターフェイス装置205は、無線通信装置であり得る。いくつかの実装形態では、1つ又は複数のネットワークアダプタ装置又はネットワークインターフェイス装置205は、パーソナルエリアネットワーク(PAN)トランシーバ、ワイドエリアネットワーク通信トランシーバ及び/又はセルラー通信トランシーバを含み得る。
【0035】
いくつかの実装形態では、1つ又は複数のネットワーク装置205は、別のロボット演算装置(例えば、
図1Bのロボット演算装置105に類似したロボット演算装置)に通信可能に結合され得る。いくつかの実装形態では、1つ又は複数のネットワーク装置205は、評価システムモジュール(例えば、215)に通信可能に結合され得る。いくつかの実装形態では、1つ又は複数のネットワーク装置205は、会話システムモジュール(例えば、110)に通信可能に結合され得る。いくつかの実装形態では、1つ又は複数のネットワーク装置205は、試験システム350に通信可能に結合され得る。いくつかの実装形態では、1つ又は複数のネットワーク装置205は、コンテンツリポジトリ(例えば、220)に通信可能に結合され得る。いくつかの実装形態では、1つ又は複数のネットワーク装置205は、クライアント演算装置(例えば、110)に通信可能に結合され得る。いくつかの実装形態では、1つ又は複数のネットワーク装置205は、会話オーサリングシステム141(例えば、160)に通信可能に結合され得る。いくつかの実装形態では、1つ又は複数のネットワーク装置205は、評価モジュール生成器142に通信可能に結合され得る。いくつかの実装形態では、1つ又は複数のネットワーク装置は、ゴールオーサリングシステムに通信可能に結合され得る。いくつかの実装形態では、1つ又は複数のネットワーク装置205は、ゴールリポジトリ143に通信可能に結合され得る。いくつかの実装形態では、(オペレーティングシステム211、アプリケーションプログラム212及び装置ドライバ213などの)ソフトウェアプログラム内の機械実行可能命令は、プロセッサ可読ストレージ媒体、ROM又は任意の他のストレージ場所から(処理ユニットの)1つ又は複数のメモリ装置内に読み込むことができる。これらのソフトウェアプログラムの実行時、個々の機械実行可能命令は、バス201を介して(処理ユニットの)プロセッサ226A~226Nの少なくとも1つによってアクセスされ得、次いでプロセッサの少なくとも1つによって実行され得る。ソフトウェアプログラムによって使用されるデータは、1つ又は複数のメモリ装置内にも保存され得、このようなデータは、ソフトウェアプログラムの機械実行可能命令の実行の際に1つ又は複数のプロセッサ226A~226Nの少なくとも1つによってアクセスされる。
【0036】
いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、ハードドライブ、フラッシュドライブ、DVD、CD、光ディスク、フロッピーディスク、フラッシュストレージ、半導体ドライブ、ROM、EEPROM、電子回路、半導体メモリ装置及びこれらに類似したものの1つ(又はこれらの2つ以上の組合せ)であり得る。いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、オペレーティングシステム211、ソフトウェアプログラム又はアプリケーションソフトウェア212、装置ドライバ213のための機械実行可能命令(及び関係するデータ)及び
図2のプロセッサ226A~226Nの1つ又は複数のための機械実行可能命令を含み得る。
【0037】
いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、ロボット演算装置の頭組立体を運動させるなどの装置制御システムによって実行されるプロセスを実行するためにロボット演算装置を制御するための機械実行可能命令を含む装置制御システムモジュール214を含み得る。
【0038】
いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、評価システム215によって実行されるプロセスを実行するためにロボット演算装置を制御するための機械実行可能命令を含む評価システムモジュール215を含み得る。いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、会話システム216によって実行されるプロセスを実行するためにロボット演算装置105を制御するための機械実行可能命令を含み得る会話システムモジュール216を含み得る。いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、試験システム350によって実行されるプロセスを実行するためにロボット演算装置105を制御するための機械実行可能命令を含み得る。いくつかの実装形態では、プロセッサ可読ストレージ媒体210、会話オーサリングシステム141によって実行されるプロセスを実行するためにロボット演算装置105を制御するための機械可読命令である。
【0039】
いくつかの実装形態では、プロセッサ可読ストレージ媒体210、ゴールオーサリングシステム140によって実行されるプロセスを実行するためにロボット演算装置105を制御するための機械実行可能命令である。いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、評価モジュール生成器142によって実行されるプロセスを実行するためにロボット演算装置105を制御するための機械実行可能命令を含み得る。
【0040】
いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、コンテンツリポジトリ220を含み得る。いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、ゴールリポジトリ180を含み得る。いくつかの実装形態では、プロセッサ可読ストレージ媒体210は、情緒検出モジュールのための機械実行可能命令を含み得る。いくつかの実装形態では、情緒検出モジュールは、キャプチャされた画像データ(例えば、知覚システム123及び撮像装置の1つによってキャプチャされた画像データ)に基づいて情緒を検出するように構築することができる。いくつかの実装形態では、情緒検出モジュールは、キャプチャされたオーディオデータ(例えば、知覚システム123及び/又はマイクロフォンの1つによってキャプチャされたオーディオデータ)に基づいて情緒を検出するように構築することができる。いくつかの実装形態では、情緒検出モジュールは、キャプチャされた画像データ及びキャプチャされたオーディオデータに基づいて情緒を検出するように構築することができる。いくつかの実装形態では、情緒検出モジュールによって検出可能な情緒は、怒り、軽蔑、嫌悪、恐れ、幸せ、中立、悲しみ及び驚きを含む。いくつかの実装形態では、情緒検出モジュールによって検出可能な情緒は、幸せ、悲しみ、怒り、混乱、嫌悪、驚き、冷静、未知を含む。いくつかの実装形態では、情緒検出モジュールは、検出された情緒を肯定的、否定的又は中立的として分類するように構築される。いくつかの実装形態では、ロボット演算装置105は、装置によるアクションの実行の後に判定された情緒分類(例えば、肯定的、中立的、否定的)を取得、算出又は生成するために情緒検出モジュールを利用することができると共に、実施されたアクションとの関連で判定された情緒分類を(例えば、ストレージ媒体210内に)保存することができる。
【0041】
いくつかの実装形態では、試験システム350は、ロボット演算装置とは別個のハードウェア装置又は演算装置を含み得、試験システム350は、(装置120のための本明細書に記述されるシステムアーキテクチャに類似したシステムアーキテクチャに従って構築された)少なくとも1つのプロセッサ、メモリ、ROM、ネットワーク装置及びストレージ媒体を含み、この場合、ストレージ媒体は、本明細書に記述されるように、試験システム350によって実行されるプロセスを実行するために試験システム350を制御するための機械実行可能命令を保存する。
【0042】
いくつかの実装形態では、会話オーサリングシステム141は、ロボット演算装置105とは別個のハードウェア装置であり得、会話オーサリングシステム141は、(ロボット演算装置105のための本明細書に記述されるシステムアーキテクチャに類似したシステムアーキテクチャに従って構築された)少なくとも1つのプロセッサ、メモリ、ROM、ネットワーク装置及びストレージ媒体を含み得、この場合、ストレージ媒体は、会話オーサリングシステムによって実行されるプロセスを実行するために会話オーサリングシステム141を制御するための機械実行可能命令を保存する。
【0043】
いくつかの実装形態では、評価モジュール生成器142は、ロボット演算装置105とは別個のハードウェア装置であり得、評価モジュール生成器142は、(ロボット演算装置のための本明細書に記述されるシステムアーキテクチャに類似したシステムアーキテクチャに従って構築された)少なくとも1つのプロセッサ、メモリ、ROM、ネットワーク装置及びストレージ媒体を含み得、この場合、ストレージ媒体は、本明細書に記述されるように、評価モジュール生成器によって実行されるプロセスを実行するために評価モジュール生成器142を制御するための機械実行可能命令を保存する。
【0044】
いくつかの実装形態では、ゴールオーサリングシステム140は、ロボット演算装置とは別個のハードウェア装置であり得、ゴールオーサリングシステム140は、(ゴールオーサリングシステム140によって実行されるプロセスを実行するためにゴールオーサリングシステムを制御するための本明細書に記述されるシステムアーキテクチャに類似したシステムアーキテクチャに従って構築された)少なくとも1つのプロセッサ、メモリ、ROM、ネットワーク装置及びストレージ媒体を含み得る。いくつかの実装形態では、ゴールオーサリングシステムのストレージ媒体は、本明細書に記述されるゴール定義ユーザーインターフェイスのデータ、設定及び/又はパラメータを含み得る。いくつかの実装形態では、ゴールオーサリングシステム140のストレージ媒体は、本明細書に記述されるゴール定義ユーザーインターフェイス(例えば、ユーザーインターフェイス)の機械実行可能命令を含み得る。いくつかの実装形態では、ゴールオーサリングシステムのストレージ媒体は、本明細書に記述されるゴール定義情報のデータ(例えば、ゴール定義情報)を含み得る。いくつかの実装形態では、ゴールオーサリングシステムのストレージ媒体は、本明細書に記述されるゴール定義情報(例えば、ゴール定義情報)を生成するためにゴールオーサリングシステムを制御するための機械実行可能情報を含み得る。
【0045】
図3Aは、いくつかの実施形態による、SocialXクラウドに基づく会話システムのシステムアーキテクチャを示す。いくつかの実施形態では、ダイアログ管理システム300は、ロボット演算装置内に存在し得るか、配置され得るか又は設置され得る。いくつかの実施形態では、ロボット演算装置上のダイアログ管理システム300は、ダイアログマネージャモジュール335、自然言語処理システム325及び/又は音声ユーザーインターフェイス320を含み得る。2022年2月29日付けで出願された米国特許出願第62/983,592号「SYSTEMS AND METHODS FOR SHORT- AND LONG-TERM DIALOG MANAGEMENT BETWEEN A ROBOT COMPUTING DEVICE/DIGITAL COMPANION AND A USER」を参照されたい。いくつかの実施形態では、ダイアログ管理システム300は、ユーザー又は消費者との間のダイアログ及び/又は会話に相対的に効率的及び/又は正確に関与するために、SocialXクラウドに基づく会話モジュール301(又は例えばアプリケーションプログラミングインターフェイス(API))を利用することができる。いくつかの実施形態では、SocialXクラウドに基づく会話モジュール301は、特別なコマンド(例えば、モキシー、チャットしよう)、計画されたスケジューリング、特別なマークアップ(例えば、オープンクエスチョン)、ロボット上のオーサリングされたパターンの欠如又はミスマッチ(即ちフォールバック処理)及び/又は発話-テキスト変換モジュールから受け取られた1つ又は複数のテキストファイルの概念又はコンテキストの複雑さに応答して利用することができる。これらの実施形態では、ダイアログ管理システム300は、(クラウドサーバー及び/又はネットワーク302を利用して)音声ファイルを自動発話認識モジュール341に伝達することができると共に、自動発話認識モジュール341は、認識されたテキストファイルを分析及び/又は処理のためにSocialXクラウドに基づく会話モジュール301に伝達することができる。
図3Aは、チャット又は会話モジュール301がクラウドに基づく演算装置内に配置されることを示すが、(例えば、ロボット装置などの)IoT装置は、ソーシャル会話モジュール301を収容し、及び/又は含み得る。
【0046】
いくつかの実施形態では、SocialXクラウドに基づくモジュール301は、1つ又は複数のメモリ装置又はメモリモジュール366、会話サマリモジュール364(例えば、SocialXサマリモジュール)、チャットモジュール362(例えば、SocialXチャットモジュール)、会話マークアップモジュール365(例えば、SocialXマークアップモジュール)、質問及び回答モジュール368(例えば、SocialX Q&Aモジュール)、知識ベース又はデータベース360、サードパーティAPI又はソフトウェアプログラム361及び/又は意図又はフィルタリングモジュール308(例えば、SocialX意図モジュール)を含み得る。いくつかの実施形態では、意図フィルタリングモジュール308は、特定の計測及び/又はパラメータを生成するために、自動発話認識モジュール341からの受け取られた入力テキストを1つ及び/又は複数の方式で分析することができる。いくつかの実施形態では、意図又はフィルタリングモジュール308は、入力フィルタリングモジュール351、出力フィルタリングモジュール355、意図認識モジュール353、感情分析モジュール357、メッセージブローカリングモジュール359、パーソナル保護モジュール356、意図フュージョンモジュール352及び/又は環境キューフュージョンモジュール354を含み得る。いくつかの実施形態では、入力フィルタリングモジュール351は、いくつかの実施形態に従って禁止発話フィルタ及び/又は特別話題フィルタを含み得る。いくつかの実施形態では、サードパーティアプリケーションソフトウェア又はAPI361は、会話モジュールと同一のクラウド演算装置又はサーバー上に配置され得るが、代替実施形態では、サードパーティアプリケーションソフトウェア又はAPIは、別のクラウド演算装置又はサーバー上に配置することができる。様々なハードウェア及び/又はソフトウェアモジュールの間の相互作用については、以下の
図3A~
図3N及び
図4A~
図4Dとの関係で詳細に説明する。
【0047】
図3Bは、いくつかの実施形態による、SocialXクラウドに基づくシステム内でチャット要求を処理するためのデータフローを示す。いくつかの実施形態では、ロボット演算装置は、ユーザー及び/又は消費者に対する会話応答の開発の支援を探す場合がある。いくつかの実施形態では、自動発話認識モジュール341(例えば、SocialXクラウドに基づく会話モジュールとは物理的に別個であり得るGoogleの発話-テキストプログラム)は、分析及び/又は処理のために、1つ又は複数の入力テキストファイルをSocialXクラウドに基づく会話モジュール301に伝達することができる。いくつかの実施形態では、入力フィルタリングモジュール351内の禁止発話フィルタは、1つ又は複数の入力テキストファイルが禁止話題を含まないことを検証することができる(これは、
図4のステップ404と関連する)。いくつかの実施形態では、禁止話題は、暴力、性的関係、性的指向問題及び/又は自傷行為に関する話題を含み得る。禁止話題の特定の例は、ユーザーが、誰かを殴るか又は傷つけることを所望すると発言するか、性的関係に関する質問を行うか若しくはそれに関するコメントを行うか、ロボットの性的指向についてロボットに質問するか、又は性的指向についてコメントを行い、及び/又は自分自身を傷つけることを想定し得ると通知することを含む。フィルタリングされ得る他の困難な又は禁止された話題は、政治及び/又は宗教であり得るであろう。いくつかの実施形態では、1つ又は複数の入力テキストファイルは、1つ又は複数のテキストファイルの意図を判定するために、意図認識モジュール353によって分析され得、意図パラメータ及び/又はメッセージは、1つ又は複数のテキストファイルのために生成され得、及び/又はそれに関連付けられ得る。いくつかの実施形態では、メッセージブローカリングモジュール359は、1つ又は複数の入力テキストファイル及び/又は意図パラメータ及び/又はメッセージをチャットモジュール362に伝達することができる(ステップ406と関連する)。一例として、ユーザーは、宇宙又は学校などの特定の話題について話す所望を通知し得る。更なる例として、ユーザーの発話(及び従って入力テキストファイル)は、現時点の継続中の会話に関する興味を示すか又は共有するか、又は代わりにそれに伴うフラストレーションレベルを示すか又は共有することもできる。ユーザー入力テキストファイルがフラストレーションを通知するか又は示す場合、これは、会話の話題を変更する意欲を示し得る(話題を変更する意欲を示す意図パラメータ)。いくつかの実施形態では、SocialXチャットモジュール362は、任意のアクションが実行される必要があるかどうかをチャットモジュール362の分析及び/又は意図パラメータ及び/又はメッセージに基づいて判定するために1つ又は複数の入力テキストファイル及び/又は意図パラメータ及び/又はメッセージを分析することができる(ステップ408と関連する)。いくつかの実施形態では、ユーザーの意図を分析するために、更なるモジュール及び/又はソフトウェアを使用することができる。いくつかの実施形態では、会話モジュール301は、マルチモードパラメータ、計測及び/又は他の入力をIoT装置又はロボット演算装置300から受け取ることもできる。いくつかの実施形態では、意図フュージョンモジュール352は、(例えば、限定されないが、ユーザーの意図の分析及び/又は判定を支援するための非口頭キューを含む)受け取られたマルチモードパラメータ、計測及び/又は他の入力ファイルを分析することができる。いくつかの実施形態では、意図フュージョンモジュール352からの出力は、意図パラメータ及び/又はメッセージの判定を支援又は援助するために利用することができる。いくつかの実施形態では、会話モジュール301は、IoT装置から環境入力キューを受け取ることもでき、これは、(例えば、ワールド追跡モジュール388及び/又はマルチモードフュージョンモジュール386からの)ビデオ又は画像及び/又は環境パラメータ及び/又は計測を含む。いくつかの実施形態では、環境キューフュージョンモジュール354は、ユーザーの意図の判定を更に支援するために、受け取られたビデオ画像及び/又は環境パラメータ及び/又は計測を分析することができる。例えば、環境キューフュージョンモジュール354が、TV上でスペースシャトルを描いたおもちゃの画像又はエルモを含むサウンドファイルを検出した場合、環境キューフュージョンモジュール354は、ユーザーの興味及び/又は意図を判定するために、これらの環境キューを利用することができると共に、受け取られた環境キューに基づいて意図パラメータ及び/又はメッセージを割当及び/又は修正することができる。
【0048】
いくつかの実施形態では、チャットモジュール362は、出力テキストファイルを生成することができると共に(ステップ410と関連する)、1つ又は複数の出力テキストファイルを会話マークアップモジュール365に伝達することができる(ステップ412と関連する)。いくつかの実施形態では、チャットモジュール362は、(例えば、受け取られ、分析された入力テキストファイルが禁止話題を含む場合に)生成された出力テキストファイルに追加し、及び/又はそれを置換するための潜在的な出力テキストファイルを取得するために1つ又は複数のメモリ装置366と通信することができる。いくつかの実施形態では、マークアップモジュール365は、出力テキストファイルの感情及び/又は情緒を分析するために感情分析モジュール357を利用することができる(ステップ414と関連する)。いくつかの実施形態では、マークアップモジュール365は、情緒インジケータ若しくはパラメータ及び/又はマルチモード出力アクション(例えば、顔面表現、腕運動、更なるサウンドなど)を生成し、及び/又はそれを出力テキストファイルに割当又は関連付けることができる(ステップ416)。いくつかの実施形態では、出力フィルタモジュール355は、1つ又は複数の出力テキストファイルが禁止事項を含むかどうかを分析するために(又は1つ若しくは複数の出力テキストファイルが禁止事項を含まないことを検証するために)禁止発話フィルタを使用することができる(ステップ420と関連する)。換言すれば、入力テキストファイル及び出力テキストファイルは、いずれも、これらの禁止事項がロボット演算装置に対して発話されず、及び/又はロボット演算装置によって発話されないことを確実にするために禁止発話フィルタによって分析することができる(例えば、入力及び/又は出力の両方)。いくつかの実施形態では、ペルソナ保護モジュール356は、1つ若しくは複数の出力テキストファイル、関連する情緒インジケータ又は1つ若しくは複数のパラメータ及び/又は1つ若しくは複数の関連するマルチモード出力アクションを分析し、これらのファイル、1つ若しくは複数のパラメータ及び/又は1つ若しくは複数のアクションが、確立された及び/又は所定のロボット装置ペルソナパラメータに準拠することを検証することができる。いくつかの実施形態では、ガイドラインが満たされる(例えば、禁止発話話題が存在せず、出力テキストファイルがロボット演算装置のペルソナとアライメントされる)場合、SocialXクラウドに基づくモジュール301の意図モジュール308は、1つ又は複数の出力テキストファイル、1つ若しくは複数の関連する情緒インジケータ若しくはパラメータ及び/又は1つ若しくは複数の関連するマルチモード出力アクションをロボット演算装置に伝達することができる(ステップ423と関連する)。
【0049】
いくつかの実施形態では、生成された出力テキストファイルが禁止発話話題を含む場合及び/又は生成された出力テキストファイルがロボット演算装置のペルソナと合致しない場合、チャットモジュール362は、話題を含む受け入れ可能な出力テキストファイル、情緒インジケータ若しくはパラメータ及び/又はマルチモード出力アクションを検索し、及び/又はそれを見出すことができる(ステップ424と関連する)。いくつかの実施形態では、チャットモジュール362が受け入れ可能な出力テキストファイル、情緒インジケータ若しくはパラメータ及び/又はマルチモード出力アクションを見出した場合、チャットモジュール362及び/又は意図モジュール308は、受け入れ可能な出力テキストファイル、情緒インジケータ若しくはパラメータ及び/又はマルチモード出力アクションをロボット演算装置に伝達することができる(ステップ426と関連する)。いくつかの実施形態では、チャットモジュール362は、受け入れ可能な出力テキストファイルを見出すか又は特定することができず、チャットモジュールは、1つ又は複数のメモリモジュール366及び/又は知識データベース360からリダイレクトテキストファイルを取得することができると共に、処理のためにリダイレクトテキストファイルをマークアップモジュールに伝達することができる(ステップ428と関連する)。
【0050】
図3Cは、いくつかの実施形態による、ロボットのバックストーリーと関係する質問を処理するためのデータフローを示す。本明細書に記述される他のデータフローと同様に、意図モジュール308は、まず、(
図3Bで上述されたように)入力フィルタリングモジュール351を介して入力フィルタリングを実行し得、意図認識モジュール353を介して意図認識を実行し得、意図フュージョンモジュール352を使用してマルチモード意図認識を実行し得(例えば、受け取られたユーザーマルチモードパラメータ、計測及び/又はファイルの分析に基づいて意図を認識し(及び意図パラメータを関連付ける))、環境キュー機能モジュール354を介して環境意図認識を実行し得る(例えば、(
図3Bで上述されるように)受け取られた環境キュー、パラメータ、計測及び/又はファイルの分析に基づいて意図を認識する(及び意図パラメータを関連付ける))。いくつかの実施形態では、
図3Cにおいて、SocialXクラウドに基づく会話モジュール301は、1つ又は複数の入力テキストファイルを検討し得、質問が行われたと判定し得、質問に対する回答を見出し得、次いで応答をロボット演算装置に返すように提供し得る。いくつかの実施形態では、外部演算装置発話認識モジュール341は、1つ又は複数の入力テキストファイルを意図モジュール308に伝達することができる。いくつかの実施形態では、意図認識モジュール353及び/又はメッセージブローカリングモジュール359は、ロボット演算装置に関するか又はそれに関連付けられた質問が1つ又は複数のテキストファイル内に存在するかどうかを判定するために1つ又は複数の入力テキストファイルを分析することができる。いくつかの実施形態に、1つ又は複数のテキストファイルがロボット演算装置に関連付けられた質問を対象とする場合、メッセージブローカリングモジュール359は、1つ又は複数の入力テキストファイルを質問/回答モジュール368に伝達することができる。いくつかの実施形態では、質問/回答モジュール368は、1つ又は複数の入力テキストファイルから質問を抽出することができると共に、1つ又は複数の入力テキストファイルから抽出された質問に対する回答について知識データベース360に問い合わせることができる。いくつかの実施形態では、チャットモジュール362は、回答を含む1つ又は複数の出力テキストファイルを生成することができると共に、回答を含む1つ又は複数の出力テキストファイルをマークアップモジュール365に伝達することができる。いくつかの実施形態では、感情分析モジュール357は、回答を含む1つ又は複数の出力テキストファイルの感情及び/又は情緒を分析することができる。いくつかの実施形態では、マークアップモジュール365は、1つ若しくは複数の情緒インジケータ若しくはパラメータ及び/又は1つ若しくは複数のマルチモード出力アクションを関連付け得、生成し得、及び/又はそれを、回答を含む出力テキストファイルに割り当て得る。この観点では、マークアップモジュール365は、
図4A及び
図4Bに記述されるステップ418~428のみならず、
図3Bのデータフローとの関係において以上で図示及び/又は記述される動作を実行することができる。
【0051】
図3Dは、いくつかの実施形態による、意図分類要求を処理するためのデータフローを示す。いくつかの実施形態では、多くの場合、子供は、SocialXクラウドに基づくモジュールが提供し得る単純な回答を必要とする単純な質問を実行し得る。例えば、ユーザー又は消費者は、特定のアクションが親切なことであるかどうかを問う場合がある。本明細書に記述される他のデータフローと同様に、意図モジュール308は、まず、(
図3Bで上述されたように)入力フィルタリングモジュール351を介して入力フィルタリングを実行し得、意図認識モジュール353を介して意図認識を実行し得、意図フュージョンモジュール352を使用してマルチモード意図認識を実行し得(例えば、受け取られたユーザーマルチモードパラメータ、計測及び/又はファイルの分析に基づいて意図を認識し(及び意図パラメータを関連付ける)、環境キュー機能モジュール354を介して環境意図認識を実行し得る(例えば、(
図3Bで上述されたように)受け取られた環境キュー、パラメータ、計測及び/又はファイルの分析に基づいて意図を認識する(及び意図パラメータを関連付ける))。この実施形態では、1つ又は複数の入力テキストファイルは、外部演算装置自動発話認識モジュール341から受け取られ得、意図認識モジュール353によって分析され得る。いくつかの実施形態では、意図認識モジュール353は、1つ又は複数の入力テキストファイルのための意図又は分類パラメータ(例えば、肯定的意図/分類、否定的意図/分類又は中立的意図/分類)を判定することができると共に、メッセージブローカリングモジュール350は、意図又は分類パラメータを生成し得、及び/又はそれをチャットモジュール362に伝達し得る。いくつかの実施形態では、チャットモジュール362は、意図又は分類パラメータを含む1つ又は複数の出力テキストファイルを生成することができると共に、回答を含む1つ又は複数の出力テキストファイルをマークアップモジュール365に伝達することができる。いくつかの実施形態では、感情分析モジュール357は、意図又は分類パラメータを含む1つ又は複数の出力テキストファイルの感情及び/又は情緒を分析することができる。いくつかの実施形態では、マークアップモジュール365は、1つ若しくは複数の情緒インジケータ若しくはパラメータ及び/又は1つ若しくは複数のマルチモード出力アクションを関連付け得、生成し得、及び/又はそれを意図又は分類パラメータを含む出力テキストファイルに割り当て得る。この観点では、マークアップモジュール365は、
図4A及び
図4Bに記述されるステップ418~428のみならず、
図3Bのデータフローとの関係において以上で図示及び/又は記述される動作を実行することができる。
【0052】
図3Eは、いくつかの実施形態による、サードパーティアプリケーションによって質問に回答するためのデータフローを示す。例えば、SocialXクラウドに基づく会話モジュール301は、回答されつつある質問に対する回答について外部又はサードパーティソフトウェアアプリケーションを参照する必要がある場合がある。例えば、クラウドに基づく会話モジュール301は、特定の単語が意味するものに関する回答についてブリタニカ百科事典を参照し、及び/又はソフトウェアコーディングに関する回答又はガイダンスについてサードパーティソフトウェアコーディングプログラムを参照する必要があり得る。本明細書に記述される他のデータフローと同様に、意図モジュール308は、まず、(
図3Bで上述されたように)入力フィルタリングモジュール351を介して入力フィルタリングを実行し得、意図認識モジュール353を介して意図認識を実行し得、意図フュージョンモジュール352を使用してマルチモード意図認識を実行し得(例えば、受け取られたユーザーマルチモードパラメータ、計測及び/又はファイルの分析に基づいて意図を認識する(及び意図パラメータを関連付ける))、環境キュー機能モジュール354を介して環境意図認識を実行し得る(例えば、(
図3Bで上述されるように)受け取られた環境キュー、パラメータ、計測及び/又はファイルの分析に基づいて意図を認識する(及び意図パラメータを関連付ける))。いくつかの実施形態では、メッセージブローカリングモジュール359は、1つ又は複数の入力テキストファイルを受け取ることができる。いくつかの実施形態では、意図認識モジュール353及び/又はメッセージブローカリングモジュール359は、質問が行われたことを判定するために1つ又は複数の入力テキストファイルを分析し、1つ又は複数のテキストファイルを質問/回答モジュール368に伝達する。いくつかの実施形態では、質問/回答モジュール368は、1つ又は複数の入力テキストファイルから質問を抽出することができると共に、抽出された質問のための回答を取得するためにサードパーティアプリケーションプログラミングインターフェイス又はソフトウェア361と通信することができる。いくつかの実施形態では、質問/回答モジュール368は、サードパーティAPI又はソフトウェアのための1つ又は複数の回答テキストファイルを受け取ることができると共に、1つ又は複数の回答テキストファイルをチャットモジュール362に伝達することができる。いくつかの実施形態では、チャットモジュール362は、1つ又は複数の回答テキストファイルを含む1つ又は複数の出力テキストファイルを生成することができると共に、1つ又は複数の回答ファイルを含む1つ又は複数の出力テキストファイルを会話マークアップモジュール365に伝達することができる。この観点では、マークアップモジュール365は、
図3Bとの関係で上述された動作を実行することができる。この観点では、マークアップモジュール365は、
図4A及び
図4Bに記述されるステップ418~428のみならず、
図3Bのデータフローとの関係において以上で図示及び/又は記述される動作を実行することができる。
【0053】
図3Fは、いくつかの実施形態による、会話サマリ要求を処理するためのデータフローを示す。ユーザー又は消費者は、ロボット演算装置及び/又はユーザー又は消費者間で発生した1つ又は複数の会話の会話サマリ要求を受け取ることを所望し得る。いくつかの実施形態では、SocialXクラウドに基づく会話モジュール301は、1つ又は複数の入力テキストファイルを受け取ることができる。本明細書に記述される他のデータフローと同様に、意図モジュール308は、まず、(
図3Bで上述されたように)入力フィルタリングモジュール351を介して入力フィルタリングを実行し得、意図認識モジュール353を介して意図認識を実行し得、意図フュージョンモジュール352を使用してマルチモード意図認識を実行し得(例えば、受け取られたユーザーマルチモードパラメータ、計測及びファイルの分析に基づいて意図を認識し(及び意図パラメータを関連付ける)、環境キュー機能モジュール354を介して環境意図認識を実行し得る(例えば、(
図3Bで上述されたように)受け取られた環境キュー、パラメータ、計測及び/又はファイルの分析に基づいて意図を認識する(及び意図パラメータを関連付ける))。いくつかの実施形態では、メッセージブローカリングモジュール359は、1つ又は複数の入力テキストファイルを分析し得、1つ又は複数の入力テキストファイルがユーザー又は消費者との会話のサマリを要求することを識別し得、サマリ要求をチャットモジュール362に伝達し得る。いくつかの実施形態では、サマリ要求について通知された際、会話サマリモジュール364は、1つ又は複数のメモリモジュール366と通信することができると共に、ロボット演算装置及び/又はユーザー及び/又は消費者の間の以前の会話テキストファイルを取得することができる。いくつかの実施形態では、会話サマリモジュール364は、以前の会話テキストファイルを要約することができると共に、1つ又は複数の会話サマリテキストファイルを生成することができる。いくつかの実施形態では、会話サマリモジュール364は、1つ又は複数の会話サマリファイルをチャットモジュール362に伝達し得、チャットモジュール362は、会話マークアップモジュール365に対する会話サマリテキストファイルを含む1つ又は複数の出力テキストファイルを生成することができる。この観点では、マークアップモジュール365は、
図3Bとの関係で上述された同一の動作を実行することができる。この観点では、マークアップモジュール365は、
図4A及び
図4Bに記述されるステップ414~428のみならず、
図3Bのデータフローとの関係において以上で図示及び/又は記述される動作を実行することができる。
【0054】
図3Gは、いくつかの実施形態による、ペルソナ違反インシデントを処理し、取り扱うためのデータフローを示す。SocialXクラウドに基づく会話モジュール301は、ロボットペルソナ違反について1つ若しくは複数の入力テキストファイル及び/又は1つ若しくは複数の出力テキストファイルを検討することもできる。換言すれば、ロボット演算装置は、ロボットペルソナと称され得る特定の特性、挙動及び/又はアクションを有することができる。到来する1つ又は複数のテキストファイル又は1つ又は複数の出力テキストファイル、関連する情緒パラメータ及び/又はインジケータ及び/又はマルチモード出力アクションが、これらのペルソナ違反に違反するか(例えば、異なる特性又は挙動を有する)、又はロボット演算装置特性、挙動及びアクションと大幅に異なる場合、SocialXクラウドに基づく会話モジュール301は、これが発生したと識別することができる。
図3Gは、ロボットペルソナ違反について1つ又は複数の入力テキストファイルを分析することに焦点を当てている。本明細書に記述される他のデータフローと同様に、意図モジュール308は、まず、(
図3Bで上述されたように)入力フィルタリングモジュール351を介して入力フィルタリングを実行し得、意図認識モジュール353を介して意図認識を実行し得、意図フュージョンモジュール352を使用してマルチモード意図認識を実行し得(例えば、受け取られたユーザーマルチモードパラメータ、計測及び/又はファイルの分析に基づいて意図を認識し(及び意図パラメータを関連付ける))、環境キュー機能モジュール354を介して環境意図認識を実行し得る(例えば、(
図3Bで上述されたように)受け取られた環境キュー、パラメータ、計測及び/又はファイルの分析に基づいて意図を認識する(及び意図パラメータを関連付ける))。いくつかの実施形態では、入力フィルタリングモジュール351は、受け取られた1つ又は複数の入力テキストファイルを分析し、1つ又は複数の入力テキストファイルをチャットモジュール362に伝達する。いくつかの実施形態では、チャットモジュール362は、ロボット演算装置のペルソナを取得するために1つ又は複数のメモリ装置366と通信することができる。いくつかの実施形態では、ペルソナ保護モジュール356は、受け取られた1つ又は複数の入力テキストファイルが取得されたペルソナパラメータに違反するかどうかを判定するために受け取られた1つ又は複数の入力テキストファイルを分析又は判定するように、取得されたロボット演算装置のペルソナ(例えば、特性、挙動及び/又はアクション)を利用することができる。受け取られた1つ又は複数の入力テキストファイルが取得されたペルソナパラメータに違反するとペルソナ保護モジュール356が判定した場合、ペルソナ保護モジュール356及び/又は意図モジュール308は、(ロボット演算装置のペルソナパラメータに違反した)受け取られた入力テキストファイルを置換する1つ又は複数のフォールバックの、代替の及び/又は受け入れ可能な入力テキストファイルを取得するために知識データベース360と通信する。いくつかの実施形態では、1つ又は複数のフォールバックの、代替の及び/又は受け入れ可能な入力テキストファイルは、次いで、チャットモジュール362によって処理され、チャットモジュール362は、1つ又は複数の出力テキストファイルを生成する。ペルソナパラメータ(例えば、特性、挙動及び/又はアクション)は、ユーザーペルソナパラメータ、ロボット若しくはIoTペルソナパラメータ又は全体的な一般的ペルソナパラメータを含み得る。例として、ユーザーペルソナパラメータは、ユーザーとの会話時にユーザーによって入力され得、及び/又はロボット又はIoT演算装置によって収集され得る好ましい色、スポーツ、食べ物、音楽、ペット、趣味、ニックネームなどを含み得る。いくつかの実施形態では、ロボットペルソナパラメータは、態度(例えば、フレンドリー、風変り、肯定的)又は他の特性(その物理的制限に起因してそれが実行できない活動、主題制限若しくはそれが実際の生物ではないこと)を含み得る。ロボットペルソナパラメータの例は、ロボット若しくはIoT演算装置がフレンチフライを食べないこと、それがサッカーをプレーし得ないこと又はペットを持てないか若しくは子供を持てないこと及び(それがGRLのためのグローバルアンバサダーであるにも関わらず)それが月若しくは別の惑星に行くと言えないことを含む。ペルソナパラメータは、ユースケースにも依存し得る。例えば、様々なロボットペルソナパラメータが年寄りのケアロボット、十代を対象としたロボット、治療ロボット及び医療ロボットのために必要であり得る。いくつかの実施形態では、チャットモジュール362は、1つ又は複数の出力テキストファイル及び/又は関連する意図パラメータ又は分類をマークアップモジュール365に伝達することができる。この観点では、マークアップモジュール365は、
図4A及び
図4Bに記述されるステップ414~428のみならず、
図3Bのデータフローとの関係において以上で図示及び記述される動作を実行することができる。
【0055】
図3Hは、いくつかの実施形態による、出力違反インシデンス又は発生を処理するためのデータフローを示す。出力違反は、出力テキストファイルが、1)ロボット演算装置のペルソナパラメータに違反するか又はそれと大幅に異なる、2)禁止発話話題を含み、及び/又は3)ロボット演算装置が会話するべきではない他の話題(即ち社会的不正義又はメンタルヘルス)を含むというものであり得る。これらの実施形態では、ステップ402~416に記述される(及び
図3Bに示される)動作を実行することができる。これらの実施形態では、出力フィルタモジュール355は、1つ又は複数の出力テキストファイル、関連する情緒パラメータ及び/又はインジケータ及び/又はマルチモード出力アクションを受け取ることができると共に、以上に列挙された出力違反の1つが発生したかどうかを判定するためにこれらを分析する(例えば、禁止発話フィルタが利用され、特別話題フィルタが利用され、及び/又は1つ又は複数の出力テキストファイル、関連する情緒パラメータ及び/又はインジケータ及び/又はマルチモード出力アクションを分析及び/又は評価するためにペルソナ保護フィルタが利用され得る)。違反が発生したと判定された(例えば、禁止発話話題が1つ又は複数の出力テキストファイル内に含まれるか、又はペルソナパラメータが出力テキストファイル、情緒パラメータ及び/又はマルチモード出力アクションによって踏襲されない)場合、出力フィルタモジュール355は、ペルソナ違反が発生したと意図モジュール308との間において通信することができると共に、意図モジュール308は、1つ又は複数の受け入れ可能な出力テキストファイルを取得するために知識データベース360と通信することができる。いくつかの実施形態では、情緒パラメータ及び/又はマルチモード出力アクションが1つ又は複数の受け入れ可能出力テキストファイルに関連付け及び/又は割当され得るように、1つ又は複数の受け入れ可能な出力テキストファイルがマークアップモジュール365に伝達される。いくつかの実施形態では、マークアップモジュールは、1つ又は複数の受け入れ可能出力テキストファイル、情緒パラメータ及び/又はマルチモード出力アクションをチャットモジュール362に伝達することができる。いくつかの実施形態では、知識データベース360は、1つ又は複数の受け入れ可能出力テキストファイル、関連する情緒パラメータ及び/又はマルチモード出力アクションを保存することができる。いくつかの実施形態では、チャットモジュール362及び/又は意図モジュール308は、1つ又は複数の受け入れ可能出力テキストファイル、関連する情緒パラメータ及び/又はマルチモード出力アクションをロボット演算装置300内のダイアログマネージャに提供することができる。
【0056】
図3Iは、いくつかの実施形態による、入力発話又はテキスト違反インシデンス又は発生のためのデータフローを示す。いくつかの実施形態では、入力発話又はテキスト違反は、入力発話又はテキストが社会正義話題、自傷行為話題、メンタルヘルス話題、暴力話題及び/又は性的関係話題を含むというものであり得る。いくつかの実施形態では、意図モジュール308は、自動発話認識モジュール341から1つ又は複数の入力テキストファイルを受け取ることができる。これらの実施形態では、意図モジュール308の入力フィルタ351は、以上に列挙されたテキスト違反又は発生の任意のものが自動発話認識モジュール341から受け取られた1つ又は複数の入力テキストファイル内に存在するかどうかを判定するために1つ又は複数の入力テキストファイルを分析することができる。いくつかの実施形態では、違反が発生した場合、意図モジュール308及び/又はメッセージブローカリングモジュール359は、知識データベース360と通信することができると共に、これから1つ又は複数の受け入れ可能な及び/又は新しいテキストファイルを取得することができる。これらの実施形態では、取得された1つ又は複数の受け入れ可能な及び/又は新しいテキストファイルは、以上に列挙されたいずれの話題も含まない。いくつかの実施形態では、メッセージブローカリングモジュール359は、取得された1つ又は複数の受け入れ可能なテキストファイルをチャットモジュール362に伝達することができると共に、チャットモジュールは、処理及び/又は分析のために、1つ又は複数の受け入れ可能なテキストファイルをマークアップモジュール365に伝達することができる。この観点では、マークアップモジュール365は、
図4A及び
図4Bに記述されるステップ414~428のみならず、
図3Bのデータフローとの関係において以上で図示及び/又は記述される動作を実行することができる。いくつかの代替実施形態では、取得された1つ又は複数の受け入れ可能テキストファイルは、取得された1つ又は複数の受け入れ可能テキストファイルを更に処理し得るSocialXクラウドに基づくモジュール301内の更なるモジュールを判定するために、メッセージブローカモジュール359によって分析することができる。
【0057】
図3Jは、いくつかの実施形態による、ロボット及び/又は消費者コミュニケーションに関する過去情報に対する要求を処理するためのデータフローを示す。多くの場合、ユーザー又は消費者は、ユーザー又は消費者がロボット演算装置との間で関与した会話及び/又は活動に関する過去情報を要求する。SocialXクラウドに基づく会話モジュール301は、1つ又は複数のメモリモジュール366に保存されるこの過去情報を取得することができる。いくつかの実施形態では、意図モジュール308の入力フィルタ351は、(
図4及び
図3B及び
図3Iのステップ402~406との関係で上述されたように)任意のテキスト違反又はペルソナ違反が発生したかどうかを判定するために1つ又は複数のテキストファイルを分析することができる。いくつかの実施形態では、ロボット演算装置は、意図パラメータ又は会話話題を判定するために、(
図3Mで後述されるように)受け取られたユーザーマルチモードパラメータ、計測及び/又はファイルを分析し、及び/又は(
図3Mで後述されるように)意図パラメータ又は会話話題を判定するために受け取られた環境キュー、パラメータ、計測及び/又はファイルを分析することができる。いくつかの実施形態では、メッセージブローカモジュール359は、1つ又は複数のテキストファイルを分析し、1つ又は複数の入力テキストファイルが、ユーザーが関与した会話及び/又は活動に関する過去情報を要求することから、1つ又は複数の入力テキストファイルをチャットモジュール362に伝達する必要があると判定する。いくつかの実施形態では、チャットモジュール362は、1つ又は複数のメモリモジュール366と通信し、及び/又は1つ又は複数の過去情報テキストファイルの形態で会話及び/又は活動に関する過去情報を取得することができる。いくつかの実施形態では、チャットモジュール362は、1つ又は複数の過去情報テキストファイルをマークアップモジュール365に伝達することができる。いくつかの実施形態では、マークアップモジュール365は、感情分析モジュール357が過去情報テキストファイルに関連付けられた情緒を判定した後、1つ又は複数の情緒パラメータ及び/又はマルチモード出力アクションを過去情報テキストファイルに関連付けることができる。この観点では、マークアップモジュール365は、
図4A及び
図4Bのステップ418~428との関係で上述され、
図3Bに示される同一の動作を実行することができる。
【0058】
図3Kは、1つ又は複数の実装形態による、ロボット装置と個人との間のマルチターンコミュニケーションを確立又は生成するように構成されたシステム300を示す。いくつかの実装形態では、システム300は、1つ又は複数の演算プラットフォーム302を含み得る。1つ又は複数の演算プラットフォーム302は、クライアント/サーバーアーキテクチャ、ピアツーピアアーキテクチャ及び/又は他のアーキテクチャに従って1つ又は複数のリモートプラットフォーム304と通信するように構成することができる。1つ又は複数のリモートプラットフォーム304は、1つ又は複数の演算プラットフォームを介して及び/又はクライアント/サーバーアーキテクチャ、ピアツーピアアーキテクチャ及び/又は他のアーキテクチャに従って他のリモートプラットフォームと通信するように構成することができる。ユーザーは、1つ又は複数のリモートプラットフォーム304を介してシステム300にアクセスすることができる。システム300との関連で記述される1つ又は複数のコンポーネントは、
図1A、
図1B及び
図2との関連で記述される1つ又は複数のコンポーネントと同一又は類似であり得る。例えば、いくつかの実装形態では、1つ若しくは複数の演算プラットフォーム302及び/又は1つ若しくは複数のリモートプラットフォーム304は、ロボット演算装置105、1つ又は複数の電子装置110、クラウドサーバー演算装置115、親演算装置125及び/又は他のコンポーネントの1つ又は複数と同一又は類似のものであり得る。
【0059】
1つ又は複数の演算プラットフォーム302は、機械可読命令306によって構成することができる。機械可読命令306は、1つ又は複数の命令モジュールを含み得る。命令モジュールは、コンピュータプログラムモジュールを含み得る。命令モジュールは、SocialXクラウドに基づくモジュール会話301を含み得る。
【0060】
SocialXクラウドに基づく会話モジュール301は、発話-テキスト認識を実行する演算装置から、個人の発話と関連する1つ又は複数の入力テキストファイルを受け取るように構成され得、実行するべき更なるアクションを判定するために1つ又は複数の入力テキストファイルを分析し得、1つ又は複数の出力テキストファイルを生成し得、1つ又は複数の情緒パラメータ及びマルチモードアクションファイルを1つ又は複数の出力テキストファイルに関連付け得、1つ又は複数の出力テキストファイル、1つ又は複数の関連する情緒パラメータ及び/又はマルチモードアクションファイルをロボット演算装置に伝達し得る。
【0061】
いくつかの実装形態では、オープンクエスチョンが存在し得る。いくつかの実装形態では、クラウドに基づくソーシャルチャットモジュールを利用するかどうかを判定するために、ロボット装置上において合致する既存の会話パターンの欠如がある。いくつか実装形態では、ソーシャルチャットモジュールは、受け入れ可能出力テキストファイル、関連する情緒インジケータ及び/又はマルチモード出力アクションを知識データベース360及び/又は1つ若しくはメモリモジュール366内で検索する。
【0062】
いくつかの実装形態では、1つ又は複数の演算プラットフォーム302、1つ又は複数のリモートプラットフォーム304及び/又は外部リソース340は、1つ又は複数の電子通信リンクを介して動作可能にリンクされ得る。例えば、このような電子通信リンクは、少なくとも部分的にインターネット及び/又は他のネットワークなどのネットワークを介して確立され得る。これは、限定を意図したものではなく、本開示の範囲は、1つ又は複数の演算プラットフォーム302、1つ又は複数のリモートプラットフォーム304及び/又は外部リソース340が何らかの他の通信媒体を介して動作可能にリンクされ得る実装形態を含むことを理解されたい。
【0063】
所与のリモートプラットフォーム304は、コンピュータプログラムモジュールを実行するように構成された1つ又は複数のプロセッサを含み得る。コンピュータプログラムモジュールは、所与のリモートプラットフォーム304と関連するエキスパート又はユーザーがシステム300及び/又は外部リソース340とインターフェイスし、及び/又は本明細書で1つ又は複数のリモートプラットフォーム304に帰属される他の機能を提供することを可能にするように構成することができる。非限定的な例として、所与のリモートプラットフォーム304及び/又は所与の演算プラットフォーム302は、サーバー、デスクトップコンピュータ、ラップトップコンピュータ、ハンドヘルドコンピュータ、タブレット演算プラットフォーム、ネットブック、スマートフォン、ゲーミングコンソール及び/又は他の演算プラットフォームの1つ又は複数を含み得る。
【0064】
外部リソース340は、システム300の外側の情報のソース、システム300と共に参加する外部エンティティ及び/又は他のリソースを含み得る。いくつかの実装形態では、本明細書で外部リソース340に対して帰属される機能のいくつか又はすべては、システム300内に含まれるリソースによって提供することができる。
【0065】
1つ又は複数の演算プラットフォーム302は、電子ストレージ342、1つ又は複数のプロセッサ344及び/又は他のコンポーネントを含み得る。1つ又は複数の演算プラットフォーム302は、ネットワーク及び/又は他の演算プラットフォームとの間の情報の交換を可能にするために通信ライン又はポートを含み得る。
図3の1つ又は複数のプラットフォーム302の図示は、限定を意図したものではない。1つ又は複数の演算プラットフォーム302は、本明細書で1つ又は複数の演算プラットフォーム302に帰属される機能を提供するために一緒に動作する複数のハードウェア、ソフトウェア及び/又はファームウェアコンポーネントを含み得る。例えば、1つ又は複数の演算プラットフォーム302は、1つ又は複数の演算プラットフォーム302として一緒に動作するコンピュータプラットフォームのクラウドによって実装することができる。
【0066】
電子ストレージ342は、情報を電子的に保存する一時的ではないストレージ媒体を有することができる。電子ストレージ342の電子ストレージ媒体は、1つ又は複数の演算プラットフォーム302と共に一体的に(即ち実質的に非着脱可能に)提供されるシステムストレージ及び/又は例えばポート(例えば、USBポート、ファイアワイヤポートなど)若しくはドライブ(例えば、ディスクドライブなど)を介して1つ又は複数の演算プラットフォーム302に着脱可能に接続可能である着脱可能のストレージの1つ又は両方を含み得る。電子ストレージ342は、光学的に可読のストレージ媒体(例えば、光ディスクなど)、磁気的に可読のストレージ媒体(例えば、磁気テープ、磁気ハードドライブ、フロッピードライブなど)、電荷に基づくストレージ媒体(例えば、EEPROM、RAMなど)、半導体ストレージ媒体(例えば、フラッシュドライブなど)及び/又は他の電子的に可読のストレージ媒体の1つ又は複数を含み得る。電子ストレージ342は、1つ又は複数の仮想的ストレージリソース(例えば、クラウドストレージ、仮想プライベートネットワーク及び/又は他の仮想ストレージリソース)を含み得る。電子ストレージ342は、ソフトウェアアルゴリズム、1つ又は複数のプロセッサ344によって判定された情報、1つ又は複数の演算プラットフォーム302から受け取られた情報、1つ若しくは複数のリモートプラットフォーム304から受け取られた情報及び/又は1つ若しくは複数の演算プラットフォーム302が本明細書に記述されるように機能することを可能にする他の情報を保存することができる。
【0067】
1つ又は複数のプロセッサ344は、1つ又は複数の演算プラットフォーム302内で情報処理能力を提供するように構成することができる。従って、1つ又は複数のプロセッサ344は、デジタルプロセッサ、アナログプロセッサ、情報を処理するように設計されたデジタル回路、情報を処理するように設計されたアナログ回路、状態機械及び/又は情報を電子的に処理するための他のメカニズムの1つ又は複数を含み得る。
図3には、1つ又は複数のプロセッサ344が単一のエンティティとして示されるが、これは、例示を目的としたものに過ぎない。いくつかの実装形態では、1つ又は複数のプロセッサ344は、複数の処理ユニットを含み得る。これらの処理ユニットは、物理的に同一の装置内に配置され得るか、又は1つ若しくは複数のプロセッサ344は、協働して動作する複数の装置の処理機能を表し得る。1つ又は複数のプロセッサ344は、モジュール308及び/又は他のモジュールを実行するように構成することができる。1つ又は複数のプロセッサ344は、ソフトウェア、ハードウェア、ファームウェア、ソフトウェア、ハードウェア及び/又はファームウェアの何らかの組合せ及び/又は1つ若しくは複数のプロセッサ344上で処理能力を構成するための他のメカニズムにより、モジュール308及び/又は他のモジュールを実行するように構成することができる。本明細書で使用される「モジュール」という用語は、モジュールに帰属させられた機能を実行する任意のコンポーネント又はコンポーネントの組を意味し得る。これは、プロセッサ可読命令の実行の際の1つ又は複数の物理的プロセッサ、プロセッサ可読命令、回路、ハードウェア、ストレージ媒体又は任意の他のコンポーネントを含み得る。
【0068】
モジュール301は、
図3Kでは、単一処理ユニット内に実装されるものとして示されるが、1つ又は複数のプロセッサ344が複数の処理ユニットを含む実装形態では、モジュール301の1つ又は複数は、他のモジュールから離れた場所に実装され得ることを理解されたい。モジュール301の任意のものが記述されるものよりも多くの又は少ない機能を提供し得ることから、後述される異なるモジュール301によって提供される機能の説明は、例示を目的とし、限定を意図しない。例えば、モジュール301の1つ又は複数は、除去され得、その機能のいくつか又はすべては、モジュールの他のものによって提供され得る。別の例として、1つ又は複数のプロセッサ344は、モジュール301の1つに以下で帰属される機能のいくつか又はすべてを実行し得る1つ又は複数の更なるモジュールを実行するように構成され得る。
【0069】
図3Lは、いくつかの実施形態による、会話モジュール内におけるマルチモード意図認識の利用を示す。いくつかの実施形態では、SocialX意図モジュール308は、音声ユーザーインターフェイス320によって提供されるテキスト以外の更なるキューを活用することにより、ユーザーの意図を認識する。いくつかの実施形態では、マルチモード要約モジュール389は、非口頭ユーザー計測、ファイル及び/又はパラメータをSocialX意図モジュール308に提供することができる。これらの実施形態では、意図認識モジュール363は、音声ユーザーインターフェイス320及び自動発話認識モジュール341からの情報(例えば、1つ又は複数のテキスト入力ファイル)を解析及び/又は分析することができる。これらの実施形態では、意図フュージョンモジュール352は、意図認識モジュール363からの分析を利用し、及び/又はユーザーの意図を更に判定するためにマルチモード要約モジュール389からの受け取られたユーザーマルチモードパラメータ、計測及び/又はファイルを分析することができる。一例として、意図フュージョンモジュール352は、受け取られたユーザーマルチモードパラメータ、計測及び/又はファイルを分析することができると共に(例えば、ユーザーが会話にフラストレーションを感じ、話題を変更するニーズが存在することを顔面表現若しくは音声トーンが通知するか、又はユーザーが非常に心配していることを顔面表現及び音声のトーンが通知する)、何らかのスムージング会話を提供することが有用であり得ると判定することができる。この実施形態では、意図フュージョンモジュール352は、意図分類又はパラメータをメッセージブローカリングモジュール359に対して生成し得、メッセージブローカリングモジュール359は、次いで、1つ又は複数の入力テキストファイル、意図分類又はパラメータ及び/又はマルチモードパラメータ計測又はファイルをチャットモジュール362に提供することができる。次いで、いくつかの実施形態では、動作は、
図4A及び
図4Bのステップ410~428で概説されるように進捗することができる。
【0070】
図3Mは、いくつかの実施形態による、意図認識のための環境キュー、パラメータ、計測又はファイルの利用を示す。いくつかの実施形態では、
図3Mは、意図認識のための環境キューの使用法を例示する。SocialX意図モジュールは、音声ユーザーインターフェイスによって提供されたテキスト以外の更なる環境キュー、パラメータ、計測及び/又はファイルを活用することにより、ユーザーの意図を認識する。いくつかの実施形態では、マルチモード要約モジュール389は、非口頭環境キュー、計測、ファイル及び/又はパラメータを意図モジュール308に提供することができる。これらの実施形態では、意図認識モジュール363は、音声ユーザーインターフェイス320及び自動発話認識モジュール341からの情報(例えば、1つ又は複数のテキスト入力ファイル)を解析及び/又は分析することができる。これらの実施形態では、環境キューフュージョンモジュール354は、意図認識モジュール363からの分析を利用し、及び/又はユーザーの意図を更に判定するためにマルチモード要約モジュール389からの受け取られたマルチモード環境キュー、パラメータ、計測及び/又はファイルを分析することができる。一例として、環境キューフュージョンモジュール354は、受け取られたマルチモード環境キュー、パラメータ、計測及び/又はファイルを分析することができる(例えば、ユーザーの部屋又はエリア内でスペースシャトルを描いたおもちゃの画像を検出した又はTV上でエルモを聴取した場合、これは、これらの会話の話題に対するユーザーの潜在的な興味の通知であり、これらの会話話題が利用され得ると判定することができる)。この実施形態では、環境キューフュージョンモジュール352は、会話話題を識別する意図分類又はパラメータを生成することができると共に、意図分類又はパラメータをメッセージブローカリングモジュール359に伝達することができ、メッセージブローカリングモジュール359は、次いで、1つ又は複数の入力テキストファイル、意図分類又はパラメータ及び/又はマルチモード環境キュー、パラメータ、計測及び/又はファイルをチャットモジュール362に提供することができる。いくつかの実施形態では、動作は、次いで、
図4A及び
図4Bのステップ410~428で概説されるように進捗することができる。
【0071】
図3Nは、いくつかの実施形態による、ユーザーが質問に対する回答の提供に関与するサードパーティ演算装置を示す。
図3Nは、ユーザー及び/又はロボット演算装置(又はIoT演算装置)がサードパーティ演算装置と能動的に関与することを除いて、
図3Eに描写される例の変形を示す。いくつかの実施形態では、サードパーティ演算装置は、ゲーム又は活動プログラムを実行又は稼働させ得る。いくつかの実施形態では、サードパーティ演算装置399は、限定されないが、グローバルロボティクスラボラトリ(GRL)ウェブサイト又はポータル(ここで、ユーザーは、ゲームをプレーし得るか又は活動を実行し得る)又はGRLプレーゾーンウェブサイト若しくはポータルを含み得る。いくつかの実施形態では、サードパーティ演算装置は、ユーザー又は患者がセラピスト又は医療専門家の制御下で活動に関与するセラピーウェブサイトを含むことできる。いくつかの実施形態では、ユーザーは、別の演算装置(例えば、(タブレット、PC、電話機など))を有することができると共に、サードパーティAPIは、会話話題の定義及び/又はユーザーからの質問への回答の提供を支援するために、ユーザー演算装置又はサードパーティ演算装置に接続することができる。
図Nは、いくつかの実施形態による、サードパーティ演算装置(又は別のユーザー演算装置)上で稼働するサードパーティアプリケーションによって質問に回答するためのデータフローを示す。例えば、SocialXクラウドに基づく会話モジュール301は、回答されつつある質問に対する回答のために(IoT又はロボット演算装置300と相互作用する)サードパーティ演算装置399又は他のユーザー演算装置上で稼働する外部又はサードパーティソフトウェアアプリケーションを参照する必要があり得る。例えば、クラウドに基づく会話モジュール301は、GRLポータル、GRLポータル内の活動又はGRLポータル内のキャラクタに関する回答のためにグローバルロボティクスラボラトリウェブサイト又はポータルを参照する必要があり得る。本明細書に記述される他のデータフローと同様に、意図モジュール308は、まず、(
図3Bで上述されたように)入力フィルタリングモジュール351を介して1つ又は複数の入力テキストファイル及び/又は入力マルチモードパラメータ、計測又はファイルに対して入力フィルタリングを実行し得、及び/又は(
図3Bで上述されたように)意図認識モジュール353、意図フュージョンモジュール352及び/又は環境キュー機能モジュール354を介して意図認識を実行し得る。いくつかの実施形態では、メッセージブローカリングモジュール359は、1つ又は複数の入力テキストファイルを受け取ることができる。いくつかの実施形態では、意図認識モジュール353及び/又はメッセージブローカリングモジュール359は、質問が行われると判定するために1つ又は複数の入力テキストファイルを分析し、1つ又は複数のテキストファイルを質問/回答モジュール368に伝達する。いくつかの実施形態では、質問/回答モジュール368は、1つ又は複数の入力テキストファイルから質問又はクエリを抽出することができると共に、抽出された質問のための回答を取得するために、サードパーティ演算装置399に対するサードパーティアプリケーションプログラミングインターフェイス又はソフトウェアと通信することができる。いくつかの実施形態では、質問/回答モジュール368は、サードパーティ演算装置から1つ又は複数の回答テキストファイルを受け取ることができると共に、1つ又は複数の回答テキストファイルをチャットモジュール362に伝達することができる。いくつかの実施形態では、チャットモジュール362は、1つ又は複数の回答テキストファイルを含む1つ又は複数の出力テキストファイルを生成することができると共に、1つ又は複数の回答ファイルを含む1つ又は複数の出力テキストファイルを会話マークアップモジュール365に伝達することができる。この観点では、マークアップモジュール365は、
図3Bとの関係で上述された動作を実行することができる。この観点では、マークアップモジュール365は、
図4A及び
図4Bに記述されるステップ418~428のみならず、
図3Bのデータフローとの関係において以上で図示及び/又は記述される動作を実行することができる。
【0072】
図4Aは、1つ又は複数の実装形態による、ロボット装置と個人との間のマルチターンコミュニケーションを確立するために、クラウドに基づく会話モジュールを利用する方法400を示す。
図4Bは、1つ又は複数の実装形態による、ロボット装置と個人との間のマルチターンコミュニケーションを確立するために、クラウドに基づく会話モジュールを利用する方法を更に示す。以下に提示される方法400の動作は、例示を目的とする。いくつかの実装形態では、方法400は、記述されてはいない1つ又は複数の更なる動作を伴って及び/又は記述される動作の1つ又は複数を伴うことなしに実現することができる。加えて、方法400の動作が
図4aに示され、以下に記述される順序は、限定を意図したものではなく、
図4Aに提示されるもの以外の異なる順序で実行することができる(動作の1つ又は複数が、到来するテキストファイルに対して実施され得ることを含む)。
【0073】
いくつかの実装形態では、方法400は、1つ又は複数の処理装置(例えば、デジタルプロセッサ、アナログプロセッサ、情報を処理するように設計されたデジタル回路、情報を処理するように設計されたアナログ回路、状態機械及び/又は情報を電子的に処理するための他のメカニズム)内に実装することができる。1つ又は複数の処理装置は、電子ストレージ媒体上に電子的に保存される命令に応答して方法400の動作のいくつか又はすべてを実行する1つ又は複数の装置を含み得る。1つ又は複数の処理装置は、方法400の動作の1つ又は複数のものの実行のために具体的に設計されるようにハードウェア、ファームウェア及び/又はソフトウェアを通して構成された1つ又は複数の装置を含み得る。
【0074】
いくつかの実施形態では、動作402は、発話-テキスト認識341を実行する演算装置から、個人の発話と関連する1つ又は複数の入力テキストファイルを受け取ることを含み得る。動作402は、1つ又は複数の実装形態に従ってSocialXクラウドに基づく会話モジュール301と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。一代替実施形態では、自動発話認識モジュール341は、SocialXクラウドに基づく会話モジュール301を利用しなくてもよく、代わりに、テキストは、処理のためにダイアログマネージャモジュール335に送信することができる。上述のように、SocialXクラウドに基づく会話モジュールを利用することは、特別なコマンドにより、既知のパターンとの一致の欠如により、オープンクエスチョンが存在する場合又は参加する装置及び/又は個人間のコミュニケーションが過剰に複雑である場合にトリガすることができる。
【0075】
いくつかの実施形態では、動作404は、1つ又は複数の入力テキストファイルが禁止事項又は主題と関連しないことを検証するために、禁止発話フィルタモジュール(入力フィルタリングモジュールとも称され得る)351を介して1つ又は複数の入力テキストファイルをフィルタリングすることを含み得る。動作404は、1つ又は複数の実装形態に従って意図モジュール308内の禁止発話フィルタモジュール/入力フィルタリングモジュール351と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。いくつかの実施形態では、禁止事項及び/又は主題は、暴力、セックス及び/又は自傷行為などの話題を含み得る。いくつかの実施形態では、1つ又は複数の入力テキストファイルが禁止主題と関連すると禁止発話フィルタモジュールが判定した場合、意図モジュール308及び禁止発話フィルタモジュール/入力フィルタリングモジュール351は、安全な1つ又は複数の出力テキストファイルを取得するために知識データベース360と通信することができる。いくつかの実施形態では、意図モジュール308及び/又はメッセージブローカリングモジュール359は、処理のために1つ又は複数の取得された安全な出力テキストファイルをチャットモジュール362に伝達することができる。いくつかの実施形態では、1つ又は複数の安全なテキストファイルは、「これについては、信頼できる大人に話してください」又は「これは、私がよく知らない話題です」及び/又は更に「何か別のことについて話しませんか」などのフレーズを発話するように、ロボット演算装置のための命令を提供することができる。いくつかの実施形態では、動作444において、チャットモジュール362は、処理のために、1つ又は複数の専門的なリダイレクトテキストファイルをマークアップモジュール354に伝達することができる。
【0076】
いくつかの実施形態では、動作406は、入力テキストファイル内で識別される個人の発話における意図を判定するために、1つ又は複数の入力テキストファイルを分析することを含み得る。いくつかの実施形態では、意図パラメータ及び/又は分類は、少なくとも部分的に分析に基づいて1つ又は複数の入力テキストファイルに対して関連付け及び/又は割当することができる。いくつかの実施形態では、1つ又は複数のテキストファイル及び/又は意図パラメータ及び/又は分類は、メッセージブローカリングモジュール359に伝達することができる。動作406は、1つ又は複数の実装形態に従って意図認識モジュール353と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。
【0077】
意図フュージョンモジュール:いくつかの実施形態では、動作408は、ユーザーの意図及び/又はユーザーが興味を持ち得る会話話題の判定を支援するために、(1つ又は複数のテキストファイルに加えて)マルチモード要約モジュール389からマルチモードユーザーパラメータ、計測及び/又はファイルを受け取ることを含み得る。これらの実施形態では、意図フュージョンモジュール352は、意図パラメータ及び/又は分類又は潜在的な会話話題を生成するために、マルチモードユーザーパラメータ、計測及び/又はファイルを分析することができる。いくつかの実施形態では、意図フュージョンモジュール352は、1つ又は複数の入力テキストファイル、意図パラメータ及び/又は分類、又は潜在的な会話話題をメッセージブローカリングモジュール350に伝達し得、次いで、メッセージブローカリングモジュール350は、1つ又は複数の入力テキストファイル、意図パラメータ及び/又は分類、又は潜在的会話話題をチャットモジュール362に伝達する。一例として、マルチモード要約モジュール359は、(ユーザーが笑い、その頭を上下に振っている画像又は同じ内容を表すパラメータなどの)マルチモード意図パラメータ又はファイルを意図フュージョンモジュール352に伝達し得、意図フュージョンモジュール352は、ユーザーが満足していることを通知し得る。この例では、意図フュージョンモジュール352は、ユーザーが満足し、関与することを識別する意図パラメータ又は計測を生成することができる。一代替実施形態では、マルチモード要約モジュール359は、(ユーザーが手を挙げ、及び/又はユーザーが混乱しているように見えることを示す画像又は同じの内容を表すパラメータなどの)マルチモード意図パラメータ又はファイルを伝達することができ、意図フュージョンモジュール352は、これらのマルチモード意図パラメータ又はファイルを受け取ることができると共に、ユーザーが混乱していると判定することができる。これらの実施形態では、意図フュージョンモジュールは、ユーザーが混乱していることを識別する意図パラメータ又は分類を生成することができる。
【0078】
環境キューフュージョンモジュール:いくつかの実施形態では、動作409は、ユーザーの意図及び/又はユーザーが興味を持ち得る会話話題の判定を支援するために、(1つ又は複数のテキストファイルに加えて)マルチモード要約モジュール389及び/又はワールド追跡モジュール388からマルチモード環境パラメータ、計測及び/又はファイルを受け取ることを含み得る。これらの実施形態では、環境キューフュージョンモジュール354は、意図パラメータ又は分類又は会話話題における潜在的な興味を生成するために、受け取られた環境パラメータ、計測及び/又はファイルを分析することができる。これらの実施形態では、環境キューフュージョンモジュール354は、1つ又は複数のテキストファイル及び/又は生成された意図パラメータ又は分類又は会話話題における潜在的な興味をメッセージブローカリングモジュール359に伝達し得、次いで、メッセージブローカリングモジュール359は、この情報を正しいモジュール(例えば、チャットモジュール362又は質問&回答モジュール368に)に伝達することができる。一例として、ユーザーは、その犬のようなペットに歩いて近づき、「スポット、ここにおいで」と発話し得、マルチモード要約モジュール389は、この画像又はこれらの画像及びサウンドを表すパラメータを有する環境パラメータ、計測及び/又はファイルを環境キューフュージョンモジュール354に伝達することができる。この例では、環境キューフュージョンモジュール354は、環境パラメータ及び/又は画像及びユーザーの主張を分析することができると共に、ユーザーがその犬について話すことを受容し得ることを識別することができる。この例では、環境キューフュージョンモジュール354は、意図パラメータ又は分類又は犬の話題を通知する会話話題を生成することができると共に、これらの意図パラメータ、分類又は会話話題をメッセージブローカリングモジュール359に伝達することができる。別の例として、ユーザーは、多くの雑音を有し、全員がフットボールジャージを着用する混雑したエリア内に存在し得、マルチモード要約モジュール389及び/又はワールド追跡モジュール388は、会話クラウドモジュール301及び特に環境キューフュージョンモジュール354に送信される環境パラメータ、計測及び/又はファイルを生成することができる。この例では、環境キューフュージョンモジュール354は、受け取られた環境パラメータ、計測及び/又はファイルを分析し得、ユーザーが、フットボールについて話すことを受容し得る、更に雑音に起因して相対的に人の少ない別のエリアに移動する必要があり得る、ことを識別し得、従ってフットボール話題及び相対的に静かな場所への移動と関連する意図パラメータ、分類及び/又は話題を生成することができる。いくつかの実施形態では、環境キューフュージョンモジュール354は、生成された意図パラメータ、分類及び/又は話題をメッセージブローカリングモジュールに伝達することができる。
【0079】
いくつかの実施形態では、動作410は、1つ又は複数の入力テキストファイル及び/又は受け取られた意図パラメータ、分類及び/又は話題の分析及び/又は理解に少なくとも部分的に基づいて1つ又は複数の入力テキストファイルに対してアクションを実施することを含み得る。動作410は、1つ又は複数の実装形態に従って意図モジュール308及び/又はメッセージブローカリングモジュール359と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。
【0080】
いくつかの実施形態では、動作411は、実施されたアクションに基づいて、1つ又は複数の出力テキストファイルを生成することを含み得る。動作411は、1つ又は複数の実装形態に従ってチャットモジュール362と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。
【0081】
いくつかの実施形態では、動作412は、作成された1つ又は複数の出力テキストファイルをマークアップモジュール365に伝達することを含み得る。動作412は、1つ又は複数の実装形態に従ってチャットモジュール362と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。
【0082】
いくつかの実施形態では、動作414は、感情分析モジュール357及び/又はマークアップモジュール365によって感情について受け取られた1つ又は複数の出力テキストファイルを分析し、受け取られた1つ又は複数の出力テキストファイルの感情パラメータを判定することを含み得る。動作414は、1つ又は複数の実装形態に従って感情分析モジュール357と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。
【0083】
いくつかの実施形態では、動作416は、感情分析によって判定された感情パラメータに少なくとも部分的に基づいて、ロボット装置のための情緒インジケータ及び/又はマルチモード出力アクションを1つ又は複数の出力テキストファイルに関連付けることを含み得る。動作416は、1つ又は複数の実装形態に従ってマークアップモジュール365と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。
【0084】
いくつかの実施形態では、動作420は、禁止発話フィルタによって1つ又は複数の出力テキストファイルが禁止事項又は主題を含まないことを検証することを含み得る。動作420は、1つ又は複数の実装形態に従って出力フィルタリングモジュール355と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。いくつかの実施形態では、禁止発話は、暴力に関係する話題及び/又はセックスに関係する話題を含み得る。
【0085】
いくつかの実施形態では、動作422は、ロボット装置ペルソナパラメータ及び計測との間の遵守状態を検証するために、1つ又は複数の出力テキストファイル、関連する情緒インジケータパラメータ又は計測及び/又はマルチモード出力アクションを分析することができる。動作422は、1つ又は複数の実装形態に従ってペルソナ保護モジュール356と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。いくつかの実施形態では、動作424において、1つ又は複数の出力テキストファイル、関連する情緒インジケータ及びマルチモード出力アクションがロボットのペルソナとの間の遵守状態にないとペルソナ保護モジュール356が判定及び/又は識別した場合、SocialXチャットモジュール362又はSocialX意図モジュール308は、ロボット装置ペルソナパラメータ及び/又は計測に合致する受け入れ可能な出力テキストファイル、関連する情緒インジケータ及びマルチモード出力アクションを検索することができる。いくつかの実施形態では、SocialXチャットモジュール362又はSocialXモジュール308は、受け入れ可能な1つ又は複数の出力テキストファイル、関連する情緒インジケータ及びマルチモード出力アクションについて1つ又は複数のメモリモジュール366及び/又は知識データベース360を検索することができる。いくつかの実施形態では、動作426において、受け入れ可能な1つ又は複数の出力テキストファイル、関連する情緒インジケータ及びマルチモード出力アクションが検索プロセス後に見出された場合、SocialX意図モジュール308は、1つ又は複数の出力テキストファイル、情緒インジケータ及び/又はマルチモード出力アクションをロボット演算装置に伝達することができる。いくつかの実施形態では、動作428において、受け入れ可能な1つ又は複数の出力テキストファイル、関連する情緒インジケータ及び/又はマルチモード出力アクションが検索後に見出されない場合、SocialXチャットモジュール362又はSocialXモジュール308は、知識データベース362及び/又は1つ若しくは複数のメモリモジュール366からリダイレクトテキストファイルを取得することができると共に、1つ又は複数のリダイレクトテキストファイルをマークアップモジュール365に伝達することができる。
【0086】
図4Cは、いくつかの実施形態による、要求された事実情報の取得及び事実情報の提供を示す。いくつかの実施形態では、動作430において、要求される事実情報を識別するために、1つ又は複数の入力テキストファイルを分析することができる。動作430は、1つ又は複数の実装形態に従ってメッセージブローカリングモジュール356と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。いくつかの実施形態では、動作432において、SocialX質問及び回答モジュール368は、要求された事実情報を取得するためにサードパーティインターフェイス361と通信することができる。いくつかの実施形態では、サードパーティインターフェイス(例えば、API)361は、要求された事実情報を有するアプリケーションソフトウェア又は別個のアプリケーションソフトウェアを稼働させる外部演算装置に対するパスウェイ又はゲートウェイであり得る。いくつかの実施形態では、アプリケーションソフトウェア及び/又はAPIは、百科事典プログラム(例えば、メリアム=ウェブスタープログラム、サードパーティソフトウェアアプリケーション及び/又はソフトウェア開発のためのスタックオーバーフロー)であり得る。動作432は、1つ又は複数の実装形態に従い、SocialXのQ&Aモジュール368及び/又はサードパーティAPI361又はグローバルロボティクスウェブサイトなどのロボット演算装置に接続されたアクティブウェブサイトと同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。
【0087】
いくつかの実施形態では、事実情報は、クラウドに基づく演算装置内に配置され得る別のソースから見出すことができる。いくつかの実施形態では、動作433において、事実情報は、知識データベース360及び/又は1つ若しくは複数のメモリモジュール366から取得することができる。動作433は、1つ又は複数の実装形態に従ってSocialXのQ&Aモジュール368及び/又は知識データベース360と同一又は類似のモジュールを含む機械可読命令によって構成された1つ又は複数のハードウェアプロセッサによって実行することができる。事実情報を収集した後、動作434では、質問/回答モジュール368及び/又はチャットモジュール362は、取得された又は得られた事実情報をマークアップモジュール365に伝達される1つ又は複数の出力テキストファイルに追加することができる。
【0088】
図4Dは、いくつかの実施形態による、特別な話題を識別し、特別な話題から離れるように会話をリダイレクトする、SocialXクラウドに基づく会話モジュールの方法を示す。いくつかの実施形態では、意図モジュール301は、特別な話題を識別し、及び/又はこれらの特別な話題から離れるように会話をリダイレクトするために入力フィルタ351を含み得る。いくつかの実施形態では、動作440において、入力フィルタモジュール351は、1つ又は複数の入力テキストファイルが特別な話題又は定義された特別な話題を含むかどうかを判定するために、特別話題フィルタモジュールを介して1つ又は複数の入力テキストファイルをフィルタリングすることができる。いくつかの実施形態では、動作442において、1つ又は複数の入力テキストファイルが特別な話題を含むと特別話題フィルタモジュールが判定した場合、メッセージブローカリングモジュールは、入力テキストファイルを置換するための1つ又は複数の専門的なリダイレクトテキストファイルを取得するためにチャットモジュール362と通信することができる。いくつかの実施形態では、特別な話題は、ユーザーが特別な興味を示した話題又は休日の話題(クリスマス、ハロウィーン、米国独立記念日)を含み得る。いくつかの実施形態では、1つ又は複数の専門的なリダイレクトテキストファイルは、「クリスマスに贈りたい又は受け取りたいプレゼントは何ですか」若しくは「ハロウィーンのイベントに友達と一緒に行きますか?」及び/又はユーザーがスペースシャトルに興味を示した場合には「あなたは、どのスペースシャトルミッションが好きですか?」又は「スペースシャトルの宇宙飛行士を誰か知っていますか?」などのフレーズを発話するように、ロボット演算装置のための命令を提供することができる。いくつかの実施形態では、動作444において、チャットモジュール362は、処理のために1つ又は複数の専門的なリダイレクトテキストファイルをマークアップモジュール354に伝達することができる。
【0089】
図4Eは、いくつかの実施形態による、ユーザー及び/又は消費者に応答する際に遅延技法を利用するためのクラウドに基づく会話モジュールを示す。いくつかの実施形態では、クラウドに基づく会話モジュール301は、特定の1つ又は複数の入力テキストファイルが、応答するためにある程度の時間を所要し得る会話、主題又は話題を含む際を認識する能力を有することができる。いくつかの実施形態では、動作450において、意図マネージャモジュールは、出力テキストファイル及び/又は関連するファイルの生成がその複雑さ又は主題に起因して遅延され得るかどうか(例えば、1つ又は複数のテキストファイル及びそれらに応答するために必要とされるアクションを処理及び/又は理解するために、かなりの量の時間を所要し得るかどうか)を判定するために1つ又は複数の入力テキストファイルを分析することができる。このような複雑な話題又はタスクの例は、限定されないが、1つ又は複数の以前の会話を要約すること又はウィキペディアなどのサードパーティソースから情報を引き出すことを含む。いくつかの実施形態では、動作452において、この複雑さを隠蔽し、及び/又はそれに対処するために、意図マネージャモジュール308及び/又はチャットモジュール362は、予測される応答時間の遅延を隠蔽し、及びユーザーをロボット装置に関与した状態に維持するための遅延出力テキストファイル、情緒パラメータ及び/又は遅延マルチモード出力アクションファイルを生成することできる。
【0090】
図4Fは、いくつかの実施形態による、1つ又は複数の入力テキストファイルからコンテキスト情報を抽出し、及び/又は保存するためのクラウドに基づく会話モジュールを示す。いくつかの実施形態では、フィルタリングが発生し、1つ又は複数の入力テキストファイルがチャットモジュール362に伝達された後、チャットモジュールは、チャットモジュール362がロボット装置との会話のために使用するようにこの情報を使用し得るように、ユーザーの発話からコンテキスト情報を取得することもできる。換言すれば、チャットモジュール362のコンテキストモジュールは、本明細書に記述される会話及び事実又は主題を追跡することにより、情報を継続的に収集することができる。一例として、ユーザーは、自らが訪問することになり、及び/又は自らが来週休暇を過ごすことを計画する場所を主張する場合がある。いくつかの実施形態では、動作460において、コンテキストモジュールは、受け取られた1つ又は複数の入力テキストファイルをユーザーの発話からのコンテキスト情報について分析することができる。いくつかの実施形態では、動作462において、チャットモジュールは、抽出されたコンテキスト情報を1つ又は複数のメモリモジュール366に保存することができる。いくつかの実施形態では、動作464において、チャットモジュール362は、アクションが1つ又は複数の入力テキストファイル(又は他の1つ若しくは複数の入力テキストファイル)に対して実行された後、1つ又は複数のメモリモジュール366に保存されるコンテキスト情報が1つ又は複数の出力テキストファイルに挿入され得る状況を識別することができる。いくつかの実施形態では、コンテキスト情報は、1つ又は複数の出力テキストファイルに挿入され得、マークアップモジュール354に伝達され得る。いくつかの実施形態では、チャットモジュールは、処理及び/又は保存を要するコンテキストの量を低減するために、現時点の会話(及び従って入力テキストファイル)の要約又は単純化も可能にし得る。例えば、コンテキストモジュールは、「ビーチに行くために、米国のハイウェイ10で繁華街からサンタモニカまで行った」を「ビーチに行った」というフレーズに単純化することができる。いくつかの実施形態では、動作466において、チャットモジュール362は、冗長情報について1つ又は複数の入力テキストファイルを分析することができると共に、詳細な情報を除去し、従ってコンテンツの量(又は1つ若しくは複数のメモリモジュール366に保存されることを要する入力テキストファイルのサイズ)を低減するために、入力テキストファイルを単純化することができる。
【0091】
図4Gは、いくつかの実施形態による、関連する会話的及び/又は隠喩的側面についての1つ又は複数の入力テキストファイルのための分析を示す。いくつかの実施形態では、事後処理フィルタは、ロボット演算装置に伝達される情緒インジケータパラメータ及び/又はマルチモード出力サクションファイルを判定するために他のファクタを分析することもできる。いくつかの実施形態では、動作470において、マークアップモジュールは、受け取られた1つ又は複数の出力テキストファイルを関連する会話的及び/又は隠喩的側面について分析することができる。いくつかの実施形態では、動作472において、マークアップモジュールは、会話的及び/又は隠喩的分析に少なくとも基づいてロボット演算装置のための情緒インジケータパラメータ及び/又はマルチモード出力アクションファイルを1つ又は複数の出力テキストファイルに関連付け、及び/又は更新することができる。更に、いくつかの実施形態では、動作474において、マークアップモジュールは、受け取られた1つ又は複数の出力テキストファイルをコンテキスト情報について分析することができる。いくつかの実施形態では、動作476において、マークアップモジュールは、コンテキスト情報分析に少なくとも部分的に基づいてロボット装置のための情緒インジケータ及び/又はマルチモード出力アクションを1つ又は複数の出力テキストファイルに関連付けることができる。
【0092】
いくつかの実施形態では、ロボット装置と個人との間のマルチターンコミュニケーションを確立又は生成する方法は、1つ又は複数のプロセッサによる実行のために、1つ又は複数の物理メモリ装置から命令にアクセスすること、1つ又は複数のプロセッサにより、1つ又は複数の物理メモリ装置からアクセスされた命令を実行すること、1つ又は複数のプロセッサ上で命令を実行した結果として得られた信号値を物理メモリ装置の少なくとも1つに保存することを含み得、アクセスされた命令は、ロボット装置と個人との間の会話相互作用を強化するためのものであり、会話相互作用命令を実行することは、発話-テキスト認識演算装置から、個人の発話と関連する1つ又は複数の入力テキストファイルを受け取ることと、1つ又は複数の入力テキストファイルが禁止事項と関連しないことを検証するために、禁止発話フィルタを介して1つ又は複数の入力テキストファイルをフィルタリングすることと、個人の発話における意図を判定するために、1つ又は複数の入力テキストファイルを分析することと、分析された意図に少なくとも部分的に基づいて、1つ又は複数の入力テキストファイルに対してアクションを実施することとを更に含む。いくつかの実施形態では、方法は、実施されたアクションに基づいて、1つ又は複数の出力テキストファイルを生成することと、作成された1つ又は複数の出力テキストファイルをマークアップモジュールに伝達することと、マークアップモジュールにより、受け取られた1つ又は複数の出力テキストファイルを感情について分析することと、感情分析に少なくとも部分的に基づいて、ロボット装置のための情緒インジケータ及び/又はマルチモード出力アクションを1つ又は複数の出力テキストファイルに関連付けることと、禁止発話フィルタにより、1つ又は複数の出力テキストファイルが禁止事項を含まないことを検証することと、ロボット装置ペルソナパラメータへの準拠を検証するために、1つ又は複数の出力テキストファイル、関連する情緒インジケータ及びマルチモード出力アクションを分析することと、1つ又は複数の出力テキストファイル、関連する情緒インジケータ及びマルチモード出力アクションをロボット装置に伝達することとを含み得る。
【0093】
現時点で最も実際的及び好適な実装形態であると考えられるものに基づき、例示を目的として本技術が詳細に記述されたが、このような詳細は、その目的のためのものであるに過ぎず、本技術は、開示される実装形態に限定されるものではなく、逆に添付の特許請求の範囲の趣旨及び範囲に含まれる変更形態及び均等な構成を包含することが意図されることを理解されたい。例えば、本技術は、可能な範囲で任意の実装形態の1つ又は複数の特徴が任意の他の実装形態の1つ又は複数の特徴と組み合わされ得ることを想定することを理解されたい。
【国際調査報告】