SlideShare une entreprise Scribd logo
1  sur  36
Télécharger pour lire hors ligne
Task-Embedded Control Networks for Few-Shot
Imitation Learning
PSI B4 近藤生也
もくじ
● 論文
● やりたいこと
● どんなもの?
● ベースライン(MIL)
● TecNets
● 実験結果
● 実装パート
● コードは一応公開しないでください。。
論文
● Task-Embedded Control Networks for Few-Shot Imitation Learning
○ CoRL2018
○ imperial college london
○ https://arxiv.org/pdf/1810.03237.pdf
● One-Shot Visual Imitation Learning via Meta-Learning
○ CoRL 2017
○ BAIR(UC Berkeley)
○ https://arxiv.org/pdf/1709.04905.pdf
やりたいこと
● お片付け
● 弁当のおかず(日本の弁当は中身がころころ変わる)
○ 操作物と宛先が変わっても一回教えたらできるようになってほしい
● 『人間がロボットのように弁当詰めてる』by nsnさん
○ 大変嘆かわしい!自動化したい。
どんなもの?
● pushingの模倣学習
○ 対象物(様々な大きさ形質量摩擦 )によって様々なタスク。
○ 様々なタスクをこなす!
○ ただしデモ(遠隔操作)をfew個教えてもらえる。
○ MIL(後述)とおんなじ問題設定
● (賢い)タスクの埋め込みをする
○ 『視覚的な情報』+『学習する上で必要な情報』で、デモからタスク情報を embedding。
○ 汎用的なpushingのポリシーとembeddingベクトルを使って、タスクを捌いていく!
○ 割とあっさりベースラインを超えた。
問題設定(from MIL)
● あるタスクのデモを(1つ)みて、
環境が少し変わった同じタスクを
遂行する。
● 学習時
○ 約800タスク×各12デモの
vision+action
● 評価時
○ 約80タスク
○ 1回のデモを渡された後、 sim上で実
際に画像を見ながら actionする。
ベースライン: MIL
● MAMLの拡張手法。MAMLが汎用的なので魅力ではある。
○ MAML: どんなタスクでもfew-stepの学習でtuningが終わるような、
普遍的な初期パラメータを求める手法。
○ タスクごとにfinetuning的なことをする。
● 後続論文が(同じ研究所から)3,4つ出てる
○ 人間のデモを使えるようにする
○ test時にタスクを複数組み合わせたデモを見せる
● イマイチな点
○ デモがないと思い出せない
■ いろんなタスクにすぐに切り替えるためには、
モデルのパラメータをタスクごとにまるっと保存しなければならない
○ リーチ、プッシュなど、基本的なポリシーまでいちいち finetuningにかけられてしまう。
○ 精度
○ 実装がスパゲッティ
ベースライン: MIL
● 精度は今ひとつ
● 『Task Embedding Net』 + 『Control Net』
○ 『Task Embedding Net』でデモからsentence(タスク情報のベクトル )を求めて
『Control Net』に毎フレームぶち込む
○ End2Endで同時に学習。
○ 同じタスクなら物体の位置等変わってもこなせるようになる。
== 同じタスクに対して高い汎化性を出せるようになる。
提案手法: TecNets
Task Embedding Net
● 実はかなりせこい
● 入力:最初と最後のフレーム
● conv層*4+fc層*3のシンプルなCNN
● MILとほぼ同じ
○ ↓MILの図
Task Embedding Net
● 基本的なlossはmetric loss
● metric loss
○ 『ラマ』と『イヌ』の例
●
○ s^j_k: k番目のデモのsentence
○ s^j: s_k^jの平均(をnormで割ったもの)
○ Σ^j: タスクj
○ τ^j_k: タスクjのk番目のデモ
同じクラス
同士
違うクラス
同士
Control Net
● 入力:現在の画像とsentenceベクトル。
● conv層*4+fc層*3のシンプルなCNN
● 基本的にはMIと同じ↓
Control Net
● 基本のloss: Behavior Cloning
●
○ デモの画像を見て、同じ actionを出力するよ
うに学習。
実際の学習の流れ
● 予めタスクの数だけ
sentenceを用意しておく。
● qは実際の使用をイメージ
したクエリ用のデモ
最終的な目的関数
● これを最小化すれば、どちらのモデルも最適化される。
●
最終的な目的関数
実験結果
● MILの実験
● デモでvisionだけ使える場合、
大きく精度を上回った。
実験結果
● タスクのembedding(実機)
その他の機能
● > Having such an expressive space would not only allow for few-shot
learning, but also opens the possibility of inferring information from new and
unfamiliar tasks in a zero-shot fashion, such as how similar a new task may
be to a previously seen one
● 若干違う始めてのタスクに出会ってもできる
● モデル的にzero-shotでもできる可能性もある。
○ 初期状態だけでタスクが決まる場合
■ ドア/引き出しを開ける/閉める
実装パート
● torch沼へようこそ
実装ポイント
● LayerNorm
● Taskset/TaskLoader
● loss_all += loss & loss.backward は危険かも
● cos類似度lossの注意
● 紹介する方法が本当に良いのかわかんないので別解ありそうだったら教えてください…
Task Embedding Net
● シンプルなCNN
Control Net
● シンプルなCNN
● sentenceのconcatがちょっとトリッキー
LayerNorm
● BatchNormより良かったり悪かったりす
るらしい
○ バッチサイズ依存ではない (個人的にありが
たい。実装ミスが減る )
● LayerNormの挙動→
○ 各データのある中間層での値すべての平均
と分散で出力を標準化
● elementeise_affine=True
○ 標準化後に各要素(ここではh*125*125の要
素)それぞれに対して*weight+biasをする。
○ パラメタがすごく(h*125*125個)増える
torch_utils.Taskset / TaskLoader
● torch.utils.data.Dataset/DataLoaderを参考にした
Dataset/DataLoader
● init時にあるタスクのgif
とpklのpathを受け取
り、
__getitem__で
1frameのvisionと
actionを返す
● DataLoader↓
Taskset/TaskLoader
● すべてのタスクのgifと
pklの場所を保持し、
__getitem__で
1つのタスクの1つ~複数
のデモを管理する
DataLoderを渡す。
● TaskLoader↓
“q” =>
“U” =>
☆ TaskLoaderは出力がtorch.Tensorではないので、torch.data.Dataset/DataLoaderを
Taskset/TaskLoaderの代わりに使うことができなかった。
loss_all += loss & loss.backward は危険かも
● 入力を変えつつlossを貯め続けてからbackwardしてるつもりでも
入力情報は蓄積し続ける(後述)。
● →いちいちbackwardしとけばおk(後述)
● Bには64個のタスクが含まれるので、
特にL_ctrを集めるときのメモリ使用量が爆発する
loss_all += loss & loss.backward は危険かも
● 入力情報は勾配の計算に使われるので確保しておく必要がある
loss_all += loss & loss.backward は危険かも
● multi backward法
○ 勝手に名前つけた
● https://github.com/naruya/maml-py
torch/blob/develop/notebooks/pyto
rch_autograd.ipynb
loss_all += loss & loss.backward は危険かも
● loss周りの実装
cos類似度lossの注意
● 片方は固定のnetworkを使うか両方更新する
かが必要。
● 今回、embの絶対値を限りなく大きくして
real-fakeを0に近づける局所解に陥りまくっ
た。
○ どっちもemb_netの出力を使い、メモリ節約のため片
方はno_gradにしていた。
retain_graph=True
● 迷ったらTrue
● 計算時間がほとんど変わらなかったらそのまま
● メモリがヤバかったら考える。
実験結果
● うーむ
● embeddingだけ学習が進んだ
● 十分学習した後でもlossのオーダーが違う
おまけ: MILの実験(未だ格闘中)
●
おわり

