1 Punkte von GN⁺ 2023-12-16 | 1 Kommentare | Auf WhatsApp teilen

Der beste Weg, in die Entwicklung von Künstliche-Intelligenz-/Machine-Learning-Fähigkeiten zu investieren

  • Eine Frage, die nach Meinungen dazu fragt, wie man Zeit und Energie am besten investiert, wenn man täglich etwa 1 Stunde für die Entwicklung von Fähigkeiten in Künstlicher Intelligenz (AI) / Machine Learning (ML) aufwendet.
  • Es werden verschiedene Methoden vorgeschlagen, und für jede werden konkrete Beispiele oder Empfehlungen erbeten.
    • Kleine Projekte bauen (Was soll man entwickeln?)
    • Blogs/Newsletter lesen (Welche sollte man lesen?)
    • Kurse belegen (Welche Kurse sollte man machen?)
    • Lehrbücher lesen (Welche Bücher sollte man lesen?)
    • An Kaggle-Wettbewerben teilnehmen
    • Sich an AI/ML-Foren und -Communities beteiligen
    • Eine Kombination aus den oben genannten Methoden (wenn möglich, mit Angabe von Zeitanteilen/Gewichtung)
  • Diese Frage wird allgemein gestellt, um Software-Ingenieuren dabei zu helfen, ihre Fähigkeiten im Bereich ML aufzubauen.

Meinung von GN⁺

  • Wichtigkeit: Künstliche Intelligenz und Machine Learning gehören derzeit zu den am schnellsten wachsenden Bereichen der Technologiewelt und haben sich zu unverzichtbaren Kompetenzen für Software-Ingenieure entwickelt. Der Aufbau von Fähigkeiten in diesem Bereich kann die Karriereentwicklung erheblich fördern.
  • Interessantheit: AI/ML bringt Innovationen in zahlreiche Branchen und Anwendungsfelder, und Lernen sowie praktische Übungen in diesem Bereich bieten die Möglichkeit, kreative und anspruchsvolle Projekte zu entwickeln.
  • Vielfalt der Lernmethoden: Die vorgeschlagenen Lernmethoden lassen sich je nach individuellem Lernstil und Ziel flexibel anpassen, und diese Vielfalt kann dabei helfen, für jeden den optimalen Lernpfad zu finden.

