Dieser Artikel ist eine Übersetzung von Thomas Nilds Artikel
Wie es sich anfühlt,
2019 Data Science zu lernen

Vision eines (zufälligen) Waldes durch Bäume (Entscheidungen)

Thomas Nield
Folgen 4. Feb.
10 Minuten zum Lesen
Die Inspiration für das Folgende war ein Artikel darüber,
wie es sich anfühlt, 2016 JavaScript zu lernen. Nehmen Sie diesen Artikel nicht zu ernst. Das ist Satire, also behandele sie nicht als Lebensratgeber. Wie alle Tipps sind einige von ihnen nützlich und einige sind dumm. Dieser Text ist nur eine Meinung, die der Definition von Data Science sehr ähnlich ist.
Ich habe das um Rat gefragt - für Sie. Danke, dass du mich getroffen hast und danke für den Kaffee. Sie kennen sich mit Data Science aus, oder?
Nun ja, ich weiß. Letztes Jahr war ich bei PyData und O'Reilly Strata (Konferenzen zur Datenanalyse - ca. per.) Und in meinem Konto gibt es ein paar Modelle.
Ja, ich habe gehört, dass Sie letzte Woche eine großartige Präsentation zum maschinellen Lernen für unser Unternehmen gehalten haben. Mein Kollege sagte, es sei sehr hilfreich.
Oh, Foto-Klassifikator für Hunde und Katzen? Ja danke.
Kurz gesagt, ich entschied, dass ich Data Science , künstliche Intelligenz und maschinelles Lernen nicht länger ignorieren kann . Ich habe viele Jahre als Analyst und Berater gearbeitet, Zahlen in Excel neu geordnet und Pivot-Tabellen und -Diagramme erstellt. Aber die ganze Zeit stoße ich auf Artikel, die besagen, dass KI auch für solche Angestellten wie mich Jobs annehmen wird.

