Human-gated DAgger, menyeluruh

Ambil alih apabila policy tersasar, lalu latih tepat pada pembetulan itu.

Policy yang dilatih melalui Behavior Cloning hanya mengenali keadaan yang pernah dilalui oleh demonstrasi anda. DAgger menutup jurang ini dengan data daripada keadaan yang dicapai oleh policy itu sendiri. AY-Robots menjalankan keseluruhan gelung ini pada SO-100: jalankan checkpoint, ambil alih di tengah larian, simpan episod yang telah dibetulkan, susun gabungan dataset, dan sambung latihan daripada checkpoint yang baru sahaja anda pandu.

  • HG-DAgger, dikawal manusia
  • SO-100 / SO-101
  • ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
  • Kadar intervensi setiap pusingan

Mengapa policy terlatih melakukan sesuatu yang tidak pernah didemonstrasikan

Behavior Cloning memperlakukan kawalan sebagai pembelajaran terselia biasa: pemerhatian masuk, sasaran sendi keluar, diselaraskan pada frame yang direkodkan oleh manusia. Ini hanya sah selagi robot kekal pada keadaan yang pernah dilalui oleh manusia itu, dan itu tidak berlaku. Gripper yang menutup empat puluh milisaat terlalu awal menolak kiub dua milimeter keluar daripada kedudukan yang didemonstrasikan. Pemerhatian seterusnya ialah sesuatu yang tiada dalam set latihan, jadi tindakan pada titik itu adalah ekstrapolasi, dan keadaan selepas itu terletak lebih jauh lagi. Taburan latihan dan taburan yang sebenarnya dihasilkan oleh policy yang telah dilatih adalah dua perkara yang berbeza, dan yang kedua semakin menjauh daripada yang pertama sepanjang episod berjalan.

Ross, Gordon dan Bagnell menerangkan tepat kegagalan reduksi ini pada tahun 2011 dan mengira kesannya: pengklasifikasi yang tersilap dengan kebarangkalian e di bawah taburan pakar boleh membuat sekitar T kuasa dua darab e kesilapan sepanjang horizon T langkah di bawah taburan yang dihasilkannya sendiri, kerana satu kesilapan menghasilkan pemerhatian yang tidak pernah dijana oleh pakar, dan kesilapan itu berkumpul. Penyelesaian mereka ialah algoritma yang menjadi tajuk halaman ini: jalankan policy semasa, kumpul label pakar untuk keadaan yang dilaluinya, gabungkan label itu dengan semua yang telah dikumpul setakat ini, latih semula, ulang. Lebih banyak demonstrasi jenis yang sama tidak membantu, kerana ia hanya mengambil sampel semula daripada taburan yang sama. Label pada keadaan yang dicapai oleh policy itu yang membantu. Varian yang dilaksanakan di sini bersifat human-gated (HG-DAgger, Kelly et al.): policy mengekalkan kawalan sehingga seseorang memutuskan ia tersasar dan mengambil alih, jadi pembetulan hanya dihasilkan di tempat yang diperlukan, dan lengan tidak sekali-kali diarah masuk ke keadaan yang tidak akan dibenarkan oleh operator.

  • Behavior Cloning hanya sah pada taburan keadaan yang menjadi asas latihannya.
  • Kesilapan ini memperkuat dirinya sendiri: sedikit sisihan menghasilkan keadaan yang tidak dikenali, yang seterusnya menghasilkan sisihan yang lebih besar.
  • Penyelesaiannya bukan lebih banyak demonstrasi, tetapi label pada keadaan yang dicapai oleh policy itu sendiri.
  • Human-gated bermaksud operator yang menentukan bila untuk campur tangan, bukan skor autonomi.

Mengapa kesilapan berkumpul

Seret horizon. Di bawah Behavior Cloning, jangkaan kos tambahan berkembang lebih kurang mengikut kuasa dua bilangan langkah, kerana setiap kesilapan menghasilkan keadaan yang tidak pernah diliputi oleh demonstrasi; gelung agregasi mengekalkan pertumbuhan itu hampir linear (Ross et al., 2011).

200
1.0 %
Behavior Cloning
400
DAgger
2.00
200×
Behavior Cloning ÷ DAgger
0.000100200300400050100150200Jangkaan kos tambahan (sempadan)
Horizon tugasan (langkah)

Lengkung ilustrasi daripada sempadan dalam Ross et al. (2011), bukan ukuran daripada robot anda. Yang penting ialah bentuknya, bukan angkanya.

Satu pusingan DAgger, enam langkah

Beginilah gelung ini sebenarnya berjalan pada platform, bukan gambar rajah skematik. Setiap langkah di bawah sepadan dengan satu kawalan dalam cockpit.

