Schauen wir uns die Zukunft in 30 Jahren an. Seien wir optimistisch und gehen wir davon aus, dass sich die Bereiche des maschinellen Lernens so schnell weiterentwickeln wie in den letzten 10 Jahren. Das wäre großartig, aber welche Rolle spielt dann die traditionelle Algorithmik in einer solchen Zukunft?
Hier beziehe ich mich mit "traditioneller Algorithmusik" auf den üblichen Prozess, den wir in TCS befolgen: Formalisieren eines genau definierten Rechenproblems , Entwerfen von Algorithmen zur Lösung des Problems und Nachweisen formaler Leistungsgarantien .
Nun, in welchen Anwendungsbereichen müssen wir auch in Zukunft traditionelle Algorithmen entwerfen und analysieren , und es ist sehr unwahrscheinlich, dass Fortschritte beim maschinellen Lernen traditionelle Algorithmen zum größten Teil irrelevant machen werden.
Auf den ersten Blick mag dies wie eine dumme Frage erscheinen: Natürlich müssen wir auch in Zukunft sortieren, suchen, indizieren usw. können! Natürlich müssen wir in der Lage sein, Fourier-Transformationen effizient durchzuführen, große Matrizen zu multiplizieren, kürzeste Wege zu finden und lineare Optimierungsprobleme zu lösen!
Aber dann wieder, wenn Sie beginnen, tiefer in den Anwendungen , in denen wir traditionell die Algorithmen verwenden , die wir entwerfen, ist es nicht klar , dass die traditionellen Algorithmen und Datenstrukturen ist die richtige Antwort auf solche Probleme: Bei Anwendungen im Zusammenhang zu suchen , In der Regel sind wir daran interessiert, etwas zu finden, das in einem vagen, unklaren Sinne (z. B. semantische Ähnlichkeit) gut zu einem Menschen passt, und nicht in einem mathematischen Sinne (z. B. Mindestbearbeitungsabstand) optimal ist. In Anwendungen zur RoutenplanungIn der Regel sind wir daran interessiert, Routen zu finden, die anhand von Beispielen gut sind (z. B. andere bevorzugen sie), nicht Routen, die in mathematischer Hinsicht optimal sind (z. B. kürzeste Entfernung oder günstigster Preis). Und wenn Sie eine vage, schlecht definierte menschliche Komponente im Bild haben, ist es möglicherweise besser, wenn wir versuchen, dem Computer beizubringen, anhand von Beispielen gute Antworten zu liefern, als einen TCS-Forscher kommen zu lassen mit einem formalen Rechenproblem, das wir mit Hilfe des traditionellen Algorithmusdesigns und der Analyse angehen können.
Was sind also die Anwendungsbereiche (vorzugsweise reale und direkte industrielle Anwendungen), in denen es absolut klar ist, dass das, was wir in der Vergangenheit in der Algorithmik getan haben, auch der richtige (und der einzig mögliche) Weg sein wird, um Fortschritte in der Industrie zu erzielen? Zukunft?
Algorithmen, die als Subroutinen in maschinellen Lerntechniken verwendet werden, sehen aus wie ein offensichtlicher, zukunftssicherer Kandidat, aber dies hängt stark von der speziellen maschinellen Lerntechnik ab, die wir verwenden, und wie wir in den letzten zehn Jahren oder so gesehen haben, kann sich dies schnell ändern .