Vor zwei Jahren habe ich angefangen, maschinelles Lernen online auf eigene Faust zu lernen. Ich teilte meine Reise über YouTube und meinen Blog. Ich hatte keine Ahnung, was ich da tat. Ich hatte noch nie programmiert, aber ich beschloss, dass ich maschinelles Lernen lernen wollte.
Wenn Leute meine Arbeit finden, wenden sie sich manchmal an mich und stellen Fragen. Ich habe nicht alle Antworten, aber ich beantworte so viele, wie ich kann. Die häufigste Frage, die ich bekomme, ist: „Wo soll ich anfangen?“ Die nächsthäufigste Frage ist „Wie viel Mathe muss ich können?“
Ich habe heute Morgen eine Handvoll dieser Fragen beantwortet.
Eine Person erzählte mir, dass sie angefangen hat, Python zu lernen und in das maschinelle Lernen einsteigen wollte, aber nicht wusste, was sie als nächstes tun sollte.
Ich habe Python gelernt, was soll ich als nächstes tun?
Ich habe in der Antwort ein paar Schritte zusammengestellt und kopiere sie hierher. Sie können sie als grobe Skizze betrachten, um von der Unkenntnis des Codes zu einem Praktiker des maschinellen Lernens zu werden.
Meine Art des Lernens ist zuerst Code. Bringen Sie den Code zuerst zum Laufen und lernen Sie die Theorie, Mathematik, Statistik und die Wahrscheinlichkeitsseite der Dinge, wenn Sie es brauchen, nicht vorher.
Erinnern Sie sich, wenn Sie anfangen, maschinelles Lernen zu lernen, kann es entmutigend sein. Es gibt eine Menge. Nehmen Sie sich Zeit. Setzen Sie ein Lesezeichen für diesen Artikel, damit Sie immer wieder darauf zurückgreifen können.
Ich bin voreingenommen, was die Verwendung von Python angeht, weil ich damit angefangen habe und es weiterhin verwende. Sie könnten auch etwas anderes verwenden, aber diese Schritte sind für Python.
In der E-Mail wurde gesagt, dass sie bereits etwas mit Python gemacht haben. Aber dieser Schritt ist auch für jemanden, der komplett neu ist. Verbringen Sie ein paar Monate damit, Python-Code und gleichzeitig verschiedene Konzepte des maschinellen Lernens zu lernen. Sie werden beides brauchen.
Während Sie Python-Code lernen, üben Sie den Umgang mit Data Science Tools wie Jupyter und Anaconda. Verbringen Sie ein paar Stunden damit, um herauszufinden, wofür sie da sind und warum Sie sie verwenden sollten.
Ressourcen zum Lernen
- Elemente der KI – Überblick über die wichtigsten Konzepte der künstlichen Intelligenz und des maschinellen Lernens.
- A 6 Step Field Guide for Building Machine Learning Projects – Überblick über viele praktische Schritte, die Sie unternehmen können, um maschinelles Lernen für eine Vielzahl verschiedener Geschäftsprobleme einzusetzen.
- Python für Jedermann auf Coursera – lernen Sie Python von Grund auf.
- Python lernen von freeCodeCamp – alle wichtigen Python-Konzepte in einem Video.
- Anaconda-Tutorial von Corey Schafer – lernen Sie Anaconda (was Sie für die Einrichtung Ihres Computers für Data Science und maschinelles Lernen verwenden) in einem Video.
- Jupyter Notebook for Beginners Tutorial von Dataquest – lernen Sie in einem Artikel den Umgang mit Jupyter Notebooks.
- Jupyter Notebook Tutorial von Corey Schafer – lernen Sie in einem Video, wie man Jupyter Notebooks verwendet.
Lernen Sie Datenanalyse, Manipulation &Visualisierung mit Pandas, NumPy Matplotlib
Sobald Sie einige Python-Kenntnisse haben, werden Sie lernen wollen, wie man mit Daten arbeitet und sie manipuliert.
Um das zu tun, sollten Sie sich mit Pandas, NumPy und Matplotlib vertraut machen.
Pandas hilft Ihnen bei der Arbeit mit Dataframes, das sind Tabellen mit Informationen, wie Sie sie in einer Excel-Datei sehen würden. Denken Sie an Zeilen und Spalten. Diese Art von Daten nennt man strukturierte Daten.
NumPy hilft Ihnen, numerische Operationen mit Ihren Daten durchzuführen. Maschinelles Lernen verwandelt alles, was Sie sich vorstellen können, in Zahlen und findet dann die Muster in diesen Zahlen.
Matplotlib hilft Ihnen, Graphen und Visualisierungen Ihrer Daten zu erstellen. Einen Haufen von Zahlen in einer Tabelle zu verstehen, kann für Menschen schwierig sein. Wir sehen viel lieber einen Graphen mit einer Linie, die durch ihn hindurchgeht. Die Erstellung von Visualisierungen ist ein wichtiger Teil der Kommunikation Ihrer Ergebnisse.
Ressourcen zum Lernen
- Angewandte Datenwissenschaft mit Python auf Coursera – beginnen Sie, Ihre Python-Kenntnisse auf die Datenwissenschaft zuzuschneiden.
- pandas in 10 Minuten – ein schneller Überblick über die pandas-Bibliothek und einige ihrer nützlichsten Funktionen.
- Python Pandas Tutorial von Codebasics – YouTube-Serie, die alle wichtigen Funktionen von Pandas erklärt.
- NumPy Tutorial von freeCodeCamp – lernen Sie NumPy in einem YouTube-Video.
- Matplotlib Tutorial von Sentdex – YouTube-Serie, die alle nützlichen Funktionen von Matplotlib erklärt.
Maschinelles Lernen mit scikit-learn lernen
Nachdem Sie nun die Fähigkeiten haben, Daten zu manipulieren und zu visualisieren, ist es an der Zeit, Muster darin zu finden.
scikit-learn ist eine Python-Bibliothek mit vielen hilfreichen Algorithmen für maschinelles Lernen, die Sie sofort verwenden können.
Sie bietet auch viele andere hilfreiche Funktionen, um herauszufinden, wie gut Ihr Lernalgorithmus gelernt hat.
Konzentrieren Sie sich darauf, zu lernen, welche Art von maschinellen Lernproblemen es gibt, wie z. B. Klassifizierung und Regression, und welche Art von Algorithmen dafür am besten geeignet sind. Es geht nicht darum, jeden Algorithmus von Grund auf zu verstehen, sondern zuerst zu lernen, wie man sie anwendet.
Ressourcen zum Lernen
- Maschinelles Lernen in Python mit scikit-learn von Data School – YouTube-Playlist, die alle wichtigen Funktionen von scikit-learn lehrt.
- A Gentle Introduction to Exploratory Data Analysis von Daniel Bourke – setzen Sie das, was Sie in den beiden obigen Schritten gelernt haben, in einem Projekt zusammen. Enthält Code und ein Video, das Ihnen hilft, an Ihrem ersten Kaggle-Wettbewerb teilzunehmen.
- Daniel Formossos Notizbuch zur explorativen Datenanalyse mit Scikit-Learn – eine ausführlichere Version der obigen Ressource, enthält ein durchgängiges Projekt unter Verwendung der oben genannten.
Neuronale Netze mit Deep Learning lernen
Deep Learning und neuronale Netze funktionieren am besten bei Daten ohne viel Struktur.
Datenframes haben Struktur, Bilder, Videos, Audiodateien und natürlichsprachlicher Text haben Struktur, aber nicht so viel.
Tidbit: In den meisten Fällen werden Sie für strukturierte Daten ein Ensemble von Entscheidungsbäumen (Random Forests oder einen Algorithmus wie XGBoost) verwenden wollen und für unstrukturierte Daten Deep Learning oder Transfer Learning (Sie nehmen ein vortrainiertes neuronales Netzwerk und wenden es auf Ihr Problem an).
Sie könnten eine Notiz mit kleinen Leckerbissen wie diesen für sich selbst beginnen und sie nach und nach sammeln.
Ressourcen für das Lernen
- Deeplearning.ai von Andrew Ng auf Coursera – Deep Learning gelehrt von einem der Besten der Branche.
- fast.ai deep learning courses von Jeremy Howard – ein praktischer Ansatz für Deep Learning gelehrt von einem der besten Praktiker der Branche.
Zusätzlicher Lehrplan & Bücher
Ideal wäre es, wenn Sie das Gelernte mit eigenen kleinen Projekten üben würden. Das müssen keine aufwendigen, weltverändernden Dinge sein, sondern etwas, von dem Sie sagen können „Ich habe das mit X gemacht“. Und dann teilen Sie Ihre Arbeit über Github oder einen Blog-Post. Github wird verwendet, um Ihren Code zu präsentieren, ein Blog-Post wird verwendet, um zu zeigen, wie Sie Ihre Arbeit kommunizieren können. Sie sollten anstreben, für jedes Projekt eines von beiden zu veröffentlichen.
Der beste Weg, sich für einen Job zu bewerben, ist, die Dinge, die er erfordert, bereits getan zu haben. Ihre Arbeit zu teilen ist eine großartige Möglichkeit, einem potenziellen zukünftigen Arbeitgeber zu zeigen, wozu Sie fähig sind.
Nachdem Sie mit einigen der verschiedenen Frameworks für maschinelles Lernen und Deep Learning vertraut sind, können Sie versuchen, Ihr Wissen zu festigen, indem Sie sie von Grund auf neu bauen. Sie werden dies nicht immer in der Produktion oder in einer Machine-Learning-Rolle tun müssen, aber zu wissen, wie die Dinge von innen heraus funktionieren, wird Ihnen helfen, auf Ihrer eigenen Arbeit aufzubauen.
Ressourcen zum Lernen
- Wie Sie Ihre eigenen Machine-Learning-Projekte starten von Daniel Bourke – eigene Projekte zu starten kann schwierig sein, dieser Artikel gibt Ihnen ein paar Hinweise.
- fast.ai deep learning from the foundations von Jeremy Howard – wenn Sie einmal von oben nach unten vorgegangen sind, hilft Ihnen dieser Kurs, die Lücken von unten nach oben zu füllen.
- Grokking Deep Learning von Andrew Trask – in diesem Buch lernen Sie, wie man neuronale Netze von Grund auf aufbaut und warum Sie wissen sollten, wie das geht.
- Diese Bücher helfen Ihnen, maschinelles Lernen zu lernen von Daniel Bourke – YouTube-Video, das einige der besten Bücher über maschinelles Lernen durchgeht.
Wie lange für jeden Schritt?
Sie könnten 6 Monate oder mehr damit verbringen. Überstürzen Sie nichts. Neue Dinge zu lernen braucht Zeit. Die wichtigste Fähigkeit, die Sie sich als Datenwissenschaftler oder Ingenieur für maschinelles Lernen aneignen, besteht darin, gute Fragen an Daten zu stellen und dann Ihre Tools zu verwenden, um Antworten zu finden.
An manchen Tagen werden Sie das Gefühl haben, nichts zu lernen. Sogar rückwärts gehen. Ignorieren Sie es. Vergleichen Sie Ihren Fortschritt nicht von Tag zu Tag. Vergleichen Sie Ihren Fortschritt von Jahr zu Jahr.
Wo kann ich diese Fähigkeiten erlernen?
Ich habe oben einige Ressourcen aufgelistet, sie sind alle online verfügbar und die meisten davon sind kostenlos, aber es gibt noch viele mehr.
DataCamp ist ein großartiger Ort, um die meisten davon zu machen. Ansonsten enthält meine Ressourcendatenbank für maschinelles Lernen und künstliche Intelligenz ein gutes Archiv mit kostenlosen und kostenpflichtigen Lernmaterialien.
Erinnern Sie sich, ein Teil des Daseins als Datenwissenschaftler oder Ingenieur für maschinelles Lernen ist das Lösen von Problemen. Betrachten Sie es als Ihre erste Aufgabe, mehr über die einzelnen Schritte herauszufinden und einen eigenen Lehrplan zu erstellen, der Ihnen dabei hilft, sie zu erlernen.
Wenn Sie wissen möchten, wie ein beispielhafter, selbst erstellter Lehrplan für maschinelles Lernen aussieht, sehen Sie sich meinen selbst erstellten KI-Masterstudiengang an. Es ist das, was ich verwendet habe, um in 9 Monaten von null Programmierkenntnissen zu einem Ingenieur für maschinelles Lernen zu werden. Es ist nicht perfekt, aber es ist meins, deshalb hat es funktioniert.
Was ist mit Statistik? Was ist mit Mathe? Was ist mit Wahrscheinlichkeit?
Sie werden diese Dinge auf dem Weg lernen. Fangen Sie zuerst mit Code an. Bringen Sie die Dinge zum Laufen. Zu versuchen, die ganze Statistik, die ganze Mathematik, die ganze Wahrscheinlichkeit zu lernen, bevor Sie Ihren Code zum Laufen bringen, ist wie der Versuch, den Ozean zu kochen. Es wird Sie zurückhalten.
Keine der Statistiken, Mathematik und Wahrscheinlichkeiten zählen, wenn Ihr Code nicht läuft. Bringen Sie etwas zum Laufen und nutzen Sie dann Ihre Forschungsfähigkeiten, um herauszufinden, ob es richtig ist.
Was ist mit Zertifizierungen?
Zertifizierungen sind nett, aber Sie sind nicht hinter ihnen her. Sie suchen nach Fähigkeiten.
Machen Sie nicht den Fehler, den ich gemacht habe, und denken Sie, dass mehr Zertifizierungen gleich mehr Fähigkeiten sind. Das tun sie nicht.