Susuri gelung ini

Enam langkah yang sama, satu demi satu, berserta apa yang berlaku pada lengan dan dalam dataset pada setiap satunya.

01

Jalankan policy dan rekod

Mulakan larian inferens terhadap checkpoint yang telah anda latih. Larian ini dirakam semasa ia berlangsung, berserta teks tugasan larian itu sendiri, supaya frame tersebut boleh digunakan sebagai data latihan selepas itu, bukan sekadar video untuk ditonton.

1 daripada 6

Apa yang diambil alih oleh platform ini daripada anda

Setiap item di sini ialah satu langkah dalam gelung yang sepatutnya anda bina dan selenggara sendiri.

Pengambilalihan tanpa leader arm

Pilih input papan kekunci atau slider semasa larian bermula, dan anda boleh membetulkan hanya dengan sebuah laptop. Nudge papan kekunci diklem di bahagian server pada dua darjah setiap sendi dan empat darjah pada gripper; sasaran slider bersifat mutlak, dan server bergerak paling banyak enam darjah ke arahnya bagi setiap panggilan. Klem ini dikuatkuasakan oleh server, bukan oleh UI, jadi kekunci yang tersekat tidak boleh menghumban lengan itu.

Dokumentasi teleoperasi

Intervensi ditanda bagi setiap frame

Setiap frame yang dirakam semasa anda memegang lengan itu membawa flag intervensi, dan lajur action membawa pose penuh yang diarahkan. Anda tidak perlu menyelenggara lajur flag secara manual atau menyelaraskannya dengan indeks frame selepas itu.

Format dataset LeRobot

Sisih: pembetulan, penilaian, atau buang

Setiap larian mendapat satu keputusan pada kad simpan. Larian pembetulan menyuap pusingan latihan seterusnya, larian penilaian kekal di luar latihan supaya ia terus menjadi ukuran yang bersih, dan larian yang buruk hilang terus dan bukannya mencemari gabungan secara senyap.

Sesi dan episod

Susun gabungan secara eksplisit

Set latihan bagi pusingan n disusun oleh anda sendiri: dataset asal ditambah pembetulan, episod dipilih mengikut sumber. Tiada percampuran automatik, tiada data simulasi tersembunyi, dan hasil gabungan itu berkelakuan seperti dataset lain.

Dataset

Sambung daripada checkpoint

Arahkan larian latihan ke checkpoint yang baru sahaja anda pandu dan bukan ke model asas, supaya setiap pusingan bermula di mana pusingan sebelumnya berhenti. Ia hanya memulakan pemberat; keadaan optimizer tidak dipulihkan, sebab itulah pusingan pertama patut dianggap sebagai ujian kebolehlaksanaan.

Latihan

GPU disewa mengikut pusingan

ACT dan SmolVLA pada 4090, Pi0 serta GR00T N1.5 atau N1.7 pada A100 dengan 80 GB. Anda mulakan satu pusingan, pod itu naik, checkpoint mendarat di bucket anda, dan anda membayar mengikut jam yang digunakan oleh pusingan itu.

Harga GPU

Rancang pusingan anda

Kadar intervensi ialah metrik kemajuan gelung ini: frame terbetul dibahagi dengan frame larian. Tetapkan titik permulaan dan seberapa banyak setiap pusingan membantu, dan lihat berapa pusingan yang diperlukan untuk sampai ke sasaran.

30 %
25 %
3 000
PusinganKadar intervensiFrame terbetul
1
30.0%
900
2
22.5%
675
3
16.9%
506
4
12.7%
380
5
9.5%
285
6
7.1%
214
Σ2 960

Ini model, bukan ramalan. Pusingan sebenar tidak sekata, dan pusingan yang tidak menggerakkan kadar itu tidak membawa apa-apa faedah; itulah isyarat yang benar-benar wajar diperhatikan.

Bina gelung sendiri berbanding jalankan di sini

Tiada satu pun daripada ini yang mustahil dilakukan secara manual. Ia soal berapa banyak malam yang habis untuk kerja perpaipan berbanding pusingan sebenar, dan ada satu baris di mana kerja tangan jelas lebih baik.

