Jos olet kehittäjä siirtymässä datatieteeseen, tässä ovat parhaat resurssit

Näyttää siltä, ​​että kaikki haluavat olla datatieteilijöitä näinä päivinä - PhD-opiskelijoista data-analyytikoihin vanhaan yliopiston kämppiksesi, joka pitää Linkedinin lähettämässä sinulle viestiä nappaamaan kahvia.

Ehkä sinulla on ollut sama aavistus, että sinun pitäisi ainakin tutkia joitain tieteellisiä kantoja ja nähdä, mistä hype on. Ehkä olet nähnyt artikkeleita, kuten Vicki Boykisin Data Science on erilainen nyt, jossa todetaan:

Selvää on, että hype-syklin loppuvaiheessa datatiede siirtyy asymptoottisesti lähemmäs tekniikkaa, ja taitot, joita datatieteilijät tarvitsevat eteenpäin, ovat vähemmän visualisointia ja tilastopohjaisia ​​ja sopusoinnussa perinteisen tietojenkäsittelytieteen kanssa. …: Yksikkötestauksen ja jatkuvan integroinnin kaltaiset käsitteet löysivät tiensä ammattikieltä ja työkalusarjaa, jota yleisesti käyttävät ML-tekniikan parissa työskentelevät datatieteilijät ja numeeriset tutkijat.

tai twiittejä kuten Tim Hopper's:

Ei ole selvää, kuinka voit hyödyntää kokemusta ohjelmistosuunnittelijana tietojenkäsittelytieteessä. Joitakin muita kysymyksiä, joita sinulla saattaa olla, ovat:

Mitä minun pitäisi priorisoida oppiminen?

Onko datatieteilijöille erilaisia ​​käytäntöjä tai työkaluja?

Voiko nykyinen taitopaketti siirtyä tietojenkäsittelytieteen rooliin?

Tämä artikkeli tarjoaa taustan datatieteilijän roolista ja siitä, miksi taustasi saattaa sopia hyvin tietojenkäsittelyyn, sekä konkreettiset vaiheittaiset toimet, jotka voit kehittäjänä toteuttaa tietojenkäsittelyn edistämiseksi.

Haluatko nähdä uusimmat datatieteen roolit? Tilaa kahden viikon välein lähetettävä ML Jobs Newsletter uuteen tietojenkäsittelytietoon liittyvään työpaikkaan.

Data Scientist vs. Data Engineer

Ensinnäkin meidän on erotettava kaksi toisiaan täydentävää roolia: Data Scientist vs. Data Engineer. Molemmat roolit käsittelevät koneoppimismalleja, mutta niiden vuorovaikutus näiden mallien kanssa, samoin kuin datatieteilijöille ja -insinööreille asetettavat vaatimukset ja työn luonne vaihtelevat suuresti.

Huomaa: Koneoppimiseen erikoistunut Data Engineer -rooli voi ilmetä myös tehtäväkuvauksissa ohjelmistoinsinööri, koneoppiminen tai koneoppimisinsinööri.

Osana koneoppimisen työnkulkua datatieteilijä suorittaa tarvittavan tilastollisen analyysin sen määrittämiseksi, mitä koneoppimismenetelmää käytetään, ja aloittaa sitten prototyyppien muodostamisen ja näiden mallien rakentamisen.

Koneoppimisinsinöörit tekevät usein yhteistyötä datatieteilijöiden kanssa ennen tätä mallintamisprosessia ja sen jälkeen: (1) rakennetaan dataputkistoja tietojen syöttämiseksi näihin malleihin ja (2) suunnitellaan suunnittelujärjestelmä, joka palvelee näitä malleja jatkuvan mallin kunnon varmistamiseksi.

Alla oleva kaavio on yksi tapa tarkastella tätä taitojen jatkuvuutta:

