Nauči se voziti: izvan čiste imitacije

Autor Mayank Bansal i Abhijit Ogale - Waymo istraživanje

U Waymou smo fokusirani na izgradnju najiskusnijeg svjetskog vozača. Kao i svaki dobar vozač, naše vozilo mora uočiti i razumjeti svijet oko sebe prepoznajući okolne predmete i predvidjeti što bi moglo učiniti sljedeće, prije nego što odluči kako voziti sigurno, poštujući prometna pravila.

Posljednjih godina nadgledani trening dubokih neuronskih mreža pomoću velike količine označenih podataka brzo je poboljšao stanje na mnogim poljima, posebno na području percepcije i predviđanja objekata, a ove se tehnologije uvelike koriste u Waymou , Nakon uspjeha neuronskih mreža za percepciju, prirodno smo se postavili pitanje: s obzirom na to da imamo milion milja podataka o vožnji (tj. Demonstracijske vožnje demonstracija), možemo li uvježbati kvalificiranog vozača pomoću čisto nadziranog pristupa dubokog učenja?

Ovaj post - temeljen na istraživanju koje smo upravo objavili * - opisuje jedno istraživanje kako bi pomaknulo granice kako možemo upotrijebiti stručne podatke za stvaranje neuronske mreže koja ne samo da može voziti automobil u zahtjevnim situacijama u simulaciji, već je i pouzdana dovoljno za vožnju stvarnog vozila u našem privatnom ispitnom pogonu. Kao što je opisano u nastavku, jednostavna imitacija velikog broja stručnih demonstracija nije dovoljna za stvaranje sposobne i pouzdane tehnologije samovoze. Umjesto toga, otkrili smo da je korisno pokrenuti korak s dobre percepcije i kontrole kako bi se pojednostavio zadatak učenja, informirao model s dodatnim gubicima i simulirao loše, a ne samo oponašao dobro.

Stvaranje ChauffeurNet: ponavljajuća neuronska mreža za vožnju

Da bismo vozili imitirajući stručnjaka, stvorili smo duboku ponavljajuću neuronsku mrežu (RNN) nazvanu ChauffeurNet koja je osposobljena za emitiranje putanje vožnje promatrajući prizor srednje razine scene kao ulaza. Reprezentacija na srednjoj razini ne koristi izravno neobrađene podatke senzora, čime faktorizira percepcijski zadatak, a omogućava nam kombiniranje stvarnih i simuliranih podataka radi lakšeg prijenosa učenja. Kao što je prikazano na donjoj slici, ovaj ulazni prikaz sastoji se od okoliša odozgo (odozdo) s informacijama kao što su karta, okolni objekti, stanje semafora, prošlo kretanje automobila i tako dalje na. Mreži je dodijeljena i ruta u stilu Google Maps koja ju vodi prema odredištu.

ChauffeurNet tijekom jedne iteracije prikazuje jednu točku duž budućeg puta vožnje, dok istodobno zapisuje predviđenu točku u memoriju koja se koristi tijekom sljedeće iteracije. U tom smislu, RNN nije tradicionalan, jer je memorijski model izričito izrađen. Izlazni put ChauffeurNet-a, koji se sastoji od deset budućih točaka, tada se daje regulatoru niske razine koji ga pretvara u upravljačke naredbe poput upravljanja i ubrzanja koje mu omogućuju vožnju automobilom.

Pored toga, zaposlili smo zasebnu "PerceptionRNN" glavu koja iterativno predviđa budućnost ostalih pokretnih objekata u okruženju, a ova mreža dijeli značajke s RNN-om koji predviđa našu vlastitu vožnju. Jedna od budućih mogućnosti je dublje prepletanje procesa predviđanja reakcija drugih agenata uz odabir vlastite putanje vožnje.

Predani ulazi i izlazi za pogonski model. Gornji red slijeva nadesno: Plan puta, semafori, ograničenje brzine i ruta. Donji red s lijeva na desno: trenutni okvir agenta, dinamički okviri, pozicije prošlih agenta i izlazni budući položaji agenta.ChauffeurNet ima dva unutarnja dijela, FeatureNet i AgentRNN. AgentRNN troši sliku s prikazom prošlih agentskih poza, skup značajki koje je izračunala konvolucionarna mreža

Oponašam Dobro