Contenu connexe

Plus de Deep Learning JP

Plus de Deep Learning JP (20)

【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners
【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners
【DL輪読会】AdaptDiffuser: Diffusion Models as Adaptive Self-evolving Planners
 
【DL輪読会】事前学習用データセットについて
【DL輪読会】事前学習用データセットについて【DL輪読会】事前学習用データセットについて
【DL輪読会】事前学習用データセットについて
 
【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...
【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...
【DL輪読会】 "Learning to render novel views from wide-baseline stereo pairs." CVP...
 
【DL輪読会】Zero-Shot Dual-Lens Super-Resolution
【DL輪読会】Zero-Shot Dual-Lens Super-Resolution【DL輪読会】Zero-Shot Dual-Lens Super-Resolution
【DL輪読会】Zero-Shot Dual-Lens Super-Resolution
 
【DL輪読会】BloombergGPT: A Large Language Model for Finance arxiv
【DL輪読会】BloombergGPT: A Large Language Model for Finance arxiv【DL輪読会】BloombergGPT: A Large Language Model for Finance arxiv
【DL輪読会】BloombergGPT: A Large Language Model for Finance arxiv
 
【DL輪読会】マルチモーダル LLM
【DL輪読会】マルチモーダル LLM【DL輪読会】マルチモーダル LLM
【DL輪読会】マルチモーダル LLM
 
