Sensorių duomenų analizė realiuose scenarijuose
Kaip naudoti LIDAR, kamera ir radarų duomenis mokymo procesui. Praktinės patirti ir algoritmai duomenų transformavimui.
Sužinokite, kaip sistemos mokosi iš teisingų ir neteisingų sprendimų. Svarbiausi žingsniai saugiai pradėti, nuo pagrindinių sąvokų iki praktinių algoritmo pritaikymo metodų.
Autorius
Redakcinis Komandinis
NeuralDrive Labs redakcinis komandinis – skirtas skaidrioms, patikrintoms gaidoms apie autonomines transporto priemones ir jų testavimą.
Pasteprinti mokymas – tai algoritmo mokymosi metodas, kurio metu sistema gauna grįžtamąjį ryšį iš aplinkos. Automobilis atliekantis testą priima sprendimą, o po to gauna signalą apie to sprendimo kokybę. Jei sprendimas buvo geras, sistemos svoriai pritaikomi geriausioms veikoms stiprinti. Jei buvo blogas – sistemos nuomos gaunamos nuobaudos.
Šis metodas radikaliai skiriasi nuo tradicinio priežiūrimo mokymosi, kur mašina išmokstama konkrečiais pavyzdžiais. Čia nėra didelių etiketių duomenų rinkinių. Vietoje to, automobilis mokosi eksperimentiniu būdu – bandydamas, nepavykdamas ir sėkmės perimtu atgal.
Automobilis turi turėti aiškią veiksmų aibę. Tai gali būti: pasukti į kairę 5 laipsnių, greitinti 0,5 m/s², sulėtinti ir pan. Dėl sudėtingos realios aplinkos, dažniausiai naudojama diskretinė erdvė su 5-12 pagrindinių veiksmų variantų.
Sistema turi žinoti, kuriame pasaulio taške yra. Iš sensorių – LIDAR, kamera, radaro – surenkami duomenys ir transformuojami į vektorinę reprezentaciją. Tai gali būti 128 arba 256 skaičių vektorius, aprašantis aplinkos topografiją per tą momentą.
Svarbiausia dalis. Automobilį reikia priversti daryti tai, ką norite. Teisingas manevras gauna +1 tašką. Saugos pažeidimas – -10 taškų. Lėtai sėdimas – -0,1 taško per laiko vienetą. Šios nuobaudos turi būti nuoseklios ir išbaigtinės.
Algoritmas turi atminti, kad šiandieniniai sprendimai turės poveikį ateityje. Nuosmukio koeficientas (paprastai 0,95-0,99) nusako, kaip svarbios yra ateities nuobaudos. Tai užtikrina, kad automobilis neieško tik iš karto gaunamų taškų, bet ir ilgalaikiško sėkmės maršruto.
Pradžia reikalinga gerai sugalvota. Negalima tiesiog įjungti modelio ir tikėtis, kad jis savaime mokysis. Reikia tam tikrų struktūrų ir nustatymo.
Nustatyti simuliatorių – paprastai pradedama su CARLA ar SUMO. Šios sistemos leidžia greitai bandyti be realaus automobilio. Simuliacijos greitis: 10-100x greitesnis nei realus laikas, todėl valandos mokymo gali atlikti minutės.
Apibrėžti sensorių duomenis – kokius signalus automobilis gauna? LIDAR atstumai iki objektų, kamera vaizdo kadr, radaras greičiai. Dažnai pradedama su 64-ray LIDAR (64 spinduliai), kuri suteikia 64x32 tūrinę žemėlapį.
Parašyti nuobaudos funkciją – čia naudojamas Python arba panašus. Tiksliai aprašoma, ką norite: -100 jei susidūrė, +10 jei pasiekė tikslą, -0,01 jei nuo kelio. Gera nuobaudų funkcija yra labiau menas nei mokslas.
Paleisti treniravimą – naudojama DQN, PPO arba kitas algoritmas. Pirmos tūkstančio iteracijos automobilis turės absoliučią chaosą. Tai normalus reiškinys. Po 5000-10000 iteracijų turėtumėte matyti pagerėjimus.
Automobilis gali "sugalvoti" tūkstančius nerealiausių veiksmų kombinacijų, jei nuobaudos signalai nėra aiškūs. Sprendimas: pradėti su žemais nuobaudų dydžiais ir pamažu jas padidinti. Arba naudoti "exploration bonus" – papildomą tašką už naujų būsenų suradimą.
Modelis gali konverguoti į "lokalų optimumą" – jis daug kartų daro tą patį dalyką, kuris atrodo geras, bet iš tikrųjų nėra. Sprendimas: išdėstyti kelis skirtingus pradinių sąlygų scenarijus ir mokyti visus vienu metu.
Modelis, mokytas simuliatoriuje, gali visiškai nepavykti realybėje. Šios "domain gap" problema išsprendžiama naudojant "domain randomization" – atsitiktinai keičiamos sąlygos simuliatoriuje (saulės kampas, medžiagų tekstūros ir pan.).
Reikalus tūkstančių ar net milijonų simuliacijos iteracijų. Tai gali užtrukti savaitę ar ilgiau, net ir GPU naudojant. Sprendimas: naudoti kelis GPU vienu metu, arba pradėti su mažesniu modeliu ir vėliau susijungti su didesniu.
Tęskite mokymąsi apie autonomines transporto priemones
Kaip naudoti LIDAR, kamera ir radarų duomenis mokymo procesui. Praktinės patirti ir algoritmai duomenų transformavimui.
Supraskite, kaip automobilis mokosi iš teisingų ir klaidingų veiksmų. Algoritmai nuobaudų skaičiavimui.
Būtini metodai patikrinti sistemos saugumą prieš kiekvieną naują versiją. Standartai ir procedūros.
Pasteprinti mokymas yra galingas, bet sudėtingas būdas mokyti autonominius automobilius. Jei jūs pradedantis, pradėkite nuo simuliatoriaus ir paprastų scenarių. Pastebėkite, kaip algoritmas mokosi iš klaidų. Tai žavinga patirtis pamatyti, kaip sistema savaime tobulėja be griežtos programavimo.
Pagrindiniai žingsniai: nustatyti simulatorių, apibrėžti būsenų ir veiksmų erdves, parašyti nuobaudos funkciją, paleisti treniravimą. Po to – iteracinis darbas, nuobaudų pareguliarinimas, scenarių peržiūra. Realybės perėjimas reikalauja domain randomization ir realaus automobilio testų. Bet šios pagrindinės koncepcijos lieka nepakitusios.
Individualios mokymosi rezultatai skiriasi nuo žmogaus žmogui. Šis straipsnis teikia edukacinę informaciją apie pasteprinto mokymo principus. Praktinė implementacija gali reikalauti papildomų žinių, ekspertinės pagalbos ir saugos patikrinimų. Naudokite šią informaciją atsakingai, laikydamiesi visų saugos standartų ir taisyklių.