1 Kommentare

 
GN⁺ 2023-12-16
Hacker-News-Kommentare
  • Erfahrungen aus dem Studium

    • Einen Master in ML (Machine Learning) an einer guten Universität gemacht. Was man dort gelernt hat, hätte man auch allein lernen können, aber die Universität bot Fokus und Druck, die man allein nicht aufbringen kann.
    • Die Umsetzung von Papers war die lehrreichste Erfahrung. Vorlesungen und Lehrbücher sind nur Worte; es selbst zu machen vermittelt deutlich tieferes Wissen.
    • Man kann verschiedene Curricula empfehlen, aber eine Stunde konzentrierter Problemlösung ist am besten.
    • Einige Projektvorschläge: ein kleines neuronales Netz trainieren, um einfache Funktionen zu lernen, einen MNIST-Ziffernklassifikator bauen, GPT2 auf einem speziellen Korpus feinabstimmen, ein Siamese-Netz zur Messung visueller Ähnlichkeit trainieren usw.
    • Der Rat lautet, keine Zeit damit zu verschwenden, ein eigenes neuronales Netz und Backpropagation selbst zu schreiben, sondern lieber den Umgang mit Profiling- und Debugging-Tools zu lernen.
  • Rat von einem KI-Forscher und Tech-Gründer

    • Wenn es um aktuelle Entwicklungen geht, sollte man keinem linearen Pfad folgen. Lieber einen Kurs und ein kleines Projekt machen, sich eine Zeitgrenze setzen und versuchen, es abzuschließen.
    • Ein interessantes Forschungsgebiet suchen, den zugehörigen GitHub-Code ausführen und Wege finden, ihn zu verbessern oder in einer App einzusetzen.
    • Empfohlen werden der fast.ai-Kurs, Blogposts von Karpathy sowie die Stanford-Kurse cs231n und cs234.
    • Ein Projekt finden, das einen interessiert, und es ausführen.
  • Die Bedeutung der praktischen Umsetzung von ML

    • Viele Kommentare werden die Low-Level-Seite von ML betonen, aber was ML derzeit braucht, sind kluge Leute auf der Umsetzungsebene.
    • Es ist wichtig und notwendig, mit bestehender LLM-Technologie Software zu bauen, die normale Menschen nutzen können.
    • Tägliche Übung kann heißen: Anwendungsskizzen entwerfen, Prompts und Function Calling strukturieren, lernen, wie man das Vermarktung von dem, was man gebaut hat, angeht, und Tools entwickeln, die etwas von null auf eins bringen.
    • Als Beispiele werden genannt, eine Technik gemeinsamer Katalogisierung aus der Zeit des Aristoteles auf das heutige Zeitalter der Embeddings anzuwenden und eine reine MD-Spezifikation zu verstehen und mit einem Streaming-Generierungsmodell zu integrieren.
  • AI/ML zur täglichen Arbeit machen

    • Einen Weg finden, AI/ML auf den kritischen Pfad zu setzen. Ähnlich wie beim Erlernen einer neuen Sprache ist nichts so wirksam wie vollständige Immersion.
    • Wenn man noch nicht genug Grundlagen hat, um in dem Bereich einen Job zu bekommen, ist ein Herzensprojekt zu finden und ständig über neue Lösungswege nachzudenken die nächstbeste Methode.
    • Zuletzt sollte man überlegen, wieder zur Schule zu gehen. Das dauert mehr als eine Stunde pro Tag, aber man sieht deutlich schneller und konkreter Ergebnisse als mit anderen Lernstrategien.
  • Typische Roadmap für ML-/AI-Studierende

    • Vorwissen in Mathematik, Informatik usw. ist nötig. Dazu gehören meist Analysis, lineare Algebra, Wahrscheinlichkeit und Statistik, Programmierung, objektorientierte Programmierung, Datenstrukturen und Algorithmen usw.
    • Nach einem grundlegenden ML-Kurs folgt der Basisteil des sich schnell entwickelnden DL (Deep Learning).
    • Danach teilt es sich in ML Engineering und ML Research. Engineering befasst sich mit den technischen Aspekten rund um ML-Pipelines, Forschung mit der Wissenschaft selbst.
    • Wie andere schon sagen, ist es hilfreich und macht Spaß, mit vorhandenen Tools zu implementieren. Wer versucht, alle Modelle selbst zu implementieren, wird wahrscheinlich große Schwierigkeiten bekommen.
    • Beim Lernen von „praktischem“ ML versucht man, Modelle so zu implementieren, dass Daten per API eingespeist und Ergebnisse zurückgegeben werden können. Das bringt Herausforderungen wie Datenverarbeitung, Softwareentwicklung und Hosting sowie API-Entwicklung mit sich.
  • Die Grenzen von AI/ML erkennen

    • Die eigene Vorstellungskraft nicht zu weit laufen lassen und AI/ML nicht überschätzen.
    • Jemand war zwei Jahre lang an ML-Projekten in einem großen Unternehmen beteiligt, stellte aber fest, dass sie keine Verbesserung gegenüber bestehenden statistischen Methoden brachten und dass die fehlende Fähigkeit, die „Black Box“ von ML zu verstehen, zu keiner echten Prozessverbesserung führte.
    • Vieles in ML war eine Lösung auf der Suche nach einem Problem.
    • Wichtig ist auch zu verstehen, wie man Datenbanken (SQL und NoSQL) verwendet. Um ML effektiv einzusetzen, braucht man hervorragende Fähigkeiten darin, große Datenmengen performant zu programmieren.
  • Wie man AI/ML studiert

    • „An Introduction to Statistical Learning with Applications in R/Python“ von Hastie und anderen von Anfang bis Ende lesen und die beschriebenen Konzepte, Ideen, Nuancen und Feinheiten verstehen.
    • Mathematik-/Statistikbücher bereithalten und bei unbekannten mathematischen Verfahren sofort nachschlagen oder kurze YouTube-Videos ansehen, um Konzept und Anwendung zu verstehen.
    • Das ist der einfachste und direkteste Weg, AI/ML zu lernen und zu verstehen. Alles andere, was in diesem Thread erwähnt wird, sollte erst danach kommen.
  • Die Verbindung von ML und Engineering

    • Die Schnittstelle zwischen ML und Engineering betrachten.
    • ML ops, die Anwendung von DevOps, Testing und ci/cd im ML-Bereich, Training über mehrere GPUs hinweg sowie insbesondere das Hosting von LLMs in großem Maßstab und zu niedrigen Kosten in Betracht ziehen.
    • In der Wissenschaft gibt es Hunderte Kandidaten mit starkem akademischem Hintergrund, aber nur sehr wenige erfahrene Engineers, die deren Ambitionen umsetzen können.
  • Fokus auf Deep Learning

    • Die meisten LLMs verwenden die Transformer-Architektur. Darüber kann man visuell lernen, etwa über Blogposts oder Materialien von Andrej Karpathy.
    • Um bei den wöchentlich erscheinenden Papers auf dem Laufenden zu bleiben, werden jeden Sonntag Zusammenfassungen gelesen.
    • Um mehr über die Engineering-Seite zu lernen, kann man dem Discord-Server von EleutherAI beitreten oder GitHub-Diskussionen zu Projekten wie llama.cpp verfolgen.
    • Die effizienteste Art zu lernen ist wahrscheinlich, wichtige Papers des Fachgebiets nachzuimplementieren. Man hat ein klares Ziel, klare Anzeichen für Erfolg und viele Implementierungen, an denen man Arbeit überprüfen, vergleichen und lernen kann.
  • Quiz für LLM-Einsteiger

    • Kürzlich wurde eine Einführungsveranstaltung zu LLMs für nicht-CS-Postgraduierte (Biomedizin) gehalten. Es sollte ein Hausaufgaben-Quiz vergeben werden, aber es ließ sich nichts Gutes finden, also wurde ein Multiple-Choice-Quiz erstellt. Dieses Quiz ist „teuflisch“ und ohne solides Verständnis fällt man leicht darauf herein. Einige Fragen enthalten Nuancen, die das Verständnis prüfen und beim Lernen helfen, indem man versucht, die richtige Antwort zu finden. Es ist ein Google-Formular, das keine E-Mail-Adressen sammelt.