Rehellinen arvostelu Udacityn itsenäisestä autosta Nanodegree - kolmas kausi ja sen jälkeen!

TLDR: Se on ok. En todellakaan suosittele sitä. Mielestäni sisällön pitäisi olla kaksi kertaa niin paljon ja paljon parempi esitys, puoleen hintaan. Siellä on paljon ilmaista sisältöä, joka antaa paljon paremman esityksen aiheesta. Tässä on koottu luettelo kuratoiduista lähteistä.

Jos tämä artikkeli auttoi sinua jostain syystä, harkitse minulle kahvin ostamista :)Bitcoin-osoite, jos haluat lahjoittaa :)

Nyt minulle se on ohi! Mielestäni se on ok, mutta hillitse odotuksiasi.

Ensinnäkin puhun kolmesta projektista. Sitten puhun työpaikoista.

Path-Suunnittelu

Ensimmäisen projektin tavoitteena on luoda polun suunnitteluputkisto, joka suunnittelee älykkäästi, turvallisesti ja mukavasti virtuaaliautoa virtuaalisen moottoritien ympärillä muun liikenteen kanssa.

Polkujen suunnittelu ei ole yhtä suoraviivaista kuin muut projektit. Meille esitettiin monia ideoita ennusteista, etenemissuunnitelmista ja käyttäytymisen suunnittelusta, mutta jätettiin pimeään puoleen siitä, kuinka niitä todella käyttää tässä projektissa.

Syvä sininen kirja: Jos olet aina halunnut aloittaa oppimisen syvällisestä oppimisesta ilmaiseksi, olet saattanut kompastua oikeaan paikkaan! (napsauta tätä linkkiä)

Onneksi SDCND Slack -tiimi oli niin vilkas ja vilkas, että monet ihmiset jakoivat ideoitaan, lähestymistapansa ja havaintonsa. Seurauksena on, että erilaiset oppilaat keksivat erilaisia ​​tapoja ratkaista ongelma saavuttaessaan saman tavoitteen ja välttämättä hyödyntämällä oppituntien ideoita. Mielestäni tämä on mahtavaa, ja muistuttaa sitä söpöä barometritarinaa.

Olin kuitenkin pettynyt Bosch Challengen tapahtumiin. 66 jätetystä vain kuusi saatiin päätökseen, ja jostain syystä jotkut huomautukset eivät koonnut oikein. Jotkut saivat palautetta siitä, että heidän koodinsa ei koonnut tai lopettaneet kappaleen, ja toiset (minä mukaan lukien) eivät saaneet palautetta ollenkaan.

Se oli minulle hyvä, koska en pannut siihen niin paljon vaivaa. Esitetyn projektini ja muiden välillä oli vain yksi merkittävä ero: sen sijaan, että käyttäisin ajoneuvoni hetkellistä mitattua etäisyyttä kullakin kaistalla olevien lähimpien ajoneuvojen kanssa, lisäturvallisuuden vuoksi käytin laskettua ”efektiivistä aukkoa”, joka lisää ylimääräisen etäisyyden ajoneuvon nykyinen nopeus ja oletettu viive. Tein myös joitain parametrien hienosäätöjä ja muutoksia kustannuslaskentaan. Tunnen kuitenkin olevani huono muille opiskelijoille.

valinnainen

Valittajia oli kaksi: semanttinen segmentointi ja toiminnallinen turvallisuus. Toiminnallinen turvallisuus on mielenkiintoista, mutta valitsin semanttisen segmentoinnin, koska se on koodausprojekti. Toiminnallinen turvallisuusprojekti koostui asiakirjan kirjoittamisesta.

Joka tapauksessa olen oppinut toiminnallisen turvallisuuden käsitteestä sekä toiminnallisista turvallisuuskehyksistä varmistaakseen, että ajoneuvo on turvallinen sekä järjestelmä- että komponentti tasolla. Semanttiseen segmentointiin oli tarkoitus käyttää FCN (Fully-Convolutional Network) -käsikirjoitusta teiden pikselien merkitsemiseen kuvissa.

Tämän projektin suorittamiseksi luin verkossa joitain lisämateriaaleja. Ollakseni rehellinen, vaikka olen lukenut niin paljon, ymmärrän silti vain FCN: t pinnallisella tasolla. Jos olet taipuvainen, tässä on resursseja, joista pidin eniten hyötyä:

TensorFlow-kertaus: TensorFlow-opetusohjelma, kuvan luokituksen CNN, TensorFlow-kärki

Semanttisen segmentoinnin käsitteet: Semanttinen segmentointi vuonna 2017, Transposition Convolution TensorFlowissa, Stanford-luokan video semanttisesta segmentoinnista, Aktuaali kirja semanttisesta segmentoinnista

Transposition Convolution: Opas konvoluutioaritmeetiaan, Theano: Transposition Convolution, Transvolution Convolution Animations