Trenirali smo model s primjerima ekvivalentnih približno 60 dana podataka vozačke struke, dok smo uključivali tehnike treninga kao što je prekid kretanja u prošlosti kako bi se osiguralo da mreža ne nastavlja jednostavno ekstrapolirati iz svog prethodnog kretanja i zapravo ispravno reagira na okruženje , Kao što su mnogi otkrili prije nas, uključujući ALVINN-ov projekt iz 1980-ih, čisto imitiranje stručnjaka daje model koji funkcionira bez problema, sve dok situacija ne odstupi previše od onoga što smo vidjeli u treningu. Model uči pravilno reagirati na prometne kontrole poput zaustavnih znakova i semafora. Međutim, odstupanja poput uvođenja smetnji u putanju ili stavljanja u situacije blizu sudara uzrokuju da se ponaša loše, jer čak i ako se uvježba s velikom količinom podataka, tijekom treninga nikada nije vidio takve točne situacije.

Agent obučen s čistim imitacijskim učenjem zaglavi se iza parkiranog vozila (lijevo) i ne može se oporaviti od odstupanja puta tijekom vožnje po zakrivljenoj cesti (desno). Staza sa suzama prikazuje ulazni put, žuti okvir je dinamičan objekt u sceni, zeleni okvir je agent, plave točke su agentova prošla mjesta, a zelene točke predviđene buduće pozicije.

Sintetiziranje lošeg

Stručne demonstracije vožnje dobivene iz stvarne vožnje obično sadrže samo primjere vožnje u dobrim situacijama, jer iz očiglednih razloga ne želimo da se naši stručni vozači upuste u sudare u blizini ili se popeju na ivice samo kako bi pokazali neuronskoj mreži kako se oporavlja. u tim slučajevima. Za osposobljavanje mreže da izađe iz teških mjesta, onda ima smisla simulirati ili sintetizirati odgovarajuće podatke o treningu. Jedan jednostavan način za to je dodavanje slučajeva gdje iskrivljujemo putanju vožnje od onoga što je stručnjak zapravo učinio. Uznemirenost je takva da početna i krajnja točka putanje ostaju jednaka, pri čemu se odstupanje uglavnom događa u sredini. Ovo uči neuronsku mrežu kako se oporaviti od poremećaja. I ne samo to, ove smetnje stvaraju primjere sintetskih sudara s drugim objektima ili rubnicima na cesti, a mi učimo mrežu da to izbjegava dodavanjem izričita gubitaka koji obeshrabruju takve sudare. Ovi gubici omogućuju nam da iskoristimo znanje o domenama koji će usmjeriti učenje prema boljoj generalizaciji u novim situacijama.

Uznemirenost puta povlačenjem trenutnog mjesta agensa (crvene točke) dalje od središta trake, a zatim postavljanjem nove glatke putanje koja vraća agenta do izvornog ciljanog mjesta duž središta trake.

Ovaj rad pokazuje jedan način korištenja sintetičkih podataka. Osim našeg pristupa, mogu se provesti opsežne simulacije vrlo interaktivnih ili rijetkih situacija, praćene podešavanjem politike vožnje primjenom učvršćenja učenja (RL). Međutim, provođenje RL-a zahtijeva da precizno modeliramo ponašanje u stvarnom svijetu drugih agenata u okruženju, uključujući ostala vozila, pješake i bicikliste. Iz ovog razloga smo se u ovom radu usredotočili na čisto nadzirani pristup učenju, imajući na umu da se naš model može koristiti za stvaranje "pametnih agenata" koji se ponašaju u prirodnoj mjeri za pokretanje RL-a.

Rezultati eksperimenta

Vidjeli smo kako se čisti model imitacije nije uspio zagrliti oko parkiranog vozila i zaglavio se tijekom odstupanja puta iznad. Uz puni niz sintetiziranih primjera i pomoćnih gubitaka, naš puni ChauffeurNet model sada se može uspješno zavrtjeti oko parkiranog vozila (lijevo) i oporaviti se od odstupanja putanje kako bi se nastavio nesmetano krivudavom cestom (desno).

