JP7498300B2 - 自然言語に基づくロボット制御において使用するための機械学習モデルを訓練および/または利用すること - Google Patents

自然言語に基づくロボット制御において使用するための機械学習モデルを訓練および/または利用すること Download PDF

Info

Publication number
JP7498300B2
JP7498300B2 JP2022565890A JP2022565890A JP7498300B2 JP 7498300 B2 JP7498300 B2 JP 7498300B2 JP 2022565890 A JP2022565890 A JP 2022565890A JP 2022565890 A JP2022565890 A JP 2022565890A JP 7498300 B2 JP7498300 B2 JP 7498300B2
Authority
JP
Japan
Prior art keywords
natural language
training
robot
target image
instance
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.)
Active
Application number
JP2022565890A
Other languages
English (en)
Other versions
JP2023525676A (ja
Inventor
ピエール・セルマネ
コリー・リンチ
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2023525676A publication Critical patent/JP2023525676A/ja
Priority to JP2024087083A priority Critical patent/JP2024123006A/ja
Application granted granted Critical
Publication of JP7498300B2 publication Critical patent/JP7498300B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Description

多くのロボットは、特定のタスクを実行するようにプログラムされる。たとえば、組み立てラインのロボットは、特定の物体を認識し、それらの特定の物体に対して特定の操作を実行するようにプログラムされ得る。
さらに、一部のロボットは、特定のタスクに対応する明確なユーザインターフェース入力に応答して特定のタスクを実行することができる。たとえば、掃除機ロボットは、「ロボット、掃除して」という発話に応答して、一般的な掃除機タスクを実行することができる。しかしながら、通常、ロボットに特定のタスクを実行させるユーザインターフェース入力は、明確にタスクと対応付けられなければならない。したがって、ロボットは、ロボットを制御しようとするユーザの様々な自由形式の自然言語入力に応答して特定のタスクを実行することができない可能性がある。たとえば、ロボットは、ユーザによって提供される自由形式の自然言語入力に基づいて、目標の位置へと進むことができないことがある。たとえば、ロボットは、「扉を出て、左に曲がり、廊下の突き当りの扉を通り抜けて」というユーザの要求に応答して、特定の位置へと進むことができない可能性がある。
本明細書において開示される技法は、複数のデータセットに基づいて目標条件付きポリシーネットワーク(goal conditioned policy network)を訓練することを対象とし、訓練タスクは、データセットの各々において異なる方法で記述される。たとえば、ロボットのタスクは、目標画像を使用して、自然言語テキストを使用して、タスクIDを使用して、自然言語の発話を使用して、および/または追加もしくは代替のタスク記述を使用して記述され得る。たとえば、ロボットは、ボールをカップに入れるタスクを実行するように訓練され得る。例示的なタスクの目標画像による記述は、カップの中のボールの写真であってもよく、タスクの自然言語テキストによる記述は、「ボールをマグカップに入れて」という自然言語命令であってもよく、タスクのタスクIDによる記述は、「タスクid=4」であってもよく、ここで、4は、ボールをカップに入れるタスクに関連するIDである。いくつかの実装形態において、各エンコーダがタスク記述を処理することによってタスクの共有される潜在目標空間表現(latent goal space representation)を生成できるように、複数のエンコーダ(すなわち、データセットごとに1つのエンコーダ)が訓練され得る。言い換えると、同じタスクを記述する様々な方法(たとえば、カップの中のボールの画像、「ボールをマグカップに入れて」という自然言語命令、および/または「タスクid=4」)が、対応するエンコーダを用いてタスク記述を処理したことに基づいて、同じ潜在目標表現と対応付けられ得る。本明細書において説明される技法は、タスクを実行するようにロボットを訓練することを対象とするが、これは、限定することを意図するものではない。追加のおよび/または代替のネットワークが、本明細書において説明される技法に従って、各々が異なるコンテキストを有する複数のデータセットに基づいて訓練され得る。
追加のまたは代替の実装形態は、目標条件付きポリシーネットワークを使用して生成された出力に基づいてロボットを制御することを対象とする。いくつかの実装形態では、複数のデータセットを使用してロボットを訓練することができ(たとえば、目標画像データセットと自然言語命令データセットとを使用して訓練することができ)、推論時にロボットのためのタスクを記述するために、1つのタスク記述タイプしか使用することができない(たとえば、推論時に自然言語命令のみ、目標画像のみ、タスクIDのみ、などをシステムに提供する)。たとえば、システムを、目標画像データセットと自然言語命令データセットに基づいて訓練することができ、システムには、実行時にロボットのためのタスクを記述するための自然言語命令が提供される。追加または代替として、いくつかの実装形態において、システムには、実行時に複数の命令記述タイプが提供され得る(たとえば、実行時に自然言語命令、目標画像、およびタスクIDが提供され得る、実行時に自然言語命令およびタスクIDが提供され得るなど)。たとえば、システムを、自然言語命令データセットおよび目標画像データセットに基づいて訓練することができ、システムには、実行時に自然言語命令および/または目標画像命令が提供され得る。
いくつかの実施形態では、ロボットエージェントは、目標条件付きポリシーネットワークを使用してタスクに依存しない制御を達成することがあり、この場合、単一のロボットが、その環境において任意の到達可能な目標状態に到達することが可能である。従来の遠隔操作されたマルチタスクデモンストレーションでは、収集されるデータの多様性は、事前のタスク定義に制約されることがある(たとえば、人間の操作者には、デモンストレーションを行うべきタスクのリストが提供される)。対照的に、遠隔操作される「遊び(play)」を行う人間の操作者は、遊びデータを生成するとき、事前定義されたタスクのセットに制約されない。いくつかの実装形態では、目標画像データセットは、遠隔操作される「遊び」データに基づいて生成され得る。遊びデータは、人間がロボットを遠隔操作し、自分自身の好奇心を満たす挙動に関わる間に収集された低水準の観測および行動の連続的なログ(たとえば、データストリーム)を含み得る。遊びデータを収集することは、エキスパートデモンストレーション(expert demonstration)を収集することとは異なり、タスクのセグメント化、ラベリング、または初期状態へのリセットを必要としないことがあるので、遊びデータを迅速に大量に収集することが可能である。追加または代替として、遊びデータは、オブジェクトアフォーダンスに関する人間の知識に基づいて構造化され得る(たとえば、人々はあるシーンにおいてボタンを見ると、それを押す傾向がある)。人間の操作者は、同じ結果を達成するために複数の方法を試すことがあり、および/または新しい挙動を調べることがある。いくつかの実装形態では、遊びデータは、エキスパートデモンストレーションでは不可能な方法で、環境の相互作用空間を自然に包含することが期待され得る。
いくつかの実装形態では、目標画像データセットは、遠隔操作された遊びデータに基づいて生成され得る。遊びデータストリームのセグメント(たとえば、画像フレームのシーケンス)が模倣軌跡として選択されてもよく、データストリームの選択されたセグメントの中の最後の画像が目標画像である。言い換えると、目標画像データセットの中の模倣軌跡を記述する目標画像は後知恵で生成されてもよく、目標画像に基づいて行動のシーケンスを生成するのとは対照的に、目標画像が行動のシーケンスに基づいて決定される。いくつかの実装形態では、遠隔操作された遊びデータのデータストリームに基づいて、短期(short-horizon)の目標画像訓練インスタンスを、迅速におよび/または安価に生成することができる。
いくつかの実装形態では、追加または代替として、自然言語命令データセットが遠隔操作された遊びデータに基づき得る。遊びデータストリームのセグメント(たとえば、画像フレームのシーケンス)が、模倣軌跡として選択され得る。次いで、1人または複数の人間が模倣軌跡を記述してもよく、こうして、(自然言語命令に基づいて模倣軌跡を生成するのとは対照的に)後知恵で自然言語命令を生成する。いくつかの実装形態では、収集される自然言語命令は、機能的挙動(たとえば、「引き出しを開けて」、「緑色のボタンを押して」など)、一般的なタスク固有ではない挙動(たとえば、「手を少し左に動かして」、「何もしないで」など)、および/または追加の挙動を包含し得る。いくつかの実装形態では、自然言語命令は自由形式の自然言語であってもよく、提供することができる自然言語命令に制約は課されない。いくつかの実装形態では、複数の人間が、自由形式の自然言語を使用して模倣軌跡を記述することができ、これは、同じ物体、挙動などの異なる記述を生むことがある。たとえば、模倣軌跡は、レンチを持ち上げるロボットを捉えることがある。複数の人間の記述者が、「道具をつかんで」、「レンチを持ち上げて」、「物を握って」、および/または追加の自由形式の自然言語命令などの、模倣軌跡に対する異なる自由形式の自然言語命令を提供することがある。いくつかの実装形態では、自由形式の自然言語命令におけるこの多様性は、よりロバストな目標条件付きポリシーネットワークをもたらす可能性があり、この場合、より広い範囲の自由形式の自然言語命令がエージェントによって実装され得る。
目標条件付きポリシーネットワークおよび対応するエンコーダは、様々な方法で、画像目標データセットおよび自由形式の自然言語命令データセットに基づいて訓練され得る。たとえば、システムは、目標画像の潜在目標空間表現を生成するために、目標画像エンコーダを使用して目標画像訓練インスタンスの目標画像部分を処理することができる。目標画像の潜在目標空間表現、および目標画像訓練インスタンスの模倣軌跡部分の初期フレームが、目標画像候補出力を生成する。目標画像候補出力および目標画像模倣軌跡に基づいて、目標画像損失が生成され得る。同様に、システムは、自然言語命令の潜在空間表現を生成するために、自然言語命令訓練インスタンスの自然言語命令部分を処理することができる。自然言語命令、および自然言語命令訓練インスタンスの模倣軌跡部分の初期フレームは、自然言語命令候補出力を生成するために目標条件付きポリシーネットワークを使用して処理され得る。自然言語命令候補出力および自然言語命令訓練インスタンスの模倣軌跡部分に基づいて、自然言語命令損失が生成され得る。いくつかの実装形態では、システムは、目標画像損失および自然言語命令損失に基づいて、目標条件付き損失を生成することができる。目標条件付きポリシーネットワークの1つまたは複数の部分、目標画像エンコーダ、および/または自然言語命令エンコーダは、目標条件付き損失に基づいて更新され得る。しかしながら、これは、目標条件付きポリシーネットワーク、目標画像エンコーダ、および/または自然言語命令エンコーダを訓練することの例にすぎない。追加のおよび/または代替の訓練方法が使用され得る。
いくつかの実装形態では、目標条件付きポリシーネットワークは、異なるサイズの目標画像データセットおよび自然言語命令データセットを使用して訓練され得る。たとえば、目標条件付きポリシーネットワークを、第1の量の目標画像訓練インスタンスおよび第2の量の自然言語命令訓練インスタンスに基づいて訓練することができ、第2の量は、第1の量の50パーセント、第1の量の50パーセント未満、第1の量の10パーセント未満、第1の量の5パーセント未満、第1の量の1パーセント未満、および/または第1の量の追加のもしくは代替の百分率より多くもしくは少ない。
したがって、様々な実装形態は、単一の目標条件付きポリシーネットワークを訓練する際に使用するための多数のタスク記述のための共有される潜在目標空間を学習するための技法を記載する。対照的に、従来の技法は、複数のポリシーネットワークを訓練し、タスク記述タイプごとに1つのポリシーネットワークを訓練する。単一のポリシーネットワークを訓練することは、ネットワークを訓練する際により多様なデータが利用されることを可能にする。追加または代替として、ポリシーネットワークは、1つのデータタイプのより大量の訓練インスタンスを使用して訓練され得る。たとえば、目標条件付きポリシーネットワークは、模倣学習データストリームから自動的に生成され得る後知恵目標画像訓練インスタンス(hindsight goal image training instance)を使用して訓練され得る(たとえば、後知恵目標画像訓練インスタンスは、人間により提供される自然言語命令を必要とし得る自然言語命令訓練インスタンスと比較して、自動的に生成するのが安価である)。目標画像データセットと自然言語命令データセットの両方を使用して目標条件付きポリシーネットワークを訓練することにより、大部分の訓練インスタンスが自動生成された目標画像訓練インスタンスになり、得られる目標条件付きポリシーネットワークは、大きな自然言語命令データセットを生成するためにコンピューティングリソース(たとえば、プロセッササイクル、メモリ、電力など)および/または人間のリソース(たとえば、自然言語命令を提供するために人々のグループが必要とする時間など)を必要とすることなく、自然言語命令に基づいてロボットのための行動をロバストに生成することができる。
上の説明は、本明細書において開示されるいくつかの実装形態の概要としてのみ提供される。本技術のこれらおよび他の実装形態が、以下でさらに詳細に開示される。
前述の概念および本明細書においてより詳しく説明される追加の概念のすべての組合せが、本明細書において開示される主題の一部であるものとして見なされることを理解されたい。たとえば、本開示の最後に現れる特許請求される主題のすべての組合せが、本明細書において開示される主題の一部であるものと見なされる。
本明細書において説明される実装形態が実装され得る例示的な環境を示す図である。 本明細書において説明される様々な実装形態による、目標条件付きポリシーネットワークを使用して行動出力を生成することの例を示す図である。 本明細書において開示される様々な実装形態による、自然言語命令に基づいてロボットを制御することの例示的なプロセスを示すフローチャートである。 本明細書において開示される様々な実装形態による、目標画像訓練インスタンスを生成することの例示的なプロセスを示すフローチャートである。 本明細書において開示される様々な実装形態による、自然言語命令訓練インスタンスを生成することの例示的なプロセスを示すフローチャートである。 本明細書において開示される様々な実装形態による、目標条件付きポリシーネットワーク、自然言語命令エンコーダ、および/または目標画像エンコーダを訓練することの例示的なプロセスを示すフローチャートである。 ロボットの例示的なアーキテクチャを概略的に示す図である。 コンピュータシステムの例示的なアーキテクチャを概略的に示す図である。
自然言語は、人間がタスクをロボットに伝えるための万能で直観的な方法である。既存の手法は、汎用センサから多様なロボットの挙動を学習することを実現する。しかしながら、各タスクは目標画像を用いて規定されなければならず、これはオープンワールド環境において現実的ではない。代わりに、本明細書において開示される実装形態は、人間の言語でポリシーを条件付けるための簡単かつ/またはスケーラブルな方法を対象とする。遊びからの短いロボット体験を、関連する人間の言語と事後にペアリングすることができる。これを効率的にするために、一部の実装形態はマルチコンテキスト模倣(multi-context imitation)を利用し、これは、画像目標または言語目標に従うように単一のエージェントを訓練することを可能にでき、ここで、言語による条件付けのみが試験時に使用される。これは、言語ペアリングのコストを、収集されたロボット体験の小さい割合(たとえば、10%、5%、または1%未満)へと下げることができ、制御の大半は依然として自己教師あり学習による模倣を介して学習される。試験時に、この方式で訓練された単一のエージェントは、3D環境において、画像から直接、自然言語のみを用いて規定される多数の異なるロボット操作スキルを連続して実行することができる(たとえば、引き出しを開けて...ブロックを持ち上げて...緑色のボタンを押して)。加えて、いくつかの実装形態は、ラベリングされていない大きなテキストコーパスからの知識をロボット学習に転移する技法を使用する。転移は、下流のロボット操作を大きく改善することができる。それはまた、たとえば、複数の異なる言語においてゼロショットで試験時に数千の新しい命令にエージェントが従うことを可能にできる。
ロボット学習の長期的な動機は、ジェネラリストロボットという考え方であり、それは、一般的なオンボードセンサのみを使用して日常的な環境において多くのタスクを解決できる単一のエージェントである。タスクおよび観測空間の一般性とともに、基本的であるがあまり考慮されない様相は、一般的なタスクの規定、すなわち訓練されていないユーザが最も直観的で柔軟な機構を使用してエージェントの挙動を指示できることである。このように、自然言語で表現された命令に従うことができるロボットを想像することなく、真のジェネラリストロボットを想像することは難しい。
さらに広く見れば、子供は、豊かで関連性のある知覚運動性の経験を背景として言語を学ぶ。これは、人工知能における具体化された言語習得についての長年の疑問、すなわちインテリジェントエージェントはどのように言語の理解に基づいて認識を具体化し得るのかということについて、興味を引き起こす。言語を物理的な世界と関連付ける能力は、ロボットと人が共有される感覚的経験を通じて共通の基盤で意思疎通することを実現する可能性があり、これは、はるかに有意義な形式の人と機械の対話につながり得るものである。
さらに、言語習得は、少なくとも人間においては、高度に社会的な過程であり得る。幼児は、最初期の対話において行動を与え、世話をする人は関連する言葉を与える。人間における実地での実際の学習の仕組みは完全には理解されていないが、本明細書において開示される実装形態は、ロボットが類似するペアリングされたデータから何を学習できるかを探究する。
しかしながら、簡単な命令に従うことですら、AIでは悪名高い困難な学習の問題をもたらすことがあり、多くの長期的な問題を含んでいる。たとえば、「ブロックを引き出しにしまって」という命令を与えられたロボットは、言語を低水準の認識(ブロックはどのような見た目なのか?引き出しとは何か?)と関連付けることが可能でなければならない。それは、視覚的な理由付け(引き出しの中にあることはブロックにとって何を意味するか?)を実行しなければならない。加えて、それは、複雑な逐次決定の問題(「しまう」ためにはどのようなコマンドをアームに送ればよいか?)を解決しなければならない。これらの疑問は単一のタスクにしたか及ばないが、ジェネラリストロボットの環境は多数のタスクを実行する単一のエージェントを必要とすることに留意されたい。
いくつかの実装形態では、自由なロボット操作の環境は、自由な人間の言語による条件付けと組み合わせられ得る。既存の技法は通常、制約された観測空間、たとえばゲーム、2Dグリッドワールド、簡略化されたアクチュエータ、たとえばバイナリのピックアンドプレースプリミティブ、および合成言語データを含む。本明細書の実装形態は、1)人間の言語命令、2)高次元の連続するセンサ入力およびアクチュエータ、ならびに/または3)長期(long-horizon)のロボットによる物体操作のような複雑なタスクの組合せを対象とする。試験時に、いくつかの実装形態では多数のタスクを連続して実行できる単一のエージェントを考慮することができ、このとき、各タスクは自然言語で人によって規定され得る。たとえば、「扉を一番右まで開けて...ブロックを持ち上げて...赤いボタンを押して...扉を閉めて」。さらに、エージェントは、任意の順序でサブタスクの任意の組合せを実行することが可能であるべきである。これは、「何でも聞いて」シナリオと呼ばれることがあり、多目的制御、オンボードセンサからの学習、および/または一般的なタスクの規定などの、一般的な態様を試験することができる。
既存の技法は、オンボードから多目的スキルを学習するための開始点を提供することができる。しかしながら、再ラベリングを画像観測と組み合わせる他の方法のように、既存の技法は、到達すべき目標画像を使用してタスクが規定されることを必要とする。シミュレータでは些細なことであるが、この形式のタスクの規定はオープンワールド環境では非現実的であり得る。
いくつかの実装形態では、システムは、以下によって既存の技法を自然言語の環境に拡張することができる。
(1)遠隔操作された遊びで空間を扱う。いくつかの実装形態では、システムは遠隔操作された「遊び」データセットを収集することができる。これらの長い時間的な状態-行動のログは、多数の短期デモンストレーションへと(自動的に)再ラベリングされることが可能であり、画像目標を解決する。
(2)遊びを人間の言語とペアリングする。既存の技法は通常、命令を最適な挙動とペアリングする。対照的に、本明細書において説明されるいくつかの実装形態では、遊びからの挙動は、最適な命令と事後にペアリングされ得る(すなわち、後知恵命令ペアリング(Hindsight Instruction Pairing))。これは、デモンストレーションのデータセットを生むことができ、人間言語目標を解決する。
(3)マルチコンテキスト模倣学習。いくつかの実装形態では、画像目標および/または言語目標を解決するために、単一のポリシーが訓練され得る。追加または代替として、いくつかの実装形態では、試験時に言語の条件付けのみが使用される。これを可能にするために、システムは、マルチコンテキスト模倣学習を利用することができる。マルチコンテキスト模倣学習は、データ効率が高く成り得る。それは、たとえば、言語の条件付けを可能にするために、収集されたロボット体験の小さい割合未満(たとえば、10%未満、5%未満、1%未満)へと、言語ペアリングのコストを下げ、制御の大半が依然として自己教師あり学習による模倣を介して学習される。
(4)試験時に人間の言語で条件付ける。いくつかの実装形態では、試験時に、この方式において訓練される単一のポリシーは、画像から直接、自然言語を用いて完全に規定された、多くの複雑なロボット操作スキルを連続して実行することができる。
追加または代替として、いくつかの実装形態は、ラベリングされていないテキストコーパスからロボット操作への転移学習を含む。転移学習強化を使用することができ、これは、任意の言語条件付きポリシーに適用可能であり得る。いくつかの実装形態では、これは下流のロボット操作を改善することができる。重要なことに、この技法は、エージェントがゼロショットで新規の命令に従う(たとえば、数千の新規の命令に従う、および/または複数の言語にわたる命令を従う)ことを可能にできる。目標条件付き学習が、任意の目標に達するように単一のエージェントを訓練するために使用され得る。これは、目標条件付きポリシーπθ(a|s,g)として定式化することができ、これは、現在の状態s∈Sおよびタスク記述子g∈Gを条件として、次の行動a∈Aを出力する。模倣手法は、エキスパート状態-活動軌跡τ={(s0,a0),...}のデータセット
にわたる教師あり学習を使用してこの対応付けを学習することができ、ペアリングされたタスク記述子(ワンホットタスク符号化(one-hot task encoding)など)を解決する。タスク記述子に対する便利な選択は、何らかの目標状態g=sg∈Sである。これは、収集の間にとられたあらゆる状態が、「到達した目標状態」として再ラベリングされるのを可能にでき、先行する状態および行動は、その目標に到達するための最適な挙動として扱われる。いくつかの元のデータセットDに適用されると、これは、再ラベリングされた例のはるかに大きなデータセット
を生むことができ、NR>>Nであり、目標指向制御(goal directed control)のための単純最尤目的関数(simple maximum likelihood objective)、すなわち再ラベリングされた目標条件付き挙動クローニング(GCBC:goal conditioned behavioral cloning)に入力を与える。
再ラベリングは、訓練時に多数の目標指向デモンストレーションを自動的に生成することができるが、これは、基礎となるデータに完全に由来し得るそれらのデモンストレーションの多様性を考慮しないことがある。あらゆるユーザにより提供される目標に到達することが可能になることは、状態空間全体を扱う再ラベリングの上流のデータ収集方法を求める動機である。
人間により遠隔操作される「遊び」の収集は、状態空間の取扱い範囲の問題に直接対処することができる。この環境では、操作者は、あらかじめ定められたタスクのセットにもはや制約されなくてもよく、むしろ、シーンの中のあらゆる利用可能な物体操作に関与することができる。動機は、オブジェクトアフォーダンスの事前の人間の知識を使用して状態空間全体を扱うことである。収集の間に、オンボードロボット観測および行動の流れが記録され、
であり、構造化されていないが意味的に有用な挙動のセグメント化されていないデータセットを生み、これは再ラベリングされた模倣学習の状況では有用であり得る。
遊びからの学習は、再ラベリングされた模倣学習を遠隔操作された遊びと組み合わせることができる。まず、セグメント化されていない遊びログが、アルゴリズム2を使用して再ラベリングされる。これは、多数の多様な短期の例を保持する訓練セット
を生むことができる。いくつかの実装形態では、これらは、標準最尤目標条件付き模倣目的関数(standard maximum likelihood goal conditioned imitation objective)に供給され得る。
遊びからの学習(learning from play)、および再ラベリングを画像状態空間と組み合わせる他の手法の限界は、試験時に挙動が目標画像sgを条件付きとしなければならないことである。本明細書において説明されるいくつかの実装形態は、人間が自然言語でタスクを記述するという、より柔軟な条件付けのモードに注目することがある。これに成功するには、複雑な背後の問題を解決する必要があり得る。これの対処するために、大量の多様なロボットセンサデータを関連する人間の言語とペアリングするための方法である、後知恵命令ペアリングが使用され得る。いくつかの実装形態では、画像目標データセットと言語目標データセットの両方を活用するために、マルチコンテキスト模倣学習が使用され得る。追加または代替として、これらのコンポーネントを一緒に結び付けて、長期にわたって多数の人間の命令に従う単一のポリシーを学習するために、遊びからの言語学習(LangLfP)が使用され得る。
統計的な機械学習の観点からは、人間の言語をロボットセンサデータに基づくものにするための候補は、関連する言語とペアリングされたロボットセンサデータの大きなコーパスである。このデータを収集するための1つの方法は、命令を選び、次いで最適な挙動を収集することである。追加または代替として、いくつかの実装形態は、遊びからあらゆるロボットの挙動のサンプルを取り、そして最適な命令を収集することができ、これは後知恵命令ペアリング(アルゴリズム3)と呼ばれ得る。後知恵目標画像が「どの目標状態がこの軌跡を最適なものにするか?」という疑問への事後の回答になるのと同じように、後知恵命令は、「どの言語命令がこの軌跡を最適なものにするか?」という疑問への事後の回答になる。いくつかの実装形態では、これらのペアは、人間にオンボードロボットセンサビデオを見せることにより、次いで「最初のフレームから最後のフレームまで得るためにエージェントにどのような命令を与えるか?」と人間に尋ねることにより、取得され得る。
後知恵命令ペアリングプロセスは、Dplayへのアクセスを想定することができ、これは、アルゴリズム2および専門家ではない人間の監督者の集団を使用して取得され得る。Dplayから、新しいデータセット
を作成することができ、これは、l∈Lとペアリングされた短期の遊びシーケンスτからなり、lは語彙および/または文法に制約のない人間により提供された後知恵命令である。
いくつかの実装形態では、このプロセスは、ペアリングが事後に起こるのでスケーラブルであることがあり、(たとえば、クラウドソーシングを介した)並列化が単純になる。収集される言語は当然に豊かでもあることがあり、それは、遊びに伴うものであり、同様に事前のタスク定義により制約されないからである。これは、機能的な挙動(たとえば、「引き出しを開けて」、「緑色のボタンを押して」)、ならびに一般的なタスク固有ではない挙動(たとえば、「手を少し左に動かして」または「何もしないで」)に対する命令を生むことができる。いくつかの実装形態では、命令に従うように学習するために、遊びからのあらゆる体験を言語とペアリングすることは不要であり得る。これは、本明細書において説明されるマルチコンテキスト模倣学習により可能になり得る。
これまでに、後知恵目標画像の例を保持するDplay、および後知恵命令の例を保持するD(play,lang)という、2つのコンテキスト模倣データセットを作成するための方法が説明された。いくつかの実装形態では、いずれのタスク記述にも依存しない単一のポリシーを訓練することができる。これは、訓練の間に複数のデータセットにわたって統計的な強さを共有することを可能にでき、および/または、試験時に言語による規定だけを使用することを可能にできる。
これを動機として、いくつかの実装形態は、複数の異種のコンテキストへのコンテキスト模倣の簡単かつ/または広く適用可能な一般化である、マルチコンテキスト模倣学習(MCIL)を使用する。主要な考え方は、状態、タスク、および/またはタスク記述にわたって一般化できる、単一の統一された関数近似器により、大量のポリシーを表現することである。MCILは、タスクを記述する方法が各々異なる複数の模倣学習データセットD={D0,...,DK}へのアクセスを想定することができる。いくつかの実装形態では、各々の
は、何らかのコンテキストc∈Cとペアリングされた状態-行動軌跡τのペアを保持する。たとえば、D0はワンホットタスクidとペアリングされたデモンストレーションを含むことがあり(従来のマルチタスク模倣学習データセット)、D1は画像目標デモンストレーションを含むことがあり、D2は言語目標デモンストレーションを含むことがある。
データセットごとに1つのポリシーを訓練するのではなく、代わりにMCILは、すべてのデータセットにわたって単一の潜在目標条件付きポリシーπθ(at|st,z)を同時に訓練し、各タスク記述タイプを同じ潜在目標空間
と対応付けることを学習する。この潜在空間は、多数の模倣学習の問題にわたって共有される共通の抽象的な目標表現であると見なされ得る。これを可能にするために、MCILは、データセットごとに1つの、各々が特定のタイプのタスク記述子を共通の潜在目標空間、すなわち
に対応付けることを担う、パラメータ化されたエンコーダのセット
を想定することができる。たとえば、これらはそれぞれ、タスクid組み込みルックアップ(embedding lookup)、画像エンコーダ、言語エンコーダ、1つまたは複数の追加もしくは代替の値、および/またはそれらの組合せであり得る。
いくつかの実装形態では、MCILは単純な訓練手順を有する。各訓練ステップにおいて、Dの中の各データセットDkに対して、軌跡-コンテキストのペア(τk,ck)~Dkのミニバッチをサンプルとして取り、潜在目標空間
においてコンテキストを符号化し、そして単純最尤コンテクスチュアル模倣目的関数(simple maximum likelihood contextual imitation objective)を計算する。
完全なMCIL目的関数は、各訓練ステップにおいてすべてのデータセットにわたってこのデータセットごとの目的関数を平均することができる。
そして、ポリシーおよびすべての目標エンコーダが、LMCILを最大にするためにエンドツーエンドで訓練される。完全なミニバッチ訓練の疑似コードについてはアルゴリズム1を参照されたい。
いくつかの実装形態では、マルチコンテキスト学習は、遊びからの学習を超えて広くそれを有用にし得る特性を有する。本明細書ではデータセットDはD={Dplay, D(play.lang)}に設定され得るが、この手法は、様々な記述、たとえばタスクid、言語、人間によるビデオデモンストレーション、発話などを伴う模倣データセットのあらゆるセットにわたって訓練するために、より全般的に使用され得る。コンテキストに依存しないことは、高度に効率的な訓練方式を可能にできる。すなわち、最も安価なデータソースから制御の大半を学習しながら、少数のラベリングされた例から最も一般的な形式のタスクの条件付けを学習する。このようにして、マルチコンテキスト学習は、共有される目標空間を通じた転移学習として解釈され得る。これは、人間による監督のコストを、それが現実的に適用できる程度まで下げることができる。マルチコンテキスト学習は、人間の命令に従うようにエージェントを訓練することを可能にでき、収集されたロボット体験のうちの小さい割合(たとえば、10%未満、5%未満、1%未満など)がペアリングされた言語を必要とし、制御の大半は代わりに、再ラベリングされた目標画像データから学習される。
いくつかの実装形態では、遊びからの言語条件付き学習(LangLfP)は、マルチコンテキスト模倣学習の特別な場合である。高水準において、LangLfPは、後知恵目標画像タスクおよび後知恵命令タスクからなる、データセットD={Dplay,D(play,lang)}にわたって単一のマルチコンテキストポリシーπθ(at|st,z)を訓練する。いくつかの実装形態では、F={genc,senc}は、それぞれ画像目標および命令から同じ潜在視覚言語目標空間(latent visuo-lingual goal space)へのニューラルネットワークエンコーダの対応付けであり得る。LangLfPは、認識、自然言語理解、および制御を、エンドツーエンドで、補助損失(auxiliary loss)なしで学習することができる。
認識モジュール。いくつかの実装形態では、各例におけるτは、
、オンボード観測結果のシーケンスOt、および行動からなる。各観測結果は、高次元画像および/または内部固有受容性センサの測定値を含み得る。学習された認識モジュールPθは、各観測結果タプルを、ネットワークの残りに供給される低次元埋め込み(low-dimensional embedding)、たとえばst=Pθ(Ot)に対応付ける。この認識モジュールはgencと共有されてもよく、これは、符号化された目標観測結果sgをz空間中の点に対応付けるための、最上位の追加のネットワークを定義する。
言語モジュール。いくつかの実装形態では、言語目標エンコーダsencは、生のテキストlをサブワードへとトークン化し、ルックアップテーブルからサブワード埋め込み(subword embedding)を取り出し、および/または次いで埋め込みをz空間中の点へと要約する。サブワード埋め込みは、訓練の最初にランダムに初期化され、最終的な模倣損失によってエンドツーエンドで学習され得る。
制御モジュール。多くのアーキテクチャが、マルチコンテキストポリシーπθ(at|st,z)を実装するために使用され得る。たとえば、Latent Motor Plans(LMP)が使用され得る。LMPは、自由形式の模倣データセットに固有の大量のマルチモダリティをモデル化するために潜在変数を使用する、目標指向模倣アーキテクチャである。具体的には、それは、潜在「計画」空間を通じてコンテクスチュアルデモンストレーションを自己符号化する、シーケンスツーシーケンス条件付き変分オートエンコーダ(seq2seq CVAE)であり得る。デコーダは、目標条件付きポリシーである。CVAEとして、LMP下限最尤コンテクスチュアル模倣、マルチコンテキスト環境に容易に適合され得る。
LangLfP訓練。LangLfP訓練は、既存のLfP訓練と対比され得る。各訓練ステップにおいて、画像目標タスクのバッチをDplayからサンプリングすることができ、言語目標タスクのバッチをD(play,lang)からサンプリングすることができる。認識モジュールPθを使用して、観測結果が状態空間へと符号化される。画像目標および言語目標は、エンコーダgencおよびsencを使用して潜在目標空間zへと符号化され得る。ポリシーπθ(at|st,z)は、両方のタスク記述にわたって平均化された、マルチコンテキスト模倣目的関数を計算するために使用され得る。いくつかの実装形態では、すべてのモジュール、すなわち認識、言語、および制御モジュールに関して、合成勾配(combined gradient)ステップをとることができ、単一のニューラルネットワークとしてアーキテクチャ全体をエンドツーエンドで最適化する。
試験時に人間の命令に従う。試験エピソードの最初に、エージェントは、オンボード観測結果Otおよび人間により規定された自然言語目標lを入力として受け取る。エージェントは、訓練されたセンテンスエンコーダsencを使用して、潜在目標空間zの中でlを符号化する。エージェントは次いで、閉ループにおいて目標を解決し、現在の観測結果と目標を繰り返し学習されたポリシーπθ(at|st,z)に供給し、行動をサンプリングし、環境においてそれらを実行する。人間の操作者は、任意の時間に新しい言語目標lをタイプすることができる。
大きな「野生の」自然言語コーパスは、世界についてのかなりの人間の知識を反映し得る。多くの近年の研究は、あらかじめ訓練された埋め込みを介して、この知識をNLPにおいて下流のタスクに転移することに成功している。本明細書において説明されるいくつかの実装形態において、同様の知識の転移がロボット操作に対して達成できるか?
このタイプの転移には多くの利点がある。まず、ソースコーパスとターゲット環境との間にセマンティックな一致がある場合、より構造化された入力が、強力な事前の基礎知識または基準として働き得る。追加または代替として、言語埋め込みが、多数の語および文章の類似性を符号化することが示されている。これは、エージェントが従うように訓練された命令に十分「近い」限り、多数の新規の命令にゼロショットでエージェントが従うことを可能にし得る。自然言語の複雑さを考慮すると、オープンワールド環境のロボットは、特定の訓練セットの範囲外にある同義の命令に従うことが可能でなければならないことがあることに留意されたい。
アルゴリズム1 マルチコンテキスト模倣学習
Input:
、コンテキストタイプ当たり1つのデータセット(たとえば、目標画像、言語命令、タスクid)、各々が(デモンストレーション,コンテキスト)のペアを保持する。
Input:
、コンテキストタイプ当たり1つのエンコーダ、コンテキストを共有された潜在目標空間、たとえば
に対応付ける。
Input:πθ(at|st,z)、単一の潜在目標条件付きポリシー。
Input:パラメータ
をランダムに初期化する
while True do
LMCIL←0
#データセットにわたってループする。
for k=0...K do
#このデータセットから(デモンストレーション,コンテキスト)バッチをサンプリングする。
k,ck)~Dk
#共有された潜在目標空間においてコンテキストを符号化する。
#模倣損失を累積する。
end for
#コンテキストタイプにわたって勾配を平均化する。
#ポリシーおよびすべてのエンコーダをエンドツーエンドで訓練する。
LMCILに関して勾配ステップをとることによってθを更新する
end while
アルゴリズム2 遠隔操作された遊びから数百万個の目標画像条件付き模倣の例を作成する。
Input:
、遊びの間に記録された観測結果および行動のセグメント化されていないストリーム。
Input:Dplay←{}
Input: wlow,whigh,後知恵ウィンドウサイズの限界。
while True do
#ストリームから次の遊びエピソードを得る。
(s0:t,a0:t)~S
for w=wlow...whigh do
for i=0..(t-w) do
#各々のサイズwのウィンドウを選択する。
τ=(si:i+w,ai:i+w)
#ウィンドウ中の最後の観測結果を目標として扱う。
sg=sw
(τ,sg)をDplayに追加する
end for
end for
end while
アルゴリズム3 ロボットセンサデータを自然言語命令とペアリングする。
Input: Dplay、(τ,sg)ペアを保持する再ラベリングされた遊びデータセット。
Input: D(play,lang)←{}
Input: get_hindsight_instruction():人の監督者、所与のτに対する事後の自然言語命令を提供する。
Input: K、生成すべきペアの数、K<<|Dplay|。
for 0...K do
#遊びからランダム軌跡をサンプリングする。
(τ,)~Dplay
#τを最適なものにする命令について人間に尋ねる。
(τ,l)をD(play.lang)に追加する
end for
ここで図を見ると、例示的なロボット100が図1に示されている。ロボット100は、所望の位置に把持エンドエフェクタ102を位置付けるための複数の潜在的な経路のいずれかに沿った把持エンドエフェクタ102の通過を可能にするための、複数の自由度を有する「ロボットアーム」である。ロボット100はさらに、把持エンドエフェクタ102の2つの対抗する「爪」を制御して、少なくとも開いた状態と閉じた状態(および/または任意選択で複数の「部分的に閉じた」状態)の間で爪を作動させる。
例示的なビジョンコンポーネント106も図1に示されている。図1において、ビジョンコンポーネント106は、ロボット100の基部または他の動かない基準点に対して固定された姿勢で搭載される。ビジョンコンポーネント106は、センサの見通し線にある物体の画像、ならびに/または、その形状、色、深さ、および/もしくは他の特徴に関する他のビジョンデータを生成することができる、1つまたは複数のセンサを含む。ビジョンコンポーネント106は、たとえば、モノグラフィックカメラ、ステレオグラフィックカメラ、および/または3Dレーザースキャナであり得る。3Dレーザースキャナは、たとえば、time-of-flight 3Dレーザースキャナまたは三角測量に基づく3Dレーザースキャナであってもよく、位置感知型検出器(PDS)または他の光位置センサを含んでもよい。
ビジョンコンポーネント106は、例示的な物体104を含む作業空間の部分などの、ロボット100の作業空間の少なくとも一部分の視野を有する。物体104を置く面は図1に示されていないが、それらの物体は、テーブル、トレイ、および/または他の面に置かれてもよい。物体104は、へら、ホッチキス、および鉛筆を含み得る。他の実装形態では、本明細書において説明されるようなロボット100の把持の試みのすべてまたは一部の間に、より多数の物体、より少数の物体、追加の物体、および/または代替の物体が提供されてもよい。
特定のロボット100が図1に示されているが、ロボット100と同様の追加のロボットアーム、他のロボットアーム形式を有するロボット、ヒューマノイド形式を有するロボット、動物形式を有するロボット、1つまたは複数の車輪を介して動くロボット(たとえば、自分でバランスをとるロボット)、潜水艇ロボット、無人航空機(「UAV」)などを含む、追加および/または代替のロボットが利用されてもよい。また、特定の把持エンドエフェクタが図1に示されているが、代替のインパクティブ(impactive)把持エンドエフェクタ(たとえば、把持「プレート」を持つもの、より多数または少数の「指」/「爪」を持つもの)、イングレッシブ(ingressive)把持エンドエフェクタ、アストリクティブ(astrictive)把持エンドエフェクタ、コンティギュティブ(contigutive)把持エンドエフェクタ、または非把持エンドエフェクタなどの、追加および/または代替のエンドエフェクタが利用されてもよい。加えて、ビジョンコンポーネント106の特定のマウンティングが図1に示されているが、追加および/または代替のマウンティングが利用されてもよい。たとえば、いくつかの実装形態では、ビジョンコンポーネントは、ロボットの作動不可能なコンポーネントまたはロボットの作動可能なコンポーネント(たとえば、エンドエフェクタまたはエンドエフェクタの近くのコンポーネント)などに、ロボットに直接搭載されてもよい。また、たとえば、いくつかの実装形態では、ビジョンコンポーネントは、関連するロボットとは別の非固定式の構造物に搭載されてもよく、および/または、関連するロボットとは別の構造物に固定されない方式で搭載されてもよい。
ロボット100からのデータ(たとえば、ビジョンコンポーネント106を使用して取り込まれたビジョンデータ)は、ユーザインターフェース入力デバイス128を使用して取り込まれた自然言語命令130とともに、行動出力を生成するために行動出力エンジン108によって利用され得る。いくつかの実装形態では、ロボット100は、行動出力に基づいて1つまたは複数の行動を実行するように制御され得る(たとえば、ロボット100の1つまたは複数のアクチュエータが制御され得る)。いくつかの実装形態では、ユーザインターフェース入力デバイス128は、たとえば、物理キーボード、タッチスクリーン(たとえば、仮想キーボードまたは他のテキスト入力機構を実装する)、マイクロフォン、および/またはカメラを含み得る。いくつかの実装形態では、自然言語命令130は、自由形式の自然言語命令であり得る。
いくつかの実装形態では、潜在目標エンジン110は、自然言語命令エンコーダ114を使用して、自然言語命令130を処理し、自然言語命令の潜在状態表現を生成することができる。たとえば、キーボードユーザインターフェース入力デバイス128は、「緑色のボタンを押して」という自然言語命令を取り込むことができる。潜在目標エンジン110は、自然言語命令エンコーダ114を使用して、「緑色のボタンを押して」という自然言語命令130を処理して、「緑色のボタンを押す」という潜在目標表現を生成することができる。
いくつかの実装形態では、目標画像訓練インスタンスエンジン126が、遠隔操作された「遊び」データ122に基づいて目標画像訓練インスタンス124を生成するために使用され得る。遠隔操作された「遊び」データ122は、ある環境においてロボットを制御する人間により生成されてもよく、人間の制御者は実行すべき定められたタスクを有しない。いくつかの実装形態では、各目標画像訓練インスタンス124は、模倣軌跡部分および目標画像部分を含んでもよく、目標画像部分はロボットのタスクを記述する。たとえば、目標画像は閉じた引き出しの画像であってもよく、これは引き出しを閉じるロボットの行動を記述し得る。別の例として、目標画像は開いた引き出しの画像であってもよく、これは扉を開けるロボットの行動を記述し得る。いくつかの実装形態では、目標画像訓練インスタンスエンジン126は、遠隔操作された遊びデータストリームから画像フレームのシーケンスを選択することができる。目標画像訓練インスタンスエンジン126は、訓練インスタンスの模倣軌跡部分として画像フレームの選択されたシーケンスを記憶し、訓練インスタンスの目標画像部分として画像フレームのシーケンスの最後の画像フレームを記憶することによって、1つまたは複数の目標画像訓練インスタンスを生成することができる。いくつかの実装形態では、目標画像訓練インスタンス124は、本明細書において説明される図4のプロセス400に従って生成され得る。
いくつかの実装形態では、自然言語命令訓練インスタンスエンジン120は、遠隔操作され遊びデータ122を使用して自然言語訓練インスタンス118を生成するために使用され得る。自然言語命令訓練インスタンスエンジン120は、遠隔操作された遊びデータ122のデータストリームから画像フレームのシーケンスを選択することができる。いくつかの実装形態では、人間の記述者が、画像フレームの選択されたシーケンスにおいてロボットによって実行されているタスクを記述する自然言語命令を提供することができる。いくつかの実装形態では、複数の人間の記述者が、画像フレームの同じ選択されたシーケンスにおいてロボットによって実行されているタスクを記述する自然言語命令を提供することができる。追加または代替として、複数の人間の記述者が、画像フレームの別個のシーケンスにおいて実行されているタスクを記述する自然言語命令を提供することができる。いくつかの実装形態では、複数の人間の記述者が、自然言語命令を並行して提供することができる。自然言語命令訓練インスタンスエンジン120は、画像フレームの選択されたシーケンスを訓練インスタンスの模倣軌跡部分として記憶し、人間により提供された自然言語命令を訓練インスタンスの自然言語命令部分として記憶することによって、1つまたは複数の言語命令訓練インスタンスを生成することができる。いくつかの実装形態では、自然言語訓練インスタンス124は、本明細書において説明される図5のプロセス500に従って生成され得る。
いくつかの実装形態では、訓練エンジン116は、目標条件付きポリシーネットワーク112、自然言語命令エンコーダ114、および/または目標画像エンコーダ132を訓練するために使用され得る。いくつかの実装形態では、目標条件付きポリシーネットワーク112、自然言語命令エンコーダ114、および/または目標画像エンコーダ132は、本明細書において説明される図6のプロセス600に従って訓練され得る。
図2は、様々な実装形態に従って行動出力208を生成することの例を示す。例200は、自然言語命令入力202を受け取る(たとえば、図1の1つまたは複数のユーザインターフェース入力デバイス128を介して自然言語命令入力を受け取る)ことを含む。いくつかの実装形態では、自然言語命令入力202は、自由形式の自然言語入力であり得る。いくつかの実装形態では、自然言語命令入力202は、テキストの自然言語入力であり得る。自然言語命令エンコーダ114は、自然言語命令入力202を処理して自然言語命令204の潜在目標空間表現を生成することができる。目標条件付きポリシーネットワーク112は、ビジョンデータ206の現在のインスタンス(たとえば、図1のビジョンコンポーネント106を介して取り込まれるビジョンデータのインスタンス)とともに潜在目標204を処理して、行動出力208を生成するために使用され得る。いくつかの実装形態では、行動出力208は、自然言語命令入力202によって命令されるタスクをロボットが実行するための1つまたは複数の行動を記述することができる。いくつかの実装形態では、ロボット(たとえば、図1のロボット100)の1つまたは複数のアクチュエータは、自然言語命令入力202によって示されるタスクをロボットが実行するように、行動出力208に基づいて制御され得る。
図3は、ロボットを制御する際に目標条件付きポリシーネットワークを使用して、自然言語命令に基づいて、本明細書において開示される実装形態に従って、出力を生成するプロセス300を示すフローチャートである。便宜的に、フローチャートの動作は、動作を実行するシステムを参照して説明される。このシステムは、ロボット100、ロボット725、および/またはコンピューティングシステム810の1つまたは複数のコンポーネントなどの、様々なコンピュータシステムの様々なコンポーネントを含み得る。その上、プロセス300の動作は特定の順序で示されているが、これは限定的であることを意図しない。1つまたは複数の動作が、並べ替えられ、省略され、および/または追加されてもよい。
ブロック302において、システムは、ロボットのためのタスクを記述する自然言語命令を受信する。たとえば、システムは、「赤いボタンを押して」、「扉を閉めて」、「ドライバを持ち上げて」という自然言語命令、および/または、ロボットによって実行されるべきタスクを記述する追加もしくは代替の自然言語命令を受け取ることができる。
ブロック304において、システムは、自然言語エンコーダを使用して自然言語命令を処理して、自然言語命令の潜在空間表現を生成する。
ブロック306において、システムは、ロボットの環境の少なくとも一部を捉えるビジョンデータのインスタンスを受信する。
ブロック308において、システムは、目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータのインスタンスおよび(b)自然言語命令の潜在目標表現を処理したことに基づいて、出力を生成する。
ブロック310において、システムは、生成された出力に基づいてロボットの1つまたは複数のアクチュエータを制御する。
図3のプロセス300は、自然言語命令に基づいてロボットを制御することに関連して説明される。追加または代替の実装形態では、システムは、自然言語命令の代わりに、または自然言語命令に加えて、目標画像、タスクID、発話などに基づいてロボットを制御することができる。たとえば、システムは、自然言語命令および目標画像命令に基づいてロボットを制御することができ、自然言語命令は対応する自然言語命令エンコーダを使用して処理され、目標画像は対応する目標画像エンコーダを使用して処理される。
図4は、本明細書において開示される実装形態に従って目標画像訓練インスタンスを生成するプロセス400を示すフローチャートである。便宜的に、フローチャートの動作は、動作を実行するシステムを参照して説明される。このシステムは、ロボット100、ロボット725、および/またはコンピューティングシステム810の1つまたは複数のコンポーネントなどの、様々なコンピュータシステムの様々なコンポーネントを含み得る。その上、プロセス400の動作は特定の順序で示されているが、これは限定的であることを意図しない。1つまたは複数の動作が、並べ替えられ、省略され、および/または追加されてもよい。
ブロック402において、システムは、遠隔操作された遊びデータを捉えるデータストリームを受信する。
ブロック404において、システムは、データストリームから画像フレームのシーケンスを選択する。たとえば、システムは、データストリームの中の画像フレームの1秒のシーケンス、データストリームの中の画像フレームの2秒のシーケンス、データストリームの中の画像フレームの10秒のシーケンス、および/またはデータストリームの中の画像フレームの追加もしくは代替の長さのセグメントを選択することができる。
ブロック404において、システムは、画像フレームの選択されたシーケンスの中の最後の画像フレームを決定する。
ブロック406において、システムは、(1)画像フレームのシーケンスを訓練インスタンスの模倣軌跡部分として、および(2)最後の画像フレームを訓練インスタンスの目標画像部分として含む、訓練インスタンスを記憶する。言い換えると、システムは、画像フレームのシーケンスにおいて取り込まれるタスクを記述する目標画像として最後の画像を記憶する。
ブロック410において、システムは、追加の訓練インスタンスを生成するかどうかを決定する。いくつかの実装形態では、システムは、1つまたは複数の条件が満たされるまで追加の訓練インスタンスを生成すると決定することができる。たとえば、システムは、閾値の数の訓練インスタンスが生成されるまで、データストリーム全体が処理されるまで、および/または追加もしくは代替の条件が満たされるまで、訓練インスタンスを生成し続けることができる。システムが追加の訓練インスタンスを生成すると決定する場合、システムは、ブロック404に戻り、データストリームから画像フレームの追加のシーケンスを選択し、画像フレームの追加のシーケンスに基づいてブロック406および408の追加の反復を実行する。そのように決定しない場合、プロセスは終了する。
図5は、本明細書において開示される実装形態に従って、自然言語命令訓練インスタンスを生成することのプロセス500を示すフローチャートである。便宜的に、フローチャートの動作は、動作を実行するシステムを参照して説明される。このシステムは、ロボット100、ロボット725、および/またはコンピューティングシステム810の1つまたは複数のコンポーネントなどの、様々なコンピュータシステムの様々なコンポーネントを含み得る。その上、プロセス500の動作は特定の順序で示されているが、これは限定的であることを意図しない。1つまたは複数の動作が、並べ替えられ、省略され、および/または追加されてもよい。
ブロック502において、システムは、遠隔操作された遊びデータを取り込むデータストリームを受信する。
ブロック504において、システムは、データストリームから画像フレームのシーケンスを選択する。たとえば、システムは、データストリームの中の画像フレームの1秒のシーケンス、データストリームの中の画像フレームの2秒のシーケンス、データストリームの中の画像フレームの10秒のシーケンス、および/またはデータストリームの中の画像フレームの追加もしくは代替の長さのセグメントを選択することができる。
ブロック506において、システムは、画像フレームの選択されたシーケンスの中のタスクを記述する自然言語命令を受信する。
ブロック508において、システムは、(1)画像フレームのシーケンスを訓練インスタンスの模倣軌跡部分として、および(2)タスクを記述する受信された自然言語命令を訓練インスタンスの自然言語命令部分として含む、訓練インスタンスを記憶する。
ブロック510において、システムは、追加の訓練インスタンスを生成するかどうかを決定する。いくつかの実装形態では、システムは、1つまたは複数の条件が満たされるまで追加の訓練インスタンスを生成すると決定することができる。たとえば、システムは、閾値の数の訓練インスタンスが生成されるまで、データストリーム全体が処理されるまで、および/または追加もしくは代替の条件が満たされるまで、訓練インスタンスを生成し続けることができる。システムが追加の訓練インスタンスを生成すると決定する場合、システムは、ブロック504に戻り、データストリームから画像フレームの追加のシーケンスを選択し、画像フレームの追加のシーケンスに基づいてブロック506および508の追加の反復を実行する。そのように決定しない場合、プロセスは終了する。
図6は、本明細書において開示される実装形態に従って、目標条件付きポリシーネットワーク、自然言語命令エンコーダ、および/または目標画像エンコーダを訓練するプロセス600を示すフローチャートである。便宜的に、フローチャートの動作は、動作を実行するシステムを参照して説明される。このシステムは、ロボット100、ロボット725、および/またはコンピューティングシステム810の1つまたは複数のコンポーネントなどの、様々なコンピュータシステムの様々なコンポーネントを含み得る。その上、プロセス600の動作は特定の順序で示されているが、これは限定的であることを意図しない。1つまたは複数の動作が、並べ替えられ、省略され、および/または追加されてもよい。
ブロック602において、システムは、(1)模倣軌跡および(2)目標画像を含む目標画像訓練インスタンスを選択する。
ブロック604において、システムは、目標画像エンコーダを使用して目標画像を処理して、目標画像の潜在目標空間表現を生成する。
ブロック606において、システムは、目標条件付きポリシーネットワークを使用して、少なくとも(1)模倣軌跡の初期画像フレームおよび(2)目標画像の潜在空間表現を処理して、候補出力を生成する。
ブロック608において、システムは、(1)候補出力および(2)模倣軌跡の少なくとも一部分に基づいて目標画像損失を決定する。
ブロック610において、システムは、(1)追加の模倣軌跡および(2)自然言語命令を含む自然言語命令訓練インスタンスを選択する。
ブロック612において、システムは、自然言語エンコーダを使用して自然言語命令訓練インスタンスの自然言語命令部分を処理して、自然言語命令の潜在空間表現を生成する。
ブロック614において、システムは、目標条件付きポリシーネットワークを使用して、(1)追加の模倣軌跡の初期画像フレームおよび(2)自然言語命令の潜在空間表現を処理して、追加の候補出力を生成する。
ブロック616において、システムは、(1)追加の候補出力および(2)追加の模倣軌跡の少なくとも一部分に基づいて自然言語損失を決定する。
ブロック618において、システムは、(1)画像目標損失および(2)自然言語命令損失に基づいて、目標条件付き損失を生成する。
ブロック620において、システムは、目標条件付き損失に基づいて、目標条件付きポリシーネットワーク、目標画像エンコーダ、および/または自然言語命令エンコーダの1つまたは複数の部分を更新する。
ブロック622において、システムは、目標条件付きポリシーネットワーク、目標画像エンコーダ、および/または自然言語命令エンコーダに対して追加の訓練を実行するかどうかを決定する。いくつかの実装形態では、システムは、1つまたは複数の追加の処理されていない訓練インスタンスがある場合、および/または他の1つ/複数の基準がまだ満たされていない場合、より多くの訓練を実行すると決定することができる。他の1つ/複数の基準は、たとえば、閾値の数のエポックが発生したかどうか、および/または閾値の時間長の訓練が行われたかどうかを含み得る。プロセス600は、ノンバッチ学習技法、バッチ学習技法、および/または追加もしくは代替の技法の両方を利用して訓練され得る。システムが追加の訓練を実行すると決定する場合、システムは、ブロック602に戻り、追加の目標画像訓練インスタンスを選択し、追加の目標画像訓練インスタンスに基づいてブロック604、606、および608の追加の反復を実行し、ブロック610において追加の自然言語命令訓練インスタンスを選択し、追加の自然言語命令訓練インスタンスに基づいてブロック612、614、および616の追加の反復を実行し、追加の目標画像訓練インスタンスおよび追加の自然言語命令訓練インスタンスに基づいてブロック618および610の追加の反復を実行する。そのように決定しない場合、プロセスは終了する。
図7は、ロボット725の例示的なアーキテクチャを概略的に示す。ロボット725は、ロボット制御システム760、1つまたは複数の動作コンポーネント740a~740n、および1つまたは複数のセンサ742a~742mを含む。センサ742a~742mは、たとえば、ビジョンコンポーネント、光センサ、圧力センサ、圧力波センサ(たとえば、マイクロフォン)、近接センサ、加速度計、ジャイロスコープ、温度計、気圧計などを含み得る。センサ742a~mはロボット725と一体であるものとして示されているが、これは限定的であることを意図しない。いくつかの実装形態では、センサ742a~mは、たとえばスタンドアロンユニットとして、ロボット725の外部に位置していてもよい。
動作コンポーネント740a~nは、ロボットの1つまたは複数のコンポーネントの動きをもたらすための、たとえば、1つまたは複数のエンドエフェクタおよび/または1つまたは複数のサーボモータもしくは他のアクチュエータを含み得る。たとえば、ロボット725は複数の自由度を有してもよく、アクチュエータの各々は制御コマンドに応答して1つまたは複数の自由度の中でロボット725の作動を制御してもよい。本明細書において使用される場合、アクチュエータという用語は、アクチュエータに関連し得る、かつアクチュエータを駆動するための1つまたは複数の信号へと受信された制御コマンドを変換する、任意のドライバに加えて、動きを生み出す機械または電気デバイス(たとえば、モータ)を包含する。したがって、制御コマンドをアクチュエータに提供することは、望まれる動きを生み出すように電気または機械デバイスを駆動するための適切な信号へと制御コマンドを変換するドライバに、制御コマンドを提供することを備え得る。
ロボット制御システム760は、ロボット725のCPU、GPU、および/または他のコントローラなどの1つまたは複数のプロセッサにおいて実装され得る。いくつかの実装形態では、ロボット725は、制御システム760のすべてまたは複数の態様を含み得る「ブレーンボックス」を備え得る。たとえば、ブレーンボックスは、動作コンポーネント740a~nにデータのリアルタイムバーストを提供してもよく、リアルタイムバーストの各々は、とりわけ動作コンポーネント740a~nの1つまたは複数の各々のための動きのパラメータを(もしあれば)規定する1つまたは複数の制御コマンドのセットを備える。いくつかの実装形態では、ロボット制御システム760は、本明細書において説明されるプロセス300、400、500、600、および/または他の方法の1つまたは複数の態様を実行し得る。
本明細書において説明されるように、いくつかの実装形態では、物体を掴むようにエンドエフェクタを位置付ける際に制御システム760によって生成される制御コマンドのすべてまたは複数の態様は、目標条件付きポリシーネットワークを使用して生成されるエンドエフェクタコマンドに基づき得る。たとえば、センサ742a~mのビジョンコンポーネントは、環境状態データを取り込み得る。この環境状態データは、ロボット状態データとともに、メタ学習モデルのポリシーネットワークを使用して、動きを制御するためのおよび/またはロボットのエンドエフェクタの把持のための1つまたは複数のエンドエフェクタ制御コマンドを生成するプロセスであり得る。制御システム760はロボット725の一体部分として図7に示されているが、いくつかの実装形態では、制御システム760のすべてまたは複数の態様は、ロボット725とは別個の、しかしそれと通信しているコンポーネントにおいて実装され得る。たとえば、制御システム760のすべてまたは複数の態様は、コンピューティングデバイス810などの、ロボット725と有線通信および/またはワイヤレス通信している1つまたは複数のコンピューティングデバイスで実装され得る。
図8は、本明細書において説明される技法の1つまたは複数の態様を実行するために任意選択で利用され得る例示的なコンピューティングデバイス810のブロック図である。コンピューティングデバイス810は通常、バスサブシステム812を介していくつかの周辺デバイスと通信する少なくとも1つのプロセッサ814を含む。これらの周辺デバイスは、たとえば、メモリサブシステム825およびファイルストレージサブシステム826を含むストレージサブシステム824、ユーザインターフェース出力デバイス820、ユーザインターフェース入力デバイス822、ならびにネットワークインターフェースサブシステム816を含み得る。入力および出力デバイスは、コンピューティングデバイス810とのユーザ対話を可能にする。ネットワークインターフェースサブシステム816は、外部ネットワークへのインターフェースを提供し、他のコンピューティングデバイスの中の対応するインターフェースデバイスに結合される。
ユーザインターフェース入力デバイス822は、キーボード、マウス、トラックボール、タッチパッド、もしくはグラフィクスタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム、マイクロフォンなどのオーディオ入力デバイス、および/または他のタイプの入力デバイスを含み得る。一般に、「入力デバイス」という用語の使用は、コンピューティングデバイス810または通信ネットワークへと情報を入力するための、すべての可能なタイプのデバイスと方法を含むことが意図される。
ユーザインターフェース出力デバイス820は、ディスプレイサブシステム、プリンタ、ファックスマシン、またはオーディオ出力デバイスなどの非視覚ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、プロジェクションデバイス、または可視の画像を生み出すための何らかの他の機構を含み得る。ディスプレイサブシステムはまた、オーディオ出力デバイスなどを介して非視覚ディスプレイを提供し得る。一般に、「出力デバイス」という用語の使用は、コンピューティングデバイス810からユーザまたは別の機械もしくはコンピューティングデバイスに情報を出力するための、すべての可能なタイプのデバイスと方法を含むことが意図される。
ストレージサブシステム824は、本明細書において説明されるモジュールの一部またはすべての機能を提供するプログラミングおよびデータ構築物を記憶する。たとえば、ストレージサブシステム824は、図3、図4、図5、図6、および/または本明細書において説明される他の方法のプロセスの選択された態様を実行するための論理を含み得る。
これらのソフトウェアモジュールは一般に、単独で、または他のプロセッサと組み合わせて、プロセッサ814によって実行される。ストレージサブシステム824において使用されるメモリ825は、プログラム実行の間の命令とデータの記憶のためのメインランダムアクセスメモリ(RAM)830と、固定された命令が記憶される読み取り専用メモリ(ROM)832とを含む、いくつかのメモリを含み得る。ファイルストレージサブシステム826は、プログラムおよびデータファイルの永続的な記憶を行うことができ、ハードディスクドライブ、関連するリムーバブルメディアを伴うフロッピーディスクドライブ、CD-ROMドライブ、光学ドライブ、またはリムーバブルメディアカートリッジを含み得る。いくつかの実装形態の機能を実装するモジュールは、ストレージサブシステム824の中のファイルストレージサブシステム826、またはプロセッサ814によってアクセス可能である他の機械によって記憶され得る。
バスサブシステム812は、コンピューティングデバイス810の様々なコンポーネントおよびサブシステムに意図されたように互いに通信させるための機構を提供する。バスサブシステム812は単一のバスとして概略的に示されているが、バスサブシステムの代替の実装形態は複数のバスを使用し得る。
コンピューティングデバイス810は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または任意の他のデータ処理システムもしくはコンピューティングデバイスを含む、様々なタイプであり得る。コンピュータとネットワークの変化し続ける性質により、図8に示されるコンピューティングデバイス810の説明は、いくつかの実装形態を例示することを目的として具体的な例として意図されているだけである。図8に示されるコンピューティングデバイスより多数または少数のコンポーネントを有する、コンピューティングデバイス810の多くの他の構成が可能である。
本明細書において説明されるシステムがユーザ(または本明細書ではしばしば「参加者」と呼ばれる)についての個人情報を収集する、または個人情報を利用し得る状況では、ユーザは、プログラムまたは特徴がユーザ情報(たとえば、ユーザのソーシャルネットワークについての情報、社会的な行動もしくは活動、職業、ユーザの好み、またはユーザの現在の地理的位置)を収集するかどうかを制御するための、または、ユーザにより関連があり得るコンテンツをコンテンツサーバから受信するかどうか、および/もしくはどのように受信するかを制御するための機会を与えられ得る。または、あるデータは、記憶または使用される前に1つまたは複数の方法で扱われ得るので、個人を識別可能な情報が取り除かれる。たとえば、ユーザについて個人を識別可能な情報を決定できないように、または、ユーザの具体的な地理的位置を決定できないように(都市レベル、郵便番号レベル、または州レベルなどへと)地理的位置情報が取得される際にユーザの地理的位置が一般化され得るように、ユーザの識別情報が扱われ得る。したがって、ユーザは、ユーザについての情報がどのように収集されるか、および/または使用されるかについて、管理することができる。
いくつかの実装形態では、1つまたは複数のプロセッサによって実施される方法が提供され、方法は、ロボットのためのタスクを記述する自由形式の自然言語命令、1つまたは複数のユーザインターフェース入力デバイスを介してユーザによって提供されるユーザインターフェース入力に基づいて生成される自由形式の自然言語命令を受け取るステップを含む。いくつかの実装形態では、方法は、自然言語命令エンコーダを使用して自由形式の自然言語命令を処理して、自由形式の自然言語命令の潜在目標表現を生成するステップを含む。いくつかの実装形態では、方法は、ビジョンデータのインスタンスを受信するステップを含み、ビジョンデータのインスタンスはロボットの少なくとも1つのビジョンコンポーネントによって生成され、ビジョンデータのインスタンスはロボットの環境の少なくとも一部を捉える。いくつかの実装形態では、方法は、目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータのインスタンスおよび(b)自由形式の自然言語命令の潜在目標表現を処理したことに基づいて出力を生成するステップを含み、目標条件付きポリシーネットワークは、少なくとも(i)訓練タスクが目標画像を使用して記述されるような、訓練インスタンスの目標画像セット、および(ii)訓練タスクが自由形式の自然言語命令を使用して記述されるような、訓練インスタンスの自然言語命令セットに基づいて訓練される。いくつかの実装形態では、方法は、生成された出力に基づいてロボットの1つまたは複数のアクチュエータを制御するステップを含み、ロボットの1つまたは複数のアクチュエータを制御することは、生成された出力により示される少なくとも1つの行動をロボットに実行させる。
本明細書において開示される技術のこれらおよび他の実装形態は、以下の特徴の1つまたは複数を含み得る。
いくつかの実装形態では、方法は、ロボットのための追加のタスクを記述する追加の自由形式の自然言語命令を受け取るステップを含み、追加の自由形式の自然言語命令は、1つまたは複数のユーザインターフェース入力デバイスを介してユーザによって提供される追加のユーザインターフェース入力に基づいて生成される。いくつかの実装形態では、方法は、自然言語命令エンコーダを使用して追加の自由形式の自然言語命令を処理して、追加の自由形式の自然言語命令の追加の潜在目標表現を生成するステップを含む。いくつかの実装形態では、方法は、ロボットの少なくとも1つのビジョンコンポーネントによって生成されるビジョンデータの追加のインスタンスを受信するステップを含む。いくつかの実装形態では、方法は、目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータの追加のインスタンスおよび(b)追加の自由形式の自然言語命令の追加の潜在目標表現を処理したことに基づいて追加の出力を生成するステップを含む。いくつかの実装形態では、方法は、生成された追加の出力に基づいてロボットの1つまたは複数のアクチュエータを制御するステップを含み、ロボットの1つまたは複数のアクチュエータを制御することは、生成された追加の出力によって示される少なくとも1つの追加の行動をロボットに実行させる。
いくつかの実装形態では、ロボットのための追加のタスクはロボットのためのタスクとは別個である。
いくつかの実装形態では、訓練タスクが目標画像を使用して記述されるような、訓練インスタンスの目標画像セットの中の各訓練インスタンスは、人間によって提供される模倣軌跡、および模倣軌跡においてロボットによって実行される訓練タスクを記述する目標画像を含む。いくつかの実装形態では、訓練インスタンスの目標画像セットの中の各訓練インスタンスを生成することは、人間が環境と相互作用するようにロボットを制御している間に、ロボットの状態およびロボットの対応する行動を捉える、データストリームを受信することを含む。いくつかの実装形態では、方法は、訓練インスタンスの目標画像セットの中の各訓練インスタンスに対して、データストリームから画像フレームのシーケンスを選択するステップと、画像フレームのシーケンスの中の最後の画像フレームを、画像フレームのシーケンスにおいて実行される訓練タスクを記述する訓練目標画像として選択するステップと、訓練インスタンスの模倣軌跡部分として画像フレームの選択されたシーケンスを訓練インスタンスとして記憶し、訓練インスタンスの目標画像部分として訓練目標画像を記憶することによって、訓練インスタンスを生成するステップとを含む。
いくつかの実装形態では、訓練が自由形式の自然言語命令を使用して記述されるような、訓練インスタンスの自然言語命令セットの中の各訓練インスタンスは、人間によって提供される模倣軌跡と、模倣軌跡においてロボットによって実行される訓練タスクを記述する自由形式の自然言語命令とを含む。いくつかの実装形態では、訓練インスタンスの自然言語命令セットの中の各訓練インスタンスを生成することは、人間が環境と相互作用するようにロボットを制御している間、ロボットの状態およびロボットの対応する行動を捉える、データストリームを受信することを含む。いくつかの実装形態では、方法は、訓練インスタンスの自然言語命令セットの中の各訓練インスタンスに対して、データストリームから画像フレームのシーケンスを選択するステップと、画像フレームのシーケンスを人間の評価者に提供するステップと、画像フレームのシーケンスにおいてロボットによって実行される訓練タスクを記述する自由形式の訓練自然言語命令を受信するステップと、訓練インスタンスの模倣軌跡部分としての画像フレームの選択されたシーケンス、および訓練インスタンスの自由形式の自然言語命令部分としての自由形式の訓練自然言語命令を、訓練インスタンスとして記憶することによって、訓練インスタンスを生成するステップとを含む。
いくつかの実装形態では、目標条件付きポリシーネットワークは、少なくとも(i)訓練タスクが目標画像を使用して記述されるような、訓練インスタンスの目標画像セット、および(ii)訓練タスクが自由形式の自然言語命令を使用して記述されるような、訓練インスタンスの自然言語命令セットに基づいて、訓練インスタンスの目標画像セットから第1の訓練インスタンスを選択し、第1の訓練インスタンスは、第1の模倣軌跡および第1の模倣軌跡を記述する第1の目標画像を含む。いくつかの実装形態では、方法は、目標画像エンコーダを使用して、第1の訓練インスタンスの第1の目標画像部分を処理することによって、第1の目標画像の潜在空間表現を生成するステップを含む。いくつかの実装形態では、方法は、目標条件付きポリシーネットワークを使用して、少なくとも(1)第1の模倣軌跡の中の初期画像フレームおよび(2)第1の訓練インスタンスの第1の目標画像部分の潜在空間表現を処理して、第1の候補出力を生成するステップを含む。いくつかの実装形態では、方法は、第1の候補出力および第1の模倣軌跡の1つまたは複数の部分に基づいて、目標画像損失を決定するステップを含む。いくつかの実装形態では、方法は、訓練インスタンスの自然言語命令セットから第2の訓練インスタンスを選択するステップを含み、第2の訓練インスタンスは、第2の模倣軌跡および第2の模倣軌跡を記述する第2の自由形式の自然言語命令を含む。いくつかの実装形態では、方法は、自然言語エンコーダを使用して、第2の訓練インスタンスの第2の自由形式の自然言語命令部分を処理することによって、第2の自由形式の自然言語命令の潜在空間表現を生成するステップを含み、第1の目標画像の潜在空間表現および第2の自由形式の自然言語命令の潜在空間表現は、共有される潜在空間において表現される。いくつかの実装形態では、方法は、目標条件付きポリシーネットワークを使用して、少なくとも(1)第2の模倣軌跡の中の初期画像フレームおよび(2)第2の訓練インスタンスの第2の自由形式の自然言語命令部分の潜在空間表現を処理して、第2の候補出力を生成するステップを含む。いくつかの実装形態では、方法は、第2の候補出力および第2の模倣軌跡の1つまたは複数の部分に基づいて自然言語命令損失を決定するステップを含む。いくつかの実装形態では、方法は、目標画像損失および自然言語命令損失に基づいて、目標条件付き損失を決定するステップを含む。いくつかの実装形態では、方法は、決定された目標条件付き損失に基づいて、目標画像エンコーダ、自然言語命令エンコーダ、および/または目標条件付きポリシーネットワークの1つまたは複数の部分を更新するステップを含む。
いくつかの実装形態では、目標条件付きポリシーネットワークは、訓練インスタンスの目標画像セットの第1の量の訓練インスタンス、および訓練インスタンスの自然言語命令セットの第2の量の訓練インスタンスに基づいて訓練され、第2の量は第1の量の50パーセント未満である。いくつかの実装形態では、第2の量は、第1の量の10パーセント未満、第1の量の5パーセント未満、または第1の量の1パーセント未満である。
いくつかの実装形態では、生成された出力は、ロボットの行動空間にわたる確率分布を含み、生成された出力に基づいて1つまたは複数のアクチュエータを制御することは、少なくとも1つの行動を、確率分布においてその少なくとも1つの行動が最も高い確率を持つことに基づいて、選択することを備える。
いくつかの実装形態では、目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータのインスタンスおよび(b)自由形式の自然言語命令の潜在目標表現を処理したことに基づいて出力を生成することはさらに、目標条件付きポリシーネットワークを使用して、(c)少なくとも1つの行動を処理したことに基づいて出力を生成することを含み、生成された出力に基づいて1つまたは複数のアクチュエータを制御することは、少なくとも1つの行動が閾値の確率を満たすことに基づいてその少なくとも1つの行動を選択することを備える。
いくつかの実装形態では、1つまたは複数のプロセッサによって実施される方法が提供され、方法は、ロボットのためのタスクを記述する自由形式の自然言語命令を受け取るステップを含み、自由形式の自然言語命令は、1つまたは複数のユーザインターフェース入力デバイスを介してユーザによって提供されるユーザインターフェース入力に基づいて生成される。いくつかの実装形態では、方法は、自然言語命令エンコーダを使用して自由形式の自然言語命令を処理して、自由形式の自然言語命令の潜在目標表現を生成するステップを含む。いくつかの実装形態では、方法は、ビジョンデータのインスタンスを受信するステップを含み、ビジョンデータのインスタンスは、ロボットの少なくとも1つのビジョンコンポーネントによって生成され、ビジョンデータのインスタンスは、ロボットの環境の少なくとも一部を捉える。いくつかの実装形態では、方法は、目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータのインスタンスおよび(b)自由形式の自然言語命令の潜在目標表現を処理したことに基づいて、出力を生成するステップを含む。いくつかの実装形態では、方法は、生成された出力に基づいてロボットの1つまたは複数のアクチュエータを制御するステップを含み、ロボットの1つまたは複数のアクチュエータを制御することは、生成された出力によって示される少なくとも1つの行動をロボットに実行させる。いくつかの実装形態では、方法は、ロボットのための追加のタスクを記述する目標画像命令を受信するステップを含み、目標画像命令は、1つまたは複数のユーザインターフェース入力デバイスを介してユーザによって提供される。いくつかの実装形態では、方法は、目標画像エンコーダを使用して目標画像命令を処理して、目標画像命令の潜在目標表現を生成するステップを含む。いくつかの実装形態では、方法は、ビジョンデータの追加のインスタンスを受信するステップを含み、ビジョンデータの追加のインスタンスは、ロボットの少なくとも1つのビジョンコンポーネントによって生成され、ビジョンデータの追加のインスタンスは、ロボットの環境の少なくとも一部を捉える。いくつかの実装形態では、方法は、目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータの追加のインスタンスおよび(b)目標画像命令の潜在目標表現を処理したことに基づいて、追加の出力を生成するステップを含む。いくつかの実装形態では、方法は、生成された追加の出力に基づいてロボットの1つまたは複数のアクチュエータを制御するステップを含み、ロボットの1つまたは複数のアクチュエータを制御することは、生成された追加の出力によって示される少なくとも1つの追加の行動をロボットに実行させる。
いくつかの実装形態では、1つまたは複数のプロセッサによって実施される方法が提供され、方法は、訓練インスタンスの目標画像セットから第1の訓練インスタンスを選択するステップを含み、第1の訓練インスタンスは、第1の模倣軌跡および第1の模倣軌跡を記述する第1の目標画像を含む。いくつかの実装形態では、方法は、目標画像エンコーダを使用して、第1の訓練インスタンスの第1の目標画像部分を処理することによって、第1の目標画像の潜在空間表現を生成するステップを含む。いくつかの実装形態では、方法は、目標条件付きポリシーネットワークを使用して、少なくとも(1)第1の模倣軌跡の中の初期画像フレームおよび(2)第1の訓練インスタンスの第1の目標画像部分の潜在空間表現を処理して、第1の候補出力を生成するステップを含む。いくつかの実装形態では、方法は、第1の候補出力および第1の模倣軌跡の1つまたは複数の部分に基づいて目標画像損失を決定するステップを含む。いくつかの実装形態では、方法は、訓練インスタンスの自然言語命令セットから第2の訓練インスタンスを選択するステップを含み、第2の訓練インスタンスは、第2の模倣軌跡および第2の模倣軌跡を記述する第2の自由形式の自然言語命令を含む。いくつかの実装形態では、方法は、自然言語エンコーダを使用して、第2の訓練インスタンスの第2の自由形式の自然言語命令部分を処理することによって、第2の自由形式の自然言語命令の潜在空間表現を生成するステップを含み、第1の目標画像の潜在空間表現および第2の自由形式の自然言語命令の潜在空間表現は、共有される潜在空間において表現される。いくつかの実装形態では、方法は、目標条件付きポリシーネットワークを使用して、少なくとも(1)第2の模倣軌跡の中の初期画像フレームおよび(2)第2の訓練インスタンスの第2の自由形式の自然言語命令部分の潜在空間表現を処理して、第2の候補出力を生成するステップを含む。いくつかの実装形態では、方法は、第2の候補出力および第2の模倣軌跡の1つまたは複数の部分に基づいて、自然言語命令損失を決定するステップを含む。いくつかの実装形態では、方法は、目標画像損失および自然言語命令損失に基づいて、目標条件付き損失を決定するステップを含む。いくつかの実装形態では、方法は、決定された目標条件付き損失に基づいて、目標画像エンコーダ、自然言語命令エンコーダ、および/または目標条件付きポリシーネットワークの1つまたは複数の部分を更新するステップを含む。
加えて、いくつかの実装形態は、1つまたは複数のコンピューティングデバイスの1つまたは複数のプロセッサ(たとえば、中央処理装置(CPU))、グラフィクス処理装置(GPU、および/またはテンソル処理装置(TPU))を含み、1つまたは複数のプロセッサは、関連するメモリに記憶されている命令を実行するように動作可能であり、命令は、本明細書において説明される方法のいずれかの実行を引き起こすように構成される。いくつかの実装形態はまた、本明細書において説明される方法のいずれかを実行するように1つまたは複数のプロセッサによって実行可能なコンピュータ命令を記憶する、1つまたは複数の一時的または非一時的コンピュータ可読記憶媒体を含む。
100 ロボット
102 把持エンドエフェクタ
104 物体
108 行動出力エンジン
110 潜在目標エンジン
112 目標条件付きポリシーネットワーク
114 NL命令エンコーダ
116 訓練エンジン
118 NL命令訓練インスタンス
120 NL命令訓練インスタンスエンジン
122 遠隔操作された「遊び」データ
124 目標画像訓練インスタンス
126 目標画像訓練インスタンスエンジン
128 ユーザインターフェース入力デバイス
130 自然言語命令
202 自然言語命令入力
204 潜在目標
206 ビジョンデータの現在のインスタンス
208 行動出力
725 ロボット
740 動作コンポーネント
742 センサ
760 ロボット制御システム
810 コンピューティングシステム
812 バスサブシステム
814 プロセッサ
816 ネットワークインターフェース
820 ユーザインターフェース出力デバイス
822 ユーザインターフェース入力デバイス
824 ストレージサブシステム
825 メモリサブシステム
826 ファイルストレージサブシステム