Datatieteilijöiden ja tietotekniikan insinöörien välillä on paljon online-resursseja - muista tarkistaa:

  • Panoply: Mikä on ero tietotekniikan ja datatieteilijän välillä?
  • Ponnahduslauta: koneoppimisinsinööri vs datatieteilijä
  • O'Reilly: Tietotekniikka vs. datatutkijat

Vastuuvapauslausekkeena tämä artikkeli kattaa ensisijaisesti Data Scientist -roolin, jossa on jonkin verran nyökkäystä koneoppimistekniikan puolelle (erityisen tärkeä, jos tarkastelet asemaa pienemmässä yrityksessä, jossa sinun on ehkä palveltava molempina). Jos olet kiinnostunut näkemään, kuinka voit siirtyä tietotekniikkasuunnittelijaksi tai koneoppimisinsinööriksi, ilmoita siitä meille alla olevissa kommenteissa!

Etusi kehittäjänä

Kaikille vahingoksi, luokat noin koneoppimisen kuten "Johdatus Data Science in Python tai Andrew Ng: n Coursera tietenkään eivät ole kata ja parhaiden käytäntöjen ohjelmistotekniikan kuten yksikkötestaus, kirjoittaminen modulaarinen uudelleenkäytettäviä koodi, CI / CD, tai versionhallinta. Jopa edistyneimmät koneoppimisryhmät eivät vieläkään käytä näitä käytäntöjä koneoppimiskoodissaan, mikä johtaa häiritsevään suuntaukseen ...

Pete Warden kuvaili tätä suuntausta koneoppimisen uusintakriisiksi:

olemme edelleen pimeässä aikakaudessa muutosten seuraamisen ja mallien uudelleenrakentamisen alusta alkaen. Se on niin paha, että joskus tuntuu siltä, ​​että astuisimme ajassa taaksepäin, kun koodasimme ilman lähteen hallintaa.

Vaikka et välttämättä näe näitä 'ohjelmistotekniikan' taitoja nimenomaisesti mainituissa datatieteilijöiden työnkuvauksissa, näiden taitojen hyvä tuntemus osana taustasi jo auttaa kymmenkertaistamaan työtäsi tiedetieteilijänä. Lisäksi ne tulevat käyttöön, kun on aika vastata näihin ohjelmointikysymyksiin datatieteellisen haastattelun aikana.

Jossain mielessä on mielenkiintoinen näkökulma toiselta puolelta, tutustu Trey Causeyn artikkeliin ”Ohjelmistokehitystaidot datatieteilijöille”. Hän suosittelee tietojen tutkijoiden oppivan “kirjoittamaan parempaa koodia, toimimaan paremmin ohjelmistokehittäjien kanssa ja säästämään aikaa ja aikaa. päänsärky ”.

Tietojenkäsittelyn lisääminen

On hienoa, että sinulla on hyvä perusta ohjelmistotekniikan taustalla, mutta mikä on seuraava askel kohti datatieteilijää? Josh Willin kieli poskessa twiitti datatieteilijän määritelmästä on yllättävän tarkka:

Siinä vihjataan yhteen aiheista, joihin sinun pitäisi päästä kiinni, jos olet kiinnostunut jatkamaan datatieteilijän roolia tai uraa: tilastoja. Tässä seuraavassa osiossa käsitellään suuria resursseja:

  • ML-spesifisen tiedon rakentaminen
  • Rakennusteollisuuden tietämys
  • Työkalut ML-pinossa
  • Taidot ja pätevyys

ML-spesifisen tiedon rakentaminen

Tehokkain on rakentaa yhdistelmä teoriapohjaista tietoa todennäköisyyksien ja tilastojen sekä sovellettujen taitojen ympärille, kuten datan muokkaus tai grafiikkasuoritinten / hajautetun laskennan koulutusmallit.

Yksi tapa kehittää saamasi tieto on verrata sitä koneoppimisen työnkulkuun.

Katso tämä yksityiskohtainen Skymind AI: n työnkulku

