Ich fange an, meine eigenen Fähigkeiten weiterzuentwickeln und war schon immer vom maschinellen Lernen fasziniert. Vor sechs Jahren habe ich mich jedoch entschlossen, stattdessen einen Abschluss in Informatik zu machen, der in keinerlei Beziehung steht.
Ich entwickle seit ungefähr 8-10 Jahren Software und Anwendungen, daher habe ich ein gutes Gespür dafür, aber ich kann die mathematische Seite des maschinellen Lernens / Wahrscheinlichkeiten / Statistik einfach nicht durchdringen.
Ich beginne, mir Lernmaterialien anzuschauen, und auf der ersten Seite könnte es etwas enthalten, das mich verwirrt und sofort eine Barriere für mein Lernen aufbaut.
- Ist ein ausgeprägter mathematischer Hintergrund eine Grundvoraussetzung für ML? Sollte ich versuchen, die Lücken meiner Mathematik auszufüllen, bevor ich mit ML fortfahre? Kann Selbstlernen wirklich nur für Entwickler ohne einen harten Informatikhintergrund funktionieren?
Verwandte Frage:
Antworten:
Stanford (Ng) und Caltech (Abu-Mostafa) haben Kurse zum maschinellen Lernen auf YouTube veröffentlicht. Sie können die Aufgaben nicht sehen, aber die Vorlesungen stützen sich nicht darauf. Ich empfehle, zuerst zu versuchen, diese zu beobachten, da diese Ihnen helfen, herauszufinden, welche Mathematik Sie lernen müssen. Ich glaube, eine sehr ähnliche Klasse mit Aufgaben wird von Andrew Ng auf Coursera unterrichtet, den Ng mitgestaltet hat.
Eine Ausnahme: Wenn ich mich recht erinnere, führt Ng zu Beginn der Stanford-Vorlesungen einige Berechnungen durch, bei denen Ableitungen von Spuren von Matrizenprodukten verwendet werden. Diese sind eher isoliert, machen Sie sich also keine Sorgen, wenn Sie diesen Berechnungen nicht folgen. Ich weiß nicht einmal, welcher Kurs diese abdecken würde.
Sie möchten mit Wahrscheinlichkeit, linearer Algebra, linearer Programmierung und multivariabler Analysis vertraut sein. Sie brauchen jedoch viel weniger als das, was in vielen kompletten College-Klassen zu diesen Themen enthalten ist.
quelle
Abhängig von der Art der Anwendung benötigen Sie als ML-Praktiker nicht unbedingt viel Mathematik.
Als Autodidakt (~ 15 Jahre) und häufiger Schulabbrecher ohne viel Hintergrundwissen in Mathematik (Calculus III) oder Statistik begann ich mit maschinellem Lernen / Data Mining mit ein paar Ressourcen:
Das Buch "Mastering Data Mining: Kunst und Wissenschaft des Kundenbeziehungsmanagements" von Berry und Linoff
Das Buch "Data Mining Techniques" von den gleichen Autoren
R, insbesondere und die Pakete party und nnet
Ich arbeite in einem gemeinnützigen unterstützenden Marketing und Betrieb. Besonders zu Beginn habe ich Data Mining hauptsächlich für Direktwerbung eingesetzt.
Später belegte ich an der CSU Linear Algebra, Andrew Ngs Maschinelles Lernen, Einführung in statistische Methoden (STAT 301) usw.
Ich empfehle Ihnen, mit den beiden Büchern, dem Kurs von Andrew Ng, und je nach Anwendung den Entscheidungsbäumen (dem Party-Paket in R) zu beginnen.
quelle
Ich denke, das ist eine gute Frage und sehr aktuell. Ich bin mir jedoch nicht sicher, ob es eine Antwort gibt. In einem kürzlich erschienenen Artikel wurde kontrovers diskutiert (siehe hier ), dass Data Science online leicht zu erlernen sei. Eine bemerkenswerte Sache bei den meisten in diesem Artikel erwähnten Fallstudien ist jedoch, dass sie versicherungsmathematischen oder mathematischen Hintergrund haben.
Dies ist ein interessanter Punkt, da dies darauf hinweist, dass Online-Kurse wie Coursera, Stanford und edX zwar hilfreich sind, um die erforderlichen spezifischen Informatikkenntnisse zu vermitteln, dass jedoch ein gewisser mathematischer Hintergrund für das Verständnis der von Ihnen angewendeten Modelle wesentlich ist . Auf der anderen Seite könnte ein ebenso starkes Argument angeführt werden, dass diese Jungs von Anfang an alle analytisch eingestellt waren, und dies ist sowohl der Grund, warum sie in quantitativen Disziplinen arbeiten als auch warum sie maschinelles Lernen leicht aufgegriffen und Wettbewerbe gewonnen haben.
Ich denke grundsätzlich, dass es hier ein Level von Analyseproblemen gibt. Während mathematische Fähigkeiten manchmal hilfreich sind, um die probabilistischen Wurzeln der von Ihnen angewendeten Algorithmen zu verstehen, kann man genauso gut argumentieren, dass gute Software-Engineering-Fähigkeiten ebenso viel beitragen können, indem Sie Analysen auf hoher Ebene durchführen und Teile von Algorithmen zusammenstellen um Ihr Ziel zu erreichen, auch wenn Sie nicht ganz verstehen, warum sie das tun . Generell ist die Datenwissenschaft (und das maschinelle Lernen durch Assoziationen) gerade wegen dieser Breite ein aufregendes Gebiet - Sie können ein Datenbank-Typ sein und brachiale Gewalt anwenden, um Probleme zu lösen, oder ein Mathematiker, der Simulationen einsetzt, oder ein Informatiker, der ausgereifte Techniken einsetzt Code, um verschiedene Algorithmen und Ansätze optimal zusammenzustellen.
Alle Ansätze, die zur Vorhersage beitragen, sind gut, daher würde ich sagen, dass das Erlernen von etwas Mathematik eine gute Idee sein kann, um Ihnen die besten Erfolgschancen auf diesem Gebiet zu bieten. Wenn Sie einige gute Ausgangspunkte haben möchten, bietet das MIT einen großartigen Kurs für lineare Algebra mit einigen netten Computeranwendungen, die ich leicht zu verstehen fand. Sie haben auch andere Kurse zu stochastischen Prozessen und zur multivariablen Analysis, die ebenfalls für den Aufbau Ihres Wissens von Interesse sein können.
quelle
Ist ein ausgeprägter mathematischer Hintergrund eine Grundvoraussetzung für ML? - eine Antwort und einige Spekulationen für ML, die als Statistik konzipiert wurden ;-)
Um 1990 hatte ich die Hoffnung, dass die Computeralgebra hilfreich sein könnte. Ich denke, das ist es, aber es ist ziemlich begrenzt. Aber es hilft auf jeden Fall dabei, das Erlernen von Mathematik zu beschleunigen (weniger Notwendigkeit, Manipulationsfähigkeiten durch Übung zu entwickeln oder zu versuchen, mit den einfachen Übungen auszukommen). Ich fand Fred Szabos lineare Algebra mit Mathematica ein hervorragendes Beispiel dafür (aber ich hatte bereits einen Kurs für lineare Algebra auf fortgeschrittenem theoretischem Niveau belegt.)
Ich arbeite seit 1988 (mit computerintensiven Methoden Theoreme und Prinzipien aus der Statistik "konkretisieren" - genau), um die Antwort nein oder zumindest nicht notwendig zu machen (für die Statistik). Mit zusätzlichen mathematischen Fähigkeiten und Kenntnissen wird man immer schneller und allgemeiner verstehen können. Ich glaube, ich fange an, näher heranzukommen, aber man braucht eine manipulierbare Darstellung von Wahrscheinlichkeitsmodellen und Folgerungen, die für mehr als nur Spielzeugprobleme gültig und nützlich ist.
Sollte ich versuchen, die Lücken meiner Mathematik auszufüllen, bevor ich mit ML fortfahre?
Das ist ein hartes Unterfangen - in MHO kamen fast alle, die Statistiken verstehen, dorthin, indem sie den Standard und insbesondere die nicht so standardmäßigen mathematischen Darstellungen von Wahrscheinlichkeitsmodellen und mathematischen Charakterisierungen von Folgerungen sehr bequem manipulierten (die höchsten x% der Phds für mathematische Statistiken). Es geht also nicht nur darum, die Grundlagen zu erlernen, sondern sich mit der Mathematik wirklich vertraut zu machen. (Abgesehen davon war für mich die Fouriertheorie von wesentlicher Bedeutung.)
Warum sind diese Darstellungen schwierig (auch mit viel Mathe)?
Gerd Gigerenzer hat so gut wie festgestellt, dass es mit der einfachen Krankheit Positiv / Negativ bei einem positiven / negativen Testproblem mit natürlichen Frequenzen keine Herausforderung gibt. “ Ein Verweis aus der verknüpften Frage scheint diese http://www.autonlab.org/tutorials/prob18.pdf gut zu nutzen
Warum ist das schwer zu verallgemeinern?
Für k Tests (wiederholt und oder anders) - 2 ^ k
Für Tests, die v Werte annehmen - v ^ k
Also für binäre Unbekannte - 2 * v ^ k Abtastpfadwahrscheinlichkeiten
Für p multiple binäre Unbekannte 2 ^ p * v ^ k
Für p multiple rationale Unbekannte gilt Q ^ p * v ^ k
Man begibt sich schnell in die Mathematik mit zählbaren und unzählbaren Unendlichkeiten, um damit umzugehen, was selbst mit mathematischem Fachwissen zu vielen Missverständnissen und scheinbaren Paradoxien führt (zB Borels Paradoxon?)
Darüber hinaus gibt es lineare bis nichtlineare gefährliche Missverständnisse (z. B. versteckte Gefahren bei der Angabe nicht informativer Prioritäten von Winbugs und anderen MCMCs ohne Informationen für die vorherige Verteilung ) sowie Wechselwirkungen und zufällige Effekte usw.
quelle