Tätä projektia varten meille annettiin mallikoodi ja meidän piti vain täyttää tarvittavat osat. Minusta tuntuu, että minulla ei ole hyviä mahdollisuuksia kommentoida koodirakennetta, koska en ole tehnyt niin paljon TensorFlow-ohjelmalla. Mutta jotkut ihmiset, jotka ovat koodaaneet todella pitkään, mainitsivat, että kyseisen projektin malli olisi voinut kirjoittaa paremmin.

Järjestelmäintegraatiohanke

Rakastin eniten tässä projektissa sitä, että se oli tiimiprojekti. Aluksi olin hieman huolestunut siitä, että ajattelin, että kukaan ei haluaisi olla joukkuetoverini.

Olin innoissani, kun Lukasz kutsui minut liittymään joukkueeseensa, Kung-Fu-Panda Automotive -yritykseen. Olin innostunut työskentelemään ihmisten kanssa eri maista ja eri elämänaloilta. Minä Filippiineiltä, ​​Lukasz Sveitsistä, Kostas Kreikasta, Maurice Saksasta ja Alexey Lontoosta (Aleksei lähti, koska hänellä oli tuolloin henkilökohtaisia ​​asioita hoitaakseen, ja lopulta johti omaa joukkuetta.)

Onni, että päädyin intohimoiseen ryhmään, joka oli täynnä jäseniä, joiden kanssa työskentelin hauskaa. Meillä ei ollut ongelmia, joita muilla ryhmillä oli, kuten jäsenet, jotka eivät vastanneet, väitteitä ja ristiriitoja.

Lainaan joukkuetoverini Kostasia, koska meillä on samanlainen suhtautuminen tähän viimeiseen projektiin (hän ​​kirjoitti tämän artikkelin), ja mielestäni hän ei olisi voinut sanoa sitä paremmin:

”Valitettavasti osana ensimmäistä ryhmää tämä projekti ei ole niin mielenkiintoinen kuin se voisi olla. Jokaisen viiden (5) hengen joukkueen on puututtava kahteen perusongelmaan (a) ohjelmoitava auton ohjain (b) tunnistettava liikennevalot ja saatava auto pysähtymään ennalta määritettyihin paikkoihin. Juuri se. Ei anturien sulautumista, ei muita autoja, ei polun suunnittelua. Se tuntuu rajoitetulta viiden joukkueelle. Toivottavasti se saattaa muuttua nanotason tulevaisuuden iteraatioissa.
Vaikein osa tässä projektissa oli tosiasiassa eritelmän puute ja jatkuva arvaaminen, koska voimme testata koodiamme simulaattorissa, mutta auton tekniset tiedot eivät ole täysin määritettyjä. Esimerkiksi, meitä pyydetään toimittamaan kaasuprosentti prosentteina, mutta emme tiedä, mitä kaasulämpötila 1.0 (100%) vastaa. Normaalisti, kun painat kaasua kokonaan alas autossa, käsket moottoria toimittamaan kaikki käytettävissä olevat vääntömomentit vetopyörille, mutta tämä arvo riippuu nykyisestä nopeudesta, muutoksesta, kierrosluvusta ja ehkä useammista arvoista. Meillä ei ole vihjeitä auton käyttäytymiselle, ja jokainen joukkue yrittää puuttua ongelmaan sen sijaan, että meillä olisi selkeät tiedot. ”- Kostas Oreopolous

Joten sinulla on SDC-työ nyt?

Okei, lopeta ensin - minulla on paniikkikohtaus!

Työn saaminen tällä alalla ei ole niin helppoa, etenkin Filippiineiltä. Mutta tietenkin, se on mahdollista, kuten tämä intialainen nainen juuri teki. Ole kuitenkin varovainen selviytymisaktiivisuuden suhteen.

Sain vaikkakin kutsuja töihin, mutta yksikään heistä ei ollut halukas tukemaan viisumiani. En myöskään ole käyttänyt (en aio käyttää) energiaa etsimään SDC-työtä pian. Selitän miksi myöhemmin.

Jos kirjaudut SDCND: hen toivoen laskevansa 100 000 dollarin palkan (varsinkin jos et ole Yhdysvalloista tai Euroopasta), valmistaudu olemaan vakavasti pettynyt. Jos kuitenkin ilmoittautuminen tapahtuu, koska olet todella kiinnostunut tästä kentästä, sinulla on hyvät mahdollisuudet pidä siitä.

Joten miten saat työpaikan SDC: ssä? Mielestäni luokittelen SDC-työt yleensä kolmeen päätyyppiin:

  • Havainto ja koneoppimisjutut
  • Hardcore-ohjelmistosuunnittelu
  • Tutkimus- ja kehitystyö