Das ist alles, was man braucht, um ein selbstbewusster Datenwissenschaftler zu werden (Stand 2013). Ganz erreichbar, oder? ( Quelle: Swami Chandrasekaran )
Ich habe gegoogelt, wie man ein Wissenschaftler-Date wird, diesen „Plan“ gefunden und etwas über die Existenzkrise gelernt. Lassen Sie mich fragen, muss ich wirklich alles in diesem Diagramm beherrschen, um ein Wissenschaftler-Date zu werden?
Ich werde kurz antworten - nein. Niemand anderes benutzt diesen Plan. Er ist 2013. Es hat nicht einmal TensorFlow und einige Pfade können einfach durchgestrichen werden. Ich denke, dass die „Data Science“ bereits zu dieser Zeit komplexer und spezialisierter wurde. Es wäre besser, einen anderen Ansatz zu verwenden.
Okay, ein bisschen besser. Soll ich also trotzdem wieder zur Schule gehen? Ich habe irgendwo gelesen, dass viele Datumswissenschaftler mindestens einen Master-Abschluss haben. Soll ich einen Master in Data Science machen?
Herr, warum brauchst du das? Sie sollten im Allgemeinen mit den Bereichen der Ausbildung "Data Science", die im Großen und Ganzen neu gestaltete Kurse "Business Analytics" vorsichtig sein. Darüber hinaus bleiben moderne Akademiker in der Regel hinter der Branche zurück und können veraltete Technologien lehren. Um auf dem Laufenden zu bleiben, lernst du besser bei Coursera, Stepik oder Khan Academy.
So.
Obwohl, wenn Sie aufs College gehen, dann vielleicht zu physikalischen oder mathematischen Methoden der Forschungsoperationen? Schwer zu sagen. Seltsamerweise kommen viele gute Wissenschaftler, die ich kenne, aus diesen Gebieten. Möglicherweise finden Sie ein gutes Schulungsprogramm für Data Science. Ich weiß nicht, sprechen Sie mit diesem Doktor der Wissenschaften, er wird Ihnen seine Position mitteilen.
Wie fängst du an, dich selbständig zu machen? Jemand auf LinkedIn sagte, dass diejenigen, die sich für Data Science interessieren, sich zunächst mit Linux befassen sollten. Dann las ich auf Twitter, dass ein anderer Typ darauf bestand, dass die Wissenschaftler Scala studieren sollten, nicht Python oder R.
Nun, dieser Typ ist auf LinkedIn eingefroren. Was den "Experten" von Scala betrifft, wenn Sie kopfüber tauchen, dann bitte, aber nicht in diesem Pool. Vertrau mir. Bereits 2019 im Hof. Scala ist schon lange nicht mehr in der Data Science-Community vertreten. Und wenn es so wäre, wäre PySpark nicht aufgetaucht. Und höre auf keinen Fall auf Hipster wie den Typen, der immer über Kotlin spricht.
Ok Was ist mit R? Es scheint, als ob die Leute es mögen.
R ist gut in der mathematischen Modellierung und sonst nichts. Mit Python machen Sie viel mehr aus Ihren Schulungsinvestitionen und können eine größere Bandbreite von Aufgaben ausführen, z. B. das Sammeln von Daten und das Einrichten von Webdiensten.
Aber R hat immer noch einen hohen Stellenwert in Tiobe , und er hat Unmengen von Anhängern und Ressourcen. Verwenden Sie es - sich selbst schaden?
Schauen Sie, Sie können R verwenden. Wenn Sie sich nur für Mathematik interessieren, ist es natürlich umstritten, aber besser, aber noch besser funktioniert es mit Tidyverse . Aber Data Science ist noch viel mehr als Mathematik und Statistik. Glauben Sie mir, in Python im Jahr 2019 können Sie noch viel weiter gehen.
Ok, also ... Anscheinend fange ich an, Python zu lernen.
Du wirst es nicht bereuen.
Ist Python kompliziert? Bleibe ich mit ihm über Wasser, wenn die Roboter übernehmen?
Nun, natürlich ist Python eine ziemlich einfache Sprache. Mit ihm können Sie viele Aufgaben automatisieren und coole Nishtyaki machen . Aber Sie brauchen nicht einmal Python. Data Science ist viel mehr als Skripte und maschinelles Lernen.
Was meinst du?
Nun, das sind nur Werkzeuge. Sie verwenden Python, um Informationen aus Daten abzurufen. Manchmal ist maschinelles Lernen erforderlich, in den meisten Fällen jedoch nicht. Datenwissenschaft kann einfach das Erstellen eines Diagramms bedeuten. Tatsächlich müssen Sie nicht einmal Python lernen, sondern können einfach Tableau verwenden. Sie werben damit, dass sie "jeden in Ihrer Organisation zum Wissenschaftler-Date machen" können, wenn sie nur ihr Produkt verwenden.

Tableau ist zuversichtlich, dass sie das Personalproblem des fehlenden Datums der Wissenschaftler lösen können.
Hör auf was? Also kaufe ich nur eine Lizenz für Tableau und bin ich jetzt ein Wissenschaftler-Date? Sprechen wir über dieses kommerzielle Angebot mit einem Hauch von Skepsis. Vielleicht bin ich ein Ignorant, aber ich weiß, dass Data Science nicht nur schöne Visualisierungen erzeugt. Ich kann das auch in Excel machen.
Natürlich. Man muss jedoch zugeben, dass dies ein großartiges Marketing ist. Das Zeichnen macht natürlich Spaß, aber sie vermissen all die Schmerzen und die Zeit, die sie zum Löschen, Verarbeiten, Ändern und Laden von Daten benötigen.
Ja, und aus diesem Grund vermute ich, dass das Erlernen des Codes von Nutzen ist. Reden wir über Python.
Moment mal. Vielleicht solltest du Alteryx lernen.
Was denn
Es gibt eine andere Software namens Alteryx , mit der Sie Daten bereinigen, verarbeiten, ändern und herunterladen können. Das ist großartig, weil es Drag & Drop verwendet, um Daten und ...

