Was sind die Unterschiede zwischen einem "Data Scientist" und einem "Machine Learning Engineer"?
Im letzten Jahr tauchte der "Ingenieur für maschinelles Lernen" häufig in Stellenausschreibungen auf. Dies macht sich insbesondere in San Francisco bemerkbar, wo wohl der Begriff "Data Scientist" entstand. Irgendwann hat "Data Scientist" "Statistiker" überholt, und ich frage mich, ob "Data Scientist" nun langsam dasselbe passiert.
Karriereberatung wird auf dieser Website als nicht thematisch aufgeführt, aber ich betrachte meine Frage als äußerst relevant, da ich nach Definitionen frage. Ich frage nicht nach Empfehlungen in Bezug auf meine eigene Karriere oder persönliche Umstände, wie dies bei anderen Fragen außerhalb des Themas der Fall ist.
Diese Frage ist themenbezogen, da sie eines Tages erhebliche Auswirkungen auf viele Benutzer dieser Website haben kann. Tatsächlich könnte diese Stack-Exchange-Site nicht existieren, wenn die Evolution "Statistiker" vs. "Datenwissenschaftler" nicht stattgefunden hätte. In diesem Sinne ist dies eine ziemlich relevante, möglicherweise existenzielle Frage.
quelle
Data scientist
klingt wie eine Bezeichnung mit wenig Klarheit darüber, was die eigentliche Arbeit sein wird, währendmachine learning engineer
es spezifischer ist. Im ersten Fall gibt Ihnen Ihr Unternehmen ein Ziel vor und Sie müssen herausfinden, welchen Ansatz (maschinelles Lernen, Bildverarbeitung, neuronales Netzwerk, Fuzzy-Logik usw.) Sie verwenden würden. Im zweiten Fall hat Ihr Unternehmen bereits eingegrenzt, welcher Ansatz verwendet werden muss.Antworten:
Gute Frage. Tatsächlich herrscht in diesem Bereich große Verwirrung, vor allem, weil es sich bei beiden um recht neue Berufe handelt. Wenn wir uns jedoch auf die Semantik konzentrieren, wird die wahre Bedeutung der Jobs klar.
Vorher ist es besser, Äpfel mit Äpfeln zu vergleichen und über ein einziges Thema zu sprechen, die Daten. Maschinelles Lernen und sein Subgenre (Deep Learning usw.) sind nur ein Aspekt der Datenwelt, zusammen mit den statistischen Theorien, der Datenerfassung (DAQ), der Verarbeitung (die nicht maschinell gelernt werden kann), dem Interpretation der Ergebnisse usw.
Daher werde ich zur Erläuterung die Rolle des Machine Learning Engineer auf die des Data Engineer übertragen.
In der Wissenschaft geht es um Experimente, Erprobungen und Misserfolge, Theoriebildung und phänomenologisches Verständnis. Beim Engineering geht es darum, an dem zu arbeiten, was die Wissenschaft bereits weiß, es zu perfektionieren und in die "reale Welt" zu tragen.
Denken Sie an einen Proxy: Was ist der Unterschied zwischen einem Nuklearwissenschaftler und einem Nuklearingenieur?
Der Atomwissenschaftler ist derjenige, der die Wissenschaft hinter dem Atom kennt, die Wechselwirkung zwischen ihnen, derjenige, der das Rezept geschrieben hat, das es erlaubt, Energie aus den Atomen zu gewinnen.
Der Nuklearingenieur ist derjenige, der beauftragt ist, das Rezept des Wissenschaftlers in die reale Welt zu tragen. Das Wissen über die Atomphysik ist also recht begrenzt, aber er weiß auch über Materialien, Gebäude, Wirtschaft und alles, was sonst noch zum Bau einer richtigen Kernkraftanlage nützlich ist.
Zurück zur Datenwelt, hier ein weiteres Beispiel: Die Entwickler von Convolutional Neural Networks (Yann LeCun) sind Data Scientists, die das Modell zur Erkennung von Gesichtern in Bildern einsetzen, sind Machine Learning Engineer. Der Verantwortliche für den gesamten Prozess, von der Datenerfassung bis zur Registrierung des JPG-Bildes, ist ein Dateningenieur.
Im Grunde genommen sind 90% der heutigen Data Scientists tatsächlich Data Engineers oder Machine Learning Engineers, und 90% der Stellen, die als Data Scientist offen sind, brauchen tatsächlich Engineers. Ein einfacher Check: Im Interview werden Sie gefragt, wie viele ML-Modelle Sie in der Produktion eingesetzt haben, nicht wie viele Artikel zu neuen Methoden Sie veröffentlicht haben.
Wenn Sie stattdessen Ankündigungen über "Machine Learning Engineer" sehen, bedeutet dies, dass sich die Personalvermittler des Unterschieds bewusst sind und wirklich jemanden benötigen, der in der Lage ist, ein Modell in Produktion zu bringen.
quelle
Data Engineer
?Die Begriffe sind nebulös, weil sie neu sind
Da ich mich mitten in einer Jobsuche auf dem Gebiet der 'Datenwissenschaft' befinde, denke ich, dass hier zwei Dinge vor sich gehen. Erstens sind die Jobs neu, und es gibt keine festgelegten Definitionen für verschiedene Begriffe, sodass keine gemeinsame Vereinbarung über die Zuordnung von Begriffen zu Jobbeschreibungen besteht. Vergleichen Sie dies mit "Webentwickler" oder "Back-End-Entwickler". Dies sind zwei ähnliche Jobs, die einigermaßen gut vereinbart wurden und unterschiedliche Beschreibungen haben.
Zweitens wissen viele Leute, die die Stellenausschreibung und die ersten Interviews durchführen, nicht so genau, wofür sie eingestellt werden. Dies gilt insbesondere für kleine und mittlere Unternehmen, die Personalvermittler einstellen, um Bewerber für sie zu finden. Es sind diese Vermittler, die die Stellenbeschreibungen auf CareerBuilder oder in einem anderen Forum veröffentlichen. Das soll nicht heißen, dass viele von ihnen sich nicht auskennen, viele von ihnen kennen sich gut mit den Unternehmen aus, die sie vertreten, und den Anforderungen des Arbeitsplatzes. Ohne genau definierte Begriffe zur Beschreibung verschiedener spezifischer Berufe sind nebulöse Berufsbezeichnungen häufig die Folge.
Es gibt drei allgemeine Abteilungen des Feldes
Meiner Erfahrung nach gibt es drei allgemeine Bereiche des "Arbeitsplatzes" der Datenwissenschaft.
Die erste ist die Entwicklung der mathematischen und rechnerischen Techniken, die die Datenwissenschaft ermöglichen. Dies umfasst beispielsweise statistische Untersuchungen zu neuen Methoden des maschinellen Lernens, die Implementierung dieser Methoden und den Aufbau einer Computerinfrastruktur, um diese Methoden in der realen Welt anzuwenden. Dies ist die vom Kunden am weitesten entfernte Abteilung und die kleinste Abteilung. Ein Großteil dieser Arbeit wird von Wissenschaftlern oder Forschern der großen Unternehmen (Google, Facebook usw.) geleistet. Dies gilt zum Beispiel für die Entwicklung von TensorFlow von Google, für die Entwicklung von SPSS-Neuronalen Netzen von IBM oder für die nächste große Grafikdatenbank.
Die zweite Abteilung verwendet die zugrunde liegenden Tools, um anwendungsspezifische Pakete zu erstellen, um alle Datenanalysen durchzuführen, die durchgeführt werden müssen. Die Mitarbeiter werden beauftragt, Python oder R oder was auch immer zu verwenden, um Analysefunktionen für bestimmte Datensätze aufzubauen. Ein Großteil dieser Arbeit besteht meiner Erfahrung nach darin, die „Datenwäsche“ durchzuführen und Rohdaten in beliebiger Form in brauchbare Daten umzuwandeln. Ein weiterer großer Teil dieser Arbeit ist die Datenbasis; Finden Sie heraus, wie Sie die Daten so speichern können, dass auf sie in jeder Zeitachse zugegriffen werden kann, in der Sie sie benötigen. Dieser Job erfordert weniger Tools, sondern verwendet vorhandene Datenbanken, Statistiken und grafische Analysebibliotheken, um einige Ergebnisse zu erzielen.
Die dritte Abteilung erstellt Analysen aus den neu organisierten und zugänglichen Daten. Dies ist abhängig von Ihrer Organisation die kundenorientierteste Seite. Sie müssen Analysen erstellen, mit denen Führungskräfte Entscheidungen treffen können. Dies wäre die am wenigsten technische der drei Abteilungen; Viele Berufe sind zu diesem Zeitpunkt Hybriden zwischen der zweiten und dritten Abteilung, da die Datenwissenschaft noch in den Kinderschuhen steckt. Ich bin jedoch der festen Überzeugung, dass es in Zukunft eine sauberere Trennung zwischen diesen beiden Berufen geben wird, wobei die Menschen den zweiten Arbeitsplatz gewinnen, der eine Ausbildung auf der Basis von Technik, Informatik oder Statistik erfordert, und dieser dritte Arbeitsplatz nur eine allgemeine Ausbildung benötigt.
Im Allgemeinen könnten sich alle drei als "Data Scientist" bezeichnen, aber nur die ersten beiden könnten sich vernünftigerweise als "Machine Learning Engineer" bezeichnen.
Fazit
Vorerst müssen Sie selbst herausfinden, was jeder Job mit sich bringt. Mein jetziger Job stellte mich als "Analyst" ein, um maschinelles Lernen zu erlernen. Aber als wir zur Arbeit gingen, stellte sich heraus, dass die Datenbasis des Unternehmens nicht ausreichend war und dass ich jetzt wahrscheinlich 90% meiner Zeit damit verbringe, an den Datenbanken zu arbeiten. Meine Erfahrung mit maschinellem Lernen ist jetzt nur noch eine schnelle Aufgabe, indem ich alles durchsuche, was mir als am besten geeignet erscheint, und CSV-Dateien an die Analysten der dritten Abteilung schieße, um Powerpoint-Präsentationen für den Kunden zu erstellen.
Das Feld ist in Bewegung. Viele Unternehmen versuchen, ihre Prozesse um datenwissenschaftliche Entscheidungsprozesse zu erweitern, ohne jedoch genau zu wissen, was dies bedeutet. Es ist nicht ihre Schuld, es ist ziemlich schwer, die Zukunft vorherzusagen, und die Auswirkungen einer neuen Technologie sind nie sehr klar. Bis sich das Gebiet etabliert hat, werden viele Berufe selbst genauso nebulös sein wie die Ausdrücke, mit denen sie beschrieben werden.
quelle
[Vollständig eine persönliche Meinung]
Wenn der Begriff "Data Scientist" an die Stelle von "Statistician" tritt, klingt er eher cool als ein wesentlicher Unterschied. Ebenso der Begriff 'Deep Learning'. Es sind nur neuronale Netze (ein weiterer Algorithmus für maschinelles Lernen) mit ein paar weiteren Schichten. Niemand kann erklären, wann ein bestimmtes neuronales Netz als DL und nicht als ML bezeichnet werden kann, da die Definition selbst unscharf ist. So ist der Begriff "Data Scientist".
Mit der Übernahme der DevOps-Denkweise in die Datenwissenschaft durch Unternehmen entwickelte sich jedoch der Begriff ML-Ingenieur.
Wie steht DevOps zu Data Science?
Hier erstellen Sie das Modell, stellen es bereit und werden es voraussichtlich auch in der Produktion beibehalten. Dies hilft, große Reibungsverluste in Softwareteams zu vermeiden.
[PS: DevOps ist eine Art Software zu erstellen, eher eine Philosophie. Also verwirrt es mich wieder, wenn ich es als Bezeichnung verwende].
Daher sollten ML-Ingenieure die Nuancen von Systems Engineering, ML und Statistiken (offensichtlich) kennen.
Eine vage Verallgemeinerung wäre Data Engineer + Data Scientist = ML Engineer.
Allerdings werden die Bezeichnungen in diesem Bereich von Tag zu Tag vage, und der Begriff "Statistiker" wird immer relevanter (die Ironie!).
quelle
Es kann von Unternehmen zu Unternehmen unterschiedlich sein, aber Data Scientist als Bezeichnung gibt es schon seit einiger Zeit und ist normalerweise dazu gedacht, Wissen und Erkenntnisse aus Daten zu extrahieren .
Ich habe Data Scientists dabei gesehen
Die Datenwissenschaft ist jedoch eine Super-Domäne des maschinellen Lernens
Maschinell lernender Ingenieur scheint eine Bezeichnung zu sein, bei der Ihr Arbeitgeber bereits auf den eingegrenzt hat
Um mit maschinellem Lernen Wissen oder Erkenntnisse aus Daten zu gewinnen, müssen Sie Algorithmen für maschinelles Lernen entwerfen und implementieren, um diese zu liefern .
quelle
Maschinenbauingenieure und ingenieurorientierte Data Scientists sind gleich, aber nicht alle Data Scientists sind ingenieurorientiert. Vor ungefähr 5 Jahren waren fast alle Data Scientists auf das Engineering fokussiert, z. B. mussten sie Produktionscode schreiben. Jetzt gibt es jedoch viele Data Scientist-Rollen, die zum größten Teil darin bestehen, im Jupyter-Notizbuch zu spielen, Daten zu verstehen, hübsche Diagramme zu erstellen, Kunden, Managern, Analysten zu erklären ... Sie führen keine Konstruktionen durch. Und ich glaube, dass der Begriff "Machine Learning Engineers" auftauchte, um zu unterstreichen, dass dies eine technische Position ist.
quelle
TL; DR: Es kommt darauf an, wer fragt.
Die Antwort auf diese Frage hängt in hohem Maße von den Erwartungen, Kenntnissen und Erfahrungen derer ab, die gefragt werden. Eine analoge Frage mit ebenso unscharfer Antwort lautet:
Für manche Menschen, insbesondere für Menschen, die Informatik und Software-Engineering studieren oder lehren, besteht ein großer und definierter Unterschied zwischen diesen Bereichen. Für den durchschnittlichen HR-Mitarbeiter, technischen Personalvermittler oder Manager sind dies jedoch alles nur "Computerleute".
Ich liebe dieses Zitat von Vincent Granville , Hervorhebung von mir:
quelle
Maschinelles Lernen ist spezifischer und in diesem Bereich müssen Sie Folgendes beherrschen:
quelle
Ich bin mit keiner der Antworten nicht einverstanden. Ich denke jedoch, dass es eine Rolle als Data Scientist gibt, die hier in praktisch allen Antworten beschönigt wird. Die meisten dieser Antworten haben den Effekt: "Ein Ingenieur schreibt einfach das Modell und stellt es bereit." Warte eine Sekunde - in diesen beiden Schritten steckt eine Menge Arbeit!
Meine Kerndefinition eines Data Scientist ist jemand, der die wissenschaftliche Methode auf die Arbeit mit Daten anwendet. Ich denke also ständig an Hypothesen, das Entwerfen von Tests, das Sammeln meiner Daten und das Ausführen dieser Tests, das Überprüfen meiner Kreuzvalidierungsergebnisse, das Ausprobieren neuer Ansätze, das Transformieren meiner Daten usw. Im Wesentlichen geht es darum, das Modell nur zu schreiben und bereitzustellen "in einer professionellen Umgebung.
Für Ihre Antwort denke ich, dass "der Teufel im Detail steckt", weil Sie einige dieser Schritte / Begriffe nicht einfach beschönigen können. Wenn Sie auf Jobsuche sind, sollten Sie auch vorsichtig sein, da "Data Engineer" und "Data Scientist" sehr unterschiedliche Gehaltsstufen haben können - Sie möchten kein Data Scientist mit einem Gehalt als Data Engineer sein!
Ich setze mich immer als Datenwissenschaftler ein und sage Unternehmen, dass ich an Vorhersagemodellen arbeite (nicht nur an analytischen) und dass ich kein Excel-Jockey bin - ich schreibe in Programmiersprachen (R, Python usw.). Wenn Sie eine Position finden, in der Sie beides machen können, dann sind Sie auf dem Weg zum Data Scientist.
quelle