Notoj Data Scientist: kie komenci kaj ĉu necesas?

Notoj Data Scientist: kie komenci kaj ĉu necesas?

TL;DR estas afiŝo por demandoj/respondoj pri Datuma Scienco kaj kiel eniri la profesion kaj disvolvi en ĝi. En la artikolo mi analizos la bazajn principojn kaj Oftajn Demandojn kaj pretas respondi viajn specifajn demandojn - skribu en la komentoj (aŭ en privata mesaĝo), mi provos respondi ĉion ene de kelkaj tagoj.

Kun la alveno de la serio de notoj "Satanisma Dato", multaj mesaĝoj kaj komentoj venis kun demandoj pri kiel komenci kaj kie fosi, kaj hodiaŭ ni analizos la ĉefajn kapablojn kaj demandojn, kiuj aperis post la publikigadoj.

Ĉio ĉi tie deklarita ne pretendas esti la finfina vero kaj estas la subjektiva opinio de la aŭtoro. Ni rigardos la ĉefajn aferojn, kiuj ŝajnas plej gravaj en la procezo.

Kial ĝuste ĉi tio necesas?

Por ke la celo estu pli bone realigebla, por ke ĝi aspektu almenaŭ iom specifa - vi volas fariĝi DS aŭ Esploristo ĉe Facebook/Apple/Amazon/Netflix/Google - rigardu la postulojn, lingvojn kaj necesajn kapablojn. specife por kiu pozicio. Kio estas la dunga procezo? Kiel okazas tipa tago en tia rolo? Kiel aspektas la averaĝa profilo de homo, kiu laboras tie?

Ofte la ĝenerala bildo estas, ke homo ne vere komprenas kion precize li volas kaj ne estas tute klare kiel prepari por ĉi tiu neklara bildo - do indas havi almenaŭ malglatan planon pri tio, kion vi volas ĝuste.

Konkretigu la nunan celvidon

Eĉ se ĝi ŝanĝiĝas laŭ la vojo, kaj ĝenerale estas normale ŝanĝi planojn dum la teatraĵo, indas havi celon kaj koncentriĝi pri ĝi, periode taksi kaj repripensi.

Ĉu ĝi estos aŭ ĉu ĝi ankoraŭ estas grava?

Kiam vi kreskos en pozicion.

Imagu, ke antaŭ via posteno vi bezonas doktoriĝi, labori dum 2-3 jaroj en la industrio kaj ĝenerale tondi viajn harojn dum meditado en monaĥejo - ĉu la situacio kun Datuma Scienco ne estos la sama kiel iam estis ĉe ekonomikistoj kaj advokatoj? Ĉu ĉio ŝanĝiĝos preter rekono en la areo, kiun vi volas trakti?

Ĉu ne estas bona ŝanco, ke ĉiuj rapidos tien nun kaj ni vidos bildon, kie estas larĝa tavolo da homoj, kiuj provas eniri la profesion - kaj estos simple magra komenca pozicio.

Eble indas konsideri nunajn tendencojn kiam vi elektas vojon, ne nur la nunan staton de la labormerkato, sed ankaŭ vian ideon pri kiel ĝi ŝanĝiĝas kaj kie ĝi estas.

Ekzemple, la aŭtoro ne planis fariĝi satanisto, sed dum sia doktoriĝo li laboris pri triapartaj projektoj, kiuj havis fortajn kapablojn komune kun DS, kaj ĉe la fino de diplomiĝa lernejo li nature ŝanĝis al la medio, vidante bonan pozicio.

Se dum la teatraĵo montriĝos, ke estos necese moviĝi aliloken - ĉar nun estas la plej granda movado kaj okazas la tuta plej interesa agado, tiam ni moviĝos tien nature.

Kapablo-Rompiĝo

Ĉi tiuj estas kondiĉaj kategorioj de kapabloj, kiuj ŝajnas al mi ŝlosilaj por plena kaj efika laboro en DS. Mi reliefigos la anglan aparte - lernu kion ajn vi faras en CS. Poste estas la ŝlosilaj kategorioj.

Programado/Skripto

Kun kiuj lingvoj vi certe konatiĝos? Python? Javo? Ŝelo-skripto? Lua? Sql? C++?

Kion precize vi bezonas por povi fari kaj kial laŭ programado - la gamo de pozicioj ĉi tie multe varias.