Alteryx verspricht auch "Data Science" ohne Code.
Oh Gott, bitte hör auf. Kein Drag & Drop mehr. Ich möchte Python lernen, nicht Alteryx oder Tableau.
Okay, Entschuldigung. Ich habe nur versucht, dir das Leben zu erleichtern, vermeide das Codieren. Vielleicht habe ich das auch gemacht, weil unsere Firma Lizenzen gekauft hat, die wir verwenden sollten. Um Python verwenden zu können, müssen Sie jedoch in jedem Fall mehrere Bibliotheken untersuchen, z. B. Pandas zum Verwalten von DataFrame und matplotlib zum Erstellen von Diagrammen. Üblicherweise die Matplotlib streichen. Verwenden Sie Plotly. Es benutzt d3.js und ist im Allgemeinen viel netter.
Ich kenne einige der Wörter, die Sie sagten. Was ist ein DataFrame?
Nun, das ist eine solche Datenstruktur in Form einer Tabelle mit Zeilen und Spalten. Sie können all diese coolen Transformationen, Pivot-Tabellen und Aggregationen mit einem DataFrame in Python ausführen.
Warten Sie, wie unterscheidet sich dies von Excel? Ich mache das alles seit meinem Abschluss am College. Bedeutet das, dass ich bereits Wissenschaftler bin?
Wenn Sie geschmeichelt sind, sich so zu nennen, natürlich. Ich würde diesen selbsternannten Titel jedes Mal öffentlich erklären, wenn ich zu einer Party ging oder einen Lebenslauf schrieb.
Was unterscheidet Python von Excel?
Python unterscheidet sich dadurch, dass alles in einem Jupyter-Laptop ausgeführt werden kann . Sie können alle Phasen der Datenanalyse durchführen, und der Laptop visualisiert jeden Schritt. Es ist fast so, als würde man eine Geschichte schreiben, die man mit anderen teilen kann. Und Kommunikation und Geschichten sind schließlich ein verdammt wichtiger Bestandteil der Datenwissenschaft.
Klingt nach PowerPoint. Ich mache das schon. Ich bin so verwirrt.
Oh gott nein Laptops sind weitaus automatisierter und optimierter, wodurch es einfach ist, jeden Schritt der Analyse zu verfolgen. Aber wenn Sie darüber nachdenken, erinnerte ich mich nur daran, dass manche Leute Laptops überhaupt nicht mögen, weil der darin enthaltene Code nicht sehr praktisch für die Wiederverwendung ist. Es ist einfacher, den Code auf Module außerhalb von Laptops zu verteilen, wenn Sie ihn in ein Softwareprodukt verwandeln möchten.
Ist Data Science nun auch Software-Entwicklung?
Vielleicht, aber lassen wir uns davon nicht ablenken. Es gibt viel dringendere Dinge, die zuerst gelernt werden müssen. Um Datenwissenschaft zu betreiben, braucht man offensichtlich Daten - Daten.
Natürlich.
Und es gibt nichts Besseres für Anfänger, als Daten im Netzwerk von denselben Wikipedia-Seiten zu sammeln, die auf Ihrer Festplatte gespeichert werden können.
Warten Sie, was versuchen wir noch einmal zu erreichen?
Nun, wir versuchen ein paar Daten für die Praxis zu bekommen. Durch das Scrappen von Webseiten und das Parsen mit Beautiful Soup erhalten wir Unmengen von unstrukturierten Textdaten, mit denen wir arbeiten können.
Ich bin verwirrt. Ich habe gerade ein exzellentes 130-seitiges SQL-Buch gelesen und dachte, ich würde Tabellen abfragen, nicht das Internet verschrotten. Ist SQL nicht eine typische Methode, um auf Daten zuzugreifen?
Nun, wir können mit unstrukturierten Textdaten eine Menge interessanter Dinge tun. Wir können sie verwenden, um Stimmungen in Nachrichten aus sozialen Netzwerken oder für die Verarbeitung anderer natürlicher Sprachen zu klassifizieren. NoSQL eignet sich hervorragend zum Speichern dieser Art von Daten, da große Datenmengen gespeichert werden können, ohne sich Gedanken darüber zu machen, ob sie für die Analyse geeignet sind.
Ich habe den Begriff NoSQL gehört. Also ist es SQL? Anti-SQL? Warten Sie, ich denke, das hat etwas mit Big Data zu tun, oder?
Zunächst einmal ist „Big Data“ aus dem Jahr 2016. Die meisten Leute verwenden diesen Begriff nicht mehr, also ist es einfach nicht cool, das zu sagen. Wie viele Hype-Technologien hat es seinen Höhepunkt der Popularität überschritten und fand nur an wenigen Stellen Anwendung. NoSQL ist jedoch im Wesentlichen das Ergebnis der "Big Data" -Bewegung, die Plattformen wie MongoDB gefördert hat.
OK, aber woher kommt der Name "NoSQL"?
NoSQL bedeutet "nicht nur SQL" und unterstützt Datenstrukturen außerhalb relationaler Tabellen. NoSQL-Datenbanken verwenden jedoch in der Regel kein SQL, sondern eine eigene Abfragesprache. Hier ist MongoDB im Vergleich zu SQL:

Oh mein Gott, das ist schrecklich. Sie sagen also, dass jede NoSQL-Plattform eine eigene Abfragesprache hat? Was ist los mit SQL?
Ich hab dich. Mit SQL ist alles in Ordnung, außer dass es bereits Jahrzehnte alt ist. Die Begeisterung für unstrukturierte Daten ist zu einer Gelegenheit geworden, etwas Neues zu tun und auf bisher nicht zugängliche Weise zu skalieren. Ich denke jedoch, dass immer mehr Leute zu dem Schluss kommen, dass es Sinn macht, SQL zu sparen . Dies vereinfacht die Analyse erheblich. So sehr, dass viele NoSQL- und „Big Data“ -Technologien verschlüsselt wurden, um eine Form von SQL hinzuzufügen . Schließlich ist SQL eine ziemlich universelle Sprache, auch wenn es für manche Menschen schwierig ist, sie zu verwenden.
Wow ok Daher wurde mir klar, dass das Erlernen von NoSQL für mich als Wissenschaftlertermin nicht kritisch ist, es sei denn, meine Arbeit erfordert etwas anderes. Es klingt so, als ob ich nur SQL sicher kenne.
Je mehr ich darüber nachdenke, desto mehr glaube ich, dass Sie Recht haben, aber nur, bis Sie sich dazu hingezogen fühlen, Dateningenieur zu werden.
Dateningenieur?
Ja, das Datum der Wissenschaftler war wie in zwei Berufe unterteilt. Dateningenieure arbeiten mit Produktionssystemen und helfen dabei, Daten und Modelle für die Verwendung geeignet zu machen. Sie sind jedoch weniger mit maschinellem Lernen und mathematischer Modellierung befasst, was wiederum für Wissenschaftler das Datum bleibt. Dies war wahrscheinlich notwendig, da die meisten HR- und Recruiter den Titel „Date Scientist“ nicht überschreiten . Denken Sie darüber nach, wenn Sie ein Dateningenieur werden möchten, würde ich besonders darauf achten, Apache Kafka und nicht NoSQL zu lernen. Apache Kafka ist jetzt nur noch eine Bombe.
Jetzt hilft Ihnen dieses Venn-Diagramm. Um den Titel "Date Scientist" zu erhalten, müssen Sie sich irgendwo im mathematisch / statistischen Kreis und idealerweise an der Schnittstelle zu einer anderen Disziplin befinden.

