Quasi-Zufallssuche

Dieses Modul konzentriert sich auf die Quasi-Zufallssuche.

Warum sollte ich die quasi-zufällige Suche verwenden?

Quasi-Zufallssuche (auf der Grundlage von Sequenzen mit geringer Diskrepanz) ist unsere Präferenz gegenüber aufwendigeren Blackbox-Optimierungstools, wenn sie als Teil eines iterativen Abstimmungsprozesses verwendet werden, um einen möglichst großen Einblick in das Feinabstimmungsproblem zu erhalten (was wir als „Erkundungsphase“ bezeichnen). Die Bayes'sche Optimierung und ähnliche Tools eignen sich eher für die Ausnutzungsphase. Eine Quasi-Zufallssuche, die auf zufällig verschobenen Sequenzen mit niedriger Diskrepanz basiert, kann als eine "jitterte, gemischte Rastersuche" betrachtet werden, da sie einen bestimmten Suchbereich gleichmäßig, aber zufällig untersucht und die Suchpunkte mehr verteilt als eine zufällige Suche.

Zu den Vorteilen der quasi-zufälligen Suche gegenüber komplexeren Blackbox-Optimierungstools (z.B. Bayes'sche Optimierung, Evolutionsalgorithmen) gehören:

  • Nicht-adaptives Abtasten des Suchbereichs ermöglicht es, das Feinabstimmungsziel bei einer Post-hoc-Analyse zu ändern, ohne die Tests noch einmal ausführen zu müssen. Beispielsweise möchten wir normalerweise den besten Test in Bezug auf die zu jedem Zeitpunkt des Trainings erreichten Validierungsfehler finden. Da die quasi-zufällige Suche nicht passiv ist, kann der beste Versuch jedoch anhand des endgültigen Validierungsfehlers, des Trainingsfehlers oder eines alternativen Bewertungsmesswerts ermittelt werden, ohne die Tests noch einmal ausführen zu müssen.
  • Die Quasi-Zufallssuche verhält sich konsistent und statistisch reproduzierbar. Es sollte möglich sein, eine Studie von vor sechs Monaten zu reproduzieren, auch wenn sich die Implementierung des Suchalgorithmus ändert, solange die gleichen Einheitseigenschaften beibehalten werden. Wenn Sie eine hochentwickelte Bayes'sche Optimierungssoftware verwenden, kann sich die Implementierung erheblich zwischen den Versionen ändern, was die Reproduktion einer alten Suche erheblich erschwert. Es ist nicht immer möglich, ein Rollback zu einer alten Implementierung durchzuführen (z.B. wenn das Optimierungstool als Dienst ausgeführt wird).
  • Durch die einheitliche Untersuchung des Suchbereichs lassen sich die Ergebnisse und ihre Vorschläge zum Suchbereich leichter reflektieren. Wenn sich der beste Punkt beim Durchlauf der quasi-zufälligen Suche beispielsweise an der Grenze des Suchbereichs befindet, ist dies ein gutes (aber nicht hundertprozentig) Hinweis darauf, dass die Suchbereichsgrenzen geändert werden sollten. Ein adaptiver Blackbox-Optimierungsalgorithmus hat jedoch möglicherweise die Mitte des Suchbereichs vernachlässigt, weil er frustrierende erste Tests enthält, selbst wenn er gleich gute Punkte enthält. Dies liegt daran, dass ein guter Optimierungsalgorithmus genau diese Uneinheitlichkeit zur Beschleunigung der Suche verwenden muss.
  • Die parallele und sequenzielle Ausführung einer unterschiedlichen Anzahl von Tests führt im Gegensatz zu adaptiven Algorithmen nicht zu statistisch unterschiedlichen Ergebnissen, wenn eine Quasi-Zufallssuche oder andere nicht adaptive Suchalgorithmen verwendet werden.
  • Komplexere Suchalgorithmen verarbeiten nicht durchführbare Punkte möglicherweise nicht immer korrekt, insbesondere wenn sie nicht für die Hyperparameter-Abstimmung neuronaler Netzwerke entwickelt wurden.
  • Die Quasi-Zufallssuche ist einfach und funktioniert besonders gut, wenn viele Abstimmungstests parallel ausgeführt werden. Anekdote1 ist es für einen adaptiven Algorithmus sehr schwer, eine quasi-zufällige Suche mit dem Doppelten seines Budgets zu übertreffen, insbesondere wenn viele Tests parallel ausgeführt werden müssen (und daher nur sehr wenige Chancen gibt, beim Start neuer Tests frühere Testergebnisse zu nutzen). Ohne Fachwissen in der Bayes'schen Optimierung und in anderen erweiterten Blackbox-Optimierungsmethoden erzielen Sie möglicherweise nicht die Vorteile, die sie im Prinzip bieten können. Es ist schwierig, fortschrittliche Blackbox-Optimierungsalgorithmen in realistischen Deep-Learning-Abstimmungsbedingungen zu vergleichen. Sie sind ein sehr aktives Gebiet in der aktuellen Forschung, und die komplexeren Algorithmen haben für unerfahrene Nutzer eigene Fallstricke. Experten für diese Methoden können gute Ergebnisse erzielen, aber unter Bedingungen mit hoher Parallelität spielen Suchraum und Budget eine größere Rolle.

Wenn Ihre Rechenressourcen jedoch nur eine kleine Anzahl von Tests parallel ausführen und Sie es sich leisten können, viele Tests nacheinander auszuführen, wird die Baiessche Optimierung viel attraktiver, obwohl die Abstimmungsergebnisse schwerer zu interpretieren sind.

Open-Source Vizier hat eine Implementierung der quasi-zufälligen Suche. Legen Sie algorithm="QUASI_RANDOM_SEARCH" in diesem Vizier-Nutzungsbeispiel fest. In diesem Hyperparameter-Sweeps-Beispiel ist eine alternative Implementierung vorhanden. Beide Implementierungen generieren eine Halton-Sequenz für einen bestimmten Suchbereich. Damit wird eine verschobene, verschlüsselte Halton-Sequenz implementiert, wie unter Critical Hyper-Parameters: No Random, No Cry empfohlen.

Wenn kein Quasi-Zufallssuchalgorithmus auf der Grundlage einer Sequenz mit geringer Diskrepanz verfügbar ist, kann stattdessen die pseudozufällige einheitliche Suche ersetzt werden, auch wenn dies wahrscheinlich etwas weniger effizient ist. Bei ein bis zwei Dimensionen ist die Rastersuche ebenfalls akzeptabel, wenn auch nicht in höheren Dimensionen. (Siehe Bergstra & Bengio, 2012).

Wie viele Versuche sind erforderlich, um gute Ergebnisse mit der quasi-zufälligen Suche zu erhalten?

Es gibt keine Möglichkeit zu bestimmen, wie viele Tests im Allgemeinen erforderlich sind, um Ergebnisse mit einer quasi-zufälligen Suche im Allgemeinen zu erhalten. Sie können sich jedoch spezifische Beispiele ansehen. Wie Abbildung 3 zeigt, kann die Anzahl der Tests in einer Studie einen erheblichen Einfluss auf die Ergebnisse haben:

Boxdiagramm der Validierungsfehlerrate (y-Achse) im Vergleich zum abgestimmten Budget (x-Achse), wobei das Abstimmungsbudget die Anzahl der Versuche ist. Die durchschnittliche Validierungsfehlerrate fiel im Allgemeinen bei Erhöhung des Abstimmungsbudgets.

Abbildung 3:Auf ImageNet abgestimmtes ResNet-50-System mit 100 Tests. Mithilfe von Bootstrapping wurden verschiedene Budgetbeträge für die Abstimmung simuliert. Für jedes Testbudget werden Boxplots mit den besten Leistungen dargestellt.

 

Beachten Sie in Abbildung 3 Folgendes:

  • Die Interquartilsbereiche, bei denen 6 Tests erfasst wurden, sind viel größer als bei 20 Tests.
  • Selbst bei 20 Tests ist der Unterschied zwischen besonders glücklichen und unglücklichen Studien wahrscheinlich größer als die typische Schwankung zwischen Neutrainierungen dieses Modells auf verschiedenen zufälligen Seeds mit festen Hyperparametern, die für diese Arbeitslast bei einer Validierungsfehlerrate von etwa 23% bei etwa +/- 0,1 % liegen können.

  1. Ben Recht und Kevin Jamieson betonten, wie stark eine Zufallssuche mit doppeltem Budget als Ausgangsbasis ist (der Hyperband-Artikel liefert ähnliche Argumente), aber es ist durchaus möglich, Suchbereiche und Probleme zu finden, bei denen moderne Bayessche Optimierungstechniken zufällige Suchanfragen mit doppeltem Budget übertreffen. Unserer Erfahrung nach wird es jedoch bei einer hochgradig Parallelität erschwert, die das Doppelte des Budgets übertreffende Budgetsuche zu übertreffen, da die Bayes'sche Optimierung keine Möglichkeit hat, die Ergebnisse vorheriger Tests zu beobachten.