Tässä luetellaan joitain parhaita resursseja, joita löydät koneoppimisesta. Olisi mahdotonta saada tyhjentävää luetteloa ja säästää tilaa (ja lukuaikaa), emme maininneet kovin suosittuja resursseja, kuten Andrew Ng: n Coursera-kurssi tai Kaggle.

Kurssit:

  • Fast.ai MOOC (ilmaiset kurssit, jotka opettavat hyvin sovellettuja taitoja käytännön syvälliseen oppimiseen koodereille, huippuluokan syvälliseen oppimiseen koodereille, laskennalliselle lineaariselle algebralle ja johdannolle koneoppimiseen koodereille)
  • Khan-akatemia
  • 3Sininen1Ruskea ja matemaattinenmonk youtube-kanava
  • Udacity-kurssit (mukaan lukien koneoppimisen esikäsittely Pythonissa)
  • Springboard AI / ML -kohtainen raita

Oppikirjat: * yritti löytää ilmaisia ​​PDF-tiedostoja verkosta useimmille näistä *

  • Todennäköinen ohjelmointi ja Bayesin menetelmät hakkereille
  • Todennäköisyys ja satunnaiset prosessit
  • Tilastollisen oppimisen elementit
  • Lineaarinen algebra tehty oikein
  • Johdanto lineaariseen algebraan
  • Algoritmin suunnittelu

Oppaat:

  • Google-kehittäjien koneoppimisopas
  • Koneoppimisen hallinnan oppaat (hyvä lähtökohta on tässä Python-koneoppimisen minikurssissa)
  • Pyimagesearch (tietokonenäkö)

Meetups: * ensisijaisesti NYC-pohjaiset *

  • Papereita, joita rakastamme
  • NYC: n tekoäly ja koneoppiminen
  • DataCouncil.ai
  • NY tekoäly
Viileä lähtökohta on tutustumalla Will Wolfin avoimen lähdekoodin koneoppimismestareihin siitä, miten voit jäsentää aikasi tutkimalla tiettyjä aiheita ja työskennellessäsi projektien parantaaksesi asiantuntemusta edullisella etäpaikalla.

Rakennetaan toimialakohtaista tietoa

Jos sinulla on käsitys siitä, että haluaisit olla tietty ala, kuten terveydenhuolto, rahoituspalvelut, kulutustavarat, vähittäiskauppa jne., On korvaamatonta päästä kiinni kyseisen alan kipupisteisiin ja kehitykseen, koska se liittyy tietoihin ja koneisiin oppiminen.

Yksi ammattivinkki = voit skannata pystysuuntaisten tekoälyn aloittelijoiden verkkosivustoja ja nähdä, kuinka he sijoittavat arvolupansa ja missä koneoppiminen tulee esiin. Tämä antaa sinulle ideoita tietyille koneoppimisen alueille ja aiheita projekteille työn esittelemiseksi.

Voimme käydä läpi esimerkin: sanotaan, että olen kiinnostunut työskentelemään terveydenhuollossa.

  1. Nopean google-haun avulla " koneoppimisen terveydenhuolto" löysin tämän luettelon Healthcareweekly.com -sivustolta aiheesta '' Parhaat terveydenhuollon aloittajat, joita voit seurata vuonna 2019 ''
Voit myös tehdä nopeita hakuja Crunchbasesta tai AngelLististä avainsanana "terveydenhuolto"

2. Otetaan esimerkkinä yksi luettelossa mainituista yrityksistä, BenevolentAI.

3. BenevolentAI: n verkkosivustolla todetaan:

Olemme tekoälyyritys, jolla on end-to-end-kyky lääkkeiden varhaisesta löytämisestä loppuvaiheen kliiniseen kehittämiseen. BenevolentAI yhdistää laskennallisen lääketieteen ja kehittyneen tekoälyn voiman avoimien järjestelmien ja pilvipalvelujen periaatteisiin muuttaakseen tapaa, jolla lääkkeet suunnitellaan, kehitetään, testataan ja tuodaan markkinoille.Rakensimme hyväntahtoisen alustan ymmärtämään paremmin sairauksia ja suunnittelemaan uusia, ja parantaa nykyisiä hoitoja suurella määrällä biolääketieteellistä tietoa. Uskomme, että teknologiamme antaa tutkijoille mahdollisuuden kehittää lääkkeitä nopeammin ja kustannustehokkaammin. Uusi tutkimuspaperi julkaistaan ​​30 sekunnin välein, mutta tutkijat käyttävät tällä hetkellä vain murto-osaa käytettävissä olevasta tiedosta sairauksien syyn ymmärtämiseksi ja uusien hoitomuotojen ehdottamiseksi. Alustamme syö,'lukee' ja kontekstualisoi suuria määriä tietoa, joka on saatu kirjoitetuista asiakirjoista, tietokannoista ja kokeellisista tuloksista. Se pystyy tekemään loputtomasti enemmän johtopäätöksiä ja johtopäätöksiä näiden erilaisten, monimutkaisten tietolähteiden välillä tunnistamalla ja luomalla suhteita, suuntauksia ja malleja, joita ihmisen on mahdotonta tehdä yksin.

4. Voit heti nähdä, että BenevolentAI käyttää luonnollista kielenkäsittelyä (NLP) ja työskentelee todennäköisesti joidenkin tietotaulukoiden kanssa, jos he tunnistavat sairauksien ja hoitotutkimuksen välisiä suhteita.

5. Jos tarkastat BenevolentAI: n urasivun, näet, että he palkkaavat koneen vanhemmalle tutkijalle. Tämä on vanhempi rooli, joten se ei ole täydellinen esimerkki, mutta katsokaa alla vaadittuja taitoja ja pätevyyksiä:

merkintä:

  • luonnollisen kielen käsittely, tietopiirien päättely, aktiivinen oppiminen ja biokemiallinen mallinnus
  • jäsennellyt ja jäsentämättömät tietolähteet
  • bayesiläinen malli lähestyy
  • tieto modernista ML-työkaluista

Tämän pitäisi antaa sinulle joitain vaiheita seuraavaan lähestymistapaan:

  • jäsenneltyjen tietojen käsittely
  • Strukturoimattomien tietojen kanssa työskentely
  • suhteiden luokittelu tietokaavioihin (katso hyvä resurssi täältä)
  • oppia bayesin todennäköisyyttä ja mallintamista
  • työskennellä NLP-projektin parissa (niin tekstidata)

Emme suosittele hakemista yrityksiin, jotka löydät haun kautta, vaan katsokaa, miten he kuvaavat asiakkaan kipupisteitä, yrityksen arvolausekkeita ja millaisia ​​taitoja he luetteloivat työnkuvissaan tutkimuksenne ohjaamiseksi.

Työkalut ML-pinossa

BenevolentAI Senior Machine Learning Researcher -tehtävän kuvauksessa he pyytävät "tietoa modernista ML-työkaluista, kuten Tensorflow, PyTorch jne."

Näiden nykyaikaisten ML-työkalujen oppiminen voi tuntua pelottavalta, koska tila muuttuu aina. Hajota oppimisprosessi hallittaviksi paloiksi muistamalla ankkuroida ajatuksesi koneoppimisen työnkulun ympärille ylhäältä - "Mikä työkalu voi auttaa minua tässä työnkulun osassa?" ?

Jos haluat nähdä, mitkä työkalut seuraavat tämän koneoppimisen työnkulun jokaista vaihetta, tutustu Roger Huangin 'Johdatus koneoppimiseen', joka kattaa työkalut, kuten Docker, Comet.ml ja dask-ml.