Data Science Venn-Diagramm
Nun, jetzt habe ich keine Ahnung, ob ich Datenwissenschaftler oder Dateningenieur werden möchte. Lass uns einfach weitermachen. Warum analysieren wir Wikipedia-Seiten?
Nun, sie dienen als Eingabe für die Verarbeitung natürlicher Sprachen und mit ihrer Hilfe können Sie beispielsweise Chat-Bots ausführen.
Wie ist Tay von Microsoft? Ist dieser Bot schlau genug, um Verkäufe vorherzusagen und mir zu helfen, neue Produkte mit dem richtigen Lagerbestand auf den Markt zu bringen? Besteht die Gefahr, dass er zwangsläufig Rassist wird?
Theoretisch gibt es. Wenn Sie ihn mit Nachrichtenartikeln füttern, können Sie möglicherweise ein Modell erstellen, das einige Trends definiert und als Ergebnis Empfehlungen für Geschäftsentscheidungen gibt. Aber das ist wirklich schwierig. Überlegen Sie genau, dies ist möglicherweise nicht die beste Option zum Starten.
Also, na ja ... natürliche Sprachverarbeitung, Chat-Bots und unstrukturierte Textdaten sind möglicherweise nichts für mich?
Vielleicht, aber denken Sie daran, dass Data Science jetzt überall ist. Unternehmen aus dem Silicon Valley wie Google und Facebook beschäftigen sich mit vielen unstrukturierten Daten (wie Social Media-Posts und Nachrichtenartikeln) und haben offensichtlich einen großen Einfluss auf die Definition von „Data Science“. Nun, der Rest verwendet wie wir Geschäftsdaten in Form von relationalen Datenbanken und weniger inspirierenden Technologien wie SQL.
Das klingt glaubwürdig. Ich gehe davon aus, dass sie ihr Talent im Bereich der unstrukturierten Daten hauptsächlich für die Extraktion von Nutzerbotschaften, E-Mails, Werbegeschichten und anderen abscheulichen Zwecken einsetzen.
So ist es. Weißt du, der naive Bayes-Klassifikator mag dir interessant und nützlich erscheinen. Sie können den Text nehmen und die Kategorie dafür vorhersagen. Dies ist ziemlich einfach von Grund auf neu zu implementieren:
Kategorisierung von Textkörpern mit einem naiven Bayes-Klassifikator
Du hast recht, er ist cool. Aber abgesehen davon sehe ich keinen Wert in unstrukturierten Daten.
Dann mach weiter. Sie arbeiten also mit Tabellendaten: Tabellenkalkulationen und einer Reihe von aufgezeichneten Zahlen. Es hört sich fast so an, als ob Sie Vorhersagen oder statistische Analysen treffen möchten.
Ja, wir haben endlich etwas herausgefunden! Schließlich werden wir echte Probleme lösen. Beginnen wir also jetzt mit dem Thema Neuronen und Deep Learning?
E-gay, halte die Pferde. Ich würde vorschlagen, mit Normalverteilungen mit Mittel- und Standardabweichungen zu beginnen. Vielleicht berechnen Sie die Wahrscheinlichkeiten mit einem Z-Score und einer oder zwei linearen Regressionen.
Aber andererseits kann ich alles in Excel machen! Kann ich nicht
Nun ... ähm ... ja, das stimmt, Sie können eine Menge der oben genannten Aufgaben in Excel ausführen. Beim Schreiben von Skripten erhalten Sie jedoch mehr Flexibilität.
Wie mit VBA? Visual Basic
Okay, ich fange von vorne an und tu so, als hättest du das nicht gesagt. Excel hat wirklich großartige statistische Operatoren und anständige lineare Regressionsmodelle. Wenn Sie jedoch für jede Kategorie von Elementen eine eigene Normalverteilung oder Regression erstellen müssen, ist es viel einfacher, ein Python-Skript zu schreiben, als infernalische Formeln zu erstellen, deren Länge ein Maß für die Entfernung zum Mond sein kann.

Wenn Sie in Excel fortgeschritten sind, tun Sie jedem, der mit Ihnen arbeitet, weh. (Wenn du in Excel cool wirst, haben alle um dich herum Schmerzen.)
Sie können die coole Scikit-Learn- Bibliothek verwenden. Damit erhalten Sie viel leistungsfähigere Möglichkeiten für verschiedene Regressionen und maschinelles Lernen.
Ok, richtig. Es scheint also, dass sich das Gespräch jetzt auf dem Gebiet der mathematischen Modellierung bewegt. Hier sind ein paar mathematische Probleme vor mir, wo fange ich an?
Nun, in der traditionellen Sichtweise ist die lineare Algebra der Baustein für vieles in der Datenwissenschaft, und genau damit müssen Sie beginnen. Multiplikation und Addition von Matrizen (das sogenannte Skalarprodukt) - das werden Sie die ganze Zeit tun, und es gibt andere wichtige Konzepte wie Determinanten und Eigenvektoren. 3Blue1Brown ist fast der einzige Kanal, in dem Sie eine intuitive Erklärung der linearen Algebra finden.

