Trainingsobjecten voor imitation learning: waarom identieke kubussen beter zijn dan huishoudelijke voorwerpen

Als u identieke gekleurde houten blokjes gebruikt in plaats van willekeurige huishoudelijke voorwerpen, is uw eerste imitation-learning-dataset gemakkelijker op te nemen, consistenter en sneller te trainen, omdat de robot in elk frame dezelfde vorm en dezelfde randen ziet. Wanneer u met LeRobot een pick-and-place-policy traint op een SO-ARM101-robotarm, bepaalt de keuze van de trainingsobjecten of uw policy na 30 episodes convergeert of na 100 nog steeds faalt. Deze gids legt uit waarom consistentie in vorm, gewicht en kleur ertoe doet en welke objecten het best werken voor uw eerste dataset.

Trainingsobjecten uit deze gids, verzonden vanuit Singapore met tracking:

100 houten trainingsblokjes + tray → SO-ARM101 First Training Kit Bovencamera met bureauarm

Waarom huishoudelijke voorwerpen het trainen moeilijker maken

Willekeurige huishoudelijke voorwerpen lijken praktisch: een mok, een fles, een afstandsbediening. Ze zijn beschikbaar, gratis en representatief voor taken in de echte wereld. Maar voor uw eerste dataset brengen ze drie problemen mee waardoor policies niet leren.

Ten eerste: inconsistente vorm. Een mok heeft een gebogen handvat en een ronde rand; een fles heeft een smalle hals. Als u 30 episodes opneemt met verschillende objecten, zien de camera's van de robot 30 verschillende vormen. De policy moet dan niet alleen leren grijpen, maar ook herkennen welk object in elke episode voorkomt. Dat verdubbelt de complexiteit.

Ten tweede: gewichtsverschillen. Een volle waterfles weegt 600 gram; een lege mok weegt 150 gram. De servo's van de robot leveren voor elk object een ander koppel om het op te tillen. ACT en Diffusion Policy leren van gewrichtsposities en koppels, dus gewichtsverschillen voegen ruis toe aan de actieruimte. De policy convergeert langzamer of helemaal niet.

Ten derde: visuele ambiguïteit. Huishoudelijke voorwerpen hebben geen duidelijke randen. Een gladde plastic fles weerkaatst het licht afhankelijk van de hoek anders, en de polscamera van de robot kan niet zien waar de fles ophoudt en de achtergrond begint. Policies die op dubbelzinnige objecten zijn getraind, leren vaak het grijppunt met enkele millimeters te missen, waardoor de gripper het object omstoot in plaats van het op te pakken.

Voor uw eerste dataset wilt u alle drie de problemen wegnemen. Gebruik één object, 30 keer herhaald. Het object moet scherpe randen hebben, een constant gewicht en geen reflecterende oppervlakken.

Wat een goed trainingsobject is

Een goed trainingsobject voor imitation learning heeft vier eigenschappen: geometrische eenvoud, visueel contrast, gewichtsstabiliteit en grijpbaarheid. Houten blokjes voldoen aan alle vier.

Geometrische eenvoud betekent dat het object vlakke zijden en rechte randen heeft. De camera's van de robot detecteren randen aan de hand van gradiënten, en rechte randen leveren sterke, consistente gradiënten op. Een blokje ziet er vanuit zes hoeken hetzelfde uit. Een bol of een cilinder ziet er afhankelijk van de rotatie anders uit, wat ambiguïteit toevoegt.

Visueel contrast betekent dat het object zich van de achtergrond onderscheidt. Felgekleurde blokjes op een neutrale werkplek creëren duidelijke grenzen die het vision-model gemakkelijk detecteert. Een beige object op een houten tafel valt weg tegen de achtergrond, en de policy leert het object te zoeken in plaats van er direct naartoe te reiken.

Gewichtsstabiliteit betekent dat elk blokje evenveel weegt. Bij een pick-and-place-taak haalt een constant gewicht één variabele weg. De servo's van de robot leveren in elke episode hetzelfde koppel en de policy leert de beweging zonder te hoeven compenseren voor een onbekend gewicht.