Langkah gelungSediakan sendiriDi AY-Robots
Ambil alih di tengah larianLeader arm, atau kod anda sendiri pada bus servo. Pengambilalihan papan kekunci dan slider, termasuk had selamat, adalah sesuatu yang anda tulis dan kemudian nyahpepijat pada perkakasan sebenar.Leader arm, papan kekunci, atau slider, dipilih semasa larian bermula. Klem sudut hidup dalam server.
Menandakan intervensiAnda tambah lajur flag, kekalkan ia selaras dengan indeks frame, dan semak semula setiap kali format rakaman berubah.Setiap frame yang dirakam semasa pengambilalihan ditanda secara automatik, berserta pose yang diarahkan dalam lajur action.
Menyusun larianKonvensyen direktori dan skrip shell. Freeze frame di sekeliling penyerahan perlu anda cari dan tapis sendiri.Satu keputusan bagi setiap larian pada kad simpan. Frame penyerahan kekal dalam direktori raw.
Membina dataset gabunganSkrip merge mengikut versi format. Menyelaraskan indeks episod, metadata, dan rujukan video ialah kerja yang meletihkan.Susun daripada asal ditambah pembetulan dengan pemilihan episod mengikut sumber; hasilnya ialah dataset biasa.
Mulakan pusingan seterusnya daripada policy terakhirAnda sambungkan checkpoint itu sendiri ke dalam trainer, dan anda juga boleh memulihkan keadaan optimizer jika mahukan sambungan sebenar.Satu medan untuk checkpoint asas. Hanya pemberat: dimulakan daripada checkpoint, bukan sambungan optimizer.
Kawalan ke atas gelung latihanSepenuhnya. Loss anda sendiri, jadual anda sendiri, ablasi anda sendiri, instrumentasi anda sendiri, tiada platform menghalang. Jika soalan penyelidikan itu ialah gelung latihan itu sendiri, buat secara manual.Satu laluan tetap dengan senarai policy yang ditetapkan dan hiperparameter yang didedahkan oleh borang, bukan kod bebas.

Kajian yang menjadi asas ini

Baca semua ini sebelum berhujah tentang gelung ini. Setiap pautan membawa ke halaman abstrak, bukan ke sebalik tembok bayaran.

  1. A Reduction of Imitation Learning and Structured Prediction to No-Regret Online Learning

    Stephane Ross, Geoffrey J. Gordon, J. Andrew Bagnell · 2011 · AISTATS 2011 (PMLR 15)

    Kertas asal DAgger: menyatakan masalah pengumpulan kesilapan, memberikan sempadan T-kuasa-dua bagi pendekatan terselia biasa, dan mencadangkan pengagregatan data daripada keadaan yang dilalui sendiri oleh pembelajar.

  2. HG-DAgger: Interactive Imitation Learning with Human Experts

    Michael Kelly, Chelsea Sidrane, Katherine Driggs-Campbell, Mykel J. Kochenderfer · 2019 · arXiv:1810.02890, ICRA 2019

    Varian human-gated: pakar yang menentukan bila untuk mengambil alih kawalan, bukannya ditanya tentang keadaan yang dipilih oleh policy; inilah mod yang dilaksanakan oleh platform ini.

  3. EnsembleDAgger: A Bayesian Approach to Safe Imitation Learning

    Kunal Menda, Katherine Driggs-Campbell, Mykel J. Kochenderfer · 2019 · arXiv:1807.08364, IROS 2019

    Cara lain untuk mengawal intervensi: ketidaksepakatan ensemble sebagai isyarat keyakinan bagi bila pembelajar boleh bertindak sendiri. Perbandingan yang berguna berbanding membiarkan seseorang menilainya.

  4. ThriftyDAgger: Budget-Aware Novelty and Risk Gating for Interactive Imitation Learning

    Ryan Hoque, Ashwin Balakrishna, Ellen Novoseller, Albert Wilcox, Daniel S. Brown, Ken Goldberg · 2021 · CoRL 2021

    Melayan perhatian manusia sebagai sumber yang terhad dan hanya meminta bantuan pada keadaan baharu atau berisiko, iaitu kerangka yang tepat apabila seorang sahaja mengawasi lengan itu sepanjang petang.

  5. DART: Noise Injection for Robust Imitation Learning

    Michael Laskey, Jonathan Lee, Roy Fox, Anca Dragan, Ken Goldberg · 2017 · CoRL 2017

    Alternatif yang lebih jujur: bukannya membetulkan policy secara langsung, ganggu demonstrasi supaya pakar menunjukkan cara pulih. Wajar diketahui sebelum anda komited kepada intervensi.

  6. Interactive Imitation Learning in Robotics: A Survey

    Carlos Celemin, Rodrigo Perez-Dattari, Eugenio Chisari, Giovanni Franzese, Leandro de Souza Rosa, Ravi Prakash, Zlatan Ajanovic, Marta Ferraz, Abhinav Valada, Jens Kober · 2022 · arXiv:2211.00600

    Peta bidang ini: bentuk maklum balas manusia yang wujud, antara muka yang membawanya, dan di mana kedudukan intervensi gaya DAgger antara semuanya.

  7. Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware

    Tony Z. Zhao, Vikash Kumar, Sergey Levine, Chelsea Finn · 2023 · arXiv:2304.13705

    Kertas ACT. Action chunking ialah sebab mengapa lengan yang murah boleh dipandu langsung oleh policy pembelajaran tiruan, dan ACT ialah policy paling pantas untuk menguji satu pusingan DAgger.

  8. π0: A Vision-Language-Action Flow Model for General Robot Control

    Kevin Black, Noah Brown, Danny Driess, Adnan Esmail, Michael Equi, Chelsea Finn et al. · 2024 · arXiv:2410.24164

    VLA berasaskan flow matching yang dibina atas model vision-language pralatih, dan salah satu checkpoint yang boleh anda fine-tune di sini; kertas ini menyatakan dengan jelas bahawa kemahiran baharu datang daripada fine-tuning, bukan daripada model asas semata-mata.

