Ich arbeite am theoretischen maschinellen Lernen - Transferlernen, um genau zu sein - für meine Promotion.
Warum sollte ich aus Neugier einen Kurs zur konvexen Optimierung belegen?
Welche Erkenntnisse aus der konvexen Optimierung kann ich für meine Forschung zum theoretischen maschinellen Lernen nutzen?
machine-learning
optimization
convex
transfer-learning
Upendra Pratap Singh
quelle
quelle
Antworten:
Algorithmen für maschinelles Lernen verwenden ständig Optimierung. Wir minimieren Verluste oder Fehler oder maximieren irgendeine Art von Bewertungsfunktionen. Gradient Descent ist der "Hallo Welt" -Optimierungsalgorithmus, der in wahrscheinlich jedem maschinellen Lernkurs behandelt wird. Bei Regressions- oder Klassifikationsmodellen ist dies offensichtlich, aber auch bei Aufgaben wie Clustering suchen wir nach einer Lösung, die optimal zu unseren Daten passt (z. B. minimiert k-means die Quadratsumme innerhalb des Clusters). Wenn Sie also verstehen möchten, wie die Algorithmen für maschinelles Lernen funktionieren, hilft es, mehr über Optimierung zu lernen. Wenn Sie beispielsweise Hyperparameter-Tuning durchführen müssen, verwenden Sie auch direkt die Optimierung.
Man könnte argumentieren, dass die konvexe Optimierung für das maschinelle Lernen nicht so interessant sein sollte, da wir anstelle der konvexen Funktionen häufig auf Verlustoberflächen wie die folgende stoßen, die alles andere als konvex sind .
(Quelle: https://www.cs.umd.edu/~tomg/projects/landscapes/ und arXiv: 1712.09913 )
Wie in anderen Antworten erwähnt, ist die konvexe Optimierung jedoch schneller, einfacher und weniger rechenintensiv. Daher ist es häufig einfacher, ein Problem zu "konvexisieren" (konvexe Optimierung wird vereinfacht) und anschließend die nicht konvexe Optimierung zu verwenden. Beispielsweise werden beim maschinellen Lernen häufig Algorithmen für die Gradientenabnahme und dergleichen verwendet, insbesondere für neuronale Netze, da sie "funktionieren", skalieren und weitgehend in verschiedene Software implementiert sind. Dennoch sind sie nicht das Beste, was wir bekommen und haben können , wie in Ali Rahimis Vortrag auf der NIPS 2017 besprochen .
Andererseits scheinen nichtkonvexe Optimierungsalgorithmen wie evolutionäre Algorithmen in der ML-Community immer mehr Beachtung zu finden, z. B. scheint das Training neuronaler Netze durch Neuroevolution ein aktuelles Forschungsthema zu sein (siehe auch arXiv: 1712.07897 ).
quelle
Ich denke, hier gibt es zwei Fragen.
Ich denke, @Tim hat eine gute Antwort, warum Optimierung. Ich stimme voll und ganz zu und würde jedem empfehlen, der sich für maschinelles Lernen interessiert, um die kontinuierliche Optimierung zu meistern. Weil der Optimierungsprozess / das Finden der besseren Lösung im Laufe der Zeit der Lernprozess für einen Computer ist.
Ich möchte mehr darüber sprechen, warum wir an konvexen Funktionen interessiert sind. Der Grund ist einfach: Konvexe Optimierungen sind "leichter zu lösen", und wir haben eine Menge zuverlässiger Algorithmen zu lösen.
Aber ist die Welt konvex? Warum von Konvexität besessen? Überprüfen Sie diese Metapher
quelle
Der wichtigste Aspekt ist, dass maschinelles Lernen auf Probleme angewendet wird, für die es keine optimale Lösung gibt. Das Beste, was Sie tun können, ist eine gute Annäherung zu finden.
Im Gegensatz dazu gibt es bei Optimierungsproblemen eine optimale Lösung, die jedoch normalerweise nicht in angemessener Zeit oder mit angemessener Rechenleistung gefunden werden kann.
Die von Ihnen verwendeten Tools und Algorithmen unterscheiden sich grundlegend. Ich würde also sagen, dass es keinen unmittelbaren Vorteil hat, an einem Optimierungskurs teilzunehmen, aber es ist immer gut, etwas über verwandte Bereiche zu wissen. Wenn Sie ein Optimierungsproblem erkennen, wissen Sie, dass Sie es nicht mit maschinellen Lernalgorithmen, sondern mit Optimierungsalgorithmen angehen sollten. Das allein ist viel wert, würde ich sagen.
quelle
Wie hxd1011 sagte, sind konvexe Probleme sowohl theoretisch als auch (typischerweise) in der Praxis leichter zu lösen. Selbst bei nicht konvexen Problemen beginnen viele Optimierungsalgorithmen mit "Schritt 1. Reduzieren Sie das Problem auf einen konvexen" (möglicherweise innerhalb einer while-Schleife).
Ähnliches passiert beim nichtlinearen Rootfinding. Normalerweise lautet die Lösung (z. B. mit der Newton-Methode) "Schritt 1. Reduzieren Sie auf ein lineares Problem, weil wir wissen, wie man diese löst".
quelle
Wenn Ihre Interessen in der (konvexen) Optimierung von Deep-Learning-Anwendungen (Sie erwähnen das in der Praxis bei neuronalen Netzen weit verbreitete Transfer-Learning) liegen, empfehle ich Ihnen nachdrücklich, Kapitel 8 (Optimierung für das Training von tiefen neuronalen Netzen) von http zu lesen : //www.deeplearningbook.org/
Es gibt eine Diskussion über die konvexe Optimierung und warum sie noch nicht so erfolgreich war, wenn tiefe neuronale Netze angewendet wurden. Vielleicht könnten Sie in diesem Bereich Nachforschungen anstellen, die den gegenwärtigen Konsens ändern!
quelle
Wie ich von Jerome H. Friedman gehört habe, gehören Methoden, die im maschinellen Lernen entwickelt wurden, in der Tat nicht zur maschinellen Lerngemeinschaft.
Maschinelles Lernen ist aus meiner Sicht eher eine Sammlung verschiedener Methoden aus anderen Bereichen.
Aus Sicht des statistischen Lernens sind die drei Hauptfragen für die Regression und Klassifikation:
Was ist Funktionsfamilie, aus der Sie Approximator ziehen
Was ist ein Kriterium, wie Sie eine Funktion ziehen
Was ist eine Methode, um die beste Funktion zu finden
Konstruktiv mit (1) umzugehen - es ist nicht so offensichtlich, wie die Verwendung der mathematischen Optimierung helfen kann
Konstruktiv mit (2) umzugehen - es ist offensichtlich, dass das Ziel das Ziel ist. Und die mathematische Optimierung kann dabei helfen.
Um (3) konstruktiv zu bearbeiten, ist eine mathematische Optimierung erforderlich.
Es gibt mehrere Teile der mathematischen Optimierung:
Es gibt auch Möglichkeiten, mit "Stochastizität" umzugehen, auch wenn "Niemand weiß, wie man stochastische konvexe Optimierungen löst".
NonConvex-Optimierung - Normalerweise bedeuten Menschen damit etwas, was kontinuierlich objektiv ist, aber die Krümmung kann variieren. Die Menschen auf diesem Planeten wissen nicht, wie sie es genau lösen sollen. Und in der Tat machen alle Methoden Hebelwirkung in (1)
Kombinatorische Optimierung - es ist noch wilder als (2), jetzt können Sie für Parameter, die Sie finden, sogar keinen Minusoperator anwenden. Ein Beispiel sind "Regionen" in Entscheidungsbäumen. Es gibt also zwei Möglichkeiten, wie Sie damit umgehen können: a) Konvexifizieren Sie das Problem und wenden Sie die folgenden Methoden an: (1) Bilden Sie rohe Gewalt. Funktioniert nicht für eine große Anzahl von Parametern. c) Machen Sie rohe Gewalt, aber mit einigen gierigen Schritten. Das macht CART.
Zumindest glaube ich, dass ich Sie davon überzeugen kann:
I) Die konvexe Optimierung ist für die meisten Optimierungsprobleme von zentraler Bedeutung.
II) "01:15 Optimierung ist in der Tat ein größeres Thema als ML oder AI, aber es ist in der Tat ein größeres Thema." ( https://www.youtube.com/watch?v=uF3htLwUHn0&t=992s )
quelle