Ekzemple, mi ofte devas efektivigi kompleksajn logikojn, demandojn, modelojn, analizojn, kaj ĝenerale evoluigi interpretitajn sistemojn, sed preskaŭ neniam estas postuloj por la rapideco de kodo, krom la plej ĝeneralaj kaj raciaj.

Tial mia lerteco estas tre malsama ol tiuj, kiuj skribas la bibliotekon Tensorflow kaj pensas pri optimumigo de la kodo por efika uzo de la l1-kaŝmemoro kaj similaj aferoj, do rigardu, kion vi bezonas, kaj taksu la ĝustan vojon al lernado.

Ekzemple, por python, homoj jam konsistigas mapo lingvolernado.

Certe, ekzistas jam spertaj konsiloj kaj bonaj fontoj por viaj bezonoj - vi devas decidi pri listo kaj komenci labori pri ĝi.

Kompreni komercajn procezojn

Vi ne povas iri ien sen ĝi: vi devas kompreni kial vi estas bezonata en ĉi tiu procezo, kion vi faras kaj kial. Ĉi tio ofte povas ŝpari al vi multan tempon, maksimumigi viajn avantaĝojn kaj eviti malŝpari tempon kaj rimedojn por aĉaj aferoj.

Kutime mi faras al mi jenajn demandojn:

  • Kion precize mi faras en la kompanio?
  • Kial?
  • Kiu uzos ĝin kaj kiel?
  • Kiajn eblojn mi havas?
  • Kio estas la limoj de la parametroj?

Jen iom pli da detaloj pri la parametroj: oni ofte povas multe ŝanĝi la laborscenaron, se oni scias, ke oni povas oferi ion: ekzemple, interpretebleco aŭ inverse, kelkaj procentoj ne rolos ĉi tie kaj ni havas tre rapidan. solvo, kaj la kliento bezonas ĝin, ĉar li pagas por la tempo, kiam la dukto funkcias en AWS.

Matematiko

Ĉi tie vi mem pensas kaj komprenas ĉion - sen scio pri baza matematiko vi estas nenio alia ol simioj kun granato (pardonu Hazarbaron) - do vi devas kompreni almenaŭ la bazajn aferojn. Se mi kompilus tre minimuman liston, ĝi inkludus:

  • Lineara algebro - grandega nombro da rimedoj estas facilaj por Guglo, serĉu tion, kio konvenas al vi plej bone;
  • Matematika analizo - (almenaŭ en la unuaj du semestroj);
  • Probabla teorio estas ĉie en maŝinlernado;
  • Kombinatoriko - ĝi estas fakte komplementa al la teorio;
  • Grafika teorio - almenaŭ BASIC;
  • Algoritmoj - almenaŭ por la unuaj du semestroj (vidu la rekomendojn de Cormen en lia libro);
  • Mathlogic - almenaŭ baza.

Praktika datuma analizo kaj bildigo

Unu el la plej gravaj aferoj estas povi ne timi malpurigi viajn manojn per datumoj kaj fari ampleksan analizon de la datumaro, projekto kaj krei rapidan datuman bildigon.

Esplora datuma analizo simple fariĝu io natura, kiel ĉiuj aliaj datumaj transformoj kaj la kapablo krei simplan dukton el uniksaj nodoj (vidu antaŭajn artikolojn) aŭ skribi legeblan kaj kompreneblan kajeron.

Mi ŝatus mencii vidadon: estas pli bone vidi unufoje ol aŭdi cent fojojn.

Montri grafeon al administranto estas centoble pli facila kaj klara ol aro da nombroj, do matplotlib, seaborn kaj ggplot2 estas viaj amikoj.

Molaj kapabloj

Same gravas povi komuniki viajn ideojn, kaj ankaŭ rezultojn kaj zorgojn (ktp.) al aliaj - certigu, ke vi povas klare deklari la taskon en kaj teknikaj kaj komercaj terminoj.

Vi povas klarigi al kolegoj, administrantoj, superuloj, klientoj kaj iu ajn alia, kiu bezonas ĝin, kio okazas, kiajn datumojn vi uzas kaj kiajn rezultojn vi ricevis.

Viaj leteroj kaj dokumentaro devus esti legitaj sen vi. Tio estas, vi ne bezonas iri al vi por kompreni kio estas skribita tie.

Vi povas fari klaran prezenton por transigi la punkton kaj/aŭ dokumenti la projekton/vian laboron.

Vi povas transdoni vian pozicion en rezonita kaj senemocia maniero, diri "jes/ne" aŭ pridubi/subteni decidon.

