Koevolutionäre Algorithmen können den Fortschritt in einer beliebigen Problemklasse nicht auf magische Weise beschleunigen. In diesem Sinne ist die Schlussfolgerung am Ende der Frage richtig. Daraus folgt jedoch nicht, dass alle koevolutionären kostenlosen Mittagessen trivial sind, wie die Schlussfolgerung der Frage nahelegt.
Ich kann nicht alle Arten von koevolutionären kostenlosen Mittagessen ausführlich beschreiben, aber ich kann zwei Beispiele nennen, von denen das erste trivial und das zweite nicht trivial ist. Der zweite ist nicht trivial, weil er erklärt, warum der Satz über das freie Mittagessen wirklich gelten muss.
Der wichtige Unterschied zwischen den beiden Beispielen besteht darin, dass im ersten Fall die konkurrierenden Algorithmen um das Erreichen des gleichen übergeordneten Ziels konkurrieren, während im zweiten Fall die konkurrierenden Algorithmen versuchen, unterschiedliche Ziele zu erreichen. Im zweiten Fall ermöglicht die Nichtübereinstimmung zwischen den Zielen der beiden Algorithmen, dass interessante Dinge passieren. Ich werde mit dem trivialen Beispiel beginnen.
Gegner, die das gleiche Ziel suchen
Stellen Sie sich ein sehr einfaches Optimierungsproblem vor, bei dem die Suchlandschaft ein 7x7-Zellenraster ist. Das primäre Ziel ist es, die Zelle mit dem Maximalwert zu finden. 48 der Zellen haben den Wert 0 und eine zufällig ausgewählte Zelle im Raster hat den Wert 1.
Unser sekundäres Ziel ist es, eine Suchstrategie zu finden, die den Maximalwert schneller findet. Aus dem anfänglichen Problem folgt jedoch, dass hier möglicherweise keine Strategie die zufällige Suche schlagen könnte, da von einer Zelle nichts über eine andere gelernt werden kann. Trotzdem gilt der Satz des koevolutionären freien Mittagessens! Hier ist der Grund:
Angenommen, Sie haben zwei Optimierungsalgorithmen, A und B, die beide das Raster durchsuchen. Es spielt keine Rolle, welche Strategie sie verwenden, aber der Vollständigkeit halber legen wir fest, dass beide eine zufällige Suchstrategie verwenden. Der einzige Unterschied zwischen ihnen besteht darin, dass B auf die Bewegungen von A achtet und wenn es sieht, dass A den Maximalwert gefunden hat, springt es auch zu dieser Zelle. In gewisser Weise hat B in diesem Fall den Wettbewerb immer noch "verloren". Wenn Sie jedoch viele Wettbewerbe durchführen und dann die durchschnittliche Leistung von A mit der durchschnittlichen Leistung von B vergleichen, werden Sie feststellen, dass B den Maximalwert im Durchschnitt schneller findet.
Die Erklärung ist einfach. Die durchschnittliche Zeit bis zur ersten Entdeckung - ob von A oder B - bleibt gleich. Aber wenn A B zum Sieg schlägt, sucht B nirgendwo anders. Es springt zur besten Zelle. Wenn B A zum Sieg schlägt, sucht A einfach weiter und trottet weiter, bis es selbst den Maximalwert findet.
Dies sieht nach einem Gewinn aus, wenn Sie nur die Anzahl der Züge zählen, die B macht. Wenn Sie sich die Gesamtzahl der Züge ansehen, die A und B zusammen machen, sind sie zusammen im Durchschnitt schlechter als beide für sich. Das liegt an A's Unwissenheit. Wenn wir A so ändern, dass es sich genauso verhält wie B, dann tun sie es ungefähr so gut wie beide für sich - aber nicht besser.
Wenn wir also beide Algorithmen zusammen modellieren, kehren wir direkt in die Zone ohne freies Mittagessen zurück, so wie es die Frage argumentiert. Tatsächlich führen A und B nur zufällige Suchalgorithmen parallel durch. Die endgültige Anzahl der Suchvorgänge bleibt gleich.
Gegner, die unterschiedliche Ziele suchen
Stellen Sie sich nun ein ganz anderes Szenario vor. Angenommen, wir haben ein Klassifizierungsproblem: das Erkennen von Schafen. Hier ist es A's Aufgabe, sich einen Strom von Bildern anzusehen und zu sagen, ob Schafe darin sind. Einfach genug.
Aber Bs Job ist ganz anders. B hat die Macht, eigene Bilder in den Stream zu injizieren! Ihr Ziel ist es nicht, Schafe zu identifizieren; es will nur A verlangsamen.
Wie kann B das machen? Es gibt einen großartigen Blog-Beitrag und einen dazugehörigen Twitter-Thread zu einer eng verwandten Frage von Janelle Shane . Der Twitter-Thread beginnt:
Hat jemand ein Bild von Schafen an einem wirklich ungewöhnlichen Ort? Es ist für den Streich eines neuronalen Netzes.
Und hier ist eine der ersten Antworten :
Wie wäre es mit einem orangefarbenen Schaf?
Hier ist das orange Schaf:
Es stellte sich heraus, dass dies perfekt zum Streicheln war :
Du hast es total verstanden. Orange Schafe sind nichts, was man erwartet hatte. "eine braune Kuh, die auf einem üppigen grünen Feld liegt"
Hier sind einige andere Beispiele aus Shane's Blog-Post:
Was hat das mit unserem Problem zu tun? Wir können sie verbinden, indem wir genauer sind. Angenommen, A hat das Ziel, eine Genauigkeit von mehr als 99% zu erreichen, und B kann für jeweils neun "natürliche" Bilder ein Bild in den Stream von A einfügen. B sucht nach Mustern im Verhalten von A und verwendet sie, um Bilder zu finden, die mit seinem Modell in Konflikt geraten. Dadurch bleibt die Genauigkeit von A viel länger unter 99%, als wenn A nur "natürliche" Bilder gesehen hätte.
Daraus ergeben sich zwei Dinge. Erstens wird B viel besser abschneiden, wenn es darauf achtet, was A tut. Wenn B nur Bilder auf der Grundlage eines zufällig ausgewählten allgemeinen Prinzips wie "Schafe an ungeraden Orten" auswählt, besteht eine gute Chance, dass A bereits darauf vorbereitet ist. Wenn nicht, wird es schnell lernen, richtig damit umzugehen, und B muss dann eine neue Strategie annehmen. Wenn B andererseits das Verhalten von A beobachtet, kann es die spezifischen Dinge herausfinden, bei denen A am schlechtesten ist, und sich auf diese konzentrieren. Sobald sich A bei einem von ihnen verbessert, kann B einen anderen bereithalten. Solange B Muster im Verhalten von A finden kann, zeigt B immer die herausforderndsten Bilder für A.
Zweitens wird A viel besser abschneiden, wenn es darauf achtet, welche Bilder B auswählt. Immerhin sucht B nach Mustern im Verhalten von A. Wenn Muster gefunden werden, werden diese Muster verwendet, um gefälschte oder problematische Bilder an A zu senden. Dies bedeutet wiederum, dass es wahrnehmbare Muster gibt, die die Auswahl von B beeinflussen. Auch hier kann A schneller erkennen, welche Bilder B injiziert, wenn es auf die Muster im Verhalten von B achtet.
Wichtig ist, dass in diesem Szenario sowohl A als auch B auf Daten angewiesen sind, deren Muster garantiert sind . Es ist garantiert, dass es Muster gibt, denn wenn A sein Bestes gibt, macht A etwas anderes als eine zufällige Suche. Und wenn B sein Bestes gibt, dann macht B etwas anderes als eine zufällige Suche.
Zunächst sieht dies nach einer wirklich überzeugenden Situation für ein kostenloses Mittagessen aus. Aber was haben wir eigentlich gezeigt? Wir haben folgendes gezeigt:
Solange A etwas anderes als eine zufällige Suche durchführt, kann B immer Out-of-Band-Samples finden, die mit den Methoden von A nicht verarbeitet werden können.
Das ist das No-Free-Lunch-Theorem auf den Punkt gebracht!
Die einzige Möglichkeit, wie A verhindern kann, dass B Bilder außerhalb des Bandes findet, besteht darin, sich auf eine Weise zu verhalten, die für B zufällig aussieht. Wenn das Verhalten von A jedoch nicht wirklich zufällig ist, kann B es auf lange Sicht immer finden das Muster - auch wenn B selbst nur eine zufällige Suche durchführt.
Das gleiche Argument funktioniert in die andere Richtung. Die einzige Möglichkeit, wie B verhindern kann, dass A Muster in seinen Bildern bemerkt, besteht darin, sich zufällig zu verhalten. Aber wenn das Verhalten von B nicht wirklich zufällig ist, wird A schließlich das Muster finden, selbst wenn es nur eine zufällige Suche durchführt.
In diesem Szenario versuchen beide Algorithmen, sich gegenseitig zu täuschen, indem sie immer komplexere, zufällig erscheinende Verhaltensweisen anwenden. Auf sehr, sehr lange Sicht konvergieren sie langsam zu einer wirklich zufälligen Suche - das ist das Beste, was ein Algorithmus im Durchschnitt über alle Problembereiche hinweg leisten kann.
Ein unendlicher Pool von Zufälligkeiten
Es kann sein, dass diese koevolutionären Lernstrategien immer noch diesen Vorteil gegenüber anderen haben: Sie können beide Algorithmen dazu ermutigen, den Raum relevanter nicht zufälliger Verhaltensweisen schneller oder umfassender zu erkunden. Da bin ich mir nicht mal sicher. In beiden Fällen gilt das Theorem des nicht freien Mittagessens im Allgemeinen, da der Raum möglicher nicht zufälliger Verhaltensweisen weitaus kleiner ist als der Raum möglicher zufälliger Verhaltensweisen.
Woher wissen wir? Es wäre nicht thematisch, auf einen detaillierten Beweis einzugehen, aber betrachten Sie die damit verbundene Frage, wie viele lange Zeichenfolgen zu kürzeren Zeichenfolgen komprimiert werden können. Unabhängig von der Komprimierungsmethode kann der Großteil aller Zeichenfolgen überhaupt nicht komprimiert werden. Dies lässt sich leicht mit einem Bin-Counting-Argument beweisen. Angenommen, wir betrachten binäre Zeichenfolgen und beginnen mit der leeren Zeichenfolge. Angenommen, es kann keine Zeichenfolgen mit negativer Länge geben, ist das inkompressibel. Betrachten Sie nun Zeichenfolgen der Länge 1. Es gibt zwei, aber es gibt nur eine Zeichenfolge mit der Länge 0, sodass nur eine davon komprimiert werden kann. Jetzt haben wir zwei inkompressible Zeichenfolgen und eine dritte Zeichenfolge, die um ein Bit komprimiert werden kann. Fahren Sie mit Zeichenfolgen der Länge 2 fort: Es gibt vier Zeichenfolgen, aber nur zwei Zeichenfolgen der Länge 1, und die eine Zeichenfolge der Länge 0 ist bereits vergeben. Wir können also nur zwei der Strings der Länge 2 komprimieren. Die anderen beiden sind inkompressibel. Das sind drei komprimierbare Saiten und vier inkompressible Saiten ... und so weiter.
Wenn die Zahlen höher werden, bemerken Sie unter anderem, dass selbst unter den komprimierbaren Zeichenfolgen die Hälfte nur um ein Bit komprimierbar ist, da sie zu Zeichenfolgen komprimiert werden, die selbst inkompressibel sind. Ein Viertel ist nur um zwei Bits komprimierbar; Ein Achtel ist nur um drei Bits komprimierbar. Unabhängig davon, wie Sie es in Scheiben schneiden, ist die Anzahl der im Wesentlichen komprimierbaren Zeichenfolgen immer viel geringer als die Anzahl der Zeichenfolgen, die inkompressibel oder kaum komprimierbar sind.
Die Argumentation für zufälliges Verhalten ist ähnlich. Sie könnten diese Ideen auch mit dem Beweis verbinden, dass es weitaus mehr reelle Zahlen als ganze Zahlen gibt. Im globalen Schema der Dinge ist der Satz ohne freies Mittagessen wahr, weil der Umfang der Zufälligkeit unvorstellbar groß ist.