Lehrplan für maschinelles Lernen
Maschinelles Lernen ist ein Zweig der künstlichen Intelligenz, das Maschinen aus Beobachtungsdaten gelernt hat, ohne explizit programmiert zu werden.
Maschinelles Lernen und KI sind nicht gleich. Maschinelles Lernen ist ein Instrument in der AI -Symphonie - ein Bestandteil der AI. Was ist also genau das maschinelle Lernen - oder ML - genau? Es ist die Fähigkeit, einen Algorithmus aus früheren Daten zu lernen, um ein Verhalten zu erzeugen. ML unterrichtet Maschinen, um Entscheidungen in Situationen zu treffen, die sie noch nie gesehen haben.
Dieser Lehrplan leitet Sie, um maschinelles Lernen zu lernen, Tools zu empfehlen und Ihnen dabei zu helfen, den ML -Lebensstil zu nutzen, indem Sie die Medien vorschlagen. Ich aktualisiere es regelmäßig, um die Frische aufrechtzuerhalten und veraltete Inhalte und veraltete Tools loszuwerden.
Maschinelles Lernen im Allgemeinen
Studieren Sie diesen Abschnitt, um grundlegende Konzepte zu verstehen und Intuitionen zu entwickeln, bevor Sie tiefer gehen.
Ein Computerprogramm soll aus der Erfahrung E in Bezug auf eine Klasse von Aufgaben T und Leistungsmaßnahmen P lernen, wenn sich die Leistung bei Aufgaben in T , gemessen von P , mit der Erfahrung E verbessert.
- Elemente von AI Eine Reihe einfacher Kurse, die KI und maschinelles Lernen unterrichten
- COMS W4995 Angewandte maschinelles Lernen Frühjahr 2020 Videos und Folien eines angewandten ML -Kurs von der Columbia University.
- Meinungskurs für maschinelles Lernen von Fast.ai
- Crash-Kurs für maschinelles Lernen mit TensorFlow APIs Googles rasante, praktische Einführung in maschinelles Lernen
- Intro in maschinelles Lernen - Udacity -Programmierlernen auf Kern -ML
- Maschinelles Lernen: Überwacht, unbeaufsichtigt und Verstärkung - Udacity Die 2 Ausbilder sind komisch
- Maschinelles Lernen Meisterschaft sorgfältig festgelegt Schritt für Schritt zu bestimmten Algorithmen
- Andrew Ngs Spezialisierung auf Coursera empfohlen für Personen, die die Details von ML -Algorithmen unter der Motorhaube wissen möchten, verstehen Sie genügend Mathematik, um gefährlich zu sein und Codierungsaufgaben in Python zu erledigen
- ML -Rezepte - YouTube -Playlist Ein wirklich gut gestalteter konkreter, verwertbarer Inhalt für ML EINLEITUNG
- Maschinelles Lernen macht Spaß, Teil 1 Einfacher Ansatz für maschinelles Lernen für Nicht-Mathemen-Menschen
- Maschinelles Lernen mit Python - YouTube -Wiedergabeliste
- Maschinelles Lernen nach Andrew Ng
- Einen Datenjob landen: Der Kurs ist eine einheitliche und praktische Richtlinie für Personen, die sich auf die Landung eines Jobs konzentrieren möchten. Sie schlagen zum Beispiel vor, dass Sie wissen, wie der Entscheidungsbaum bereits gut genug ist, nicht wissen, wie alle Modelle funktionieren, was wahr ist! Dieser Rat gilt jedoch hauptsächlich für tabellarische Daten.
- Serverloses maschinelles Lernen erstellen Sie Ihren eigenen serverlosen Vorhersagedienst für maschinelles Lernen
- Effektive MLOPS: Modellentwicklung Ein kostenloser Kurs von Gewichten und Verzerrungen mit Zertifizierung
- Mathematik für maschinelles Lernen und Datenwissenschaftspezialisierung Mathematik Kurs von Coursera
Bücher
- Maschinelles Lernen mit Pytorch und Scikit-Learn von Sebastian Raschka
- Praktisches maschinelles Lernen mit Scikit-Learn, Keras und Tensorflow, 2. Ausgabe von Aurélien Géron ist das meistverkaufte Buch, weil es großartig ist.
- https://github.com/fastai/fastbook Das Fastai -Buch, das als Jupyter -Notizbücher veröffentlicht wurde
- https://www.deeplearningbook.org/ Math Heavy Book von Ian Goodfellow und Yoshua Bengio und Aaron Courville
- https://christophm.github.io/interpretable-ml-book/ Eine Anleitung zum Erklären von Black Box-Modellen
- https://themlbook.com/ Das Hundert-Page-Buch für maschinelles Lernen von Andriy Burkov
Verstärkungslernen
Der Aufbau einer Maschine, die die Umwelt erfasst und dann die beste Richtlinie (Maßnahmen) in einem bestimmten Zustand auswählt, um die erwartete langfristige skalare Belohnung zu maximieren, ist das Ziel des Verstärkungslernens.
- OpenAI, das sich aufsperrt, ist eine von OpenAI produzierte Bildungsressource, mit der es einfacher ist, etwas über tiefes Verstärkungslernen (Deep RL) zu lernen.
- Grundlegendes Verstärkungslernen Eine Einführungsreihe zum Verstärkungslernen (RL) mit umfassenden Schritt-für-Schritt-Tutorials.
- Erweiterte Themen: RL 2015 (COMPM050/COMPGI13) von David Silver (der Typ hinter Alphago)
- Ein Einführungsbuch von Richard S. Sutton und Andrew G. Barto
- Tiefes Verstärkungslernen: Pong aus Pixel
- Vortrag 10: Verstärkungslernen - YouTube
- Ein Umfragepapier
- Tiefes Verstärkungslernen: Ein Tutorial - Openai
- CS 294: Tiefes Verstärkungslernen, Frühjahr 2017
Tiefes Lernen
Deep Learning ist ein Zweig des maschinellen Lernens, in dem Deep Artificial Neural Networks (DNN) - Algorithmen, die von der Art und Weise inspiriert sind, wie Neuronen im Gehirn arbeiten - Muster in Rohdaten finden, indem mehrere Schichten künstlicher Neuronen kombiniert werden. Mit zunehmender Ebenen steigen auch die Fähigkeit des neuronalen Netzwerks, zunehmend abstrakte Konzepte zu lernen.
Die einfachste Art von DNN ist ein Mehrschicht -Perzeptron (MLP).

