Fortschritte im maschinellen Lernen für ML: Verbesserung der Effizienz von ML-Workloads
Erfahren Sie mehr über die aufregenden Fortschritte im maschinellen Lernen für maschinelles Lernen und wie ML-Modelle effizienter sein können.
ML-Compiler
Moderne maschinelle Lernmodelle werden mithilfe von ML-Programmierframeworks wie TensorFlow und PyTorch programmiert und trainiert. Diese Frameworks bieten ML-Praktikern hochrangige Anweisungen, sodass sie sich auf ihre Modelle anstatt auf die zugrunde liegende Hardwareoptimierung konzentrieren können.
ML-Compiler spielen eine entscheidende Rolle bei der Optimierung der Effizienz von ML-Workloads. Sie wandeln vom Benutzer geschriebene Programme in Anweisungen um, die auf Hardware ausgeführt werden sollen. Es werden Optimierungen auf Graphenebene und Kernebene durchgeführt, um die Effizienz der Programme zu verbessern.
Eine wichtige Optimierung in ML-Compilern besteht darin, Speicherlayouts zu Zwischentensoren zuzuweisen. Die Optimierung der Layoutzuweisung muss die Balance zwischen lokaler Recheneffizienz und Overhead für die Layouttransformation finden.
TpuGraphs-Datensatz
Um die Effizienz von ML-Modellen zu verbessern, hat Google den TpuGraphs-Datensatz zur Erstellung von Kostenmodellen veröffentlicht. Dieser Datensatz enthält Berechnungsgraphen von ML-Workloads, Kompilierungskonfigurationen und Ausführungszeiten. Er konzentriert sich auf Graph- und Kacheloptimierungen.
Der Datensatz bietet 25-mal mehr Graphen als frühere Datensätze zur Vorhersage von Grapheneigenschaften und enthält beliebte Modellarchitekturen wie ResNet und Transformer. Mit dem Datensatz werden Basislernkostenmodelle auf der Grundlage von Graph Neural Networks (GNNs) bereitgestellt.
Der Datensatz ermöglicht die Erforschung großer Graphenvorhersageaufgaben, die Herausforderungen in Bezug auf Skalierbarkeit, Trainingseffizienz und Modellqualität darstellen.
Graph Segment Training und Kaggle-Wettbewerb
Zur Skalierung des GNN-Trainings für große Graphen wurde eine Methode namens Graph Segment Training (GST) eingeführt. GST unterteilt große Graphen in kleinere Segmente und aktualisiert das Modell mit zufälligen Teilsegmenten. Dadurch wird die Trainingszeit um das Dreifache reduziert.
Zusätzlich wurde ein Kaggle-Wettbewerb mit dem Namen 'Fast or Slow? Predict AI Model Runtime' unter Verwendung des TpuGraphs-Datensatzes durchgeführt. Der Wettbewerb zog Teilnehmer aus 66 Ländern an und präsentierte interessante Techniken wie Graphenbeschneidung, Merkmalspolsterung und Cross-Konfigurationsaufmerksamkeit.
Die Gewinner des Kaggle-Wettbewerbs werden informiert und ihre Lösungen werden auf dem ML for Systems-Workshop bei NeurIPS vorgestellt.