Also ... die Multiplikation / Addition einer Matrix zu einer anderen - das ist, was ich hauptsächlich tun werde? Es klingt wirklich sinnlos und langweilig. Kannst du ein Beispiel geben?
Nun ... maschinelles Lernen! Wenn Sie eine lineare Regression durchführen oder ein eigenes neuronales Netzwerk aufbauen, müssen Sie die Matrixmultiplikation und -skalierung mit zufälligen Gewichtungswerten viele Male durchführen.
Ok, also haben die Matrizen etwas mit dem Datenrahmen zu tun? Sie klingen wie.
Moment mal ... Ich habe es mir überlegt. Kehren wir zu dieser Aussage zurück. In der Praxis müssen Sie keine lineare Algebra ausführen.

Ach komm schon! Wirklich? Soll ich also lineare Algebra lernen oder nicht?
In der Praxis müssen Sie wahrscheinlich keine lineare Algebra lernen. Bibliotheken wie TensorFlow und scikit-learn erledigen alles für Sie. Am Ende ist es wirklich anstrengend und langweilig. Natürlich können Sie verstehen und sich ein Bild davon machen, wie diese Bibliotheken funktionieren. Beginnen Sie jedoch zunächst mit der Verwendung von Bibliotheken für maschinelles Lernen und ignorieren Sie die lineare Algebra vollständig.
Ihre Unsicherheit macht mir Sorgen. Kann ich dir vertrauen?
Zeigen Sie wenigstens ein wenig Respekt! Ich habe dich gerade aus einem anderen Pool gezogen. Nicht dafür.
Ooh
Und doch, bis ich es vergessen habe. Sie selbst verwenden TensorFlow nicht. Verwenden Sie es mit Keras, da TensorFlow damit viel einfacher ist.
Wenn Sie zurückgehen, hängt die lineare Regression wirklich mit dem maschinellen Lernen zusammen?
Ja, lineare Regression ist in der Liste der Tools für maschinelles Lernen enthalten.
Cool, ich mache das die ganze Zeit in Excel. Kann ich mich also auch als Praktiker für maschinelles Lernen bezeichnen?
* Seufz * technisch ja. Aber vielleicht möchten Sie Ihren Horizont ein bisschen erweitern. Sie sehen, maschinelles Lernen (unabhängig von der Technologie) besteht häufig aus zwei Aufgaben: Regression und Klassifikation. Klassifikation ist technisch gesehen Regression. Entscheidungsbäume, neuronale Netze, die Support-Vektor-Methode, die logistische Regression und ja ... die lineare Regression - sie passen alle irgendwie zu den Kurven. Jedes Modell hat je nach Situation Vor- und Nachteile.
, — ? ?
. , , , , , . — . , , 2-3 , , .
, , . — ?
Ja . : . , () , , . , , , , , .
.
(!)
, ? ? ?
, , , , data science . “ ” .
, . , ?
, . , . «», , .
?
, , . , . , , , .
, ?
* * - , . , , . , : , , . .
, - , , , ?
, . , . … , « », , , . , .
, — , , ? … ? «», ?
, , ( ) , , . , , .
. , DeepMind , StarCraft! ! , ?
StarCraft ?
( )
, StarCraft ?

StarCraft, - StarCraft? : StarCraft. , , .
, . , … , , -. , , — . .
- Data Science , . , .
, ? «data science», … … . .
, . .
Vielen Dank. Ich muss einen Spaziergang machen und darüber nachdenken. Wenn ich etwas verstehe, denke ich, dass meine Arbeit in Excel als "Data Science" qualifiziert ist. Obwohl ich nicht weiß, ob ich einen Wissenschaftlertitel haben möchte. Es sieht so aus, als könnte es alles sein. Ich kann meine Zeit für etwas anderes verbringen. Hoffentlich wird der nächste "New Hit", der nach Data Science kommt, weniger verrückt sein.
Vielleicht sollten Sie einige Zeit bei IBM arbeiten?
Warum?
Schon mal was von Quantencomputern gehört?