Tämä ei tietenkään tarkoita, että SDC-työpaikkoja ei ole muun tyyppisiä, kuten mekaanikko- tai elektroniikkainsinöörejä. Ainoa, että aiemmin mainitsemani tyyppiset työpaikat ovat niitä, joita näen yleisesti SDC: n työkuvauksissa. En usko, että työpaikan saaminen jollain näistä kolmesta pääalueesta vaatii ilmoittautumista Udacityyn;).

Puhutaanko näistä alueista hiukan enemmän.

Havainto ja koneoppiminen

Itse ajava auto vaatii auton ymmärtämään ympäristönsä päätöksentekoa varten. Ihmiskuljettajat pitävät tätä itsestään selvänä, mutta itse ajavat yritykset parantavat edelleen matkustajien turvallisuutta.

Mielestäni kutsun tätä "George Sung Poluksi". Hän otti myös SDCND: n ja lopulta hänestä tuli itse ajava autojen koneoppimisinsinööri BMW: ssä.

Jos haluat mennä tällä tiellä, sinun tulisi oppia TensorFlow. Ja sitten lopulta soveltaa opittua omassa avoimen lähdekoodin projektissa ja / tai osallistua Kaggle-kilpailuihin.

”Suuri osa haastattelusta käytettiin myös keskusteluihin aikaisemmista syvän oppimisen ja tietokonevisioprojekteistani - motivaatioistani, läpi käymästäni prosessista, kuinka voisin parantaa hankkeita. Yksi toistuvasti esiin noussut kysymys oli “miten ylitit kurssityön vaatimukset?” Tai vastaavasti “mitkä projektisi eivät kuuluneet kurssityöhösi?”. Tärkeä ominaisuus on olla aidosti utelias aiheeseen siten, että siirryt projektivaatimusten yläpuolelle ja / tai ylität ja / tai luot omia mielenkiintoisia hankkeitasi ”- George Sung

Hardcore-ohjelmistosuunnittelu

Paysa toteaa, että yli 90% itsenäisesti ajavien autojen hakijoista tarvitsee tuntea C ++: n. Lisäksi C ++ on käännetty, erittäin suorituskykyinen kieli, joten suurin osa ajoneuvossa tosiasiallisesti kulkevasta koodista on yleensä C ++. Tutustu tähän arkistoon saadaksesi joitain C ++ -resursseja.

Ole todella, todella hyvä ja oppi C ++: n vivahteita ja varaudu koodaushaastatteluun. Mielestäni tämä on ”Googley as Heck Path”. Tietorakenteilla ja algoritmeilla on oltava todella vakaa perusta.

Majoittajalta Paysa

Tutkimus- ja kehitystyö

Tämä on perinteisempi polku, joka vaatii maisterin tutkinnon, mieluiten robotiikassa ja ei-neuvottelevasti hyvämaineisesta yliopistosta. Jos haluat pystyäksesi saamaan vankan käsityksen eri ideoista erittäin loistavilta ihmisiltä tekniikan ongelmien ratkaisemiseksi, tämä on polku sinulle. Ja jos haluat pystyä lisäämään huipputekniikan ja jatkuvasti kehittyvän tiedon kokonaisuutta, tämä olisi paras tapa edetä. Se on myös loistava tapa työskennellä samanhenkisten ihmisten kanssa suuressa robotiikan tutkimuslaboratoriossa lähitulevaisuudessa.

Tutustu robotiikan kurssikirjastoni täällä.

Yhteenveto

Tämä artikkeli saattaa olla hieman hodgepodge, mutta halusin vain kertoa ajatuksiani SDCND: stä ja SDC Jobsista. Kurssi oli ok kokemus. Jos kuitenkin ajattelet vain viettävänsä 2 400 dollaria dollaria toivoen saada kyseisen 100 000 dollarin palkan, sinun pitäisi todennäköisesti käyttää rahasi johonkin muuhun (katso suosituksesi yllä).

Yhteenvetona en todellakaan suosittele sitä. Mielestäni sisällön pitäisi olla kaksi kertaa niin paljon ja paljon parempi esitys, puoleen hintaan. Siellä on paljon ilmaista sisältöä, joka esittelee aihetta paljon paremmin.

Majoittajalta Paysa

Lopetan tämän artikkelin jälleen joukkuetoverini Kostasin tarjouksella:

"Melkein unohdin. Paras osa ohjelmaa ovat opiskelijat. Heillä kaikilla on sama intohimo oppimiseen, iästä tai oppimistaustasta riippumatta. Slack-kanava on kurssin paras osa. Vaihdot ideoita muiden ihmisten kanssa, autat ja sinua autetaan. Se tekee kokemuksesta sata kertaa mielenkiintoisemman tekemällä eristyksestä. ”
Jos tämä artikkeli auttoi sinua jostain syystä, harkitse minulle kahvin ostamista :)