Taktisesti ottaen Python ja R ovat yleisimpiä tiedekäyttäjien käyttämiä ohjelmointikieliä, ja voit kohdata datatieteellisiä sovelluksia varten suunnitellut lisäpaketit, kuten NumPy ja SciPy, sekä matplotlib. Nämä kielet tulkitaan sen sijaan, että ne koottaisiin, jolloin tietojenkäsittelytieteen tutkija voi vapaasti keskittyä ongelmaan kielen vivahteiden sijaan. On syytä sijoittaa aikaopiskeluun olio-ohjelmointi ymmärtääkseen tietorakenteiden toteutus luokkina.

Jotta saisit kiinni ML-kehyksistä, kuten Tensorflow, Keras ja PyTorch, siirry heidän dokumentaatioonsa ja yritä toteuttaa opetusohjelmat päästä päähän.

Päivän lopussa haluat varmistaa, että rakennat projekteja, jotka esittelevät näitä moderneja työkaluja tiedonkeruun ja muokkaamisen, koneoppimiskokeiluhallinnan ja mallinnuksen käyttöön.

Saat inspiraatiota projekteihisi tutustumalla Edouard Harrisin kappaleeseen "Kylmäkäynnistysongelma: kuinka rakentaa koneoppimissalkkua"

Taidot ja pätevyys

Jätimme tämän osan viimeiseksi, koska siinä kootaan suuri osa edellisten osioiden tiedoista, mutta se on erityisesti suunnattu tietojenkäsittelyhaastattelujen valmisteluun. Datatieteilijän haastattelussa on kuusi pääaihetta:

  1. Koodaus
  2. Tuote
  3. SQL
  4. A / B-testaus
  5. Koneoppiminen
  6. Todennäköisyys (katso hyvä määritelmä vs. tilastot täältä)

Huomaat, että yksi näistä aiheista ei ole kuin muut (Tuote). Datatieteen kannalta viestintä teknisistä käsitteistä ja tuloksista sekä liiketoiminnan mittareista ja vaikutuksista on ratkaisevan tärkeää.

Joitakin hyödyllisiä yhdistelmiä tietojenkäsittelyhaastattelukysymyksistä: ?? https: //github.com/kojino/120-Data-Science-Interview-Questions ?? https: //github.com/iamtodor/data-science-interview-questions-and-answers ???? https://hookedondata.org/red-flags-in-data-science-interviews/ ?? https://medium.com/@XiaohanZeng/i-interviewed-at-five-top-companies-in-silicon-valley-in-five-days-and-luckily-got-five-job-offers-25178cf74e0f

Huomaat, että sisällytimme Hooked on Data -lehden Punaiset liput datatiedehaastatteluihin - haastatellessasi rooleja kohtaat yrityksiä, jotka rakentavat edelleen tietoinfrastruktuuriaan tai joilla ei ehkä ole vankkaa käsitystä siitä, miten heidän tietojenkäsittelytiiminsä sopii suuremman yrityksen arvoon.

Nämä yritykset saattavat edelleen kiivetä tätä tarpeiden hierarkiaa alla.

Joidenkin datatieteellisten haastattelujen odotusten asettamiseksi suosittelen lukemaan Tim Hopperin artikkelin '' Jotkut pohdinnat siitä, että hylätään paljon tietojenkäsittelytietoja varten ''

Kiitos lukemisesta! Toivomme, että tämä opas auttaa sinua ymmärtämään, onko datatiede uraa, jota sinun pitäisi harkita, ja kuinka aloittaa matka!

Haluatko nähdä uusimmat datatieteen roolit? Tilaa joka toinen viikko ML Jobs Newsletter uuteen tietojenkäsittelytietoon liittyvään työpaikkaan postilaatikossa:

ML Jobs Newsletter - Revue

Ilmoittaudu saadaksesi tämän joka toinen viikko kuratoitu luettelo tietojenkäsittelytieteen työpaikkojen parhaista yrityksistä. Roolit… www.getrevue.co