U donjim primjerima pokazujemo odgovor ChauffeurNet-a na ispravne uzročne faktore na zabilježenim primjerima u postavci u zatvorenom krugu našeg simulatora. U lijevoj animaciji vidimo kako ChauffeurNet agent dolazi do potpunog zaustavljanja prije znaka stop (crveni marker). U pravoj animaciji uklanjamo znak za zaustavljanje s puta koji je postavljen i vidimo da agent više ne dolazi do potpunog zaustavljanja, provjeravajući da mreža reagira na ispravne uzročne faktore.

U lijevoj animaciji u nastavku vidimo da se agent ChauffeurNet zaustavlja iza drugih vozila (žute kutije), a zatim nastavlja dok se druga vozila kreću. U pravoj animaciji uklanjamo druga vozila iz prikazanog ulaza i vidimo da agent nastavlja prirodnim putem budući da na putu nema drugih objekata, provjeravajući odgovor mreže na druga vozila u sceni.

U primjeru u nastavku, agent ChauffeurNet zaustavlja se radi semafora koji prelazi iz žutog u crveno (imajte na umu promjenu intenziteta prikazivanja semafora koja je prikazana kao krivulje duž središta voznog traka), umjesto da slijepo slijedi iza drugih vozila.

Nakon testiranja u simulaciji, zamijenili smo primarne module planiranja ChauffeurNetom i koristili ga za pogon minibusa Chrysler Pacifica na našem privatnom ispitnom tragu. Ovi videozapisi prikazuju vozilo uspješno slijedi zakrivljenu traku i rukovanje znakovima zaustavljanja i skretanja.

Primjer u nastavku pokazuje predviđanja iz PerceptionRNN na zabilježenom primjeru. Podsjetimo da PerceptionRNN predviđa buduće kretanje ostalih dinamičkih objekata. Crveni tragovi označavaju prošle putanje dinamičkih objekata na sceni; zelene staze označavaju predviđene putanje dvije sekunde za budućnost, za svaki objekt.

Dugi rep, kauzalitet i cjeloživotno učenje

Potpuno autonomni sustavi vožnje moraju biti u stanju podnijeti dug rep situacija koje se događaju u stvarnom svijetu. Iako je duboko učenje postiglo značajan uspjeh u mnogim aplikacijama, rukovanje situacijama s oskudnim podacima o treningu ostaje otvoren problem. Nadalje, duboko učenje identificira korelacije u podacima o obuci, ali vjerovatno ne može graditi uzročne modele čisto promatranjem korelacija i bez mogućnosti aktivnog testiranja kontraaktivaca u simulaciji. Znajući zašto se stručni vozač ponašao onako kako rade i na šta su reagirali, presudno je za izgradnju uzročno-uspješnog modela vožnje. Iz tog razloga nije dovoljno imati samo veliki broj stručnih demonstracija koje bi mogli oponašati. Razumijevanje razloga olakšava saznanje kako poboljšati takav sustav, što je posebno važno za sigurnosno kritične aplikacije. Nadalje, ako se takva poboljšanja mogu postupno i ciljano provoditi, sustav može nastaviti učiti i usavršavati se neograničeno. Takvo kontinuirano cjeloživotno učenje je aktivno polje istraživanja u zajednici strojnog učenja.

Planer koji danas radi na Waymo vozilima koristi kombinaciju strojnog učenja i eksplicitnih razloga kako bi kontinuirano ocjenjivao veliki broj mogućnosti i donosio najbolje odluke u vožnji u raznim scenarijima, koji su bili izmamljeni preko 10 milijuna kilometara javnog ispitivanja na cestama i milijarde milja u simulaciji. Stoga je traka za potpuno strojno naučenim sustavom zamijeniti Waymo planer nevjerojatno visoka, iako se komponente takvog sustava mogu koristiti u Waymo planeru ili se mogu koristiti za stvaranje realističnijih "pametnih agenata" tijekom simuliranog testiranja planer.

Rješavanje situacija s dugim repom, razumijevanje uzročnosti i kontinuirano cjeloživotno učenje predmet su aktivnog istraživanja u Waymou, kao i u široj zajednici strojnog učenja. Uvijek tražimo da nam se pridruže talentirani istraživači dok rješavamo ove izazovne probleme u strojnom učenju, pa nam se javite na waymo.com/joinus.

Više pojedinosti o ovom radu potražite u našem radu:

* ChauffeurNet: Učenje za vožnju oponašanjem najboljih i sintetiziranjem najgoreg
Mayank Bansal, Alex Krizhevsky, Abhijit Ogale
(Dopunski materijal)