Grijpbaarheid betekent dat het object in de gripper past en niet wegrolt. Een blokje ligt plat en beweegt niet wanneer de robot het nadert. Een bol rolt weg bij aanraking, waardoor de positie verandert tussen de nadering en de grijpactie. De policy leert dat het object onvoorspelbaar beweegt en de convergentie vertraagt.

Eigenschap Houten blokjes Huishoudelijke voorwerpen Waarom blokjes winnen
Consistente vorm Identiek Verschilt (mok vs fles) Policy ziet dezelfde randen
Consistent gewicht ±5 g ±200 g Minder koppelruis
Visueel contrast 10 kleuren, mat Vaak neutraal of glanzend Duidelijke detectie
Stabiliteit Ligt plat, rolt niet Rolt, kantelt, glijdt Vast grijppunt

De set Robot Training Props bevat 100 houten blokjes in 10 kleuren met een 10×10-tray. Elk blokje meet 2 cm en weegt ongeveer 8 gram. Gebruik voor een eerste dataset één kleur en leg het blokje elke keer op dezelfde plek.

Een dataset opnemen met identieke blokjes

Markeer de beginpositie met tape. Leg voor elke episode één blokje op de markering. Gebruik de tray om ongebruikte blokjes op te bergen en om de doelpositie te bepalen. Het raster van de tray biedt referentiepunten voor consistente plaatsing.

Wanneer u 30 episodes opneemt met identieke blokjes, ziet elk frame er vergelijkbaar uit. De polscamera ziet steeds dezelfde blokjesvorm en kleur. De bovencamera ziet steeds dezelfde beginpositie. De policy leert het bewegingspatroon zonder objectherkenning te hoeven leren.

Na 30 episodes zouden ACT of Diffusion Policy tekenen van leren moeten vertonen: de robot beweegt naar het blokje, sluit de gripper en tilt op. Is dat zo, neem dan nog 20 episodes op om de beweging te verfijnen. Is dat niet zo, controleer dan of de plaatsing van het blokje consistent is. Bekijk vijf willekeurige episodes en bevestig dat het blokje precies op dezelfde plek begint.

Voor de eerste training convergeert een dataset met blokjes van één kleur sneller dan een dataset met meerdere kleuren. Zodra u een werkende policy hebt, kunt u een tweede dataset met meerdere kleuren opnemen om de generalisatie te testen. Maar gebruik voor de eerste 30 episodes één kleur en elimineer elke variabele behalve de beweging.

De SO-ARM101 First Training Kit bundelt de Starter-armkit met de trainingsobjecten, zodat u zowel de robot als de objecten klaar hebt om op te nemen. Voor de montage van camera's, zie de bovencamera met bureauarm en de gids voor de LeRobot-camera-opstelling.

Wanneer u huishoudelijke voorwerpen gebruikt

Zodra uw eerste policy met blokjes werkt, kunt u doorstromen naar huishoudelijke voorwerpen. Op dat moment begrijpt u hoe consistente datasets zich gedragen en kunt u fouten diagnosticeren die door variatie in objecten worden veroorzaakt.

Begin met objecten die één eigenschap met blokjes delen: een klein doosje, een dominosteen, een Lego-steen. Neem 30 episodes op met één objecttype. Als de policy leert, voeg dan een tweede objecttype toe en neem nog 30 episodes op. Als dat mislukt, is het object te verschillend en hebt u meer demonstraties of een eenvoudiger object nodig.

Huishoudelijke voorwerpen werken ook voor bimanuele taken of dynamische manipulatie, waar de complexiteit in de beweging zit en niet in het object. Begin voor pick-and-place eenvoudig en voeg pas complexiteit toe nadat de basislijn werkt.

Veelgemaakte fouten met trainingsobjecten

Meerdere objecttypen in de eerste dataset versnippert de trainingsdata. Als u 10 episodes opneemt met een blokje, 10 met een fles en 10 met een mok, ziet de policy elk objecttype maar 10 keer. Tien demonstraties zijn niet genoeg om een grijppatroon te leren. Neem eerst 30 episodes van één object op.