Soalan yang orang benar-benar tanya

Perlukah saya leader arm untuk DAgger?

Tidak. Pilih input papan kekunci atau slider semasa larian bermula, dan pengambilalihan bersifat manual sejak frame pertama, dikawal terus daripada pelayar. Leader arm lebih selesa untuk pergerakan halus, dan ia satu-satunya mod di mana lengan itu menyelaraskan dirinya sebelum menyerahkan kawalan, tetapi gelung ini tetap berjalan tanpanya.

Berapa banyak pusingan DAgger yang saya perlukan?

Tiada angka tetap yang jujur untuk ini. Perhatikan kadar intervensi: jika ia tidak menurun dari satu pusingan ke pusingan seterusnya, pusingan itu tidak membawa apa-apa faedah, dan puncanya biasanya terletak pada susunan tugasan, kamera, atau dataset asal, bukan pada bilangan pusingan.

Adakah ini DAgger sebenar atau sesuatu yang lebih longgar?

Ini ialah HG-DAgger, varian human-gated. DAgger klasik bertanya kepada pakar tentang keadaan yang dipilih oleh policy, termasuk keadaan yang tidak akan dibenarkan oleh mana-mana operator waras untuk dicapai oleh lengan sebenar. Di sini seseorang yang menentukan bila untuk campur tangan, dan hanya segmen itu yang menjadi label.

Adakah saya melatih hanya dengan pembetulan sahaja?

Tidak, dan anda tidak sepatutnya berbuat demikian. Melatih hanya dengan pembetulan menghasilkan policy yang cuma tahu cara pulih. Dataset gabungan ialah data asal ditambah pembetulan, dengan episod daripada setiap sumber dipilih secara eksplisit.

Adakah menyambung daripada checkpoint menyambung semula larian latihan itu?

Ia memulakan pemberat daripada checkpoint tersebut. Keadaan optimizer tidak dipulihkan, jadi dalam erti kata yang ketat ini bukan sambungan semula. Pada praktiknya pemberat itulah yang membawa tingkah laku yang telah dipelajari merentasi pusingan, tetapi wajar diketahui yang mana satu antara dua ini yang anda perolehi.

Bagaimana kadar intervensi dikira?

Frame yang ditanda sebagai intervensi dibahagi dengan jumlah frame larian itu. Ia dipaparkan pada status pengambilalihan, dan itulah satu-satunya nombor yang wajar dicatat bagi setiap pusingan, bersama checkpoint yang dipandu dan gabungan yang dilatih.

Policy mana yang boleh saya jalankan dengan gelung ini?

ACT, SmolVLA, Pi0, serta GR00T N1.5 atau N1.7. Gelung ini sendiri tidak bergantung kepada policy kerana ia hanya menghasilkan dataset dan checkpoint; perbezaan praktikalnya ialah berapa lama satu pusingan mengambil masa dan GPU mana yang diperlukan.

Bolehkah saya lakukan ini tanpa memiliki robot sendiri?

Anda boleh merakam dan melatih tanpa robot dengan membeli dataset di pasaran atau mengupah operator, dan anda boleh memandu SO-100 sebenar di pelayar pada halaman live. Satu pusingan DAgger berbeza; ia memerlukan lengan yang boleh anda ambil alih di tengah larian, jadi untuk gelung itu sendiri anda memerlukan perkakasan di atas meja anda sendiri.

Drive a real arm

A real SO-100, live in the browser. No signup, no hardware needed.

Jalankan pusingan pertama anda minggu ini

Pasang client, pandu checkpoint yang sudah anda ada, dan ambil alih pada kali pertama lengan itu mencapai melepasi kiub. Satu larian itu sahaja sudah menjadi satu pusingan DAgger dalam skala kecil: semua selepas itu hanyalah menyusun gabungan dan membayar jam GPU.