Trejnadoj

Estas multaj malsamaj lokoj kie vi povas lerni ĉion ĉi. Mi donos mallongan liston - mi provis ĉion el ĝi kaj, sincere, ĉiu objekto havas siajn avantaĝojn kaj malavantaĝojn. Provu ĝin kaj decidu kio konvenas al vi, sed mi tre rekomendas provi plurajn eblojn kaj ne blokiĝi sur unu.

  • Retaj kursoj: coursera, udacity, Edx, ktp;
  • Novaj lernejoj: interrete kaj eksterrete - SkillFactory, ShAD, MADE;
  • Klasikaj lernejoj: universitataj majstraj programoj kaj altnivelaj kursoj;
  • Projektoj - vi povas simple elekti taskojn kiuj interesas vin kaj tranĉi ilin, alŝutante ilin al github;
  • Staĝoj - estas malfacile sugesti ion ajn ĉi tie; vi devas serĉi tion, kio estas disponebla kaj trovi taŭgajn eblojn.

Ĉu necesas?

Konklude, mi verŝajne aldonos tri personajn principojn, kiujn mi mem provas sekvi.

  • Devus esti interesa;
  • Alportu internan plezuron (= almenaŭ ne kaŭzi suferon);
  • "Esti via."

Kial ili? Estas malfacile imagi fari ion ĉiutage kaj ne ĝui ĝin aŭ ne interesiĝi. Imagu, ke vi estas kuracisto kaj vi malamas komuniki kun homoj - ĉi tio, kompreneble, eble funkcias iel, sed vi estos konstante malkomforta kun la fluo de pacientoj, kiuj volas demandi al vi ion. Ĉi tio ne funkcias longtempe.

Kial mi specife menciis internan plezuron? Ŝajnas al mi, ke tio estas necesa por plua evoluo kaj principe la lernado. Mi tre ĝuas ĝin kiam mi sukcesas kompletigi iun kompleksan funkcion kaj konstrui modelon aŭ kalkuli gravan parametron. Mi ĝuas ĝin kiam mia kodo estas estetike bela kaj bone skribita. Tial lerni ion novan estas interesa kaj ne rekte postulas ajnan gravan instigon.

"Esti via" estas la sama sento, ke ĉi tio estas proksimume kion vi volis fari. Mi havas etan rakonton. Ekde infanaĝo mi interesiĝas pri rok-muziko (kaj metalo - SALMON!) kaj, kiel multaj aliaj, mi volis lerni kiel ludi kaj jen ĉio. Montriĝis, ke mi ne havis aŭdon nek voĉon - tio tute ne ĝenis min (kaj mi devas diri, ke tio ne ĝenas multajn prezentistojn ĝuste sur la scenejo), kaj kiam mi estis ankoraŭ en la lernejo mi ricevis gitaron... kaj evidentiĝis, ke mi ne tre ŝatas sidi dum horoj kaj ludi sur ĝi. Ĝi iris malfacile, ĉiam ŝajnis al mi, ke eliras ia abomenaĵo - mi tute ne ricevis plezuron de ĝi kaj nur sentis min aĉa, stulta kaj tute nekapabla. Mi laŭvorte devigis min sidiĝi por klasoj kaj ĝenerale ne estis bona manĝaĵo por la ĉevalo.

Samtempe, mi povis sufiĉe trankvile sidi dum horoj disvolvante iun ludilon, uzante skripton por animi ion per fulmo (aŭ io alia) kaj mi estis sovaĝe motivita por fini elementojn en la ludo aŭ trakti la mekanikon de movado kaj/aŭ konektante triajn bibliotekojn, kromaĵojn kaj ĉion alian.

Kaj iam mi konstatis, ke ludi la gitaron ne estas mia afero kaj ke mi tre ŝatas aŭskulti, ne ludi. Kaj miaj okuloj ekbrilis kiam mi skribis ludojn kaj kodon (aŭskultante ĉiajn metalojn en tiu momento) kaj tio estas kion mi ŝatis tiam, kaj tion mi devus esti farinta.

Ĉu vi havas aliajn demandojn?

Kompreneble, ni ne povis trarigardi ĉiujn temojn kaj demandojn, do skribu komentojn kaj PM mi - mi ĉiam ĝojas havi demandojn.

Notoj Data Scientist: kie komenci kaj ĉu necesas?

Notoj Data Scientist: kie komenci kaj ĉu necesas?

fonto: www.habr.com

Aldoni komenton