Policy தவறாகச் செயல்படும்போது கட்டுப்பாட்டைக் கையகப்படுத்தி, பிறகு அந்தத் திருத்தத்தின் மீதே பயிற்சி அளியுங்கள்.
Behavior Cloning மூலம் பயிற்சி பெற்ற policy, மனிதர் காட்டிய எடுத்துக்காட்டுகள் சென்ற நிலைகளை மட்டுமே அறியும். Policy தானாகச் சென்றடையும் நிலைகளிலிருந்து தரவு சேர்த்து DAgger அந்த இடைவெளியை நிரப்புகிறது. AY-Robots இந்த முழு சுழற்சியையும் ஒரு SO-100-இல் இயக்குகிறது: ஒரு checkpoint-ஐ ஓட்டுங்கள், ஓட்டத்தின் நடுவே கையகப்படுத்துங்கள், திருத்தப்பட்ட episode-களை வைத்திருங்கள், கலவையை compose செய்யுங்கள், பின்னர் நீங்கள் இப்போது ஓட்டிய அதே checkpoint-இலிருந்தே பயிற்சியைத் தொடருங்கள்.
- HG-DAgger, human-gated
- SO-100 / SO-101
- ACT, SmolVLA, Pi0, GR00T N1.5 / N1.7
- ஒவ்வொரு சுற்றிலும் தலையீட்டு விகிதம்
பயிற்சி பெற்ற policy ஏன் ஒருபோதும் காட்டப்படாத ஒன்றைச் செய்கிறது
Behavior Cloning கட்டுப்பாட்டை சாதாரண மேற்பார்வையிடப்பட்ட கற்றலாகவே நடத்துகிறது: கண்காணிப்பு உள்ளீடு, joint இலக்கு வெளியீடு, மனிதர் பதிவு செய்த பிரேம்களின் மீது பொருத்தப்பட்டது. இது ரோபோ மனிதர் சென்ற நிலைகளிலேயே இருக்கும் வரை மட்டுமே சரியாக வேலை செய்யும், ஆனால் அது அப்படி இருப்பதில்லை. நாற்பது மில்லிசெகண்ட் முன்னதாக மூடும் ஒரு gripper, க்யூபை அதன் காட்டப்பட்ட நிலையிலிருந்து இரண்டு மில்லிமீட்டர் தள்ளிவிடுகிறது. அடுத்த கண்காணிப்பு பயிற்சித் தொகுப்பில் இல்லாத ஒன்று, அங்குள்ள செயல் ஒரு எக்ஸ்ட்ராபோலேஷன், அதற்குப் பின் வரும் நிலை இன்னும் தூரமாகிறது. பயிற்சி விநியோகமும், பயிற்சி பெற்ற policy உண்மையில் உருவாக்கும் விநியோகமும் இரண்டு வெவ்வேறு விஷயங்கள், episode நடக்க நடக்க இரண்டாவது முதலாவதிலிருந்து மேலும் மேலும் விலகுகிறது.
Ross, Gordon மற்றும் Bagnell 2011-இல் இதே தோல்வியை விவரித்து அளவிட்டனர்: expert விநியோகத்தின் கீழ் e நிகழ்தகவுடன் தவறு செய்யும் ஒரு classifier, T படிகள் கொண்ட ஒரு horizon-இல் தான் உருவாக்கும் விநியோகத்தின் கீழ் T-இன் வர்க்கம் பெருக்கல் e அளவு தவறுகளைச் செய்யக்கூடும், ஏனெனில் ஒரு தவறு expert ஒருபோதும் உருவாக்காத கண்காணிப்புகளை உருவாக்குகிறது, தவறுகள் அப்படியே குவிந்துவிடுகின்றன. இதற்கான தீர்வே இந்தப் பக்கம் பேசும் algorithm: தற்போதைய policy-ஐ ஓட்டவும், அது சென்றடையும் நிலைகளுக்கான expert லேபிள்களைச் சேகரிக்கவும், இதுவரை சேகரித்த அனைத்துடனும் சேர்த்து ஒன்றிணைக்கவும், மீண்டும் பயிற்சி அளிக்கவும், மீண்டும் செய்யவும். இதே வகையான மேலும் எடுத்துக்காட்டுகள் உதவாது, ஏனெனில் அவை அதே விநியோகத்திலிருந்தே எடுக்கப்படுகின்றன. policy சென்றடையும் நிலைகளின் லேபிள்கள்தான் உதவும். இங்கே செயல்படுத்தப்பட்டிருக்கும் வடிவம் human-gated (HG-DAgger, Kelly et al.): ஒரு மனிதர் ஏதோ தவறாகிக்கொண்டிருக்கிறது என்று முடிவெடுத்துக் கையகப்படுத்தும் வரை policy கட்டுப்பாட்டைத் தக்க வைத்திருக்கும், இதனால் தேவைப்படும் இடங்களில் மட்டுமே திருத்தங்கள் உருவாகின்றன, ஆபரேட்டர் அனுமதிக்காத நிலைக்குள் arm ஒருபோதும் அனுப்பப்படுவதில்லை.
- Behavior Cloning எந்த நிலை விநியோகத்தில் பயிற்சி பெற்றதோ அதில் மட்டுமே செல்லுபடியாகும்.
- இந்தத் தோல்வி தானாகவே பெருகும் தன்மையது: சிறு விலகல் ஒரு அறிமுகமில்லாத நிலையை உருவாக்குகிறது, அது பெரிய விலகலை உருவாக்குகிறது.
- தீர்வு மேலும் எடுத்துக்காட்டுகள் அல்ல, policy தானே சென்றடையும் நிலைகளின் லேபிள்கள்.
- Human-gated என்றால்: எப்போது தலையிடுவது என்பதை ஆபரேட்டர் முடிவு செய்கிறார், ஒரு autonomy ஸ்கோர் அல்ல.
தவறு ஏன் குவிகிறது
Horizon-ஐ இழுத்துப் பாருங்கள். Behavior Cloning-இன் கீழ் எதிர்பார்க்கப்படும் கூடுதல் செலவு படிகளின் எண்ணிக்கையின் தோராயமாக வர்க்கத்தில் அதிகரிக்கிறது, ஏனெனில் ஒவ்வொரு தவறும் எடுத்துக்காட்டுகள் ஒருபோதும் உள்ளடக்காத நிலைகளை உருவாக்குகிறது; ஒரு aggregation சுழற்சி இந்த வளர்ச்சியை கிட்டத்தட்ட linear ஆக வைத்திருக்கிறது (Ross et al., 2011).
Ross et al. (2011)-இன் வரம்புகளிலிருந்து விளக்கப்படும் தோராயமான வளைவுகள், உங்கள் ரோபோவின் அளவீடுகள் அல்ல. இங்கு முக்கியம் வளைவின் வடிவமே, எண்கள் அல்ல.
ஆறு படிகளில் ஒரு DAgger சுற்று
இது தளத்தில் இந்தச் சுழற்சி உண்மையில் இயங்கும் விதம், ஒரு வரைபடம் அல்ல. கீழேயுள்ள ஒவ்வொரு படியும் காக்பிட்டிலுள்ள ஒரு கட்டுப்பாட்டுடன் பொருந்தும்.
சுழற்சியை படிப்படியாகப் பாருங்கள்
அதே ஆறு படிகள், ஒவ்வொன்றாக, ஒவ்வொன்றிலும் arm-இலும் தரவுத்தொகுப்பிலும் என்ன நடக்கிறது என்பதுடன்.
Policy-ஐ ஓட்டி பதிவு செய்யுங்கள்
நீங்கள் பயிற்சி அளித்த ஒரு checkpoint-க்கு எதிராக ஒரு inference ஓட்டத்தைத் தொடங்குங்கள். ஓட்டத்தின் task உரையுடன் சேர்த்து அது நடக்கும்போதே பதிவு செய்யப்படுகிறது, இதனால் பிரேம்கள் பிறகு பார்க்க மட்டும் தகுந்த ஒரு வீடியோவாக இல்லாமல், பயிற்சித் தரவாகவும் பயன்படும்.
கையகப்படுத்தி திருத்துங்கள்
"Take over" பொத்தானை arm தவறு செய்யும் தருணத்திலேயே அழுத்துங்கள். Runner நிறுத்தப்படும், arm உங்களுடையதாகிவிடும். Leader arm-உடன் அது முதலில் follower நிலைக்கு ஓட்டிச் சென்று கட்டுப்பாட்டை ஒப்படைக்கும்; ஓட்டம் தொடங்கும்போதே தேர்ந்தெடுத்த keyboard அல்லது slider உள்ளீட்டில், கையகப்படுத்தல் உடனடியாக manual ஆகிறது. இயக்கத்தைத் திருத்திய பின், கட்டுப்பாட்டை மீண்டும் policy-க்குத் திருப்பிக் கொடுங்கள். கையகப்படுத்தலின்போது பதிவான பிரேம்கள் தானாகவே intervention என்று குறிக்கப்படும்.
ஓட்டத்தை சீர்தூக்குங்கள்
ஒவ்வொரு ஓட்டமும் என்னவாக இருந்தது என்பதை முடிவு செய்யுங்கள்: அதை ஒரு திருத்தமாகச் சேமிக்கவும், ஒரு evaluation ஓட்டமாக வைத்திருக்கவும், அல்லது நிராகரிக்கவும். ஒரு handover-ஐச் சுற்றியுள்ள freeze frame-கள் raw directory-யிலேயே இருக்கும், தரவுத்தொகுப்பில் ஒருபோதும் சேராது.
திருத்த தரவுத்தொகுப்பை Sync செய்யுங்கள்
திருத்தங்கள் policy ஒன்றுக்கு ஒரு தனி திருத்த தரவுத்தொகுப்பில் சேர்கின்றன, தானியங்கு cloud sync வழியாக உங்கள் bucket-க்குச் செல்கின்றன. இந்தக் கட்டத்தில் எதுவும் எதுவுடனும் இணைக்கப்படுவதில்லை; திருத்தங்கள் தற்போதைக்கு தனியான ஒரு தரவுத்தொகுப்பு மட்டுமே.
கலவையை நீங்களே தொகுங்கள்
அடுத்த சுற்றுக்கான பயிற்சித் தொகுப்பை உருவாக்க "Compose dataset"-ஐப் பயன்படுத்துங்கள்: மூல தரவுத்தொகுப்பு மற்றும் திருத்தங்கள், ஒவ்வொரு மூலத்திற்கும் தெளிவாகத் தேர்ந்தெடுக்கப்பட்ட episode-களுடன். இதன் விளைவு sync ஆகி, வேறு எந்த தரவுத்தொகுப்பையும் போலவே பயிற்சி பெறும் ஒரு சாதாரண தரவுத்தொகுப்பு. எதுவும் மறைமுகமாகக் கலக்கப்படுவதில்லை, simulation தரவும் தானாகச் சேர்க்கப்படுவதில்லை.
Checkpoint-இலிருந்து பயிற்சியைத் தொடருங்கள்
Base model-இலிருந்து தொடங்குவதற்குப் பதிலாக, தொகுக்கப்பட்ட தரவுத்தொகுப்பை "Continue from checkpoint" மூலம் பயிற்சி அளியுங்கள், இதனால் சுற்று நீங்கள் இப்போது ஓட்டிய policy-இலிருந்தே தொடங்குகிறது. இதைத் துல்லியமாகச் சொல்ல வேண்டும்: இது அந்த checkpoint-இலிருந்து weight-களைத் தொடங்கி வைக்கிறது, அது ஒரு optimizer resume அல்ல.
தளம் உங்களிடமிருந்து எடுத்துக்கொள்வது என்ன
இங்குள்ள ஒவ்வொரு அம்சமும், இல்லையெனில் நீங்களே கட்டமைத்துப் பராமரிக்க வேண்டிய சுழற்சியின் ஒரு படி.
Leader arm இல்லாமல் கையகப்படுத்தல்
ஓட்டத்தின் தொடக்கத்தில் keyboard அல்லது slider உள்ளீட்டைத் தேர்ந்தெடுங்கள், பிறகு ஒரு laptop மட்டும் போதும் திருத்த. Keyboard nudge-கள் server-ஆல் ஒரு joint-க்கு இரண்டு டிகிரியாகவும் gripper-க்கு நான்கு டிகிரியாகவும் கடுமையாக வரம்பிடப்படுகின்றன; slider இலக்குகள் absolute ஆனவை, server ஒரு அழைப்புக்கு அதிகபட்சம் ஆறு டிகிரி மட்டுமே அவற்றை நோக்கி நகர்கிறது. இந்த வரம்புகள் UI-இல் அல்ல, server-இல் அமல்படுத்தப்படுகின்றன, எனவே சிக்கிய ஒரு விசை arm-ஐ தூக்கி வீச முடியாது.
Teleoperation ஆவணங்கள்ஒவ்வொரு பிரேமிலும் குறிக்கப்படும் தலையீடுகள்
நீங்கள் arm-ஐ வைத்திருக்கும்போது பதிவாகும் ஒவ்வொரு பிரேமும் ஒரு intervention flag-ஐச் சுமக்கிறது, action column முழு commanded pose-ஐயும் கொண்டிருக்கிறது. நீங்கள் flag column-ஐ கைமுறையாக பராமரிக்கவோ, பிறகு frame index-உடன் சீரமைக்கவோ தேவையில்லை.
LeRobot dataset வடிவம்சீர்தூக்கல்: திருத்தம், evaluation, அல்லது தூக்கியெறி
ஒவ்வொரு ஓட்டமும் save card-இல் ஒரே ஒரு முடிவைப் பெறுகிறது. திருத்த ஓட்டங்கள் அடுத்த பயிற்சி சுற்றை ஊட்டுகின்றன, evaluation ஓட்டங்கள் பயிற்சிக்கு வெளியே தங்கி ஒரு சுத்தமான அளவீடாகவே இருக்கின்றன, மோசமான ஓட்டங்கள் மறைமுகமாகக் கலவையை கெடுக்காமல் மறைந்துவிடுகின்றன.
Sessions மற்றும் episode-கள்கலவையை வெளிப்படையாகத் தொகுங்கள்
n-ஆவது சுற்றுக்கான பயிற்சித் தொகுப்பை நீங்களே கூட்டுகிறீர்கள்: மூல தரவுத்தொகுப்பு மற்றும் திருத்தங்கள், ஒவ்வொரு மூலத்திற்கும் episode-கள் தேர்ந்தெடுக்கப்படுகின்றன. தானியங்கு கலவையோ, மறைமுக simulation தரவோ இல்லை, தொகுக்கப்பட்ட விளைவு வேறு எந்த தரவுத்தொகுப்பையும் போலவே நடந்துகொள்கிறது.
தரவுத்தொகுப்புகள்ஒரு checkpoint-இலிருந்து தொடருங்கள்
Base model-க்குப் பதிலாக நீங்கள் இப்போது ஓட்டிய checkpoint-ஐ ஒரு பயிற்சி ஓட்டத்தில் சுட்டிக் காட்டுங்கள், இதனால் ஒவ்வொரு சுற்றும் முந்தையது முடிந்த இடத்திலிருந்தே தொடங்குகிறது. இது weight-களை மட்டுமே தொடங்கி வைக்கிறது; optimizer நிலை மீட்டெடுக்கப்படுவதில்லை, அதனால்தான் சுற்று ஒன்றை ஒரு feasibility சோதனையாகக் கருதுவது நல்லது.
பயிற்சிசுற்றுக்கு வாடகைக்கு எடுக்கப்படும் GPU-கள்
ACT மற்றும் SmolVLA ஒரு 4090-இல், Pi0 மற்றும் GR00T N1.5 அல்லது N1.7 80 GB கொண்ட ஒரு A100-இல். நீங்கள் ஒரு சுற்றைத் தொடங்குகிறீர்கள், pod இயங்கத் தொடங்குகிறது, checkpoint-கள் உங்கள் bucket-இல் வந்திறங்குகின்றன, சுற்று எடுத்துக்கொண்ட மணிநேரங்களுக்கு மட்டும் நீங்கள் பணம் செலுத்துகிறீர்கள்.
GPU விலைகள்சுற்றுகளைத் திட்டமிடுங்கள்
தலையீட்டு விகிதம்தான் இந்த சுழற்சியின் முன்னேற்ற அளவீடு: ஓட்டத்தின் பிரேம்களால் வகுக்கப்பட்ட திருத்தப்பட்ட பிரேம்கள். நீங்கள் தொடங்கும் இடத்தையும் ஒவ்வொரு சுற்றும் எவ்வளவு மேம்பாட்டைத் தருகிறது என்பதையும் அமைத்து, விரும்பிய இடத்தை அடைய எத்தனை சுற்றுகள் தேவை என்று பாருங்கள்.
| சுற்று | தலையீட்டு விகிதம் | திருத்தப்பட்ட பிரேம்கள் |
|---|---|---|
| 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 | |
இது ஒரு மாதிரி, முன்னறிவிப்பு அல்ல. உண்மையான சுற்றுகள் சீரற்றவை, விகிதத்தை மாற்றாத ஒரு சுற்று எதுவும் தரவில்லை என்பதே கவனிக்க வேண்டிய சமிக்ஞை.
சுழற்சியை நீங்களே கட்டுவதா, இங்கே ஓட்டுவதா
இவற்றில் எதுவும் கைமுறையாகச் செய்ய முடியாதது அல்ல. எத்தனை மாலைப் பொழுதுகள் சுற்றுகளுக்குப் பதிலாக plumbing-க்குச் செல்கின்றன என்பதே கேள்வி, ஒரு வரிசையில் மட்டும் கைமுறையே தெளிவான சிறந்த பதில்.
| சுழற்சியின் படி | கைமுறையாக அமைத்தல் | AY-Robots-இல் |
|---|---|---|
| ஓட்டத்தின் நடுவே கையகப்படுத்துதல் | ஒரு leader arm, அல்லது servo bus-இல் உங்கள் சொந்தக் குறியீடு. Keyboard, slider கையகப்படுத்தல் மற்றும் பாதுகாப்பான வரம்புகள் என்பது நீங்கள் எழுதி, பிறகு உண்மையான hardware-இல் debug செய்ய வேண்டிய ஒன்று. | ஓட்டம் தொடங்கும்போது தேர்ந்தெடுக்கப்படும் leader arm, keyboard, அல்லது slider. Angle clamp-கள் server-இல் இருக்கின்றன. |
| தலையீடுகளைக் குறித்தல் | நீங்கள் flag column-ஐச் சேர்க்கிறீர்கள், அதை frame index-உடன் சீரமைத்து வைத்திருக்கிறீர்கள், recording வடிவம் மாறும் ஒவ்வொரு முறையும் மீண்டும் சரிபார்க்கிறீர்கள். | கையகப்படுத்தலின்போது பதிவான ஒவ்வொரு பிரேமும் தானாகக் குறிக்கப்படுகிறது, commanded pose action column-இல் இருக்கும். |
| ஓட்டங்களை வரிசைப்படுத்துதல் | Directory மரபுகளும் shell script-களும். Handover-ஐச் சுற்றியுள்ள freeze frame-களை நீங்களே கண்டுபிடித்து நீக்க வேண்டும். | Save card-இல் ஒவ்வொரு ஓட்டத்திற்கும் ஒரே ஒரு முடிவு. Handover பிரேம்கள் raw directory-யிலேயே தங்கும். |
| கலந்த தரவுத்தொகுப்பைக் கட்டுதல் | ஒவ்வொரு format version-க்கும் merge script-கள். Episode index-கள், metadata, video reference-களை சீராக வைத்திருப்பதுதான் அலுப்பான பகுதி. | மூலம் மற்றும் திருத்தங்களிலிருந்து, மூலத்திற்கு ஏற்ப episode தேர்வுடன் compose செய்யுங்கள்; விளைவு ஒரு சாதாரண தரவுத்தொகுப்பு. |
| கடைசி policy-இலிருந்து அடுத்த சுற்றைத் தொடங்குதல் | நீங்களே checkpoint-ஐ trainer-இல் இணைக்கிறீர்கள், உண்மையான resume வேண்டுமெனில் optimizer நிலையையும் மீட்டெடுக்க முடியும். | Base checkpoint-க்கு ஒரே ஒரு field. Weight-கள் மட்டும்: checkpoint-இலிருந்து தொடங்கி வைக்கிறது, அது ஒரு optimizer resume அல்ல. |
| பயிற்சிச் சுழற்சியின் மீதான கட்டுப்பாடு | முழுமையானது. உங்கள் loss, உங்கள் schedule, உங்கள் ablation-கள், உங்கள் instrumentation, வழியில் எந்தத் தளமும் இல்லை. ஆராய்ச்சிக் கேள்வியே பயிற்சிச் சுழற்சி என்றால், அதைக் கைமுறையாகச் செய்யுங்கள். | Policy-களின் நிலையான பட்டியலும் படிவம் வழங்கும் hyperparameter-களும் கொண்ட ஒரு நிலையான பாதை, தன்னிச்சையான குறியீடு அல்ல. |
இதன் அடிப்படையான ஆய்வுக் கட்டுரைகள்
சுழற்சியை விமர்சிக்கும் முன் இவற்றைப் படியுங்கள். ஒவ்வொரு link-ம் abstract பக்கத்திற்குச் செல்கிறது, paywall-க்குப் பின்னால் அல்ல.
- 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)
அசல் DAgger paper: compounding-error பிரச்சினையை விளக்கி, சாதாரண மேற்பார்வையிடப்பட்ட அணுகுமுறைக்கான T-வர்க்க வரம்பைத் தந்து, learner தானே சென்றடையும் நிலைகளிலிருந்து தரவை aggregate செய்ய முன்மொழிகிறது.
- HG-DAgger: Interactive Imitation Learning with Human Experts
Michael Kelly, Chelsea Sidrane, Katherine Driggs-Campbell, Mykel J. Kochenderfer · 2019 · arXiv:1810.02890, ICRA 2019
Human-gated variant: policy தேர்ந்தெடுத்த நிலைகளைப் பற்றி expert-இடம் கேட்பதற்குப் பதிலாக, எப்போது கட்டுப்பாட்டை எடுப்பது என்பதை expert முடிவு செய்கிறார்; இதே modeதான் இந்தத் தளத்தில் செயல்படுத்தப்பட்டிருக்கிறது.
- EnsembleDAgger: A Bayesian Approach to Safe Imitation Learning
Kunal Menda, Katherine Driggs-Campbell, Mykel J. Kochenderfer · 2019 · arXiv:1807.08364, IROS 2019
தலையீடுகளை gate செய்யும் மற்றொரு வழி: learner தனியாக செயல்படலாமா என்பதற்கான confidence சிக்னலாக ensemble கருத்து வேறுபாடு. ஒரு மனிதரே தீர்மானிப்பதற்கு எதிரான பயனுள்ள ஒப்பீடு.
- 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
மனித கவனத்தையே அரிய வளமாகக் கருதி, புதிய அல்லது ஆபத்தான நிலைகளில் மட்டும் உதவி கேட்கிறது; ஒரு நபர் ஒரு முழு மதியம் arm-ஐக் கண்காணிக்கும்போது இதுவே சரியான கண்ணோட்டம்.
- DART: Noise Injection for Robust Imitation Learning
Michael Laskey, Jonathan Lee, Roy Fox, Anca Dragan, Ken Goldberg · 2017 · CoRL 2017
நேர்மையான மாற்று வழி: policy-ஐ நேரடியாகத் திருத்துவதற்குப் பதிலாக, demonstration-களையே சீர்குலைத்து expert மீட்சியைக் காட்ட வைக்கிறது. தலையீடுகளுக்குள் இறங்கும் முன் தெரிந்துகொள்ள வேண்டியது.
- 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
இந்தத் துறையின் வரைபடம்: மனித feedback-இன் எந்தெந்த வடிவங்கள் உள்ளன, அவை எந்த interface வழியாகச் செல்கின்றன, DAgger-பாணி தலையீடு அவற்றுக்கிடையே எங்கு நிற்கிறது.
- Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware
Tony Z. Zhao, Vikash Kumar, Sergey Levine, Chelsea Finn · 2023 · arXiv:2304.13705
ACT paper. Action chunking இருப்பதால்தான் ஒரு மலிவான arm-ஐ ஒரு imitation policy-ஆல் ஓட்ட முடிகிறது, ஒரு DAgger சுற்றை மிக விரைவாக iterate செய்ய ACT-தான் சிறந்த policy.
- π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
ஏற்கனவே பயிற்சி பெற்ற vision-language model-இன் மீது கட்டப்பட்ட flow-matching VLA, இங்கு fine-tune செய்யக்கூடிய checkpoint-களில் ஒன்று; புதிய திறன்கள் base model-இலிருந்து அல்ல, fine-tuning-இலிருந்தே வருகின்றன என்று paper தெளிவாகச் சொல்கிறது.
மக்கள் உண்மையில் கேட்கும் கேள்விகள்
DAgger-க்கு ஒரு leader arm தேவையா?
இல்லை. ஓட்டத்தைத் தொடங்கும்போது keyboard அல்லது slider உள்ளீட்டைத் தேர்ந்தெடுங்கள், முதல் பிரேமிலிருந்தே browser வழியாக கையகப்படுத்தல் manual ஆகிவிடும். நுட்பமான இயக்கத்திற்கு leader arm வசதியானது, arm ஒப்படைப்பதற்கு முன் தானே சீரமைத்துக் கொள்ளும் mode-ம் அதுவே, ஆனால் அதுவின்றியும் சுழற்சி இயங்கும்.
எத்தனை DAgger சுற்றுகள் தேவை?
நேர்மையான ஒரு நிலையான எண் கிடையாது. தலையீட்டு விகிதத்தைக் கவனியுங்கள்: அது ஒரு சுற்றிலிருந்து அடுத்ததற்குக் குறையவில்லை என்றால், அந்தச் சுற்று எதுவும் தரவில்லை என்று அர்த்தம்; பொதுவாகக் காரணம் சுற்றுகளின் எண்ணிக்கை அல்ல, task அமைப்பு, camera-க்கள் அல்லது மூல தரவுத்தொகுப்பே.
இது உண்மையான DAgger-ஆ அல்லது தளர்வான ஏதோ ஒன்றா?
இது HG-DAgger, human-gated variant. Classic DAgger, ஒரு நியாயமான ஆபரேட்டரும் அனுமதிக்காத நிலைகள் உட்பட, policy தேர்ந்தெடுத்த நிலைகளைப் பற்றி expert-இடம் கேட்கிறது. இங்கு எப்போது தலையிடுவது என்பதை ஒரு மனிதர் முடிவு செய்கிறார், அந்தப் பகுதிகள் மட்டுமே லேபிள்களாகின்றன.
நான் திருத்தங்களில் மட்டும்தான் பயிற்சி பெறுகிறேனா?
இல்லை, அப்படிச் செய்யவும் கூடாது. திருத்தங்களில் மட்டும் பயிற்சி பெற்றால், மீட்சி மட்டும் தெரிந்த ஒரு policy கிடைக்கும். தொகுக்கப்பட்ட தரவுத்தொகுப்பு என்பது மூல தரவும் திருத்தங்களும் சேர்ந்தது, ஒவ்வொரு மூலத்திற்கும் episode-கள் வெளிப்படையாகத் தேர்ந்தெடுக்கப்படுகின்றன.
ஒரு checkpoint-இலிருந்து தொடர்வது பயிற்சி ஓட்டத்தையே தொடர்கிறதா?
அது அந்த checkpoint-இலிருந்து weight-களைத் தொடங்கி வைக்கிறது. Optimizer நிலை மீட்டெடுக்கப்படுவதில்லை, எனவே கண்டிப்பான அர்த்தத்தில் இது ஒரு resume அல்ல. நடைமுறையில், கற்ற நடத்தையை ஒரு சுற்றின் ஊடாகச் சுமப்பது weight-கள்தான், ஆனால் இரண்டில் எதைப் பெறுகிறீர்கள் என்பதைத் தெரிந்துகொள்வது நல்லது.
தலையீட்டு விகிதம் எப்படிக் கணக்கிடப்படுகிறது?
Intervention என்று குறிக்கப்பட்ட பிரேம்கள், ஓட்டத்தின் மொத்த பிரேம்களால் வகுக்கப்படுகின்றன. இது takeover status-இல் காட்டப்படுகிறது, நீங்கள் ஓட்டிய checkpoint-உடனும் பயிற்சி பெற்ற கலவையுடனும் சேர்த்து ஒவ்வொரு சுற்றுக்கும் குறித்து வைக்க வேண்டிய ஒரே எண் இதுவே.
இந்த சுழற்சியை எந்தெந்த policy-களுடன் ஓட்ட முடியும்?
ACT, SmolVLA, Pi0, GR00T N1.5 அல்லது N1.7. இந்தச் சுழற்சி தானே policy-தொடர்பற்றது, ஏனெனில் அது தரவுத்தொகுப்புகளையும் checkpoint-களையும் மட்டுமே உருவாக்குகிறது; நடைமுறை வேறுபாடு என்பது ஒரு சுற்று எவ்வளவு நேரம் எடுக்கும், எந்த GPU தேவை என்பதே.
சொந்த ரோபோ இல்லாமல் இதைச் செய்ய முடியுமா?
Marketplace-இல் தரவுத்தொகுப்புகளை வாங்கியோ operator-களை நியமித்தோ ரோபோ இல்லாமல் பதிவு செய்யவும் பயிற்சி பெறவும் முடியும், Live பக்கத்தில் browser-இலேயே உண்மையான SO-100-ஐயும் ஓட்டலாம். ஒரு DAgger சுற்று வேறு: ஓட்டத்தின் நடுவே கையகப்படுத்தக்கூடிய ஒரு arm தேவை, எனவே சுழற்சிக்கே உங்கள் சொந்த மேசையில் hardware வேண்டும்.
A real SO-100, live in the browser. No signup, no hardware needed.
இந்த வாரமே உங்கள் முதல் சுற்றை ஓட்டுங்கள்
Client-ஐ install செய்யுங்கள், ஏற்கனவே இருக்கும் ஒரு checkpoint-ஐ ஓட்டுங்கள், arm க்யூபைத் தாண்டிச் செல்லும் முதல் தருணத்திலேயே கையகப்படுத்துங்கள். அந்த ஒரே ஓட்டமே ஒரு சிறிய DAgger சுற்று; அதற்குப் பின் வருவதெல்லாம் கலவையைத் தொகுப்பதும் GPU மணிநேரங்களுக்குப் பணம் செலுத்துவதும்தான்.