- Das Little Book of Deep Learning Dieses Buch ist eine kurze Einführung in Deep Learning für Leser mit einem MINT -Hintergrund, der ursprünglich so konzipiert wurde, dass sie auf einem Telefonbildschirm gelesen werden. Es wird unter einer nichtkommerziellen Creative Commons-Lizenz verteilt und wurde im Monat nach seiner Veröffentlichung fast 250'000 Mal heruntergeladen.
- Voller Stack Deep Learning lernen, dass das Deep-Lernen von Produktionsniveaus von Top-Praktikern gelernt wird
- DeepLearning.ai eine Reihe von Kursen, die Andrew Ng in Coursera unterrichtet hat; Es ist die Fortsetzung des Kurs für maschinelles Lernen bei Coursera.
- Intro in Deep Learning mit Pytorch einen Kurs von Facebook KI über Udacity
- Eine freundliche Einführung in Deep Learning und Neural Networks
- Ein neuronales Netzwerk -Spielplatz -Bastel mit einem einfachen neuronalen Netzwerk, mit dem Sie den Lernprozess visualisieren können
- Deep Learning Demystified - YouTube Erklären Sie die Inspiration des tiefen Lernens von echten Neuronen bis hin zu künstlichen neuronalen Netzwerken
- Lernen Sie Tensorflow und Deep Learning ohne Ph.D. Dieser 3-Stunden-Kurs (Video + Slides) bietet Entwicklern eine kurze Einführung in die Grundlagen mit tiefgreifenden Lern, wobei einige Tensorflows in das Schnäppchen geworfen werden.
- Ein Leitfaden für tiefes Lernen durch yn^2 Ein kuratierter Mathematikanleitung zum tiefen Lernen
- Practical Deep Learning for Codierers Kurs bei Fast.ai unterrichtet von Jeremy Howard (Kaggle #1 Konkurrent 2 Jahre Lauf und Gründer von Enlitic)
- Deep Learning - Udacity für visuellen Lernenden empfohlen, der einige ML kennt. Dieser Kurs bietet hochrangige Ideen für tiefgreifende Lernen, dichte intuitive Details in kurzer Zeit. Sie werden Tensorflow im Kurs verwenden
- Deep Learning Summer School, Montreal 2015
- Nervennetzwerke Klasse - YouTube -Playlist
- http://neuralnetworksanddeeplearning.com/index.html Ein praktisches Online-Buch für Deep Learning Maths Intuition kann ich sagen, dass Sie nach Abschluss in der Lage sind, Deep Learning in einem feinen Detail zu erklären.
- Der neuronale Netzwerkzoo zoo einer Reihe neuronaler Netzwerkmodelle, über die Sie wissen sollten (ich kenne ungefähr die Hälfte davon, also mach dir keine Sorgen, dass du nicht viele kennst, weil die meisten von ihnen in der Gegenwart nicht beliebt oder nützlich sind).
- Intro in Tensorflow für tiefes Lernen bei der Udacity gelehrt
- Primer • AI Hier finden Sie eine handverlesene Auswahl von Artikeln zu KI-Grundlagen/-konzepten, die den gesamten Prozess des Aufbaus neuronaler Netze abdecken, um sie zur Bewertung der Ergebnisse zu schulen. Es gibt auch eine sehr detaillierte Erklärung der Transformatorarchitektur.
- Umarme Gesichtsdiffusionsmodelle Kurs Lernen Sie die Theorie, trainieren Sie das Modell von Grund auf und generieren Sie Bilder und Audio.
- Deep Learning Fundamentals von Lightning.ai mit Sebastian Raschka
Faltungsnetzwerke
DNNs, die mit Gitterdaten wie Schallwellenformen, Bildern und Videos arbeiten als gewöhnliche DNNs. Sie basieren auf den Annahmen, dass die Eingabeeinheiten in der Nähe eher verwandt sind als die entfernten Einheiten. Sie verwenden auch Übersetzungsinvarianz. Bei einem Bild kann es beispielsweise nützlich sein, überall auf dem Bild dieselbe Art von Kanten zu erkennen. Sie werden manchmal als Überzeugungsformen oder CNNs bezeichnet.
- Wie Faltungsnetzwerke funktionieren - youtube technische Erklärung einschließlich Pooling -Operationen, Relu, vollständig verbundene Schicht, Optimierung mit Gradientenabstieg
- Neurales Netzwerk, das alles verändert - Computerphile
- Ein Leitfaden für Anfänger zum Verständnis von Faltungsnetzwerken
- Deep Learning for Computer Vision (Andrej Karparthy, OpenAI) Dies ist mein beliebteste Video mit Faltungsnetz. Andrej erklärt Convnet im Detail und beantwortet alle merkwürdigen Fragen, die man haben könnte. Zum Beispiel sprechen die meisten Artikel nur über Faltung im Graustufenbild, aber er beschreibt auch die Faltung in Bildern mit Farbkanälen. Er spricht auch über die Bedenken und Annahmen, die überzeugt sind. Dies ist ein großartiger Vortrag!
- Das Verständnis neuronaler Netzwerke durch eine tiefe Visualisierung erklärt, wie man einen Überrevet mithilfe verschiedener Techniken visualisiert
Wiederkehrende neuronale Netzwerke
DNNs, die Staaten haben. Sie verstehen auch Sequenzen, die in der Länge variieren. Sie werden manchmal RNNs genannt.
- http://karpathy.github.io/2015/05/21/rnn-seffectivity/
- http://colah.github.io/posts/2015-08-VERSTINGINGING-LSTMS/
- http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-introduction-to-rnns/
Best Practices
- Regeln des maschinellen Lernens: Best Practices für ML Engineering Es ist ein Dokument von Martin Zinkevich über Googles Best Practices im maschinellen Lernen.
- Ein Rezept für die Schulung neuronaler Netzwerke Andrejs Blogpost darüber, wie Sie sich zu einem paranoiden Ingenieur für maschinelles Lernen ausbilden können.
- Wie man neuronale Netzwerke debuggiert. Handbuch.
- Ein Überblick über Algorithmen zur Optimierung von Gradientenabsenksen
- Deep Learning Tuning Playbook Ein Playbook zur systematischen Maximierung der Leistung von Deep -Learning -Modellen.
Werkzeuge
Bibliotheken und Frameworks, die für praktisches maschinelles Lernen nützlich sind
Frameworks
Bausteine für maschinelles Lernen
- Scikit-Learn Allgemeines maschinelles Lernbibliothek, Hochstufe Abstraktion, auf Anfänger ausgerichtet
- Tensorflow; Großartiger Tensorflow; Das von Google erstellte Rechengrafik -Framework verfügt über eine schöne Visualisierungskarte, die heutzutage das beliebteste Framework für Deep Learning ist
- Keras: Deep Learning for Humans Keras ist eine Deep Learning -API, die in Python geschrieben wurde und auf dem Tensorflow läuft. Es ist immer noch König der hohen Abstraktion für tiefes Lernen. Update: Keras ist jetzt für TensorFlow, Jax und Pytorch verfügbar!
- Pytorch -Tensoren und dynamische neuronale Netzwerke in Python mit starker GPU -Beschleunigung. Es wird häufig von modernsten Forschern wie OpenAI verwendet.
- Blitz das Deep Learning -Framework, um KI -Produkte schnell zu trainieren, einzusetzen und zu versenden. (Früher wurde Pytorch Lightning bezeichnet)
- Jax ist Autograd und XLA, die für die Forschung für leistungsstarke leichte Lernen zusammengebracht wurden.
- Oneflow ist ein Deep-Learning-Framework, das benutzerfreundlich, skalierbar und effizient ist.
- Apache MXNET (Inkubation) für Deep Learning Apache MXNET ist ein Deep -Learning -Framework, das sowohl für Effizienz als auch für Flexibilität entwickelt wurde. Sie können symbolische und imperative Programmierung mischen, um die Effizienz und Produktivität zu maximieren.
- Chainer Ein flexibler Rahmen neuronaler Netzwerke für tiefes Lernen
- Vowpal Wabbit ist ein maschinelles Lernsystem, das die Grenze des maschinellen Lernens mit Techniken wie Online, Hashing, Allreduce, Reduktionen, Learning2Search, Active und Interactive Lernen vorantreibt. Es liegt ein spezifischer Fokus auf Verstärkungslernen mit mehreren kontextbezogenen Banditalgorithmen und der Online -Naturleistung für das Problem gut.
- H2O ist eine In-Memory-Plattform für verteiltes, skalierbares maschinelles Lernen.
- Spektral -Graph Neural Networks mit Keras und Tensorflow 2.
- Ivy ist sowohl ein ML -Transpiler als auch ein Rahmen, der derzeit Jax, Tensorflow, Pytorch und Numpy unterstützt. Ivy vereint alle ML -Frameworks? Aktivieren Sie nicht nur Code schreiben, der mit einem dieser Frameworks als Backend verwendet werden kann, sondern auch eine Funktion, ein Modell oder eine Bibliothek in Ihrem bevorzugten Framework umzuwandeln!
Keine Codierung
- Ludwig Ludwig ist eine Toolbox, mit der Benutzer Deep -Learning -Modelle trainieren und testen können, ohne dass Code schreiben muss. Es ist auf dem Tensorflow aufgebaut.
Gradientenverstärkung
Modelle, die aufgrund ihrer herausragenden Generalisierungsleistung stark in Wettbewerben eingesetzt werden.
- https://github.com/dmlc/xgboost Extreme Gradient Boosting
- https://github.com/microsoft/LightGBM Leichte Alternative im Vergleich zu Xgboost
- https://github.com/catboost/catboost Eine schnelle, skalierbare Hochleistungsgradient -Steigerung der Entscheidungsbäume, die für Ranking, Klassifizierung, Regression und andere Aufgaben für maschinelles Lernen für Python, R, Java, C ++ verwendet wird. Unterstützt die Berechnung von CPU und GPU.
- https://github.com/tensorflow/decision-forests TensorFlow Entscheidungswälder (TF-DF) ist eine Sammlung von Standof-The-Art-Algorithmen für die Ausbildung, Portion und Interpretation von Entscheidungswaldmodellen.
- Pytorch/TensorFlow -Implementierung von Tabnet Paper. Weiter lautet: Tabnet Balances erklärt sich und die Modellleistung für tabellarische Daten, aber kann es entthroner steigender Baummodelle?
Zeitreihenschluss
Zeitreihendaten erfordern einen eindeutigen Feature -Extraktionsprozess, damit sie in den meisten maschinellen Lernmodellen verwendet werden können, da die meisten Modelle benötigen, um sich in einem tabellarischen Format befinden. Oder Sie können spezielle Modellarchitekturen verwenden, die zeitliche Zeitreihen z. B. LSTM, TCN usw. abzielen.
- https://github.com/timeseriesai/tsai Time Series Timeseries Deep Learning Pytorch Fastai-STOFE-THE-THE-STEFE-Lernen mit Zeitreihen und Sequenzen in Pytorch/Fastai. Weiter lautet weiter: Tsai - Stand der Kunstmaschinen -Lernen für Zeitreihen, Teil 1.
- https://github.com/alan-turing-institute/skTime Ein einheitliches Framework für maschinelles Lernen mit Zeitreihen
- https://github.com/sktime/sktime-dl Ein Erweiterungspaket für Deep Learning mit TensorFlow/Keras für SKTime
- https://github.com/tslearn-team/tsLearn/ Ein Toolkit für maschinelles Lernen, das den Zeit-Series-Daten widmet
- https://github.com/blue-yonder/tsfresh Automatische Extraktion relevanter Funktionen aus der Zeitreihe
- https://github.com/johannfaouzi/pyts Ein Python -Paket für die Zeitreihenklassifizierung
- https://github.com/facebook/Prophet-Tool zum Erstellen von hoher Qualitätsprognosen für Zeitreihendaten, die mehrere Saisonalität mit linearem oder nicht linearem Wachstum aufweisen.
- https://github.com/philipperemy/keras-tcn keras Temporales Faltungsnetzwerk
- Rakete: Außergewöhnlich schnelle und genaue Zeitreihenklassifizierung unter Verwendung zufälliger Faltungskerne; Minirocket: Eine sehr schnelle (fast) deterministische Transformation für die Zeitreihenklassifizierung; Diese 2 Techniken dienen zum Extrahieren von Zeitreihenmerkmalen. Weiter lesen: Rakete: schnelle und genaue Zeitreihenklassifizierung
Lebenszyklus
Bibliotheken, mit denen Sie das Modell in der Produktion (MLOPS) entwickeln/debuggen/bereitstellen können. ML hat mehr als das Training des Modells.
- https://huggingface.co/ genau wie GitHub, aber zum Speichern von ML -Modellen, Datensätzen und Apps (sie rufen Apps als Leerzeichen an). Sie haben Bibliotheken, in denen Sie ihre Modelle/Datensätze einfach in Ihrem Code verwenden können. Der Speicher ist kostenlos und unbegrenzt für öffentliche und private Projekte.
- https://wandb.ai/ Erstellen Sie bessere Modelle schneller mit Experimentverfolgung, Datensatzversion und Modellverwaltung
- https://github.com/flyteorg/flyte flyte erleichtert es einfach, gleichzeitig, skalierbare und wartbare Workflows für maschinelles Lernen und Datenverarbeitung zu erstellen.
- https://github.com/allegroai/clearml Auto--Magical Suite von Tools zum Strafen Ihres ML-Workflows. Experimentmanager, ML-OPS und Datenmanagement
- https://github.com/quantumblacklabs/kedro Ein Python -Framework zum Erstellen reproduzierbarer, wartbarer und modularer Datenwissenschaftscode.
- https://github.com/determined-ai/determined bestimmt ist eine Open-Source Deep Learning-Trainingsplattform, die das Erstellen von Modellen schnell und einfach macht. Ich benutze es hauptsächlich zum Tuning von Hyperparametern.
- https://github.com/iterative/cml Continuous Machine Learning (CML) ist eine Open-Source-Bibliothek zur Implementierung der kontinuierlichen Integration und Bereitstellung (CI/CD) in maschinellen Lernprojekten. Verwenden Sie es, um Teile Ihres Entwicklungs -Workflows zu automatisieren, einschließlich Modelltraining und -bewertung, Vergleich von ML -Experimenten in Ihrem Projektverlauf und die Überwachung der Änderung der Datensätze.
- https://github.com/creme-ml/creme Python Library für Online-maschinelles Lernen . Alle Tools in der Bibliothek können jeweils mit einer einzigen Beobachtung aktualisiert werden und können daher verwendet werden, um aus Streaming -Daten zu lernen.
- https://github.com/aimhubio/aim Eine super-easy
- https://github.com/netflix/metaflow Metaflow ist eine menschlich-freundliche Python-Bibliothek, mit der Wissenschaftler und Ingenieure reallebensfreudige Datenwissenschaftsprojekte erstellen und verwalten können. Metaflow wurde ursprünglich bei Netflix entwickelt.
- MLFLOW MLFLOW (derzeit in Beta) ist eine Open -Source -Plattform zur Verwaltung des ML -Lebenszyklus, einschließlich Experimentieren, Reproduzierbarkeit und Bereitstellung. Derzeit bietet es drei Komponenten: MLFlow Tracking, MLFlow -Projekte, MLFlow -Modelle.
- Floydhub A Heroku für Deep Learning (Sie konzentrieren sich auf das Modell, sie werden einsetzen)
- Mit Comet.ML Comet können Datenwissenschaftler und -teams Experimente und Modelle über den gesamten Lebenszyklus des Modells verfolgen, vergleichen, erklärt und optimieren. Von der Ausbildung bis zur Produktion
- https://neptune.ai/ Verwalten
- https://github.com/fastai/nbdev Erstellen Sie entzückende Python -Projekte mit Jupyter -Notizbüchern
- https://rapids.ai/ Data Science on gpus
- https://github.com/datarevenue-berlin/openmlops
- https://github.com/jacopotagliabue/you-dont-need-a-bigger-boat nicht wirklich ein Tool, sondern ein Leitfaden, wie man viele Tools in realer Welt zusammenfasst.
- https://www.modular.com/ Ein Unternehmen mit ehrgeizigem Ziel, die KI -Infrastruktur von Grund auf neu zu gestalten. Sie stellen eine neue Sprache namens Mojo vor, die ein Superet von Python ist.
GPU -Cloud
Denken Sie daran, dass dies eine Meinung ist. Es gibt Bazillionen von Cloud -Anbietern. Ich werde sie nicht alle auflisten. Ich werde nur die auflisten, mit denen ich vertraut bin, und ich finde es gut.
- https://lightning.ai/ Lightning Studio ermöglicht es Ihnen, Ihren High-End-Laptop für die Entwicklung maschineller Lernmodelle abzuwehren. Schreiben Sie einfach Code in der Cloud mit VSCODE und verwenden Sie ihren GPUs für Training oder Inferenz. Lightning Studio ähnelt GitHub -Codenspaces, jedoch mit GPU.
- Mit https://modal.com/ MODAL können Sie maschinelles Lernmodelle, massiv parallele Berechnung von Jobs, Aufgabenwarteschlangen, Web -Apps und vieles mehr ausführen oder bereitstellen, ohne Ihre eigene Infrastruktur.
- https://www.runpod.io/ Sparen Sie über 80% bei GPUs. Die GPU -Miete wurde mit Jupyter für Pytorch, Tensorflow oder ein anderes AI -Framework einfach gemacht. Ich habe es schon einmal benutzt. Ziemlich einfach zu bedienen.
- https://replikat.com/modelle rennen und fein-tune. Stellen Sie benutzerdefinierte Modelle in Skala mit COG bereit. Alle mit einer Codezeile.
- https://bentoml.com/ Bentoml ist die Plattform für Software -Ingenieure, um KI -Produkte zu erstellen. Verwenden Sie mithilfe des Bentoml -Pakets.
- https://www.baseten.co/ schnelle und skalierbare Modellinferenz in der Cloud mit Truss
- https://lambdalabs.com/ GPU -Cloud für Deep Learning. Sofortiger Zugang zu den besten Preisen für Cloud -GPUs auf dem Markt. Keine Verpflichtungen oder Verhandlungen erforderlich. Sparen Sie über 73% gegenüber AWS, Azure und GCP. Konfiguriert für Deep Learning mit Pytorch, TensorFlow, Jupyter
- https://www.beam.cloud/ On-Demand GPU Compute: Zug und Bereitstellung von AI- und LLM-Anwendungen sicher auf serverloser GPUs, ohne die Infrastruktur zu verwalten
Datenspeicherung
- https://github.com/huggingface/datasets/ Ein Paket zum Laden, Vorverarbeitung und Freigeben von Datensätzen.
- https://github.com/activeloopai/deulake Data Lake für Deep Learning. Erstellen, Verwalten, Abfragen, Versionen und visualisieren Sie Datensätze. Stream-Daten in Echtzeit auf Pytorch/TensorFlow.
- https://github.com/determined-ai/yogadl Annäherung an Datenbelastung für Deep Learning. API-transparenter Zwischenspeicherung an Scheibe, GCS oder S3.
- https://github.com/google/ml_collections ML -Sammlungen sind eine Bibliothek von Python -Sammlungen, die für ML -Anwendungsfälle entwickelt wurden. Es enthält ConfigDict, eine "diktähnliche" Datenstrukturen mit Punktzugriff auf verschachtelte Elemente. Es soll als Hauptmethode verwendet werden, um Konfigurationen von Experimenten und Modellen auszudrücken.
Daten umstreiten
Datenreinigung und Datenvergrößerung
- https://github.com/cgnorthcutt/cleanLab Clean Labeling -Fehler des Datensatzes
- https://github.com/aleju/imgaug Bildvergrößerungsbibliothek, die das Umwandeln von Tastoint in Heatmaps unterstützt
- https://github.com/albu/albumentations schnellste Bildvergrößerungsbibliothek
- https://github.com/mdbloice/Augmentor Einfach-uswus-Bildvergrößerung für Klassifizierungsaufgaben (keine Tastaturen erhöhen)
- https://github.com/facebookResearch/augly Eine Datenvergrößerungsbibliothek für Audio, Bild, Text und Video.
Datenorchestrierung
- https://github.com/prefecthq/prefect
- https://github.com/dagster-io/dagster
- https://github.com/pleomber/pleomber ploomber ist der schnellste Weg, um Datenpipelines zu erstellen. Verwenden Sie Ihren bevorzugten Editor (Jupyter, VSCode, Pycharm), um sich interaktiv zu entwickeln und ☁️ ohne Codeänderungen (Kubernetes, Luftstrom, AWS -Batch und Slurm) zu entwickeln.
- https://github.com/orchest/orchest bauen Datenpipelines, auf einfache Weise mit der benutzerfreundlichen Benutzeroberfläche
Datenvisualisierung
- https://github.com/gradio-app/gradio erstellen Sie die Benutzeroberfläche für Ihr maschinelles Lernen in Python in 3 Minuten. Die Benutzeroberfläche ist eine Web-App, die an alle freigegeben werden kann, auch nicht technisch. Eine der Merkmale, die ich mag, ist die Beispielkomponente. Es zeigt Ihnen sehr gut, dass diese App für maschinelles Lernen verwendet wird.
- https://github.com/streamlit/streamlit streamlit verwandelt Datenskripte in wenigen Minuten in gemeinsam genutzbare Web -Apps. Alles in Python. Alles kostenlos. Keine Front -End -Erfahrung erforderlich.
- https://github.com/oegedijk/explainerDashboard erstellen schnell erklärbare AI-Dashboards, die das innere Arbeitsbereich so-callerierter "Blackbox" maschinelles Lernensmodelle anzeigen.
- https://github.com/lux-org/lux, indem Lux einfach einen Datenframe in einem Jupyter-Notizbuch ausgedruckt hat, empfiehlt Lux eine Reihe von Visualisierungen, in denen interessante Trends und Muster im Datensatz hervorgehoben werden.
- https://github.com/slundberg/shap Shap (Shapley Additive Erklärungen) ist ein theoretischer Spielansatz, um die Ausgabe eines maschinellen Lernmodells zu erklären.
- https://github.com/comet-ml/kangas kangas ist ein Werkzeug zum Erforschen, Analysieren und Visualisieren von Multimedia-Daten. Es bietet eine unkomplizierte Python -API für die Protokollierung großer Datentabellen sowie eine intuitive visuelle Schnittstelle zum Ausführen komplexer Abfragen an Ihrem Datensatz.
Hyperparameterabstimmung
Bevor Sie beginnen, lesen Sie bitte diesen Blog-Beitrag, um die Motivation der Suche im Allgemeinen zu verstehen: https://www.determined.ai/blog/stop-doing-itorative-model-development
Öffnen Sie Ihre Augen, um die Entwicklung zu suchen. Es wird dich verändern. Hauptvorteil ist, dass es keine Rückschläge geben wird. Es sind nur Fortschritte und Verbesserungen zulässig. Stellen Sie sich vor, Sie arbeiten jeden Tag und Fortschritte, anstatt rückwärts zurückzukehren, da Ihre neue Lösung nicht funktioniert. Dieser garantierte Fortschritt ist die, die Sie mit der Suche nach Suchgrenze auswirken werden. Wenden Sie es auf alles in der Optimierung an, nicht nur auf maschinelles Lernen.
Meine wichtigsten Präferenzen werden aufgrund der Parallelisierung (verteilte Abstimmung auf viele Maschinen), Flexibilität (können willkürliche Ziele optimieren und die Datensatzparameter ermöglichen), Bibliothek mit SOTA -Tuning -Algorithmen (z.
- https://github.com/determined-ai/determined bestimmt ist eine Open-Source Deep Learning-Trainingsplattform, die das Erstellen von Modellen schnell und einfach macht. IMO, es ist am besten, um Hyperparameter von Deep -Learning -Modellen billig abzustimmen, da es viele Epochen für Modelle schult, die vielversprechende Metriken und frühe Stoppmodelle aufweisen, die dies nicht tun. Sie unterstützen AWS und die meisten Cloud-Dienste als erstklassige Bürger. Sie unterstützen auch präventible Instanzen, was wiederum billig ist. Wenn Sie das Training beenden, werden alle GPU -Instanzen automatisch heruntergefahren. Wenn Sie Geld für groß angelegte Schulungen sparen möchten, gehen Sie mit entschlossenem.
- https://docs.ray.io/en/master/tune/index.html Ray Tune ist eine Python -Bibliothek zur Experimentierung und zur Hyperparameter -Abstimmung in jeder Skala. Wenn Sie nach einer verteilten Abstimmung suchen, ist Ray Tune wahrscheinlich das schwerwiegendste Rahmen.
- https://github.com/optuna/optuna ein automatisches Hyperparameter-Optimierungssoftware-Framework (Framework Agnostic, Define-by-Run)
- https://github.com/pyhopper/pyhopper pyhopper ist ein Hyperparameteroptimierer, der speziell für hochdimensionale Probleme in der Forschung und den Unternehmen für maschinelles Lernen erfolgt. Dieser Typ behauptete, es sei 10x schneller als Optuna. Ist diese Behauptung wahr? Wir können es nicht wissen, bis wir es versuchen!
- https://github.com/keras-team/keras-tuner Eine leicht zu verwendende, verteilbare Hyperparameteroptimierung für Keras; Lesen Sie seinen Artikel hier
- https://github.com/autonomio/talos Hyperparameteroptimierung für Keras, Tensorflow (TF.keras) und Pytorch
- https://github.com/maxpumperla/hyperas keras + hyperopt: ein sehr einfacher Wrapper für eine bequeme Hyperparameteroptimierung
- https://github.com/fmfn/Bayesianoptimization Eine Python -Implementierung der globalen Optimierung mit Gaußschen Prozessen.
- https://github.com/hyperopt/hyperopt
- https://github.com/msu-coinlab/pymoo Multi-Objektive-Optimierung in Python
- https://github.com/google/vizier Open Source Vizier: Zuverlässige und flexible Black-Box-Optimierung. OSS Vizier ist ein Python-basierter Dienst für Black-Box-Optimierung und -forschung, basierend auf Google Vizier, einem der ersten Hyperparameter-Tuning-Dienste, die für die Arbeit im Maßstab entwickelt wurden.
Automl
Machen Sie Maschinen ohne die mühsame Aufgabe des Feature -Engineering, der Modellauswahl und des Hyperparameter -Tunings lernen, die Sie selbst tun müssen. Lassen Sie die Maschinen maschinelles Lernen für Sie durchführen!
Wenn ich einen tabellarischen Datensatz habe, würde ich zuerst Flaml und Mljar probieren, insbesondere wenn Sie etwas schnell zum Laufen bringen möchten. Wenn Sie Gradienten -Boosting -Frameworks wie Xgboost, LightGBM, Catboost usw. ausprobieren möchten, aber Sie wissen nicht, welches am besten funktioniert. Ich empfehle Ihnen, zuerst Automl zu probieren, da dies intern die zuvor erwähnten Gradient -Boosting -Frameworks probiert.
- Best OpenSource Automl Frameworks im Jahr 2021 Ein Artikel über Medium mit einer kuratierten Liste von OpenSource -Automl -Frameworks.
- https://github.com/dabl/dabl Datenanalyse Basisbibliothek; Trainieren Sie schnell ein einfaches Modell, das als Leistungsbasis verwendet werden soll
- https://www.automl.org/ Suchen Sie kuratierte Liste der Automl -Bibliotheken und -untersuchungen
- https://github.com/jhfjhfj1/autokeras Zum Schreiben (24. August 2018) ist diese Bibliothek ziemlich verfrüht, da sie nur eine Klassifizierung durchführt.
- https://github.com/automl/auto-sklearn/ wird nicht unter Windows ausgeführt, Sie müssen WSL (Windows-Subsystem für Linux) installieren, um es zu verwenden
- https://github.com/epistasilab/tpot Führen Sie Tausende von Pipelines für maschinelles Lernen aus und geben Sie den Code für Sie aus
- https://github.com/climbsrocks/auto_ml Lesen Sie, was der Autor über den Vergleich zwischen TPOT und auto-sklearn denkt
- https://github.com/microsoft/flaml schnelle und leichte Autoren mit kostengünstigen wirtschaftlichen Optimierungsalgorithmen.
- https://github.com/mljar/mljar-supervised Ein automatisiertes Python-Paket für maschinelles Lernen, das mit tabellischen Daten funktioniert. Mir gefällt, dass es einen Visualisierungsbericht (im Erklärungsmodus) und zusätzliche Funktionen für Ihre goldenen Funktionen und K-Mittelfunktionen erzeugt.
- https://github.com/awslabs/autogluon automl für Text, Bild und tabellarische Daten. Aber es unterstützt keine Windows (ab dem 11. Oktober 2021).
- https://github.com/autoviml/auto_viml auto_viml wurde für die Erstellung hochleistungsfähiger interpretierbarer Modelle mit den wenigsten erforderlichen Variablen entwickelt.
Modellarchitekturen
Architekturen, die auf dem neuesten Stand der Technik auf ihrem Gebiet sind.
- https://github.com/rwightman/pytorch-image-models pytorch Bildmodelle, Skripte, vorgefertigte Gewichte-Resnet, Resnext, Efficienzus, Efficienznetv2, NFNet, Vision-Transformator, Mixnet, Mobilenet-V3/V2, Regnet, DPN, CSPN und mehr. Es wird normalerweise
timm genannt. - https://modelzoo.co/ Model Zoo
- https://github.com/tensorflow/models
- Magenta: Musik und Kunstgeneration mit maschineller Intelligenz
- https://github.com/phillipi/pix2pix Image-to-image-Übersetzung mit bedingten kontroversen Netzen; TensorFlow -Port von PIX2Pix; Sehen Sie sich die Präsentation dieser Arbeit an: Lernen Sie ohne Lehrer zu lernen
- WAV2Letter Facebook AI Researchs automatisches Spracherkennungs -Toolkit
- https://github.com/huggingface/transformers staat-of-the-art natürliche Sprachverarbeitung für TensorFlow 2.0 und Pytorch
- https://github.com/huggingface/diffusers? Diffusoren: hochmoderne Diffusionsmodelle für die Bild- und Audiogenerierung in Pytorch
- https://bigscience.huggingface.co/blog/Bloom Open großes Sprachmodell von BigScience LLM. Artikel
- https://github.com/hpcaitech/colossalai Artikel
- https://stability.ai/blog/stable-diffusion-public-release stabil diffusion ist ein Modell, das hochwertige Bilder aus kurzen Textbeschreibungen erzeugen kann. Hier ist ein kurzer Twitter -Thread, der erklärt, warum er so gut funktioniert. Und hier ist ein Thread mit Ressourcen, um mehr über Diffusionsmodelle zu erfahren.
Schnelltechnik
Großsprachige Modelle (LLMs) wie GPT-3 sind leistungsstark, müssen jedoch aufgefordert werden, die gewünschte Ausgabe zu erzeugen. Hier kommt Proportion Engineering ins Spiel. Umkämpfte Engineering ist das Entwerfen von Eingabeaufforderungen, mit denen die gewünschte Ausgabe generiert werden kann.
- https://github.com/hwchase17/langchain Es ist ein Python -Paket zum Erstellen von Anwendungen mit LLMs durch Komposition.
- https://dust.tt/ Ein webbasiertes Tool zum Entwerfen und Bereitstellen von großsprachigen Modell-Apps.
- https://github.com/jerryjliu/gpt_index GPT Index ist ein Projekt, das aus einer Reihe von Datenstrukturen besteht, die mit LLMs erstellt werden und mithilfe von LLMs überquert werden können, um Abfragen zu beantworten.
- https://github.com/xpitfire/symbolicai/ Compositional Differenzierbare Programmierbibliothek: Erstellen von Anwendungen mit LLMs im Kern durch unsere symbolische API nutzt die Kraft der klassischen und differenzierbaren Programmierung in Python.
Schöne Blogs & Vlogs folgen folgen
- https://www.pyimagesearch.com/ häufig aktualisiertes Blog über OpenCV und Deep Learning
- http://colah.github.io/ Schöne Erklärungen mit schönen Visualisierungen
- https://karpathy.github.io/ Er hat einige Kurse über tiefe Netze unterrichtet und bei Tesla als KI -Direktor gearbeitet.
- http://ruder.io Sebastian Ruder's Deep Learning und NLP Blog
- http://www.wildml.com/
- https://machinelearningmastery.com/ enthält viele Inhalte und schöne Website
- Die YouTube -Wiedergabelisten von Sirajology viele dichte kurze lustige Einführung in ML
- Zwei Minuten Papiere auf Deep Learning Playlist
- Destill.pub Ein modernes Medium zur Präsentation von Forschungen im maschinellen Lernen
- Deeplearn.org Deep Learning Monitor; Nachrichten über Deep Learning Papers und Tweets
- Datarevenue -Blog über Mlops meistens
- https://www.youtube.com/c/andrejkarpathy Andrej Karparthy hat einen neuen YouTube-Kanal erstellt, nachdem er das Tesla Autopilot-Team verlassen hatte, um den Menschen beizubringen, wie man neuronale Netze im "geschriebenen" Stil "geschrieben" implementiert.
- https://e2eml.school/blog.html End-to-end-Blog, das viele Themen im Detail abdeckt, z. B. wie Transformatoren funktionieren.
- https://jalammar.github.io/ Visualisieren maschinelles Lernen jeweils ein Konzept. Sein Blog enthält illustrierte Erklärungen von ML -Konzepten wie Transformator oder stabiler Diffusion.
- Radek Osmulski Blog Er bloggt über DL -Techniken und -Strategien, die Sie nutzen können, um schneller zu lernen.
Wirkungsvolle Menschen
- Geoffrey Hinton, er wurde als Pate von Deep Learning bezeichnet, indem er 2 revolutionierte Techniken (Relu und Dropout) mit seinen Schülern einführte. Diese Techniken lösen das Problem der verschwindenden Gradienten und Verallgemeinerung von tiefen neuronalen Netzwerken.
- Yann Lecun, er erfand CNNs (Figolutional Neural Networks), die Art von Netzwerk, die heute bei Computer Vision -Entwicklern sehr beliebt ist. Derzeit arbeitet bei Meta.
- Yoshua Bengio another serious professor at Deep Learning, you can watch his TEDx talk here (2017)
- Andrew Ng he discovered that GPUs make deep learning faster. He taught 2 famous online courses, Machine Learning and Deep Learning specialization at Coursera. particular type of RNN)
- Jeff Dean, a Google Brain engineer, watch his TEDx Talk
- Ian Goodfellow, he invented GANs (Generative Adversarial Networks), is an OpenAI engineer
- David Silver this is the guy behind AlphaGo and Artari reinforcement learning game agents at DeepMind
- Demis Hassabis CEO of DeepMind, has given a lot of talks about AlphaGo and Reinforcement Learning achievements they have
- Andrej Karparthy he teaches convnet classes, wrote ConvNetJS, and produces a lot of content for DL community, he also writes a blog (see Nice Blogs & Vlogs to Follow section)
- Pedro Domingos he wrote the book The Master Algorithm: How the Quest for the Ultimate Learning Machine Will Remake Our World , watch his TEDx talk here
- Emad Mostaque he is the founder of stability.ai, a company that releases many open source AI models including Stable Diffusion
- Sam Altman he is the president of OpenAI, a company that releases ChatGPT
Cutting-Edge Research Publishers
Steal the most recent techniques introduced by smart computer scientists (could be you).
- http://www.arxiv-sanity.com/ Arxiv Sanity Preserver
- https://research.facebook.com/ai/
- http://research.google.com/pubs/MachineIntelligence.html
- https://deepmind.com/research/ Research of DeepMind company
- https://www.openai.com/
- https://www.openai.com/requests-for-research/
- State of the art performance on each ML task
- State-of-the-art result for all Machine Learning Problems
- https://stability.ai/ is releasing a lot of open source high-quality models.
- https://twitter.com/ai__pub AI papers and AI research explained, for technical people.
- https://twitter.com/_akhaliq is a Twitter account that tweets the latest research papers in the field of AI.
Practitioner Community
- https://www.kaggle.com
- https://gym.openai.com
- https://universe.openai.com/
- /r/MachineLearning
- https://www.facebook.com/groups/DeepNetGroup/
Thoughtful Insights for Future Research
- Why AI is Harder Than We Think
- The Consciousness Prior by Yoshua Bengio
- What Can't Deep Learning Do? a list of problems that deep learning faces
- Pedro Domingos: "The Master Algorithm" - Talks at Google
- The AI Revolution: The Road to Superintelligence
- https://ai100.stanford.edu/2016-report
- Why does Deep Learning work so well? - The Extraordinary Link Between Deep Neural Networks and the Nature of the Universe
- These are three of the biggest problems facing today's AI
- Four Questions For: Geoff Hinton Geoff Hinton is referred to as "godfather of neural networks"
- What product breakthroughs will recent advances in deep learning enable? - Quora
- Liquid Neural Networks
Uncategorized
- Artificial Intelligence: A Modern Approach (Online Book)
- The Principles of Modern Game AI
- Scipy Lecture Notes
- https://www.youtube.com/user/aicourses
- The Fundamentals of Neuroscience learn how our brain works so that you can discover new deep learning breakthrough
- Bayesian Methods for Hackers An introduction to Bayesian methods + probabilistic programming with a computation/understanding-first, mathematics-second point of view. All in pure Python ;)
Other Big Lists
- https://github.com/ahmedbahaaeldin/From-0-to-Research-Scientist-resources-guide This guide is designated to anybody with basic programming knowledge or a computer science background interested in becoming a Research Scientist with on Deep Learning and NLP.
- https://www.mrdbourke.com/ml-resources/ Machine Learning Courses & Resources recommendation by Daniel Bourke
- List of MLOps Courses and Books by Damien Benveniste on Facebook
- https://github.com/collections/machine-learning
- https://github.com/topics/machine-learning
- https://github.com/topics/mlops
- https://github.com/GokuMohandas/MadeWithML Join 30K+ developers in learning how to responsibly deliver value with ML.
- https://papers.labml.ai/papers/daily
- https://github.com/alirezadir/Production-Level-Deep-Learning
- https://github.com/jindongwang/transferlearning
- https://github.com/kmario23/deep-learning-drizzle
- https://github.com/ZuzooVn/machine-learning-for-software-engineers
- https://github.com/josephmisiti/awesome-machine-learning
- https://github.com/ujjwalkarn/Machine-Learning-Tutorials
- https://github.com/terryum/awesome-deep-learning-papers
- https://github.com/ChristosChristofidis/awesome-deep-learning
- https://github.com/Developer-Y/cs-video-courses#machine-learning
- Deep Learning Resources by Jeremy D. Jackson
- https://github.com/songrotek/Deep-Learning-Papers-Reading-Roadmap
- https://github.com/aikorea/awesome-rl Awesome Reinforcement Learning
- https://github.com/artix41/awesome-transfer-learning Awesome Transfer Learning
- https://github.com/heejkoo/Awesome-Diffusion-Models Awesome Diffusion Models
- https://github.com/Renumics/awesome-open-data-centric-ai Data-centric AI is the practice of systematically engineering the data used to build AI systems.
- https://github.com/labmlai/annotated_deep_learning_paper_implementations
- https://github.com/ashishpatel26/500-AI-Machine-learning-Deep-learning-Computer-vision-NLP-Projects-with-code
I am confused, too many links, where do I start?
If you are a beginner and want to get started with my suggestions, please read this issue: #4
Haftungsausschluss
From now on, this list is going to be compact and opinionated towards my own real-world ML journey and I will put only content that I think are truly beneficial for me and most people. All the materials and tools that are not good enough (in any aspect) will be gradually removed to combat information overload, including:
- too difficult materials without much intuition; impractical content
- too much theory without real-world practice
- low-quality and unstructured materials
- courses that I don't consider to enroll myself
- knowledge or tools that are too niche and not many people can use it in their works eg deepdream or unsupervised domain adaptation (because you can Google it if you want to use it in your work).
- tools that are beaten by other tools; not being state-of-the-art anymore
- commercial tools that look like it can die any time soon
- projects that are outdated or not maintained anymore
NOTE : There is no particular rank for each link. The order in which they appear does not convey any meaning and should not be treated differently.
How to contribute to this list
- Fork this repository, then apply your change.
- Make a pull request and tag me if you want.
- Das war's. If your edition is useful, I'll merge it.
Or you can just submit a new issue containing the resource you want me to include if you don't have time to send a pull request.
The resource you want to include should be free to study.