【 DL輪読会】ToolLLM: Facilitating Large Language Models to Master 16000+ Real-wo...
 【 DL輪読会】ToolLLM: Facilitating Large Language Models to Master 16000+ Real-wo... 【 DL輪読会】ToolLLM: Facilitating Large Language Models to Master 16000+ Real-wo...
【 DL輪読会】ToolLLM: Facilitating Large Language Models to Master 16000+ Real-wo...
 
【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition
【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition
【DL輪読会】AnyLoc: Towards Universal Visual Place Recognition
 
【DL輪読会】Can Neural Network Memorization Be Localized?
【DL輪読会】Can Neural Network Memorization Be Localized?【DL輪読会】Can Neural Network Memorization Be Localized?
【DL輪読会】Can Neural Network Memorization Be Localized?
 
【DL輪読会】Hopfield network 関連研究について
【DL輪読会】Hopfield network 関連研究について【DL輪読会】Hopfield network 関連研究について
【DL輪読会】Hopfield network 関連研究について
 
【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )
【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )
【DL輪読会】SimPer: Simple self-supervised learning of periodic targets( ICLR 2023 )
 
【DL輪読会】RLCD: Reinforcement Learning from Contrast Distillation for Language M...
【DL輪読会】RLCD: Reinforcement Learning from Contrast Distillation for Language M...【DL輪読会】RLCD: Reinforcement Learning from Contrast Distillation for Language M...
【DL輪読会】RLCD: Reinforcement Learning from Contrast Distillation for Language M...
 
【DL輪読会】"Secrets of RLHF in Large Language Models Part I: PPO"
【DL輪読会】"Secrets of RLHF in Large Language Models Part I: PPO"【DL輪読会】"Secrets of RLHF in Large Language Models Part I: PPO"
【DL輪読会】"Secrets of RLHF in Large Language Models Part I: PPO"
 
【DL輪読会】"Language Instructed Reinforcement Learning for Human-AI Coordination "
【DL輪読会】"Language Instructed Reinforcement Learning  for Human-AI Coordination "【DL輪読会】"Language Instructed Reinforcement Learning  for Human-AI Coordination "
【DL輪読会】"Language Instructed Reinforcement Learning for Human-AI Coordination "
 
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
【DL輪読会】Llama 2: Open Foundation and Fine-Tuned Chat Models
 
【DL輪読会】"Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware"
【DL輪読会】"Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware"【DL輪読会】"Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware"
【DL輪読会】"Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware"
 
【DL輪読会】Parameter is Not All You Need:Starting from Non-Parametric Networks fo...
【DL輪読会】Parameter is Not All You Need:Starting from Non-Parametric Networks fo...【DL輪読会】Parameter is Not All You Need:Starting from Non-Parametric Networks fo...
【DL輪読会】Parameter is Not All You Need:Starting from Non-Parametric Networks fo...
 
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
【DL輪読会】Drag Your GAN: Interactive Point-based Manipulation on the Generative ...
 
【DL輪読会】Self-Supervised Learning from Images with a Joint-Embedding Predictive...
【DL輪読会】Self-Supervised Learning from Images with a Joint-Embedding Predictive...【DL輪読会】Self-Supervised Learning from Images with a Joint-Embedding Predictive...
【DL輪読会】Self-Supervised Learning from Images with a Joint-Embedding Predictive...
 
【DL輪読会】Towards Understanding Ensemble, Knowledge Distillation and Self-Distil...
【DL輪読会】Towards Understanding Ensemble, Knowledge Distillation and Self-Distil...【DL輪読会】Towards Understanding Ensemble, Knowledge Distillation and Self-Distil...
【DL輪読会】Towards Understanding Ensemble, Knowledge Distillation and Self-Distil...
 

Dernier

Dernier (11)

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

[DL Hacks]tensorflow/privacy Task-Embedded Control Networks for Few-Shot Imitation Learning