Het object willekeurig plaatsen belet de policy het naderingspad te leren. Als het blokje in elke episode op een andere plek verschijnt, moet de policy leren het object te zoeken voordat ze het grijpt. Dat vereist 100+ episodes. Leg voor uw eerste dataset de beginpositie vast en leer de policy te bewegen, niet te zoeken.

Transparante of reflecterende objecten brengen het vision-model in de war. Heldere plastic flessen en glanzende metalen blikken weerspiegelen de achtergrond en de gripper van de robot. Het model kan het object niet van zijn omgeving scheiden. Gebruik matte, ondoorzichtige objecten met effen kleuren.

Na uw eerste dataset

Zodra uw policy betrouwbaar een blokje oppakt, probeer dan een blokje van een andere kleur. Als dat werkt, heeft de policy gegeneraliseerd over kleurwijzigingen. Als dat mislukt, was kleur onderdeel van wat ze heeft geleerd en moet u een dataset met meerdere kleuren opnemen.

Varieer vervolgens de beginpositie een beetje: verplaats het blokje 2 cm naar links, rechts, voren of achteren. Neem op elke positie vijf episodes op. Als de policy zich aanpast, heeft ze de grijpbeweging geleerd. Als ze alleen op de oorspronkelijke positie werkt, heeft ze de coördinaten uit het hoofd geleerd en hebt u meer gevarieerde demonstraties nodig.

Voor complexere taken worden huishoudelijke voorwerpen uiteindelijk noodzakelijk. Maar voor uw eerste dataset nemen identieke blokjes elk obstakel weg behalve de beweging zelf, en de beweging is wat u de policy wilt laten leren.

Voor onderdelen en trainingshulpmiddelen kunt u terecht in de collectie onderdelen en accessoires voor robotarmen. Voor de werkwijze bij het opnemen van datasets, zie de gids over het opnemen van uw eerste LeRobot-dataset.

Begin met identieke blokjes.

De set bevat 100 houten blokjes in 10 kleuren en een 10 × 10-tray.

Koop de trainingsblokjes → First Training Kit

FAQ

Kan ik Lego-stenen gebruiken in plaats van houten blokjes om te trainen?

Ja, Lego-stenen werken goed als ze even groot en even gekleurd zijn. Gebruik 2×2- of 2×4-stenen, geen platen, omdat platen voor de meeste grippers te dun zijn. De scherpe randen en consistente geometrie van Lego-stenen komen overeen met houten blokjes. Het belangrijkste voordeel van houten blokjes is het gewicht: Lego-stenen zijn lichter en kunnen verschuiven wanneer de gripper sluit, maar als uw gripper voorzichtig is, zijn Lego-stenen een gratis alternatief.

Heb ik verschillende objecten nodig voor ACT en Diffusion Policy, of werken beide met blokjes?

Zowel ACT als Diffusion Policy werken met identieke blokjes. ACT leert iets sneller op eenvoudige, consistente datasets, dus blokjes zijn ideaal voor ACT. Diffusion Policy kan meer variatie aan en profiteert van diverse objecten zodra u verder gaat dan de eerste dataset, maar convergeert ook op blokjes. Begin voor beide met blokjes; nadat u een werkende policy hebt, diversifieert u de objecten om de generalisatie te testen.

Als mijn policy leert een rood blokje op te pakken, werkt ze dan zonder opnieuw te trainen ook op een blauw blokje?

Dat hangt ervan af hoezeer het vision-model op kleur steunt. Als u alleen op rode blokjes hebt getraind, kan de policy hebben geleerd dat rood deel uitmaakt van de objectdefinitie, en dan negeert ze blauwe blokjes. Om dit te testen legt u een blauw blokje op dezelfde positie en voert u de policy uit. Als ze correct reikt maar het grijpen mist, heeft ze gegeneraliseerd. Als ze helemaal niet naar het blokje toe beweegt, heeft ze kleur als kenmerk geleerd. Om dit op te lossen neemt u een dataset met meerdere kleuren op: 30 episodes met willekeurige kleuren uit de set Training Props.

Terug naar blog