Claims (16)

1つまたは複数のプロセッサによって実施される方法であって、
ロボットのためのタスクを記述する自由形式の自然言語命令を受け取るステップであって、前記自由形式の自然言語命令が、1つまたは複数のユーザインターフェース入力デバイスを介してユーザによって提供されるユーザインターフェース入力に基づいて生成される、ステップと、
自然言語命令エンコーダを使用して前記自由形式の自然言語命令を処理して、前記自由形式の自然言語命令の潜在目標表現を生成するステップと、
ビジョンデータのインスタンスを受信するステップであって、ビジョンデータの前記インスタンスが、前記ロボットの少なくとも1つのビジョンコンポーネントによって生成され、ビジョンデータの前記インスタンスが、前記ロボットの環境の少なくとも一部を捉える、ステップと、
目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータの前記インスタンスおよび(b)前記自由形式の自然言語命令の前記潜在目標表現を処理したことに基づいて、出力を生成するステップであって、
前記目標条件付きポリシーネットワークが、少なくとも(i)訓練タスクが目標画像を使用して記述されるような、訓練インスタンスの目標画像セット、および(ii)訓練タスクが自由形式の自然言語命令を使用して記述されるような、訓練インスタンスの自然言語命令セットに基づいて訓練され、訓練タスクが目標画像を使用して記述されるような、前記訓練インスタンスの前記目標画像セットの中の各訓練インスタンスが、人間によって提供される模倣軌跡と、前記模倣軌跡においてロボットによって実行される前記訓練タスクを記述する目標画像とを備える、
ステップと、
前記生成された出力に基づいて前記ロボットの1つまたは複数のアクチュエータを制御するステップであって、前記ロボットの前記1つまたは複数のアクチュエータを制御することが、前記生成された出力によって示される少なくとも1つの行動を前記ロボットに実行させる、ステップとを備える、方法。
前記ロボットのための追加のタスクを記述する追加の自由形式の自然言語命令を受け取るステップであって、前記追加の自由形式の自然言語命令が、前記1つまたは複数のユーザインターフェース入力デバイスを介して前記ユーザによって提供される追加のユーザインターフェース入力に基づいて生成される、ステップと、
前記自然言語命令エンコーダを使用して前記追加の自由形式の自然言語命令を処理して、前記追加の自由形式の自然言語命令の追加の潜在目標表現を生成するステップと、
前記ロボットの前記少なくとも1つのビジョンコンポーネントによって生成されるビジョンデータの追加のインスタンスを受信するステップと、
前記目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータの前記追加のインスタンスおよび(b)前記追加の自由形式の自然言語命令の前記追加の潜在目標表現を処理したことに基づいて、追加の出力を生成するステップと、
前記生成された追加の出力に基づいて前記ロボットの前記1つまたは複数のアクチュエータを制御するステップであって、前記ロボットの前記1つまたは複数のアクチュエータを制御することが、前記生成された追加の出力によって示される少なくとも1つの追加の行動を前記ロボットに実行させる、ステップとを備える、請求項1に記載の方法。
前記ロボットのための前記追加のタスクが、前記ロボットのための前記タスクとは別個である、請求項2に記載の方法
練インスタンスの前記目標画像セットの中の各訓練インスタンスを生成するステップが、
前記人間が前記環境と相互作用するように前記ロボットを制御している間、前記ロボットの状態および前記ロボットの対応する行動を捉える、データストリームを受信するステップと、
訓練インスタンスの前記目標画像セットの中の各訓練インスタンスに対して、
前記データストリームから画像フレームのシーケンスを選択するステップと、
画像フレームの前記シーケンスの中の最後の画像フレームを、画像フレームの前記シーケンスにおいて実行される前記訓練タスクを記述する訓練目標画像として選択するステップと、
前記訓練インスタンスの前記模倣軌跡部分としての画像フレームの前記選択されたシーケンス、および前記訓練インスタンスの前記目標画像部分としての前記訓練目標画像を、前記訓練インスタンスとして記憶することによって、前記訓練インスタンスを生成するステップと
を備える、請求項1に記載の方法。
訓練が自由形式の自然言語命令を使用して記述されるような、訓練インスタンスの前記自然言語命令セットの中の各訓練インスタンスが、人間によって提供される模倣軌跡、および前記模倣軌跡においてロボットによって実行される前記訓練タスクを記述する自由形式の自然言語命令を備える、請求項4に記載の方法。
訓練インスタンスの前記自然言語命令セットの中の各訓練インスタンスを生成するステップが、
前記人間が前記環境と相互作用するように前記ロボットを制御している間、前記ロボットの前記状態および前記ロボットの対応する行動を捉える、データストリームを受信するステップと、
訓練インスタンスの前記自然言語命令セットの中の各訓練インスタンスに対して、
前記データストリームから画像フレームのシーケンスを選択するステップと、
画像フレームの前記シーケンスを人間の評価者に提供するステップと、
画像フレームの前記シーケンスにおいて前記ロボットによって実行される訓練タスクを記述する自由形式の訓練自然言語命令を受け取るステップと、
前記訓練インスタンスの前記模倣軌跡部分としての画像フレームの前記選択されたシーケンス、および前記訓練インスタンスの前記自由形式の訓練自然言語命令部分としての前記自由形式の訓練自然言語命令を、前記訓練インスタンスとして記憶することによって、前記訓練インスタンスを生成するステップと
を備える、請求項5に記載の方法。
少なくとも、(i)訓練タスクが目標画像を使用して記述されるような、訓練インスタンスの前記目標画像セット、および(ii)訓練タスクが自由形式の自然言語命令を使用して記述されるような、訓練インスタンスの前記自然言語命令セットに基づいて、前記目標条件付きポリシーネットワークを訓練するステップが、
訓練インスタンスの前記目標画像セットから第1の訓練インスタンスを選択するステップであって、前記第1の訓練インスタンスが第1の模倣軌跡および前記第1の模倣軌跡を記述する第1の目標画像を含む、ステップと、
目標画像エンコーダを使用して、前記第1の訓練インスタンスの前記第1の目標画像部分を処理することによって、前記第1の目標画像の潜在空間表現を生成するステップと、
前記目標条件付きポリシーネットワークを使用して、少なくとも(1)前記第1の模倣軌跡の中の初期画像フレームおよび(2)前記第1の訓練インスタンスの前記第1の目標画像部分の前記潜在空間表現を処理して、第1の候補出力を生成するステップと、
前記第1の候補出力および前記第1の模倣軌跡の1つまたは複数の部分に基づいて、目標画像損失を決定するステップと、
訓練インスタンスの前記自然言語命令セットから第2の訓練インスタンスを選択するステップであって、前記第2の訓練インスタンスが、第2の模倣軌跡および前記第2の模倣軌跡を記述する第2の自由形式の自然言語命令を含む、ステップと、
前記自然言語命令エンコーダを使用して、前記第2の訓練インスタンスの前記第2の自由形式の自然言語命令部分を処理することによって、前記第2の自由形式の自然言語命令の潜在空間表現を生成するステップであって、前記第1の目標画像の前記潜在空間表現および前記第2の自由形式の自然言語命令の前記潜在空間表現が共有された潜在空間において表現される、ステップと、
前記目標条件付きポリシーネットワークを使用して、少なくとも(1)前記第2の模倣軌跡の中の前記初期画像フレームおよび(2)前記第2の訓練インスタンスの前記第2の自由形式の自然言語命令部分の前記潜在空間表現を処理して、第2の候補出力を生成するステップと、
前記第2の候補出力および前記第2の模倣軌跡の1つまたは複数の部分に基づいて、自然言語命令損失を決定するステップと、
前記目標画像損失および前記自然言語命令損失に基づいて、目標条件付き損失を決定するステップと、
前記決定された目標条件付き損失に基づいて、前記目標画像エンコーダ、前記自然言語命令エンコーダ、および/または前記目標条件付きポリシーネットワークの1つまたは複数の部分を更新するステップとを備える、請求項4または6に記載の方法。
前記目標条件付きポリシーネットワークが、訓練インスタンスの前記目標画像セットの第1の量の訓練インスタンス、および訓練インスタンスの前記自然言語命令セットの第2の量の訓練インスタンスに基づいて訓練され、前記第2の量が前記第1の量の50パーセント未満である、請求項1から7のいずれか一項に記載の方法。
前記第2の量が、前記第1の量の10パーセント未満、前記第1の量の5パーセント未満、または前記第1の量の1パーセント未満である、請求項8に記載の方法。
前記生成された出力が、前記ロボットの行動空間にわたる確率分布を備え、前記生成された出力に基づいて前記1つまたは複数のアクチュエータを制御することが、前記少なくとも1つの行動を、前記確率分布において前記少なくとも1つの行動が最も高い確率を持つことに基づいて選択することを備える、請求項1から9のいずれか一項に記載の方法。
前記目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータの前記インスタンスおよび(b)前記自由形式の自然言語命令の前記潜在目標表現を処理したことに基づいて出力を生成する前記ステップがさらに、前記目標条件付きポリシーネットワークを使用して、(c)前記少なくとも1つの行動を処理したことに基づいて出力を生成するステップを備え、前記生成された出力に基づいて前記1つまたは複数のアクチュエータを制御することが、前記少なくとも1つの行動が閾値の確率を満たすことに基づいて前記少なくとも1つの行動を選択することを備える、請求項1から9のいずれか一項に記載の方法。
前記方法が、
記ロボットのための追加のタスクを記述する目標画像命令を受信するステップであって、前記目標画像命令が、前記1つまたは複数のユーザインターフェース入力デバイスを介して前記ユーザによって提供される、ステップと、
目標画像エンコーダを使用して前記目標画像命令を処理して、前記目標画像命令の潜在目標表現を生成するステップと、
ビジョンデータの追加のインスタンスを受信するステップであって、ビジョンデータの前記追加のインスタンスが、前記ロボットの前記少なくとも1つのビジョンコンポーネントによって生成され、ビジョンデータの前記追加のインスタンスが、前記ロボットの前記環境の少なくとも一部を捉える、ステップと、
前記目標条件付きポリシーネットワークを使用して、少なくとも(a)ビジョンデータの前記追加のインスタンスおよび(b)前記目標画像命令の前記潜在目標表現を処理したことに基づいて、追加の出力を生成するステップと、
前記生成された追加の出力に基づいて前記ロボットの前記1つまたは複数のアクチュエータを制御するステップであって、前記ロボットの前記1つまたは複数のアクチュエータを制御することが、前記生成された追加の出力によって示される少なくとも1つの追加の行動を前記ロボットに実行させる、ステップと
をさらに備える、請求項1に記載の方法。
1つまたは複数のプロセッサによって実施される方法であって、
訓練インスタンスの目標画像セットから第1の訓練インスタンスを選択するステップであって、前記第1の訓練インスタンスが、第1の模倣軌跡および前記第1の模倣軌跡を記述する第1の目標画像を含む、ステップと、
目標画像エンコーダを使用して、前記第1の訓練インスタンスの前記第1の目標画像部分を処理することによって、前記第1の目標画像の潜在空間表現を生成するステップと、
目標条件付きポリシーネットワークを使用して、少なくとも(1)前記第1の模倣軌跡の中の初期画像フレームおよび(2)前記第1の訓練インスタンスの前記第1の目標画像部分の前記潜在空間表現を処理して、第1の候補出力を生成するステップと、
前記第1の候補出力および前記第1の模倣軌跡の1つまたは複数の部分に基づいて目標画像損失を決定するステップと、
訓練インスタンスの自然言語命令セットから第2の訓練インスタンスを選択するステップであって、前記第2の訓練インスタンスが、第2の模倣軌跡および前記第2の模倣軌跡を記述する第2の自由形式の自然言語命令を含む、ステップと、
自然言語命令エンコーダを使用して、前記第2の訓練インスタンスの前記第2の自由形式の自然言語命令部分を処理することによって、前記第2の自由形式の自然言語命令の潜在空間表現を生成するステップであって、前記第1の目標画像の前記潜在空間表現および前記第2の自由形式の自然言語命令の前記潜在空間表現が、共有される潜在空間において表現される、ステップと、
前記目標条件付きポリシーネットワークを使用して、少なくとも(1)前記第2の模倣軌跡の中の前記初期画像フレームおよび(2)前記第2の訓練インスタンスの前記第2の自由形式の自然言語命令部分の前記潜在空間表現を処理して、第2の候補出力を生成するステップと、
前記第2の候補出力および前記第2の模倣軌跡の1つまたは複数の部分に基づいて、自然言語命令損失を決定するステップと、
前記目標画像損失および前記自然言語命令損失に基づいて、目標条件付き損失を決定するステップと、
前記決定された目標条件付き損失に基づいて、前記目標画像エンコーダ、前記自然言語命令エンコーダ、および/または前記目標条件付きポリシーネットワークの1つまたは複数の部分を更新するステップとを備える、方法。
コンピューティングシステムの1つまたは複数のプロセッサによって実行されると、前記コンピューティングシステムに請求項1から13のいずれか一項に記載の方法を実行させる命令を備える、コンピュータプログラム。
請求項1から13のいずれか一項に記載の方法を実行するように構成される、コンピューティングシステム。
請求項1から13のいずれか一項に記載の方法を実行するようにコンピューティングシステムの1つまたは複数のプロセッサによって実行可能な命令を記憶する、コンピュータ可読記憶媒体。
JP2022565890A 2020-05-14 2021-05-14 自然言語に基づくロボット制御において使用するための機械学習モデルを訓練および/または利用すること Active JP7498300B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2024087083A JP2024123006A (ja) 2020-05-14 2024-05-29 自然言語に基づくロボット制御において使用するための機械学習モデルを訓練および/または利用すること

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063024996P 2020-05-14 2020-05-14
US63/024,996 2020-05-14
PCT/US2021/032499 WO2021231895A1 (en) 2020-05-14 2021-05-14 Training and/or utilizing machine learning model(s) for use in natural language based robotic control

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024087083A Division JP2024123006A (ja) 2020-05-14 2024-05-29 自然言語に基づくロボット制御において使用するための機械学習モデルを訓練および/または利用すること

