„Machine Learning Study allein ausprobieren“
(github.com/teddylee777)1. Zweck und Aufbau des Dokuments
- Dieser Beitrag ist eine systematisch zusammengestellte Lernsammlung für Menschen, die Machine Learning und Deep Learning im Selbststudium lernen möchten, mit Vorlesungen, Blogs, GitHub-Repositories, Papers, Datensätzen und mehr.
- Es ist nicht nur eine einfache Linkliste, sondern zeigt auch Lernschwierigkeit und Einsatzzweck auf, damit Einsteiger wissen, in welcher Reihenfolge sie am besten lernen.
- Behandelt werden Themen von Python über Mathematik und Statistik bis hin zu Machine Learning, Deep Learning, LLMs und praktischen Kaggle-Übungen.
- Das Ganze wird als offenes GitHub-Projekt betrieben, zu dem mehrere Mitwirkende Materialien hinzufügen.
2. Empfohlene Lernreihenfolge
- Empfohlen wird ein Ablauf, bei dem man zuerst die Python-Syntax lernt, dann Daten mit NumPy und Pandas verarbeitet und sie mit Werkzeugen wie Matplotlib visualisiert.
- Anschließend lernt man lineare Algebra, Differentialrechnung sowie Wahrscheinlichkeitsrechnung und Statistik, um die Prinzipien von Machine-Learning-Algorithmen zu verstehen.
- Im nächsten Schritt werden klassisches Machine Learning mit Scikit-learn und Deep Learning auf Basis von TensorFlow und PyTorch behandelt.
- Am Ende soll man durch Kaggle-Projekte, Paper-Reproduktionen und reale Datenanalysen seine praktische Kompetenz steigern.
3. Grundlagen in Mathematik und Statistik
- Es sind Vorlesungen zusammengestellt, die mathematische Konzepte erklären, die für das Lernen von AI nötig sind, etwa Vektoren, Matrizen, Ableitungen, partielle Ableitungen, natürlicher Logarithmus und Ähnlichkeitsmaße.
- Im Bereich Statistik werden Wahrscheinlichkeitsverteilungen, Normalverteilung, Hypothesentests, p-value, Konfidenzintervalle und die Bayes-Theorie behandelt.
- Enthalten sind auch Materialien zu AR, MA und ARIMA für die Zeitreihenanalyse sowie zur Fourier-Transformation und Empirical Mode Decomposition in der Signalverarbeitung.
- Vorrangig empfohlen werden Einsteigermaterialien, mit denen sich komplexe Formeln durch Abbildungen und handschriftliche Vorlesungen leicht verstehen lassen.
4. Klassisches Machine Learning
- Zunächst werden die grundlegenden Prinzipien erklärt, wie Modelle lernen, etwa Gradientenabstieg, Backpropagation und Loss Functions.
- Behandelt werden typische Algorithmen wie lineare Regression, logistische Regression, Entscheidungsbäume, KNN, SVM, PCA und Clustering.
- Enthalten sind auch Methoden zur Verringerung von Overfitting wie L1- und L2-Regularisierung sowie Lasso, Ridge und ElasticNet.
- Zu jedem Thema gibt es sowohl Konzeptmaterial als auch Python-Implementierungen, um Theorie und Praxis zu verbinden.
5. Wichtige Bereiche des Deep Learning
- Ausgehend von der Struktur neuronaler Netze werden zentrale Deep-Learning-Modelle wie CNN, RNN, LSTM, GAN und Reinforcement Learning geordnet vorgestellt.
- Im Computer Vision-Bereich werden Anwendungsfälle für Objekterkennung, Bildsegmentierung, autonomes Fahren und OpenCV vorgestellt.
- In der Sprachverarbeitung werden Word2Vec, BERT, GPT, Transformer, Attention und Seq2Seq behandelt.
- Man kann nicht nur den Einsatz einfacher Modelle lernen, sondern auch Papers verstehen, Code implementieren und Hyperparameter anpassen.
6. Aktuelle AI-Technologien und Lernmethoden
- Vorgestellt werden Technologien wie AutoML, Bayes'sche Optimierung, Hyperband und NAS, die Modellstrukturen und Parameter automatisch finden.
- Meta-Learning ist ein Verfahren, um neue Probleme schnell zu lernen, während Active Learning nur die benötigten Daten für das Training auswählt.
- Federated Learning trainiert Modelle gemeinsam auf mehreren Geräten, ohne die Daten auf einem zentralen Server zu sammeln.
- Inkrementelles und Continual Learning behandeln Methoden, mit denen neue Daten fortlaufend gelernt werden, ohne vorhandenes Wissen zu verlieren.
7. LLM, LangChain und ChatGPT
- Vorgestellt werden AI-Agenten wie AutoGPT, die ein vom Nutzer vorgegebenes Ziel in mehrere Schritte aufteilen und automatisch ausführen.
- Anhand von Beispielen wie KoChatGPT und KoAlpaca lassen sich koreanisches LLM-Finetuning sowie RLHF- und LoRA-Techniken lernen.
- Die LangChain-Materialien behandeln, wie sich LLMs mit PDFs, Websites, CSV- und Excel-Dateien sowie Hugging Face-Modellen verbinden lassen.
- Mit der OpenAI API-Dokumentation und dem Cookbook lassen sich Dienste für Frage-Antwort, Dokumentenzusammenfassung und Datenanalyse entwickeln.
8. Praxisnahes Lernen mit Kaggle und Dacon
- Von den ersten Schritten in Kaggle über die Nutzung von Datensätzen und der API bis zu Wettbewerbsabläufen und Siegerlösungen werden Materialien stufenweise bereitgestellt.
- Mit Problemen wie Titanic, Hauspreisen, Kreditrisiken und Fahrradbbedarf lassen sich Klassifikations- und Regressionsaufgaben üben.
- Auch Wettbewerbe und Tutorials nach Bereichen wie Bilderkennung, Sprachverarbeitung, Zeitreihen und Audio sind getrennt aufgeführt.
- Entscheidend ist, bei realitätsnahen Problemen Erfahrungen in Datenvorverarbeitung, Modellvalidierung und Leistungsverbesserung zu sammeln.
9. Unterschiedliche Formen von Lernmaterialien
- Die Vorlesungen bestehen vor allem aus kostenlosen oder öffentlich verfügbaren Inhalten von Coursera, Stanford, T Academy und YouTube.
- In Blogs werden Themen wie Mathematik, Statistik, Papers und Sprachverarbeitung vertieft erklärt.
- GitHub-Repositories enthalten ausführbare Jupyter Notebooks, Beispielcode, vortrainierte Modelle und Datensätze.
- Wikidocs und E-Books eignen sich, um Python, Deep Learning oder algorithmischen Handel wie in einem Buch der Reihe nach zu lernen.
10. Open Data und Entwicklungstools
- Vorgestellt werden verschiedene Datenquellen wie AI Hub, Public Data Portal, Seoul Open Data Plaza und Papers with Code.
- Bibliotheken rund um TensorFlow, PyTorch und Scikit-learn werden nach Einsatzzweck geordnet.
- Enthalten sind auch PublicDataReader zum Abrufen öffentlicher Daten als DataFrame sowie medizinische, visuelle und koreanische Datensätze.
- Es gibt außerdem Materialien zu Docker-basierten Entwicklungsumgebungen und zum Aufbau von GPU-Servern, was beim Einrichten realer Projektumgebungen hilft.
11. Community und Karriereinformationen
- Über Communities wie TensorFlow Korea, PyTorch KR und Kaggle Korea lassen sich Fragen und Informationen nach Technologiebereich austauschen.
- Interviews mit aktiven Data Scientists und Machine-Learning-Ingenieuren geben Einblicke in Arbeit, Jobsuche, Gehalt und Erfahrungen mit einem Graduiertenstudium.
- Man kann sich auch mit Einstiegsmöglichkeiten für Menschen ohne Fachhintergrund sowie den Rollenunterschieden zwischen Data Scientist und ML Engineer befassen.
- Es wird gezeigt, dass neben dem Techniklernen auch Portfolio, Wettbewerbe und Community-Aktivitäten wichtig für die Karrierevorbereitung sind.
Kerneinschätzung
| Perspektive | Inhalt |
|---|---|
| Charakter des Materials | Umfassende Sammlung von Links und Praxismaterialien für das Selbststudium in Machine Learning und AI |
| Wichtigste Vorteile | Große Bandbreite von Grundlagen bis zu aktuellen LLMs und viele kostenlose Materialien |
| Geeignete Leser | AI-Einsteiger, Entwickler, Datenanalysten, Kaggle-Interessierte |
| Nutzungsmethode | Besser einen Lernpfad passend zum eigenen Zielgebiet wählen, statt alle Materialien der Reihe nach durchzugehen |
| Hinweis | Einige Materialien sind älter, daher sollten Bibliotheksversionen und die Aktualität der Technologien geprüft werden |
2 Kommentare
Oh~~ so etwas mag ich~!
Wow, vielen Dank für die großartigen Materialien!