PC-DARTS: Partielle Kanalverbindungen für speichereffiziente Architektursuche

Das Differentiable Architecture Search (DARTS) bot eine schnelle Lösung zur Suche nach effektiven Netzwerkarchitekturen, litt jedoch unter hohen Speicher- und Rechenaufwänden bei der gemeinsamen Schulung eines Super-Netzes und der Suche nach einer optimalen Architektur. In dieser Arbeit stellen wir einen neuen Ansatz vor, nämlich das Partially-Connected DARTS (PC-DARTS), indem wir einen kleinen Teil des Super-Netzes auswählen, um die Redundanz beim Erkunden des Netzwerkraums zu reduzieren und somit eine effizientere Suche durchzuführen, ohne dabei die Leistung zu beeinträchtigen. Insbesondere führen wir die Operationssuche in einem Teilbereich der Kanäle durch, während der übrige Teil über einen Shortcut umgangen wird. Diese Strategie kann zu unerwünschten Inkonsistenzen bei der Auswahl der Kanten des Super-Netzes führen, die durch das Auswählen verschiedener Kanäle verursacht werden. Wir mildern dieses Problem durch Kantennormalisierung, wobei ein neuer Satz von kantenebenen Parametern hinzugefügt wird, um Unsicherheiten in der Suche zu verringern. Dank des reduzierten Speicheraufwands kann PC-DARTS mit einem größeren Batch-Size trainiert werden und profitiert dadurch sowohl von erhöhter Geschwindigkeit als auch von größerer Trainingsstabilität. Experimentelle Ergebnisse belegen die Effektivität des vorgeschlagenen Verfahrens. Insbesondere erreichen wir einen Fehlerwert von 2,57 % auf CIFAR10 mit lediglich 0,1 GPU-Tage für die Architektursuche sowie einen Stand-des-Wissens-gemäßen Top-1-Fehlerwert von 24,2 % auf ImageNet (unter mobilen Bedingungen) mit 3,8 GPU-Tagen für die Suche. Unser Code ist unter folgender URL verfügbar: https://github.com/yuhuixu1993/PC-DARTS.