Publications (2)

Publication Number Publication Date
JP2023525676A JP2023525676A (ja) 2023-06-19
JP7498300B2 true JP7498300B2 (ja) 2024-06-11

Family

ID=76306028

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2022565890A Active JP7498300B2 (ja) 2020-05-14 2021-05-14 自然言語に基づくロボット制御において使用するための機械学習モデルを訓練および/または利用すること
JP2024087083A Pending JP2024123006A (ja) 2020-05-14 2024-05-29 自然言語に基づくロボット制御において使用するための機械学習モデルを訓練および/または利用すること

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2024087083A Pending JP2024123006A (ja) 2020-05-14 2024-05-29 自然言語に基づくロボット制御において使用するための機械学習モデルを訓練および/または利用すること

Country Status (6)

Country Link
US (1) US20230182296A1 (ja)
EP (1) EP4121256A1 (ja)
JP (2) JP7498300B2 (ja)
KR (1) KR20230008171A (ja)
CN (1) CN115551681A (ja)
WO (1) WO2021231895A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220226994A1 (en) * 2020-07-20 2022-07-21 Georgia Tech Research Corporation Heterogeneous graph attention networks for scalable multi-robot scheduling
US11958529B2 (en) * 2020-08-20 2024-04-16 Nvidia Corporation Controlling position of robot by determining goal proposals by using neural networks
US20230107316A1 (en) * 2021-10-05 2023-04-06 UiPath, Inc. Automatic data transfer between a source and a target using semantic artificial intelligence for robotic process automation
CN114800530B (zh) * 2022-06-09 2023-11-28 中国科学技术大学 基于视觉的机器人的控制方法、设备及存储介质
US11931894B1 (en) * 2023-01-30 2024-03-19 Sanctuary Cognitive Systems Corporation Robot systems, methods, control modules, and computer program products that leverage large language models
WO2024182721A1 (en) * 2023-03-01 2024-09-06 Google Llc Using scene understanding to generate context guidance in robotic task execution planning
CN117773934B (zh) * 2023-12-29 2024-08-13 兰州大学 基于语言指引的物体抓取方法和装置、电子设备及介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Simon Stepputtis et al,Imitation Learning of Robot Policies by Combining Language, Vision and Demonstration,arXiv:1911.11744,米国,Cornell University,2019年11月26日

Also Published As

Publication number Publication date
EP4121256A1 (en) 2023-01-25
US20230182296A1 (en) 2023-06-15
KR20230008171A (ko) 2023-01-13
WO2021231895A1 (en) 2021-11-18
JP2024123006A (ja) 2024-09-10
JP2023525676A (ja) 2023-06-19
CN115551681A (zh) 2022-12-30

Similar Documents

Publication Publication Date Title
JP7498300B2 (ja) 自然言語に基づくロボット制御において使用するための機械学習モデルを訓練および/または利用すること
US12083678B2 (en) Efficient adaption of robot control policy for new task using meta-learning based on meta-imitation learning and meta-reinforcement learning
Smith et al. Avid: Learning multi-stage tasks via pixel-level translation of human videos
Radosavovic et al. State-only imitation learning for dexterous manipulation
Breyer et al. Comparing task simplifications to learn closed-loop object picking using deep reinforcement learning
CN112135716B (zh) 数据高效的分层强化学习
US20230311335A1 (en) Natural language control of a robot
Gopalan et al. Simultaneously learning transferable symbols and language groundings from perceptual data for instruction following
Karamcheti et al. Learning adaptive language interfaces through decomposition
Patki et al. Language-guided semantic mapping and mobile manipulation in partially observable environments
Tanwani Generative models for learning robot manipulation skills from humans
Alt et al. Robot program parameter inference via differentiable shadow program inversion
CN118061186A (zh) 一种基于多模态大模型预测控制的机器人规划方法及系统
JP2024506580A (ja) 適応勾配クリッピングを用いるニューラルネットワーク
US20220305647A1 (en) Future prediction, using stochastic adversarial based sampling, for robotic control and/or other purpose(s)
Carreno et al. Adapting neural models with sequential monte carlo dropout
Abdelrahman et al. Context-aware task execution using apprenticeship learning
WO2022211403A1 (en) Hybrid robotic motion planning system using machine learning and parametric trajectories
Lin et al. Sketch RL: Interactive Sketch Generation for Long-Horizon Tasks via Vision-Based Skill Predictor
Taniguchi et al. Constructive approach to role-reversal imitation through unsegmented interactions
Zhou et al. Humanoid action imitation learning via boosting sample DQN in virtual demonstrator environment
Ma et al. VP-GO: A ‘Light’Action-Conditioned Visual Prediction Model for Grasping Objects
Ma et al. VP-GO: a" light" action-conditioned visual prediction model
US20240288870A1 (en) Method and System for Generating a Sequence of Actions for Controlling a Robot
Nakajo et al. Acquisition of viewpoint transformation and action mappings via sequence to sequence imitative learning by deep neural networks

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230904

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231108

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20231204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240117

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240401

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20240501

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240530

R150 Certificate of patent or registration of utility model

Ref document number: 7498300

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150