Seit der Geburt von GPT-3 hat die generative KI einen explosiven Wendepunkt im Bereich der künstlichen Intelligenz mit ihrer erstaunlichen Leistung und den breiten Anwendungsszenarien eingeleitet. Dies hat dazu geführt, dass Tech-Giganten zur KI-Spur drängen. Diese Welle hat jedoch zahlreiche Probleme mit sich gebracht. Die Trainings- und Inferenzoperationen großer Sprachmodelle (LLMs) erfordern eine beträchtliche Rechenleistung. Mit dem iterativen Upgrade dieser Modelle steigen die Nachfrage und die Kosten für die Rechenleistung exponentiell an. Anhand von GPT-2 und GPT-3 als Beispiele beträgt der Unterschied in der Anzahl der Parameter zwischen GPT-2 und GPT-3 1166-mal (GPT-2 hat 150 Millionen Parameter, während GPT-3 175 Milliarden hat). Die Kosten für eine einzelne Trainingssitzung von GPT-3 wurden auf der Grundlage der Preismodelle öffentlicher GPU-Clouds zum damaligen Zeitpunkt berechnet und beliefen sich auf bis zu 12 Millionen US-Dollar. Dies war das 200-fache von GPT-2. In der praktischen Anwendung erfordert jede Benutzerabfrage Inferenzberechnungen. Basierend auf den 13 Millionen unabhängigen Benutzern zu Beginn dieses Jahres würde der entsprechende Bedarf an Chips mehr als 30.000 A100-GPUs betragen. Die anfänglichen Investitionskosten würden dann bei beeindruckenden 800 Millionen US-Dollar liegen, mit geschätzten täglichen Modell-Inferenzkosten von 700.000 US-Dollar.
Unzureichende Rechenleistung und hohe Kosten sind ernste Herausforderungen, mit denen die gesamte KI-Branche konfrontiert ist. Bemerkenswerterweise scheint ein ähnliches Problem die Blockchain-Branche zu bedrohen. Einerseits stehen das vierte Bitcoin-Halving und die Genehmigung von ETFs unmittelbar bevor. Mit steigenden zukünftigen Preisen wird die Nachfrage der Miner nach Rechenhardware zwangsläufig stark steigen. Andererseits boomt die Zero-Knowledge Proof (ZKP)-Technologie, und Vitalik hat mehrfach betont, dass der Einfluss von ZK auf das Blockchain-Feld in den nächsten zehn Jahren ebenso wichtig sein wird wie die Blockchain selbst. Während diese Technologie vielversprechend für die Zukunft der Blockchain-Branche ist, benötigt ZK auch eine erhebliche Menge an Rechenleistung und Zeit zur Erzeugung von Beweisen aufgrund ihres komplexen Berechnungsprozesses, ähnlich wie KI.
In absehbarer Zukunft wird der Mangel an Rechenleistung unvermeidlich werden. Wird der dezentralisierte Markt für Rechenleistung also ein profitables Geschäftsunternehmen sein?
Der dezentrale Rechenleistungsmarkt entspricht tatsächlich der dezentralen Cloud-Computing-Spur, aber ich persönlich finde, dass dieser Begriff besser geeignet ist, um die neuen Projekte zu beschreiben, die später diskutiert werden. Der dezentrale Rechenleistungsmarkt sollte als Untermenge von DePIN (Decentralized Physical Infrastructure Networks) betrachtet werden, dessen Ziel es ist, einen offenen Rechenleistungsmarkt zu schaffen, auf dem jeder mit ungenutzten Rechenleistungsressourcen seine Ressourcen anbieten kann, die durch Token incentiviert werden, hauptsächlich zur Bedienung von B2B-Kunden und Entwicklergemeinschaften. Im Hinblick auf vertrautere Projekte gehören Netzwerke wie Render Network, das auf dezentralen GPU-Rendering-Lösungen basiert, und Akash Network, ein verteiltes Peer-to-Peer-Marktplatz für Cloud-Computing, beide zu dieser Spur.
Der folgende Text wird mit den Grundkonzepten beginnen und dann drei aufstrebende Märkte unter diesem Track diskutieren: den AGI-Rechenleistungsmarkt, den Bitcoin-Rechenleistungsmarkt und den AGI-Rechenleistungsmarkt im ZK-Hardwarebeschleunigungsmarkt. Die letzten beiden werden in „Ausblick auf einen vielversprechenden Track: Dezentralisierter Rechenleistungsmarkt (Teil 2)“ diskutiert.
Das Konzept der Rechenleistung lässt sich bis zur Erfindung des Computers zurückverfolgen. Der ursprüngliche Computer verwendete mechanische Geräte, um Rechenaufgaben zu erledigen, und die Rechenleistung bezog sich auf die Berechnungsfähigkeit des mechanischen Geräts. Mit der Entwicklung der Computertechnologie hat sich auch das Konzept der Rechenleistung weiterentwickelt. Die heutige Rechenleistung bezieht sich in der Regel auf die gemeinsame Arbeit von Computerhardware (CPUs, GPUs, FPGAs usw.) und Software (Betriebssysteme, Compiler, Anwendungen usw.).
Rechenleistung bezieht sich auf die Menge an Daten, die ein Computer oder ein anderes Rechengerät innerhalb eines bestimmten Zeitraums verarbeiten kann oder die Anzahl von Rechenaufgaben, die es abschließen kann. Die Rechenleistung wird in der Regel verwendet, um die Leistung eines Computers oder anderer Rechengeräte zu beschreiben. Es handelt sich um eine wichtige Kennzahl der Verarbeitungsfähigkeiten eines Rechengeräts.
Rechenleistung kann auf verschiedene Arten gemessen werden, wie z.B. Rechengeschwindigkeit, Energieverbrauch, Rechengenauigkeit und Parallelität. In der Informatik werden häufig verwendete Kennzahlen für die Rechenleistung wie FLOPS (Gleitkommaoperationen pro Sekunde), IPS (Instruktionen pro Sekunde), TPS (Transaktionen pro Sekunde) usw. verwendet.
FLOPS misst die Fähigkeit des Computers, Gleitkommaoperationen (mathematische Operationen mit Dezimalstellen, die Präzisionsprobleme und Rundungsfehler erfordern) zu verarbeiten. Es misst, wie viele Gleitkommaoperationen ein Computer pro Sekunde abschließen kann. FLOPS ist ein Maß für die Hochleistungsrechenleistung eines Computers und wird häufig verwendet, um die Rechenleistung von Supercomputern, Hochleistungsrechnerservern, Grafikprozessoren (GPUs) usw. zu messen. Wenn ein Computersystem beispielsweise 1 TFLOPS (eine Billion Gleitkommaoperationen pro Sekunde) hat, bedeutet dies, dass es 1 Billion Gleitkommaoperationen pro Sekunde abschließen kann.
IPS misst die Geschwindigkeit, mit der ein Computer Anweisungen verarbeitet. Es ist ein Maß dafür, wie viele Anweisungen ein Computer pro Sekunde ausführen kann und ein Maß für die Leistung einer einzelnen Anweisung eines Computers, das typischerweise zur Messung der Leistung einer zentralen Verarbeitungseinheit (CPU) verwendet wird. Zum Beispiel bedeutet eine CPU mit einer IPS von 3 GHz (3 Milliarden Anweisungen pro Sekunde), dass sie 3 Milliarden Anweisungen pro Sekunde ausführen kann.
TPS misst die Fähigkeit eines Computers, Transaktionen zu verarbeiten. Es misst, wie viele Transaktionen ein Computer pro Sekunde abschließen kann, und wird typischerweise zur Messung der Leistung eines Datenbankservers verwendet. Zum Beispiel hat ein Datenbankservers einen TPS-Wert von 1.000, was bedeutet, dass er 1.000 Datenbanktransaktionen pro Sekunde verarbeiten kann.
Darüber hinaus gibt es einige Rechenleistungsmetriken für spezifische Anwendungsszenarien, wie etwa die Inferenzgeschwindigkeit, die Bildverarbeitungsgeschwindigkeit und die Spracherkennungsgenauigkeit.
GPU-Rechenleistung bezieht sich auf die Rechenfähigkeit von Grafikprozessoren (GPUs). Im Gegensatz zu zentralen Prozessoren (CPUs) sind GPUs Hardware, die speziell für die Verarbeitung grafischer Daten wie Bilder und Videos konzipiert ist. Sie verfügen über eine große Anzahl von Recheneinheiten und effiziente parallele Rechenfähigkeiten und können gleichzeitig eine große Anzahl von Gleitkommaoperationen ausführen. Da GPUs ursprünglich für die Verarbeitung von Spielegrafiken konzipiert wurden, verfügen sie in der Regel über höhere Taktraten und eine größere Speicherbandbreite als CPUs, um komplexe grafische Berechnungen zu unterstützen.
Architektur: CPUs und GPUs haben unterschiedliche Rechenarchitekturen. CPUs haben typischerweise einen oder mehrere Kerne, von denen jeder ein Allzweckprozessor ist, der in der Lage ist, eine Vielzahl verschiedener Operationen auszuführen. GPUs hingegen verfügen über eine große Anzahl von Stream-Prozessoren und Shadern, die speziell zur Ausführung von Berechnungen im Zusammenhang mit der Bildverarbeitung verwendet werden.
Parallele Verarbeitung: GPUs haben in der Regel eine höhere parallele Rechenleistung. Eine CPU hat eine begrenzte Anzahl von Kernen, und jeder Kern kann nur eine Anweisung ausführen, aber eine GPU kann Tausende von Streamprozessoren haben, die mehrere Anweisungen und Operationen gleichzeitig ausführen können. GPUs sind daher im Allgemeinen besser geeignet als CPUs für die Ausführung von parallelen Rechenaufgaben wie maschinelles Lernen und Deep Learning, die umfangreiche parallele Berechnungen erfordern.
Programmierungsentwurf: Die Programmierung für GPUs ist im Vergleich zu CPUs relativ komplexer. Es erfordert die Verwendung spezifischer Programmiersprachen (wie CUDA oder OpenCL) und spezifischer Programmierungstechniken, um die parallele Rechenleistung von GPUs zu nutzen. Im Gegensatz dazu ist die CPU-Programmierung einfacher und kann allgemeine Programmiersprachen und -werkzeuge verwenden.
In der Ära der industriellen Revolution war Öl das Lebenselixier der Welt und drang in jede Branche ein. In der bevorstehenden KI-Ära wird Rechenleistung das „digitale Öl“ der Welt sein. Von der hektischen Verfolgung von KI-Chips durch große Unternehmen und dem Überschreiten des Nvidia-Aktienkurses von einer Billion Dollar bis hin zur jüngsten Blockade der Vereinigten Staaten von High-End-Chips aus China, einschließlich Rechenleistungskapazität, Chipgröße und sogar Plänen, die GPU-Clouds zu verbieten, ist die Bedeutung von Rechenleistung offensichtlich. Rechenleistung wird eine Ware der nächsten Ära sein.
Künstliche Intelligenz (KI) ist eine neue technische Wissenschaft, die Theorien, Methoden und Technologien zur Simulation, Erweiterung und Erweiterung der menschlichen Intelligenz untersucht, entwickelt und anwendet. Sie entstand in den 1950er und 1960er Jahren und hat nach mehr als einem halben Jahrhundert der Evolution durch drei Wellen von Entwicklung erfahren: Symbolik, Verbindungismus und agentenbasierte Ansätze. Heute, als aufstrebende Allzwecktechnologie, treibt KI tiefgreifende Veränderungen im sozialen Leben und in allen Branchen voran. Eine spezifischere Definition von generativer KI ist derzeit: Künstliche Allgemeine Intelligenz (AGI), ein künstliches Intelligenzsystem mit einem breiten Spektrum an Verständnisfähigkeiten, das Aufgaben ausführen und in verschiedenen Bereichen mit einer Intelligenz ähnlich oder über der menschlichen Ebene arbeiten kann. AGI erfordert im Wesentlichen drei Elemente: Deep Learning (DL), Big Data und erhebliche Rechenleistung.
Deep Learning ist ein Teilgebiet des maschinellen Lernens (ML), und Deep-Learning-Algorithmen sind neuronale Netzwerke, die dem menschlichen Gehirn nachempfunden sind. Zum Beispiel enthält das menschliche Gehirn Millionen miteinander verbundener Neuronen, die zusammenarbeiten, um zu lernen und Informationen zu verarbeiten. Ebenso bestehen Deep-Learning-Neuronale Netzwerke (oder künstliche neuronale Netzwerke) aus mehreren Schichten künstlicher Neuronen, die innerhalb eines Computers zusammenarbeiten. Diese künstlichen Neuronen, auch als Knoten bezeichnet, verwenden mathematische Berechnungen, um Daten zu verarbeiten. Künstliche neuronale Netzwerke sind Deep-Learning-Algorithmen, die diese Knoten verwenden, um komplexe Probleme zu lösen.
Neuronale Netzwerke können in die Eingabeschicht, versteckte Schichten und die Ausgabeschicht unterteilt werden. Die Verbindungen zwischen diesen verschiedenen Schichten bestehen aus Parametern.
Eingabeschicht: Die Eingabeschicht ist die erste Schicht des neuronalen Netzwerks und ist dafür verantwortlich, externe Eingabedaten zu empfangen. Jedes Neuron in der Eingabeschicht entspricht einem Merkmal der Eingabedaten. Zum Beispiel kann in der Bildverarbeitung jedes Neuron dem Wert eines Pixels im Bild entsprechen.
Versteckte Schichten: Die Eingabeschicht verarbeitet Daten und leitet sie an tiefere Schichten im Netzwerk weiter. Diese versteckten Schichten verarbeiten Informationen auf verschiedenen Ebenen und passen ihr Verhalten an, wenn sie neue Informationen erhalten. Tiefe Lernnetzwerke können Hunderte von versteckten Schichten haben, die es ihnen ermöglichen, Probleme aus verschiedenen Perspektiven zu analysieren. Wenn Ihnen beispielsweise ein Bild eines unbekannten Tieres gegeben wird, das Sie klassifizieren müssen, können Sie es mit Tieren vergleichen, die Sie bereits kennen. Zum Beispiel können Sie anhand der Form der Ohren, der Anzahl der Beine und der Größe der Pupillen feststellen, um welche Art von Tier es sich handelt. Versteckte Schichten in tiefen neuronalen Netzwerken funktionieren ähnlich. Wenn ein Deep-Learning-Algorithmus versucht, ein Bild eines Tieres zu klassifizieren, wird jede versteckte Schicht verschiedene Merkmale der Tiere verarbeiten und versuchen, sie genau zu klassifizieren.
Ausgabeschicht: Die Ausgabeschicht ist die letzte Schicht des neuronalen Netzwerks und ist dafür verantwortlich, die Ausgabe des Netzwerks zu generieren. Jedes Neuron in der Ausgabeschicht stellt eine mögliche Ausgabekategorie oder -wert dar. Zum Beispiel kann in einem Klassifikationsproblem jedes Neuron in der Ausgabeschicht einer Kategorie entsprechen, während in einem Regressionsproblem die Ausgabeschicht nur ein Neuron haben kann, dessen Wert das Vorhersageergebnis darstellt;
Parameter: In neuronalen Netzwerken werden die Verbindungen zwischen verschiedenen Schichten durch Gewichte und Versatzstücke dargestellt, die während des Schulungsprozesses optimiert werden, um das Netzwerk zu ermöglichen, Muster in den Daten genau zu identifizieren und Vorhersagen zu treffen. Die Zunahme an Parametern kann die Modellkapazität des neuronalen Netzwerks verbessern, d.h. die Fähigkeit des Modells, komplexe Muster in den Daten zu erlernen und darzustellen. Aber entsprechend wird die Zunahme an Parametern den Bedarf an Rechenleistung erhöhen.
Um effektiv trainiert zu werden, benötigen neuronale Netzwerke in der Regel große, vielfältige und qualitativ hochwertige Daten aus verschiedenen Quellen. Diese Daten bilden die Grundlage für das Training und die Validierung von Machine-Learning-Modellen. Durch die Analyse von Big Data können Machine-Learning-Modelle Muster und Beziehungen innerhalb der Daten lernen, was es ihnen ermöglicht, Vorhersagen oder Klassifizierungen zu treffen.
Der Bedarf an erheblicher Rechenleistung ergibt sich aus mehreren Aspekten neuronaler Netzwerke: komplexe mehrschichtige Strukturen, eine große Anzahl von Parametern, die Notwendigkeit, große Datenmengen zu verarbeiten, und iterative Schulungsmethoden (während der Schulungsphase muss das Modell wiederholt iterieren, Vorwärts- und Rückwärtsausbreitungsrechnungen für jede Schicht durchführen, einschließlich Berechnungen für Aktivierungsfunktionen, Verlustfunktionen, Gradienten und Gewichtsaktualisierungen), der Bedarf an hochpräzisen Berechnungen, parallele Rechenfähigkeiten, Optimierungs- und Regularisierungstechniken sowie Modellbewertungs- und Verifizierungsprozesse. Mit dem Fortschreiten des Deep Learnings steigt der Bedarf an massiver Rechenleistung für AGI jedes Jahr um etwa das 10-Fache. Das bisher neueste Modell, GPT-4, enthält 1,8 Billionen Parameter, mit einem einzelnen Schulungskosten von mehr als $60 Millionen und einem Rechenleistungsbedarf von 2,15e25 FLOPS (21,5 Billiarden Gleitkommaoperationen). Der Bedarf an Rechenleistung für das zukünftige Modelltraining wächst weiter, und neue Modelle werden mit zunehmender Geschwindigkeit entwickelt.
Laut den maßgeblichsten Schätzungen wird erwartet, dass der „2022-2023 Global Computing Power Index Assessment Report“, der gemeinsam vom International Data Corporation (IDC), Inspur Information und dem Global Industry Research Institute der Tsinghua University erstellt wurde, die globale KI-Rechenmarktgröße von 19,5 Milliarden US-Dollar im Jahr 2022 auf 34,66 Milliarden US-Dollar im Jahr 2026 steigen wird. Der generative KI-Rechenmarkt soll von 820 Millionen US-Dollar im Jahr 2022 auf 10,99 Milliarden US-Dollar im Jahr 2026 wachsen. Der Anteil des generativen KI-Rechnens am Gesamtmarkt für KI-Rechenleistung soll von 4,2 % auf 31,7 % steigen.
Die Produktion von KI-GPUs wurde ausschließlich von NVIDIA monopolisiert und sie sind extrem teuer (der neueste H100 wurde für 40.000 US-Dollar pro Einheit verkauft). Sobald GPUs veröffentlicht werden, werden sie von Tech-Giganten im Silicon Valley aufgekauft. Einige dieser Geräte werden zur Schulung ihrer eigenen neuen Modelle verwendet. Der Rest wird an KI-Entwickler über Cloud-Plattformen vermietet, wie diejenigen, die von Google, Amazon und Microsoft betrieben werden, die eine große Menge an Rechenressourcen wie Server, GPUs und TPUs kontrollieren. Die Rechenleistung ist zu einer neuen Ressource geworden, die von diesen Giganten monopolisiert wird. Viele KI-Entwickler können nicht einmal eine dedizierte GPU ohne Aufschlag kaufen. Um die neueste Ausrüstung zu verwenden, müssen Entwickler AWS- oder Microsoft-Cloud-Server mieten. Finanzberichte zeigen, dass dieses Geschäft extrem hohe Gewinne erzielt. Mit einem Bruttogewinn von 61% bei den Cloud-Services von AWS, während der Bruttogewinn von Microsoft sogar noch höher ist und bei 72% liegt.
Müssen wir also diese zentralisierte Autorität und Kontrolle akzeptieren und einen Gewinnspanne von 72% für Rechenressourcen zahlen? Werden die Giganten, die Web2 monopolisiert haben, auch die nächste Ära dominieren?
In Bezug auf das Kartellrecht wird Dezentralisierung in der Regel als optimale Lösung angesehen. Wenn man sich bestehende Projekte ansieht, können wir die massive Rechenleistung, die für KI erforderlich ist, durch die Kombination von DePIN-Speicherprojekten mit Protokollen wie RDNR zur Nutzung ungenutzter GPUs erreichen? Die Antwort ist nein. Der Weg, den Drachen zu besiegen, ist nicht so einfach. Frühe Projekte waren nicht speziell für die Rechenleistung von AGI konzipiert und sind nicht machbar. Die Integration von Rechenleistung in die Blockchain steht mindestens vor den folgenden fünf Herausforderungen:
Arbeitsüberprüfung: Um ein wirklich vertrauenswürdiges Rechennetzwerk aufzubauen, das wirtschaftliche Anreize für die Teilnehmer bietet, muss das Netzwerk eine Möglichkeit haben zu überprüfen, ob die Deep Learning-Berechnungen tatsächlich durchgeführt wurden. Das Kernproblem hier ist die Zustandsabhängigkeit von Deep-Learning-Modellen; in diesen Modellen hängt der Eingang für jede Schicht von der Ausgabe der vorherigen Schicht ab. Das bedeutet, dass man nicht einfach eine einzelne Schicht in einem Modell validieren kann, ohne alle Schichten davor zu berücksichtigen. Die Berechnung für jede Schicht basiert auf den Ergebnissen aller vorherigen Schichten. Daher muss, um die Arbeit an einem bestimmten Punkt (z. B. einer bestimmten Schicht) zu überprüfen, die gesamte Arbeit vom Anfang des Modells bis zu diesem spezifischen Punkt ausgeführt werden.
Markt: Als aufstrebender Markt unterliegt der KI-Berechnungsleistungsmarkt Angebots- und Nachfrageproblemen, wie z.B. dem Kaltstartproblem. Angebot und Nachfrageliquidität müssen von Anfang an grob abgestimmt sein, damit der Markt erfolgreich wachsen kann. Um das potenzielle Angebot an Rechenleistung zu erfassen, müssen den Teilnehmern klare Anreize für den Austausch ihrer Rechenressourcen geboten werden. Der Markt benötigt einen Mechanismus, um abgeschlossene Berechnungen zu verfolgen und Anbieter rechtzeitig entsprechend zu bezahlen. In traditionellen Märkten übernehmen Vermittler Aufgaben wie das Management und die Integration und reduzieren die Betriebskosten durch die Festlegung von Mindestzahlungsschwellen. Dieser Ansatz ist jedoch kostspielig, wenn der Marktanteil ausgeweitet wird. Nur ein kleiner Teil des Angebots kann wirtschaftlich erfasst werden, was zu einem Schwellengleichgewichtszustand führt, in dem der Markt nur eine begrenzte Menge erfassen und halten kann, ohne weiter wachsen zu können.
Halteproblem: Das Halteproblem ist ein grundlegendes Problem in der Berechnungstheorie, das darin besteht zu bestimmen, ob eine gegebene Berechnungsaufgabe in einer endlichen Zeit abgeschlossen wird oder unendlich lange läuft. Dieses Problem ist unentscheidbar, was bedeutet, dass es keinen universellen Algorithmus gibt, der vorhersagen kann, ob eine bestimmte Berechnung in endlicher Zeit endet. Beispielsweise steht auch die Ausführung von Smart Contracts auf Ethereum vor einem ähnlichen Halteproblem. Es ist unmöglich im Voraus zu bestimmen, wie viele Rechenressourcen die Ausführung eines Smart Contracts erfordern wird oder ob sie innerhalb einer angemessenen Zeit abgeschlossen wird.
(Im Zusammenhang mit Deep Learning wird dieses Problem komplexer, da Modelle und Frameworks von statischer Graphenerstellung zu dynamischem Aufbau und Ausführung wechseln werden.)
Datenschutz: Das Design und die Entwicklung mit Datenschutzbewusstsein ist ein Muss für Projektteams. Obwohl eine große Menge an Forschung im Bereich maschinelles Lernen auf öffentlichen Datensätzen durchgeführt werden kann, muss das Modell in der Regel zur Verbesserung der Leistung und Anpassung an spezifische Anwendungen feinabgestimmt werden. Dieser Feinabstimmungsprozess kann die Verarbeitung personenbezogener Daten beinhalten, daher müssen Datenschutzanforderungen berücksichtigt werden.
Parallelisierung: Dies ist ein entscheidender Faktor für die mangelnde Machbarkeit der aktuellen Projekte. Deep-Learning-Modelle werden in der Regel parallel auf großen Hardware-Clustern mit proprietären Architekturen und extrem geringen Latenzzeiten trainiert. GPUs in verteilten Rechennetzwerken würden aufgrund häufiger Datenaustausche Latenzzeiten verursachen und wären durch die Leistung der langsamsten GPU begrenzt. Wenn Rechenressourcen unzuverlässig und unzuverlässig sind, ist die Erreichung einer heterogenen Parallelisierung ein zu lösendes Problem. Die derzeit machbare Methode besteht darin, Parallelisierung durch Transformer-Modelle zu erreichen, wie z.B. Switch-Transformer, die jetzt hochgradig parallelisierte Eigenschaften aufweisen.
Lösungen: Obwohl die aktuellen Versuche eines dezentralen AGI-Rechenleistungsmarktes noch in den Anfängen stecken, gibt es zwei Projekte, die zunächst das Konsensdesign der dezentralen Netzwerke und die Implementierung der dezentralen Rechenleistungsnetzwerke im Modelltraining und in der Inferenz gelöst haben. Im Folgenden werden Gensyn und Together als Beispiele herangezogen, um die Designmethoden und Probleme des dezentralen AGI-Rechenleistungsmarktes zu analysieren.
Gensyn ist ein AGI-Rechenleistungsmarkt, der sich noch im Aufbaustadium befindet und das Ziel hat, die verschiedenen Herausforderungen des dezentralen Deep-Learning-Computings zu lösen und die Kosten für das aktuelle Deep-Learning zu reduzieren. Gensyn ist im Wesentlichen ein Proof-of-Stake-Protokoll der ersten Schicht, das auf dem Polkadot-Netzwerk basiert und direkt Löser (diejenigen, die Rechenaufgaben lösen) über Smart Contracts belohnt, im Austausch für ihre ungenutzten GPU-Geräte zur Berechnung und Durchführung von maschinellen Lernaufgaben.
Zurückkehrend zur vorherigen Frage liegt der Kern beim Aufbau eines wirklich vertrauenswürdigen Rechennetzwerks in der Überprüfung der abgeschlossenen maschinellen Lernarbeit. Dies ist eine äußerst komplexe Frage, die ein Gleichgewicht zwischen der Schnittmenge von Komplexitätstheorie, Spieltheorie, Kryptographie und Optimierung erfordert.
Gensyn schlägt eine einfache Lösung vor, bei der Solver die Ergebnisse von maschinellen Lernaufgaben einreichen, die sie abgeschlossen haben. Um zu überprüfen, ob diese Ergebnisse korrekt sind, versucht ein weiterer unabhängiger Verifizierer, die gleiche Arbeit erneut auszuführen. Dieser Ansatz kann als einfache Replikation bezeichnet werden, da nur ein Verifizierer die Aufgabe erneut ausführt. Das bedeutet, dass es nur ein zusätzliches Stück Arbeit gibt, um die Genauigkeit der Originalarbeit zu überprüfen. Wenn die Person, die die Arbeit überprüft, jedoch nicht der ursprüngliche Anforderer ist, besteht immer noch ein Vertrauensproblem. Verifizierer selbst sind möglicherweise nicht ehrlich, und ihre Arbeit muss überprüft werden. Dies führt zu einem potenziellen Problem, bei dem, wenn die Person, die die Arbeit überprüft, nicht der ursprüngliche Anforderer ist, ein weiterer Verifizierer benötigt wird, um ihre Arbeit zu überprüfen. Aber dieser neue Verifizierer könnte auch nicht vertrauenswürdig sein, sodass ein weiterer Verifizierer benötigt wird, um ihre Arbeit zu überprüfen, was zu einer endlosen Replikationskette führen könnte. Hier müssen wir drei Schlüsselkonzepte einführen und sie verweben, um ein Teilnehmersystem mit vier Rollen aufzubauen, um das Problem der endlosen Kette zu lösen.
Probabilistische Lernnachweise: Erstellt Zertifikate für abgeschlossene Arbeiten unter Verwendung von Metadaten aus dem auf Gradienten basierenden Optimierungsprozess. Durch die Replikation bestimmter Phasen können diese Zertifikate schnell überprüft werden, um sicherzustellen, dass die Arbeit wie erwartet abgeschlossen wurde.
Graphenbasiertes präzises Positionierungsprotokoll: Verwendung eines mehrgranularen, graphenbasierten präzisen Positionierungsprotokolls und konsistente Ausführung von Kreuzbewertern. Dies ermöglicht das erneute Ausführen und Vergleichen von Verifizierungsarbeiten, um Konsistenz sicherzustellen, die letztendlich durch die Blockchain selbst bestätigt wird.
Truebit-Style-Anreizspiel: Verwenden von Einsätzen und Strafen, um ein Anreizspiel zu erstellen, das sicherstellt, dass jeder wirtschaftlich vernünftige Teilnehmer ehrlich handelt und seine erwarteten Aufgaben erfüllt.
Das Teilnehmersystem besteht aus Einreichern, Lösungsfindern, Verifizierern und Whistleblowern.
Einreicher:
Einreicher sind die Endbenutzer des Systems, die Aufgaben zur Berechnung bereitstellen und für die abgeschlossenen Arbeitseinheiten bezahlen;
Löser:
Solvers sind die Hauptarbeiter des Systems, die das Modelltraining durchführen und Beweise generieren, die vom Verifizierer überprüft werden;
Verifiers:
Verifier sind entscheidend dafür, den nichtdeterministischen Schulungsprozess mit deterministischen linearen Berechnungen zu verknüpfen, Teile des Nachweises des Lösers zu replizieren und Entfernungen mit erwarteten Schwellenwerten zu vergleichen;
Whistleblowers:
Whistleblowers sind die letzte Verteidigungslinie, die die Arbeit der Verifizierer überprüfen und Herausforderungen stellen, um großzügige Prämienzahlungen zu erhalten.
Das vom Protokoll entworfene Spielsystem funktioniert über acht Phasen und umfasst vier Hauptteilnehmerrollen, um den gesamten Prozess von der Aufgabeneinreichung bis zur endgültigen Überprüfung abzuschließen.
Aufgabenstellung: Aufgaben bestehen aus drei spezifischen Stücken von Informationen:
Metadaten, die die Aufgabe und Hyperparameter beschreiben;
Eine Modell-Binärdatei (oder Grundarchitektur);
Öffentlich zugängliche, vorverarbeitete Trainingsdaten.
Um eine Aufgabe einzureichen, gibt der Einreicher die Details der Aufgabe in einem maschinenlesbaren Format an und reicht sie zusammen mit der Modell-Binärdatei (oder maschinenlesbaren Architektur) und einem öffentlich zugänglichen Speicherort der vorverarbeiteten Trainingsdaten an die Kette ein. Öffentliche Daten können in einfachem Objektspeicher wie AWS’s S3 oder in einem dezentralen Speicher wie IPFS, Arweave oder Subspace gespeichert werden.
Profiling: Der Profiling-Prozess legt einen Ausgangsabstandsschwellenwert für die Überprüfung des Lernnachweises fest. Überprüfer werden periodisch Profiling-Aufgaben abrufen und Mutationsgrenzwerte für den Vergleich von Lernnachweisen generieren. Um den Schwellenwert zu generieren, wird der Überprüfer deterministisch Teile des Trainings mit verschiedenen Zufallszahlen ausführen und erneut ausführen, ihre eigenen Nachweise generieren und überprüfen. Während dieses Prozesses legt der Überprüfer einen insgesamt erwarteten Abstandsschwellenwert für die nicht-deterministische Arbeit der Lösung fest, der zur Überprüfung verwendet werden kann.
Ausbildung: Nach dem Profiling gelangen Aufgaben in den öffentlichen Aufgabenpool (ähnlich wie bei Ethereums Mempool). Wählen Sie einen Solver aus, um die Aufgabe auszuführen und die Aufgabe aus dem Aufgabenpool zu entfernen. Solver führen die Aufgabe basierend auf den vom Einreicher übermittelten Metadaten sowie dem Modell und den bereitgestellten Trainingsdaten aus. Bei der Ausführung von Schulungsaufgaben generieren Solver auch Lernnachweise, indem sie regelmäßig Punkte überprüfen und Metadaten (einschließlich Parameter) während des Schulungsprozesses speichern, damit Verifizierer die folgenden Optimierungsschritte so genau wie möglich replizieren können.
Nachweisgenerierung: Solver speichern periodisch Modellgewichte oder Aktualisierungen und ihre entsprechenden Indizes des Trainingsdatensatzes, um die Proben zu identifizieren, die zur Generierung der Gewichtsaktualisierungen verwendet wurden. Die Checkpoint-Frequenz kann angepasst werden, um stärkere Garantien zu bieten oder Speicherplatz zu sparen. Nachweise können „gestapelt“ werden, was bedeutet, dass sie von einer zufälligen Verteilung ausgehen, die zur Initialisierung der Gewichte verwendet wird, oder von vortrainierten Gewichten, die mit ihren eigenen Nachweisen generiert wurden. Dies ermöglicht es dem Protokoll, einen Satz bewährter, vortrainierter Basismodelle aufzubauen, die für spezifischere Aufgaben feinabgestimmt werden können.
Überprüfung des Nachweises: Nach Abschluss der Aufgabe melden die Solver den Abschluss der Aufgabe in der Kette an und zeigen ihren Lernnachweis an einem öffentlich zugänglichen Ort an, damit die Überprüfer darauf zugreifen können. Überprüfer ziehen Überprüfungsaufgaben aus dem öffentlichen Aufgabenpool und führen Rechenarbeiten durch, um einen Teil des Nachweises erneut auszuführen und Distanzberechnungen durchzuführen. Die Kette verwendet zusammen mit dem während der Profilierungsphase berechneten Schwellenwert dann die resultierende Distanz, um festzustellen, ob die Überprüfung mit dem Nachweis übereinstimmt.
Graphenbasierte Pinpoint-Herausforderung: Nachdem der Nachweis des Lernens überprüft wurde, können Whistleblower die Arbeit der Überprüfer replizieren, um zu überprüfen, ob die Überprüfungsarbeit selbst korrekt ausgeführt wurde. Wenn Whistleblower glauben, dass die Überprüfung falsch durchgeführt wurde (bösartig oder nicht), können sie diese zur Vertragsarbitrage herausfordern, um eine Belohnung zu erhalten. Diese Belohnung kann aus Einlagen von Lösern und Validatoren stammen (im Falle eines echten Positivs) oder aus einem Lotteriepool-Bonus (im Falle eines falschen Positivs), wobei die Schiedsgerichtsbarkeit über die Kette selbst durchgeführt wird. Whistleblower (die in ihrem Fall als Überprüfer handeln) werden die Arbeit nur überprüfen und anschließend herausfordern, wenn sie erwarten, angemessene Entschädigung zu erhalten. In der Praxis bedeutet dies, dass erwartet wird, dass Whistleblower dem Netzwerk basierend auf der Anzahl anderer aktiver Whistleblower beitreten und es verlassen (d. h. mit lebendigen Einlagen und Herausforderungen). Daher ist die erwartete Standardstrategie für jeden Whistleblower, dem Netzwerk beizutreten, wenn es weniger andere Whistleblower gibt, eine Einzahlung zu leisten, eine zufällige aktive Aufgabe auszuwählen und ihren Überprüfungsprozess zu beginnen. Nach einer Aufgabe werden sie eine andere zufällige aktive Aufgabe übernehmen und wiederholen, bis die Anzahl der Whistleblower ihren festgelegten Auszahlungsschwellenwert überschreitet, zu dem Zeitpunkt, an dem sie das Netzwerk verlassen (oder wahrscheinlicher in eine andere Rolle im Netzwerk wechseln werden – Überprüfer oder Löser – basierend auf ihren Hardwarefähigkeiten), bis sich die Situation erneut umkehrt.
Vertragsarbitrage: Wenn Verifizierer von Whistleblowern herausgefordert werden, betreten sie einen Prozess mit der Kette, um den Standort des umstrittenen Vorgangs oder Eingangs herauszufinden, und letztendlich wird die Kette die endgültige Grundoperation durchführen und feststellen, ob die Herausforderung gerechtfertigt ist. Um Whistleblower ehrlich zu halten und das Dilemma der Verifizierer zu überwinden, werden hier periodische erzwungene Fehler und Jackpot-Zahlungen eingeführt.
Abrechnung: Während des Abrechnungsprozesses werden die Teilnehmer auf der Grundlage von probabilistischen und deterministischen Überprüfungen bezahlt. Je nach den Ergebnissen früherer Überprüfungen und Herausforderungen ergeben sich unterschiedliche Zahlungsszenarien. Wenn die Arbeit als korrekt erachtet wird und alle Überprüfungen bestanden haben, werden sowohl die Lösungsanbieter als auch die Überprüfer basierend auf den durchgeführten Operationen belohnt.
Gensyn hat auf der Verifizierungsebene und Anreizschichten ein ausgefeiltes spieltheoretisches System entworfen, das eine schnelle Identifizierung und Behebung von Fehlern ermöglicht, indem Abweichungen im Netzwerk punktgenau lokalisiert werden. Es fehlen jedoch noch viele Details im aktuellen System. Zum Beispiel, wie können Parameter festgelegt werden, um sicherzustellen, dass Belohnungen und Strafen angemessen sind, ohne die Schwelle zu hoch zu setzen? Haben Sie extreme Szenarien und die unterschiedliche Rechenleistung der Solver in den spieltheoretischen Aspekten berücksichtigt? In der aktuellen Version des Whitepapers fehlt eine ausführliche Beschreibung der heterogenen parallelen Ausführung. Gensyn hat noch einen langen Weg vor sich.
Together.ai ist ein Unternehmen, das sich auf Open-Source, dezentrale KI-Berechnungslösungen für große Modelle konzentriert. Ziel ist es, dass jeder überall auf KI zugreifen kann. Streng genommen handelt es sich bei Together nicht um ein Blockchain-Projekt, aber es hat vorläufig die Latenzprobleme innerhalb dezentraler AGI-Berechnungsnetzwerke gelöst. Daher analysiert der folgende Artikel nur die Lösungen von Together und bewertet das Projekt selbst nicht.
Wie kann das Training und die Inferenz großer Modelle erreicht werden, wenn dezentralisierte Netzwerke 100 Mal langsamer sind als Rechenzentren?
Stellen wir uns die Verteilung von GPUs vor, die an einem dezentralen Netzwerk teilnehmen. Diese Geräte werden über verschiedene Kontinente und Städte verteilt sein, von denen jedes mit unterschiedlichen Latenzen und Bandbreiten verbunden werden muss. Wie im folgenden Diagramm dargestellt, zeigt ein simuliertes verteiltes Szenario Geräte in Nordamerika, Europa und Asien, die unterschiedliche Bandbreiten und Latenzen zwischen sich haben. Was muss getan werden, um sie effektiv miteinander zu verbinden?
Verteiltes Training von Rechenmodellen: Das Diagramm unten zeigt die Situation des Trainings eines Basismodells über mehrere Geräte hinweg, das drei Arten von Kommunikation aufweist: Vorwärtsaktivierung, Rückwärtsgradient und laterale Kommunikation.
Die Kombination aus Kommunikationsbandbreite und Latenz erfordert die Berücksichtigung von zwei Formen des Parallelismus: Pipeline-Parallelismus und Datenparallelismus, die den drei Arten der Kommunikation im Multi-Geräte-Szenario entsprechen:
Bei der Pipeline-Parallelität werden alle Schichten des Modells in mehrere Stufen unterteilt, wobei jedes Gerät eine Stufe verarbeitet, die eine Sequenz aufeinanderfolgender Schichten wie mehrere Transformer-Blöcke darstellt. Während der Vorwärtspropagierung werden Aktivierungen an die nächste Stufe weitergeleitet, und während der Rückwärtspropagierung werden Gradienten der Aktivierungen an die vorherige Stufe zurückgegeben.
In der Datenparallelität berechnen die Geräte unabhängig voneinander Gradienten für verschiedene Mikro-Batches, müssen jedoch diese Gradienten durch Kommunikation synchronisieren.
Optimierung der Terminplanung:
In einer dezentralen Umgebung wird der Schulungsprozess oft durch die Kommunikation eingeschränkt. Zeitplanungsalgorithmen weisen im Allgemeinen Aufgaben, die umfangreiche Kommunikation erfordern, Geräten mit schnelleren Verbindungen zu. Angesichts der Abhängigkeiten zwischen Aufgaben und der Heterogenität des Netzwerks ist es zunächst erforderlich, die Kosten spezifischer Zeitplanungsstrategien zu modellieren. Um die komplexe Kommunikationskosten von Trainingsgrundmodellen zu erfassen, schlägt Together eine neuartige Formulierung vor und zerlegt das Kostenmodell unter Verwendung der Graphentheorie in zwei Ebenen:
Graphentheorie ist ein Teilgebiet der Mathematik, das die Eigenschaften und Strukturen von Graphen (Netzwerken) untersucht. Ein Graph besteht aus Knoten (Knoten) und Kanten (Linien, die Knoten verbinden). Der Hauptzweck der Graphentheorie besteht darin, verschiedene Eigenschaften von Graphen zu untersuchen, wie die Konnektivität, die Färbung und die Art von Pfaden und Zyklen in Graphen.
Das erste Level ist ein ausbalanciertes Graphpartitionierungsproblem (Aufteilung der Knotenmenge eines Graphen in mehrere Teilmengen gleicher oder annähernd gleicher Größe unter Minimierung der Anzahl von Kanten zwischen den Teilmengen). Bei dieser Partitionierung stellt jede Teilmengen eine Partition dar, und die Kommunikationskosten werden durch Minimierung der Kanten zwischen den Partitionen reduziert, was den Kommunikationskosten der Datenparallelität entspricht.
Die zweite Ebene beinhaltet ein gemeinsames Graphen-Matching und das Problem des Handlungsreisenden (ein kombinatorisches Optimierungsproblem, das Elemente des Graphen-Matchings und des Problems des Handlungsreisenden kombiniert). Das Graphen-Matching-Problem besteht darin, eine Übereinstimmung im Graphen zu finden, die einige Kosten minimiert oder maximiert. Das Problem des Handlungsreisenden sucht den kürzesten Weg, der alle Knoten im Graphen besucht, was den Kommunikationskosten des Pipeline-Parallelismus entspricht.
Das obige Diagramm ist eine schematische Darstellung des Prozesses. Aufgrund der komplexen Berechnungen, die bei der tatsächlichen Implementierung involviert sind, wird der in dem Diagramm beschriebene Prozess zur einfacheren Verständnis vereinfacht. Für eine detaillierte Implementierung kann man die Dokumentation auf der offiziellen Website von Together konsultieren.
Angenommen, es gibt eine Menge von NN-Geräten, DD, mit unsicheren Kommunikationsverzögerungen (Matrix AA) und Bandbreiten (Matrix BB), basierend auf der Gerätemenge DD, erzeugen wir zunächst eine ausgeglichene Graphpartition. Jede Partition oder Gruppe von Geräten enthält ungefähr die gleiche Anzahl von Geräten, die alle dieselbe Pipelinestufe verarbeiten. Dadurch wird sichergestellt, dass während der Datenparallelität jede Gerätegruppe einen ähnlichen Arbeitsaufwand ausführt. Entsprechend den Kommunikationsverzögerungen und Bandbreiten kann eine Formel die "Kosten" für die Datenübertragung zwischen Gerätegruppen berechnen. Jede ausgeglichene Gruppe wird zusammengeführt, um ein vollständig verbundenes grobes Diagramm zu erstellen, wobei jeder Knoten eine Pipelinestufe darstellt und die Kanten die Kommunikationskosten zwischen zwei Phasen darstellen. Um die Kommunikationskosten zu minimieren, wird ein Matching-Algorithmus verwendet, um zu bestimmen, welche Gerätegruppen zusammenarbeiten sollen.
Für eine weitere Optimierung kann dieses Problem auch als ein offenes Traveling-Salesman-Problem modelliert werden (offenes Loop bedeutet, dass es nicht notwendig ist, zum Ausgangspunkt des Pfades zurückzukehren), um einen optimalen Pfad zur Datenübertragung über alle Geräte zu finden. Schließlich verwendet Together einen innovativen Zeitplanalgorithmus, um die optimale Zuweisungsstrategie für das gegebene Kostenmodell zu finden, wodurch die Kommunikationskosten minimiert und die Schulungsdurchsatz maximiert werden. Laut Tests, selbst wenn das Netzwerk unter dieser Zeitplanoptimierung 100-mal langsamer ist, beträgt der end-to-end-Training-Durchsatz nur etwa 1,7 bis 2,3-mal langsamer.
Kommunikationskomprimierungsoptimierung:
Für die Optimierung der Kommunikationskompression hat Together den AQ-SGD-Algorithmus eingeführt (für den detaillierten Berechnungsprozess siehe das Paper "Fine-tuning Language Models over Slow Networks using Activation Compression with Guarantees"). Der AQ-SGD-Algorithmus ist eine neuartige Aktivierungskomprimierungstechnik, die entwickelt wurde, um Probleme mit der Kommunikationseffizienz während des parallelen Trainings von Pipelines über langsame Netzwerke zu beheben. Anders als bei früheren Methoden der direkten Komprimierung von Aktivierungswerten konzentriert sich AQ-SGD auf die Komprimierung der Änderungen der Aktivierungswerte derselben Trainingsstichprobe in verschiedenen Zeiträumen. Diese einzigartige Methode führt eine interessante "selbstausführende" Dynamik ein, bei der sich die Leistung des Algorithmus allmählich verbessern wird, wenn sich das Training stabilisiert. Der AQ-SGD-Algorithmus wurde streng theoretisch analysiert und weist unter bestimmten technischen Bedingungen gute Konvergenzraten und begrenzte Fehlerquantisierungsfunktionen auf. Der Algorithmus kann effektiv implementiert werden, ohne zusätzlichen End-to-End-Laufzeitaufwand hinzuzufügen, obwohl er die Verwendung von mehr Arbeitsspeicher und SSD zum Speichern von Aktivierungswerten erfordert. Durch umfangreiche Experimente mit Sequenzklassifizierungs- und Sprachmodellierungsdatensätzen wurde gezeigt, dass AQ-SGD die Aktivierungswerte auf 2–4 Bit komprimiert, ohne die Konvergenzleistung zu beeinträchtigen. Darüber hinaus kann AQ-SGD mit modernsten Gradientenkompressionsalgorithmen integriert werden, um eine "End-to-End-Kommunikationskompression" zu erreichen, was bedeutet, dass der Datenaustausch zwischen allen Maschinen, einschließlich Modellgradienten, Vorwärtsaktivierungswerten und Rückwärtsgradienten, auf niedrige Präzision komprimiert wird, wodurch die Kommunikationseffizienz des verteilten Trainings erheblich verbessert wird. Im Vergleich zur End-to-End-Trainingsleistung in einem zentralisierten Computernetzwerk (z. B. 10 Gbit/s) ohne Komprimierung ist sie derzeit nur 31 % langsamer. In Kombination mit den Daten zur Planungsoptimierung besteht zwar noch eine gewisse Lücke zwischen den zentralisierten Rechennetzen, aber es besteht große Hoffnung, in Zukunft aufzuholen.
In der Dividendenperiode, die die KI-Welle mit sich gebracht hat, ist der AGI-Rechenleistungsmarkt zweifellos der Markt mit dem größten Potenzial und der größten Nachfrage unter den verschiedenen Rechenleistungsmärkten. Die höchste Entwicklungsschwierigkeit, Hardwareanforderungen und Kapitalanforderungen bringen jedoch Herausforderungen für diese Branche mit sich. Durch die Kombination der beiden oben genannten Projekte sind wir noch einige Zeit von der Einführung des AGI-Rechenleistungsmarktes entfernt. Das echte dezentrale Netzwerk ist auch viel komplizierter als das ideale Szenario. Es reicht derzeit nicht aus, um mit den Cloud-Giganten zu konkurrieren.
Zum Zeitpunkt des Verfassens stellte ich auch fest, dass einige kleinere Projekte, die sich noch in den Kinderschuhen befinden (die PPT-Stufe), begonnen haben, einige neue Einstiegspunkte zu erkunden, wie z.B. die Konzentration auf die weniger anspruchsvolle AGI-Inferenzstufe anstelle der Trainingsphase. Langfristig ist jedoch die Bedeutung von Dezentralisierung und Erlaubnissystemen tiefgreifend. Das Recht auf Zugang und Training der AGI-Rechenleistung sollte nicht in den Händen weniger zentralisierter Giganten konzentriert sein. Die Menschheit braucht weder eine neue „Theokratie“ noch einen neuen „Papst“, noch sollte sie teure Mitgliedsbeiträge zahlen.
Seit der Geburt von GPT-3 hat die generative KI einen explosiven Wendepunkt im Bereich der künstlichen Intelligenz mit ihrer erstaunlichen Leistung und den breiten Anwendungsszenarien eingeleitet. Dies hat dazu geführt, dass Tech-Giganten zur KI-Spur drängen. Diese Welle hat jedoch zahlreiche Probleme mit sich gebracht. Die Trainings- und Inferenzoperationen großer Sprachmodelle (LLMs) erfordern eine beträchtliche Rechenleistung. Mit dem iterativen Upgrade dieser Modelle steigen die Nachfrage und die Kosten für die Rechenleistung exponentiell an. Anhand von GPT-2 und GPT-3 als Beispiele beträgt der Unterschied in der Anzahl der Parameter zwischen GPT-2 und GPT-3 1166-mal (GPT-2 hat 150 Millionen Parameter, während GPT-3 175 Milliarden hat). Die Kosten für eine einzelne Trainingssitzung von GPT-3 wurden auf der Grundlage der Preismodelle öffentlicher GPU-Clouds zum damaligen Zeitpunkt berechnet und beliefen sich auf bis zu 12 Millionen US-Dollar. Dies war das 200-fache von GPT-2. In der praktischen Anwendung erfordert jede Benutzerabfrage Inferenzberechnungen. Basierend auf den 13 Millionen unabhängigen Benutzern zu Beginn dieses Jahres würde der entsprechende Bedarf an Chips mehr als 30.000 A100-GPUs betragen. Die anfänglichen Investitionskosten würden dann bei beeindruckenden 800 Millionen US-Dollar liegen, mit geschätzten täglichen Modell-Inferenzkosten von 700.000 US-Dollar.
Unzureichende Rechenleistung und hohe Kosten sind ernste Herausforderungen, mit denen die gesamte KI-Branche konfrontiert ist. Bemerkenswerterweise scheint ein ähnliches Problem die Blockchain-Branche zu bedrohen. Einerseits stehen das vierte Bitcoin-Halving und die Genehmigung von ETFs unmittelbar bevor. Mit steigenden zukünftigen Preisen wird die Nachfrage der Miner nach Rechenhardware zwangsläufig stark steigen. Andererseits boomt die Zero-Knowledge Proof (ZKP)-Technologie, und Vitalik hat mehrfach betont, dass der Einfluss von ZK auf das Blockchain-Feld in den nächsten zehn Jahren ebenso wichtig sein wird wie die Blockchain selbst. Während diese Technologie vielversprechend für die Zukunft der Blockchain-Branche ist, benötigt ZK auch eine erhebliche Menge an Rechenleistung und Zeit zur Erzeugung von Beweisen aufgrund ihres komplexen Berechnungsprozesses, ähnlich wie KI.
In absehbarer Zukunft wird der Mangel an Rechenleistung unvermeidlich werden. Wird der dezentralisierte Markt für Rechenleistung also ein profitables Geschäftsunternehmen sein?
Der dezentrale Rechenleistungsmarkt entspricht tatsächlich der dezentralen Cloud-Computing-Spur, aber ich persönlich finde, dass dieser Begriff besser geeignet ist, um die neuen Projekte zu beschreiben, die später diskutiert werden. Der dezentrale Rechenleistungsmarkt sollte als Untermenge von DePIN (Decentralized Physical Infrastructure Networks) betrachtet werden, dessen Ziel es ist, einen offenen Rechenleistungsmarkt zu schaffen, auf dem jeder mit ungenutzten Rechenleistungsressourcen seine Ressourcen anbieten kann, die durch Token incentiviert werden, hauptsächlich zur Bedienung von B2B-Kunden und Entwicklergemeinschaften. Im Hinblick auf vertrautere Projekte gehören Netzwerke wie Render Network, das auf dezentralen GPU-Rendering-Lösungen basiert, und Akash Network, ein verteiltes Peer-to-Peer-Marktplatz für Cloud-Computing, beide zu dieser Spur.
Der folgende Text wird mit den Grundkonzepten beginnen und dann drei aufstrebende Märkte unter diesem Track diskutieren: den AGI-Rechenleistungsmarkt, den Bitcoin-Rechenleistungsmarkt und den AGI-Rechenleistungsmarkt im ZK-Hardwarebeschleunigungsmarkt. Die letzten beiden werden in „Ausblick auf einen vielversprechenden Track: Dezentralisierter Rechenleistungsmarkt (Teil 2)“ diskutiert.
Das Konzept der Rechenleistung lässt sich bis zur Erfindung des Computers zurückverfolgen. Der ursprüngliche Computer verwendete mechanische Geräte, um Rechenaufgaben zu erledigen, und die Rechenleistung bezog sich auf die Berechnungsfähigkeit des mechanischen Geräts. Mit der Entwicklung der Computertechnologie hat sich auch das Konzept der Rechenleistung weiterentwickelt. Die heutige Rechenleistung bezieht sich in der Regel auf die gemeinsame Arbeit von Computerhardware (CPUs, GPUs, FPGAs usw.) und Software (Betriebssysteme, Compiler, Anwendungen usw.).
Rechenleistung bezieht sich auf die Menge an Daten, die ein Computer oder ein anderes Rechengerät innerhalb eines bestimmten Zeitraums verarbeiten kann oder die Anzahl von Rechenaufgaben, die es abschließen kann. Die Rechenleistung wird in der Regel verwendet, um die Leistung eines Computers oder anderer Rechengeräte zu beschreiben. Es handelt sich um eine wichtige Kennzahl der Verarbeitungsfähigkeiten eines Rechengeräts.
Rechenleistung kann auf verschiedene Arten gemessen werden, wie z.B. Rechengeschwindigkeit, Energieverbrauch, Rechengenauigkeit und Parallelität. In der Informatik werden häufig verwendete Kennzahlen für die Rechenleistung wie FLOPS (Gleitkommaoperationen pro Sekunde), IPS (Instruktionen pro Sekunde), TPS (Transaktionen pro Sekunde) usw. verwendet.
FLOPS misst die Fähigkeit des Computers, Gleitkommaoperationen (mathematische Operationen mit Dezimalstellen, die Präzisionsprobleme und Rundungsfehler erfordern) zu verarbeiten. Es misst, wie viele Gleitkommaoperationen ein Computer pro Sekunde abschließen kann. FLOPS ist ein Maß für die Hochleistungsrechenleistung eines Computers und wird häufig verwendet, um die Rechenleistung von Supercomputern, Hochleistungsrechnerservern, Grafikprozessoren (GPUs) usw. zu messen. Wenn ein Computersystem beispielsweise 1 TFLOPS (eine Billion Gleitkommaoperationen pro Sekunde) hat, bedeutet dies, dass es 1 Billion Gleitkommaoperationen pro Sekunde abschließen kann.
IPS misst die Geschwindigkeit, mit der ein Computer Anweisungen verarbeitet. Es ist ein Maß dafür, wie viele Anweisungen ein Computer pro Sekunde ausführen kann und ein Maß für die Leistung einer einzelnen Anweisung eines Computers, das typischerweise zur Messung der Leistung einer zentralen Verarbeitungseinheit (CPU) verwendet wird. Zum Beispiel bedeutet eine CPU mit einer IPS von 3 GHz (3 Milliarden Anweisungen pro Sekunde), dass sie 3 Milliarden Anweisungen pro Sekunde ausführen kann.
TPS misst die Fähigkeit eines Computers, Transaktionen zu verarbeiten. Es misst, wie viele Transaktionen ein Computer pro Sekunde abschließen kann, und wird typischerweise zur Messung der Leistung eines Datenbankservers verwendet. Zum Beispiel hat ein Datenbankservers einen TPS-Wert von 1.000, was bedeutet, dass er 1.000 Datenbanktransaktionen pro Sekunde verarbeiten kann.
Darüber hinaus gibt es einige Rechenleistungsmetriken für spezifische Anwendungsszenarien, wie etwa die Inferenzgeschwindigkeit, die Bildverarbeitungsgeschwindigkeit und die Spracherkennungsgenauigkeit.
GPU-Rechenleistung bezieht sich auf die Rechenfähigkeit von Grafikprozessoren (GPUs). Im Gegensatz zu zentralen Prozessoren (CPUs) sind GPUs Hardware, die speziell für die Verarbeitung grafischer Daten wie Bilder und Videos konzipiert ist. Sie verfügen über eine große Anzahl von Recheneinheiten und effiziente parallele Rechenfähigkeiten und können gleichzeitig eine große Anzahl von Gleitkommaoperationen ausführen. Da GPUs ursprünglich für die Verarbeitung von Spielegrafiken konzipiert wurden, verfügen sie in der Regel über höhere Taktraten und eine größere Speicherbandbreite als CPUs, um komplexe grafische Berechnungen zu unterstützen.
Architektur: CPUs und GPUs haben unterschiedliche Rechenarchitekturen. CPUs haben typischerweise einen oder mehrere Kerne, von denen jeder ein Allzweckprozessor ist, der in der Lage ist, eine Vielzahl verschiedener Operationen auszuführen. GPUs hingegen verfügen über eine große Anzahl von Stream-Prozessoren und Shadern, die speziell zur Ausführung von Berechnungen im Zusammenhang mit der Bildverarbeitung verwendet werden.
Parallele Verarbeitung: GPUs haben in der Regel eine höhere parallele Rechenleistung. Eine CPU hat eine begrenzte Anzahl von Kernen, und jeder Kern kann nur eine Anweisung ausführen, aber eine GPU kann Tausende von Streamprozessoren haben, die mehrere Anweisungen und Operationen gleichzeitig ausführen können. GPUs sind daher im Allgemeinen besser geeignet als CPUs für die Ausführung von parallelen Rechenaufgaben wie maschinelles Lernen und Deep Learning, die umfangreiche parallele Berechnungen erfordern.
Programmierungsentwurf: Die Programmierung für GPUs ist im Vergleich zu CPUs relativ komplexer. Es erfordert die Verwendung spezifischer Programmiersprachen (wie CUDA oder OpenCL) und spezifischer Programmierungstechniken, um die parallele Rechenleistung von GPUs zu nutzen. Im Gegensatz dazu ist die CPU-Programmierung einfacher und kann allgemeine Programmiersprachen und -werkzeuge verwenden.
In der Ära der industriellen Revolution war Öl das Lebenselixier der Welt und drang in jede Branche ein. In der bevorstehenden KI-Ära wird Rechenleistung das „digitale Öl“ der Welt sein. Von der hektischen Verfolgung von KI-Chips durch große Unternehmen und dem Überschreiten des Nvidia-Aktienkurses von einer Billion Dollar bis hin zur jüngsten Blockade der Vereinigten Staaten von High-End-Chips aus China, einschließlich Rechenleistungskapazität, Chipgröße und sogar Plänen, die GPU-Clouds zu verbieten, ist die Bedeutung von Rechenleistung offensichtlich. Rechenleistung wird eine Ware der nächsten Ära sein.
Künstliche Intelligenz (KI) ist eine neue technische Wissenschaft, die Theorien, Methoden und Technologien zur Simulation, Erweiterung und Erweiterung der menschlichen Intelligenz untersucht, entwickelt und anwendet. Sie entstand in den 1950er und 1960er Jahren und hat nach mehr als einem halben Jahrhundert der Evolution durch drei Wellen von Entwicklung erfahren: Symbolik, Verbindungismus und agentenbasierte Ansätze. Heute, als aufstrebende Allzwecktechnologie, treibt KI tiefgreifende Veränderungen im sozialen Leben und in allen Branchen voran. Eine spezifischere Definition von generativer KI ist derzeit: Künstliche Allgemeine Intelligenz (AGI), ein künstliches Intelligenzsystem mit einem breiten Spektrum an Verständnisfähigkeiten, das Aufgaben ausführen und in verschiedenen Bereichen mit einer Intelligenz ähnlich oder über der menschlichen Ebene arbeiten kann. AGI erfordert im Wesentlichen drei Elemente: Deep Learning (DL), Big Data und erhebliche Rechenleistung.
Deep Learning ist ein Teilgebiet des maschinellen Lernens (ML), und Deep-Learning-Algorithmen sind neuronale Netzwerke, die dem menschlichen Gehirn nachempfunden sind. Zum Beispiel enthält das menschliche Gehirn Millionen miteinander verbundener Neuronen, die zusammenarbeiten, um zu lernen und Informationen zu verarbeiten. Ebenso bestehen Deep-Learning-Neuronale Netzwerke (oder künstliche neuronale Netzwerke) aus mehreren Schichten künstlicher Neuronen, die innerhalb eines Computers zusammenarbeiten. Diese künstlichen Neuronen, auch als Knoten bezeichnet, verwenden mathematische Berechnungen, um Daten zu verarbeiten. Künstliche neuronale Netzwerke sind Deep-Learning-Algorithmen, die diese Knoten verwenden, um komplexe Probleme zu lösen.
Neuronale Netzwerke können in die Eingabeschicht, versteckte Schichten und die Ausgabeschicht unterteilt werden. Die Verbindungen zwischen diesen verschiedenen Schichten bestehen aus Parametern.
Eingabeschicht: Die Eingabeschicht ist die erste Schicht des neuronalen Netzwerks und ist dafür verantwortlich, externe Eingabedaten zu empfangen. Jedes Neuron in der Eingabeschicht entspricht einem Merkmal der Eingabedaten. Zum Beispiel kann in der Bildverarbeitung jedes Neuron dem Wert eines Pixels im Bild entsprechen.
Versteckte Schichten: Die Eingabeschicht verarbeitet Daten und leitet sie an tiefere Schichten im Netzwerk weiter. Diese versteckten Schichten verarbeiten Informationen auf verschiedenen Ebenen und passen ihr Verhalten an, wenn sie neue Informationen erhalten. Tiefe Lernnetzwerke können Hunderte von versteckten Schichten haben, die es ihnen ermöglichen, Probleme aus verschiedenen Perspektiven zu analysieren. Wenn Ihnen beispielsweise ein Bild eines unbekannten Tieres gegeben wird, das Sie klassifizieren müssen, können Sie es mit Tieren vergleichen, die Sie bereits kennen. Zum Beispiel können Sie anhand der Form der Ohren, der Anzahl der Beine und der Größe der Pupillen feststellen, um welche Art von Tier es sich handelt. Versteckte Schichten in tiefen neuronalen Netzwerken funktionieren ähnlich. Wenn ein Deep-Learning-Algorithmus versucht, ein Bild eines Tieres zu klassifizieren, wird jede versteckte Schicht verschiedene Merkmale der Tiere verarbeiten und versuchen, sie genau zu klassifizieren.
Ausgabeschicht: Die Ausgabeschicht ist die letzte Schicht des neuronalen Netzwerks und ist dafür verantwortlich, die Ausgabe des Netzwerks zu generieren. Jedes Neuron in der Ausgabeschicht stellt eine mögliche Ausgabekategorie oder -wert dar. Zum Beispiel kann in einem Klassifikationsproblem jedes Neuron in der Ausgabeschicht einer Kategorie entsprechen, während in einem Regressionsproblem die Ausgabeschicht nur ein Neuron haben kann, dessen Wert das Vorhersageergebnis darstellt;
Parameter: In neuronalen Netzwerken werden die Verbindungen zwischen verschiedenen Schichten durch Gewichte und Versatzstücke dargestellt, die während des Schulungsprozesses optimiert werden, um das Netzwerk zu ermöglichen, Muster in den Daten genau zu identifizieren und Vorhersagen zu treffen. Die Zunahme an Parametern kann die Modellkapazität des neuronalen Netzwerks verbessern, d.h. die Fähigkeit des Modells, komplexe Muster in den Daten zu erlernen und darzustellen. Aber entsprechend wird die Zunahme an Parametern den Bedarf an Rechenleistung erhöhen.
Um effektiv trainiert zu werden, benötigen neuronale Netzwerke in der Regel große, vielfältige und qualitativ hochwertige Daten aus verschiedenen Quellen. Diese Daten bilden die Grundlage für das Training und die Validierung von Machine-Learning-Modellen. Durch die Analyse von Big Data können Machine-Learning-Modelle Muster und Beziehungen innerhalb der Daten lernen, was es ihnen ermöglicht, Vorhersagen oder Klassifizierungen zu treffen.
Der Bedarf an erheblicher Rechenleistung ergibt sich aus mehreren Aspekten neuronaler Netzwerke: komplexe mehrschichtige Strukturen, eine große Anzahl von Parametern, die Notwendigkeit, große Datenmengen zu verarbeiten, und iterative Schulungsmethoden (während der Schulungsphase muss das Modell wiederholt iterieren, Vorwärts- und Rückwärtsausbreitungsrechnungen für jede Schicht durchführen, einschließlich Berechnungen für Aktivierungsfunktionen, Verlustfunktionen, Gradienten und Gewichtsaktualisierungen), der Bedarf an hochpräzisen Berechnungen, parallele Rechenfähigkeiten, Optimierungs- und Regularisierungstechniken sowie Modellbewertungs- und Verifizierungsprozesse. Mit dem Fortschreiten des Deep Learnings steigt der Bedarf an massiver Rechenleistung für AGI jedes Jahr um etwa das 10-Fache. Das bisher neueste Modell, GPT-4, enthält 1,8 Billionen Parameter, mit einem einzelnen Schulungskosten von mehr als $60 Millionen und einem Rechenleistungsbedarf von 2,15e25 FLOPS (21,5 Billiarden Gleitkommaoperationen). Der Bedarf an Rechenleistung für das zukünftige Modelltraining wächst weiter, und neue Modelle werden mit zunehmender Geschwindigkeit entwickelt.
Laut den maßgeblichsten Schätzungen wird erwartet, dass der „2022-2023 Global Computing Power Index Assessment Report“, der gemeinsam vom International Data Corporation (IDC), Inspur Information und dem Global Industry Research Institute der Tsinghua University erstellt wurde, die globale KI-Rechenmarktgröße von 19,5 Milliarden US-Dollar im Jahr 2022 auf 34,66 Milliarden US-Dollar im Jahr 2026 steigen wird. Der generative KI-Rechenmarkt soll von 820 Millionen US-Dollar im Jahr 2022 auf 10,99 Milliarden US-Dollar im Jahr 2026 wachsen. Der Anteil des generativen KI-Rechnens am Gesamtmarkt für KI-Rechenleistung soll von 4,2 % auf 31,7 % steigen.
Die Produktion von KI-GPUs wurde ausschließlich von NVIDIA monopolisiert und sie sind extrem teuer (der neueste H100 wurde für 40.000 US-Dollar pro Einheit verkauft). Sobald GPUs veröffentlicht werden, werden sie von Tech-Giganten im Silicon Valley aufgekauft. Einige dieser Geräte werden zur Schulung ihrer eigenen neuen Modelle verwendet. Der Rest wird an KI-Entwickler über Cloud-Plattformen vermietet, wie diejenigen, die von Google, Amazon und Microsoft betrieben werden, die eine große Menge an Rechenressourcen wie Server, GPUs und TPUs kontrollieren. Die Rechenleistung ist zu einer neuen Ressource geworden, die von diesen Giganten monopolisiert wird. Viele KI-Entwickler können nicht einmal eine dedizierte GPU ohne Aufschlag kaufen. Um die neueste Ausrüstung zu verwenden, müssen Entwickler AWS- oder Microsoft-Cloud-Server mieten. Finanzberichte zeigen, dass dieses Geschäft extrem hohe Gewinne erzielt. Mit einem Bruttogewinn von 61% bei den Cloud-Services von AWS, während der Bruttogewinn von Microsoft sogar noch höher ist und bei 72% liegt.
Müssen wir also diese zentralisierte Autorität und Kontrolle akzeptieren und einen Gewinnspanne von 72% für Rechenressourcen zahlen? Werden die Giganten, die Web2 monopolisiert haben, auch die nächste Ära dominieren?
In Bezug auf das Kartellrecht wird Dezentralisierung in der Regel als optimale Lösung angesehen. Wenn man sich bestehende Projekte ansieht, können wir die massive Rechenleistung, die für KI erforderlich ist, durch die Kombination von DePIN-Speicherprojekten mit Protokollen wie RDNR zur Nutzung ungenutzter GPUs erreichen? Die Antwort ist nein. Der Weg, den Drachen zu besiegen, ist nicht so einfach. Frühe Projekte waren nicht speziell für die Rechenleistung von AGI konzipiert und sind nicht machbar. Die Integration von Rechenleistung in die Blockchain steht mindestens vor den folgenden fünf Herausforderungen:
Arbeitsüberprüfung: Um ein wirklich vertrauenswürdiges Rechennetzwerk aufzubauen, das wirtschaftliche Anreize für die Teilnehmer bietet, muss das Netzwerk eine Möglichkeit haben zu überprüfen, ob die Deep Learning-Berechnungen tatsächlich durchgeführt wurden. Das Kernproblem hier ist die Zustandsabhängigkeit von Deep-Learning-Modellen; in diesen Modellen hängt der Eingang für jede Schicht von der Ausgabe der vorherigen Schicht ab. Das bedeutet, dass man nicht einfach eine einzelne Schicht in einem Modell validieren kann, ohne alle Schichten davor zu berücksichtigen. Die Berechnung für jede Schicht basiert auf den Ergebnissen aller vorherigen Schichten. Daher muss, um die Arbeit an einem bestimmten Punkt (z. B. einer bestimmten Schicht) zu überprüfen, die gesamte Arbeit vom Anfang des Modells bis zu diesem spezifischen Punkt ausgeführt werden.
Markt: Als aufstrebender Markt unterliegt der KI-Berechnungsleistungsmarkt Angebots- und Nachfrageproblemen, wie z.B. dem Kaltstartproblem. Angebot und Nachfrageliquidität müssen von Anfang an grob abgestimmt sein, damit der Markt erfolgreich wachsen kann. Um das potenzielle Angebot an Rechenleistung zu erfassen, müssen den Teilnehmern klare Anreize für den Austausch ihrer Rechenressourcen geboten werden. Der Markt benötigt einen Mechanismus, um abgeschlossene Berechnungen zu verfolgen und Anbieter rechtzeitig entsprechend zu bezahlen. In traditionellen Märkten übernehmen Vermittler Aufgaben wie das Management und die Integration und reduzieren die Betriebskosten durch die Festlegung von Mindestzahlungsschwellen. Dieser Ansatz ist jedoch kostspielig, wenn der Marktanteil ausgeweitet wird. Nur ein kleiner Teil des Angebots kann wirtschaftlich erfasst werden, was zu einem Schwellengleichgewichtszustand führt, in dem der Markt nur eine begrenzte Menge erfassen und halten kann, ohne weiter wachsen zu können.
Halteproblem: Das Halteproblem ist ein grundlegendes Problem in der Berechnungstheorie, das darin besteht zu bestimmen, ob eine gegebene Berechnungsaufgabe in einer endlichen Zeit abgeschlossen wird oder unendlich lange läuft. Dieses Problem ist unentscheidbar, was bedeutet, dass es keinen universellen Algorithmus gibt, der vorhersagen kann, ob eine bestimmte Berechnung in endlicher Zeit endet. Beispielsweise steht auch die Ausführung von Smart Contracts auf Ethereum vor einem ähnlichen Halteproblem. Es ist unmöglich im Voraus zu bestimmen, wie viele Rechenressourcen die Ausführung eines Smart Contracts erfordern wird oder ob sie innerhalb einer angemessenen Zeit abgeschlossen wird.
(Im Zusammenhang mit Deep Learning wird dieses Problem komplexer, da Modelle und Frameworks von statischer Graphenerstellung zu dynamischem Aufbau und Ausführung wechseln werden.)
Datenschutz: Das Design und die Entwicklung mit Datenschutzbewusstsein ist ein Muss für Projektteams. Obwohl eine große Menge an Forschung im Bereich maschinelles Lernen auf öffentlichen Datensätzen durchgeführt werden kann, muss das Modell in der Regel zur Verbesserung der Leistung und Anpassung an spezifische Anwendungen feinabgestimmt werden. Dieser Feinabstimmungsprozess kann die Verarbeitung personenbezogener Daten beinhalten, daher müssen Datenschutzanforderungen berücksichtigt werden.
Parallelisierung: Dies ist ein entscheidender Faktor für die mangelnde Machbarkeit der aktuellen Projekte. Deep-Learning-Modelle werden in der Regel parallel auf großen Hardware-Clustern mit proprietären Architekturen und extrem geringen Latenzzeiten trainiert. GPUs in verteilten Rechennetzwerken würden aufgrund häufiger Datenaustausche Latenzzeiten verursachen und wären durch die Leistung der langsamsten GPU begrenzt. Wenn Rechenressourcen unzuverlässig und unzuverlässig sind, ist die Erreichung einer heterogenen Parallelisierung ein zu lösendes Problem. Die derzeit machbare Methode besteht darin, Parallelisierung durch Transformer-Modelle zu erreichen, wie z.B. Switch-Transformer, die jetzt hochgradig parallelisierte Eigenschaften aufweisen.
Lösungen: Obwohl die aktuellen Versuche eines dezentralen AGI-Rechenleistungsmarktes noch in den Anfängen stecken, gibt es zwei Projekte, die zunächst das Konsensdesign der dezentralen Netzwerke und die Implementierung der dezentralen Rechenleistungsnetzwerke im Modelltraining und in der Inferenz gelöst haben. Im Folgenden werden Gensyn und Together als Beispiele herangezogen, um die Designmethoden und Probleme des dezentralen AGI-Rechenleistungsmarktes zu analysieren.
Gensyn ist ein AGI-Rechenleistungsmarkt, der sich noch im Aufbaustadium befindet und das Ziel hat, die verschiedenen Herausforderungen des dezentralen Deep-Learning-Computings zu lösen und die Kosten für das aktuelle Deep-Learning zu reduzieren. Gensyn ist im Wesentlichen ein Proof-of-Stake-Protokoll der ersten Schicht, das auf dem Polkadot-Netzwerk basiert und direkt Löser (diejenigen, die Rechenaufgaben lösen) über Smart Contracts belohnt, im Austausch für ihre ungenutzten GPU-Geräte zur Berechnung und Durchführung von maschinellen Lernaufgaben.
Zurückkehrend zur vorherigen Frage liegt der Kern beim Aufbau eines wirklich vertrauenswürdigen Rechennetzwerks in der Überprüfung der abgeschlossenen maschinellen Lernarbeit. Dies ist eine äußerst komplexe Frage, die ein Gleichgewicht zwischen der Schnittmenge von Komplexitätstheorie, Spieltheorie, Kryptographie und Optimierung erfordert.
Gensyn schlägt eine einfache Lösung vor, bei der Solver die Ergebnisse von maschinellen Lernaufgaben einreichen, die sie abgeschlossen haben. Um zu überprüfen, ob diese Ergebnisse korrekt sind, versucht ein weiterer unabhängiger Verifizierer, die gleiche Arbeit erneut auszuführen. Dieser Ansatz kann als einfache Replikation bezeichnet werden, da nur ein Verifizierer die Aufgabe erneut ausführt. Das bedeutet, dass es nur ein zusätzliches Stück Arbeit gibt, um die Genauigkeit der Originalarbeit zu überprüfen. Wenn die Person, die die Arbeit überprüft, jedoch nicht der ursprüngliche Anforderer ist, besteht immer noch ein Vertrauensproblem. Verifizierer selbst sind möglicherweise nicht ehrlich, und ihre Arbeit muss überprüft werden. Dies führt zu einem potenziellen Problem, bei dem, wenn die Person, die die Arbeit überprüft, nicht der ursprüngliche Anforderer ist, ein weiterer Verifizierer benötigt wird, um ihre Arbeit zu überprüfen. Aber dieser neue Verifizierer könnte auch nicht vertrauenswürdig sein, sodass ein weiterer Verifizierer benötigt wird, um ihre Arbeit zu überprüfen, was zu einer endlosen Replikationskette führen könnte. Hier müssen wir drei Schlüsselkonzepte einführen und sie verweben, um ein Teilnehmersystem mit vier Rollen aufzubauen, um das Problem der endlosen Kette zu lösen.
Probabilistische Lernnachweise: Erstellt Zertifikate für abgeschlossene Arbeiten unter Verwendung von Metadaten aus dem auf Gradienten basierenden Optimierungsprozess. Durch die Replikation bestimmter Phasen können diese Zertifikate schnell überprüft werden, um sicherzustellen, dass die Arbeit wie erwartet abgeschlossen wurde.
Graphenbasiertes präzises Positionierungsprotokoll: Verwendung eines mehrgranularen, graphenbasierten präzisen Positionierungsprotokolls und konsistente Ausführung von Kreuzbewertern. Dies ermöglicht das erneute Ausführen und Vergleichen von Verifizierungsarbeiten, um Konsistenz sicherzustellen, die letztendlich durch die Blockchain selbst bestätigt wird.
Truebit-Style-Anreizspiel: Verwenden von Einsätzen und Strafen, um ein Anreizspiel zu erstellen, das sicherstellt, dass jeder wirtschaftlich vernünftige Teilnehmer ehrlich handelt und seine erwarteten Aufgaben erfüllt.
Das Teilnehmersystem besteht aus Einreichern, Lösungsfindern, Verifizierern und Whistleblowern.
Einreicher:
Einreicher sind die Endbenutzer des Systems, die Aufgaben zur Berechnung bereitstellen und für die abgeschlossenen Arbeitseinheiten bezahlen;
Löser:
Solvers sind die Hauptarbeiter des Systems, die das Modelltraining durchführen und Beweise generieren, die vom Verifizierer überprüft werden;
Verifiers:
Verifier sind entscheidend dafür, den nichtdeterministischen Schulungsprozess mit deterministischen linearen Berechnungen zu verknüpfen, Teile des Nachweises des Lösers zu replizieren und Entfernungen mit erwarteten Schwellenwerten zu vergleichen;
Whistleblowers:
Whistleblowers sind die letzte Verteidigungslinie, die die Arbeit der Verifizierer überprüfen und Herausforderungen stellen, um großzügige Prämienzahlungen zu erhalten.
Das vom Protokoll entworfene Spielsystem funktioniert über acht Phasen und umfasst vier Hauptteilnehmerrollen, um den gesamten Prozess von der Aufgabeneinreichung bis zur endgültigen Überprüfung abzuschließen.
Aufgabenstellung: Aufgaben bestehen aus drei spezifischen Stücken von Informationen:
Metadaten, die die Aufgabe und Hyperparameter beschreiben;
Eine Modell-Binärdatei (oder Grundarchitektur);
Öffentlich zugängliche, vorverarbeitete Trainingsdaten.
Um eine Aufgabe einzureichen, gibt der Einreicher die Details der Aufgabe in einem maschinenlesbaren Format an und reicht sie zusammen mit der Modell-Binärdatei (oder maschinenlesbaren Architektur) und einem öffentlich zugänglichen Speicherort der vorverarbeiteten Trainingsdaten an die Kette ein. Öffentliche Daten können in einfachem Objektspeicher wie AWS’s S3 oder in einem dezentralen Speicher wie IPFS, Arweave oder Subspace gespeichert werden.
Profiling: Der Profiling-Prozess legt einen Ausgangsabstandsschwellenwert für die Überprüfung des Lernnachweises fest. Überprüfer werden periodisch Profiling-Aufgaben abrufen und Mutationsgrenzwerte für den Vergleich von Lernnachweisen generieren. Um den Schwellenwert zu generieren, wird der Überprüfer deterministisch Teile des Trainings mit verschiedenen Zufallszahlen ausführen und erneut ausführen, ihre eigenen Nachweise generieren und überprüfen. Während dieses Prozesses legt der Überprüfer einen insgesamt erwarteten Abstandsschwellenwert für die nicht-deterministische Arbeit der Lösung fest, der zur Überprüfung verwendet werden kann.
Ausbildung: Nach dem Profiling gelangen Aufgaben in den öffentlichen Aufgabenpool (ähnlich wie bei Ethereums Mempool). Wählen Sie einen Solver aus, um die Aufgabe auszuführen und die Aufgabe aus dem Aufgabenpool zu entfernen. Solver führen die Aufgabe basierend auf den vom Einreicher übermittelten Metadaten sowie dem Modell und den bereitgestellten Trainingsdaten aus. Bei der Ausführung von Schulungsaufgaben generieren Solver auch Lernnachweise, indem sie regelmäßig Punkte überprüfen und Metadaten (einschließlich Parameter) während des Schulungsprozesses speichern, damit Verifizierer die folgenden Optimierungsschritte so genau wie möglich replizieren können.
Nachweisgenerierung: Solver speichern periodisch Modellgewichte oder Aktualisierungen und ihre entsprechenden Indizes des Trainingsdatensatzes, um die Proben zu identifizieren, die zur Generierung der Gewichtsaktualisierungen verwendet wurden. Die Checkpoint-Frequenz kann angepasst werden, um stärkere Garantien zu bieten oder Speicherplatz zu sparen. Nachweise können „gestapelt“ werden, was bedeutet, dass sie von einer zufälligen Verteilung ausgehen, die zur Initialisierung der Gewichte verwendet wird, oder von vortrainierten Gewichten, die mit ihren eigenen Nachweisen generiert wurden. Dies ermöglicht es dem Protokoll, einen Satz bewährter, vortrainierter Basismodelle aufzubauen, die für spezifischere Aufgaben feinabgestimmt werden können.
Überprüfung des Nachweises: Nach Abschluss der Aufgabe melden die Solver den Abschluss der Aufgabe in der Kette an und zeigen ihren Lernnachweis an einem öffentlich zugänglichen Ort an, damit die Überprüfer darauf zugreifen können. Überprüfer ziehen Überprüfungsaufgaben aus dem öffentlichen Aufgabenpool und führen Rechenarbeiten durch, um einen Teil des Nachweises erneut auszuführen und Distanzberechnungen durchzuführen. Die Kette verwendet zusammen mit dem während der Profilierungsphase berechneten Schwellenwert dann die resultierende Distanz, um festzustellen, ob die Überprüfung mit dem Nachweis übereinstimmt.
Graphenbasierte Pinpoint-Herausforderung: Nachdem der Nachweis des Lernens überprüft wurde, können Whistleblower die Arbeit der Überprüfer replizieren, um zu überprüfen, ob die Überprüfungsarbeit selbst korrekt ausgeführt wurde. Wenn Whistleblower glauben, dass die Überprüfung falsch durchgeführt wurde (bösartig oder nicht), können sie diese zur Vertragsarbitrage herausfordern, um eine Belohnung zu erhalten. Diese Belohnung kann aus Einlagen von Lösern und Validatoren stammen (im Falle eines echten Positivs) oder aus einem Lotteriepool-Bonus (im Falle eines falschen Positivs), wobei die Schiedsgerichtsbarkeit über die Kette selbst durchgeführt wird. Whistleblower (die in ihrem Fall als Überprüfer handeln) werden die Arbeit nur überprüfen und anschließend herausfordern, wenn sie erwarten, angemessene Entschädigung zu erhalten. In der Praxis bedeutet dies, dass erwartet wird, dass Whistleblower dem Netzwerk basierend auf der Anzahl anderer aktiver Whistleblower beitreten und es verlassen (d. h. mit lebendigen Einlagen und Herausforderungen). Daher ist die erwartete Standardstrategie für jeden Whistleblower, dem Netzwerk beizutreten, wenn es weniger andere Whistleblower gibt, eine Einzahlung zu leisten, eine zufällige aktive Aufgabe auszuwählen und ihren Überprüfungsprozess zu beginnen. Nach einer Aufgabe werden sie eine andere zufällige aktive Aufgabe übernehmen und wiederholen, bis die Anzahl der Whistleblower ihren festgelegten Auszahlungsschwellenwert überschreitet, zu dem Zeitpunkt, an dem sie das Netzwerk verlassen (oder wahrscheinlicher in eine andere Rolle im Netzwerk wechseln werden – Überprüfer oder Löser – basierend auf ihren Hardwarefähigkeiten), bis sich die Situation erneut umkehrt.
Vertragsarbitrage: Wenn Verifizierer von Whistleblowern herausgefordert werden, betreten sie einen Prozess mit der Kette, um den Standort des umstrittenen Vorgangs oder Eingangs herauszufinden, und letztendlich wird die Kette die endgültige Grundoperation durchführen und feststellen, ob die Herausforderung gerechtfertigt ist. Um Whistleblower ehrlich zu halten und das Dilemma der Verifizierer zu überwinden, werden hier periodische erzwungene Fehler und Jackpot-Zahlungen eingeführt.
Abrechnung: Während des Abrechnungsprozesses werden die Teilnehmer auf der Grundlage von probabilistischen und deterministischen Überprüfungen bezahlt. Je nach den Ergebnissen früherer Überprüfungen und Herausforderungen ergeben sich unterschiedliche Zahlungsszenarien. Wenn die Arbeit als korrekt erachtet wird und alle Überprüfungen bestanden haben, werden sowohl die Lösungsanbieter als auch die Überprüfer basierend auf den durchgeführten Operationen belohnt.
Gensyn hat auf der Verifizierungsebene und Anreizschichten ein ausgefeiltes spieltheoretisches System entworfen, das eine schnelle Identifizierung und Behebung von Fehlern ermöglicht, indem Abweichungen im Netzwerk punktgenau lokalisiert werden. Es fehlen jedoch noch viele Details im aktuellen System. Zum Beispiel, wie können Parameter festgelegt werden, um sicherzustellen, dass Belohnungen und Strafen angemessen sind, ohne die Schwelle zu hoch zu setzen? Haben Sie extreme Szenarien und die unterschiedliche Rechenleistung der Solver in den spieltheoretischen Aspekten berücksichtigt? In der aktuellen Version des Whitepapers fehlt eine ausführliche Beschreibung der heterogenen parallelen Ausführung. Gensyn hat noch einen langen Weg vor sich.
Together.ai ist ein Unternehmen, das sich auf Open-Source, dezentrale KI-Berechnungslösungen für große Modelle konzentriert. Ziel ist es, dass jeder überall auf KI zugreifen kann. Streng genommen handelt es sich bei Together nicht um ein Blockchain-Projekt, aber es hat vorläufig die Latenzprobleme innerhalb dezentraler AGI-Berechnungsnetzwerke gelöst. Daher analysiert der folgende Artikel nur die Lösungen von Together und bewertet das Projekt selbst nicht.
Wie kann das Training und die Inferenz großer Modelle erreicht werden, wenn dezentralisierte Netzwerke 100 Mal langsamer sind als Rechenzentren?
Stellen wir uns die Verteilung von GPUs vor, die an einem dezentralen Netzwerk teilnehmen. Diese Geräte werden über verschiedene Kontinente und Städte verteilt sein, von denen jedes mit unterschiedlichen Latenzen und Bandbreiten verbunden werden muss. Wie im folgenden Diagramm dargestellt, zeigt ein simuliertes verteiltes Szenario Geräte in Nordamerika, Europa und Asien, die unterschiedliche Bandbreiten und Latenzen zwischen sich haben. Was muss getan werden, um sie effektiv miteinander zu verbinden?
Verteiltes Training von Rechenmodellen: Das Diagramm unten zeigt die Situation des Trainings eines Basismodells über mehrere Geräte hinweg, das drei Arten von Kommunikation aufweist: Vorwärtsaktivierung, Rückwärtsgradient und laterale Kommunikation.
Die Kombination aus Kommunikationsbandbreite und Latenz erfordert die Berücksichtigung von zwei Formen des Parallelismus: Pipeline-Parallelismus und Datenparallelismus, die den drei Arten der Kommunikation im Multi-Geräte-Szenario entsprechen:
Bei der Pipeline-Parallelität werden alle Schichten des Modells in mehrere Stufen unterteilt, wobei jedes Gerät eine Stufe verarbeitet, die eine Sequenz aufeinanderfolgender Schichten wie mehrere Transformer-Blöcke darstellt. Während der Vorwärtspropagierung werden Aktivierungen an die nächste Stufe weitergeleitet, und während der Rückwärtspropagierung werden Gradienten der Aktivierungen an die vorherige Stufe zurückgegeben.
In der Datenparallelität berechnen die Geräte unabhängig voneinander Gradienten für verschiedene Mikro-Batches, müssen jedoch diese Gradienten durch Kommunikation synchronisieren.
Optimierung der Terminplanung:
In einer dezentralen Umgebung wird der Schulungsprozess oft durch die Kommunikation eingeschränkt. Zeitplanungsalgorithmen weisen im Allgemeinen Aufgaben, die umfangreiche Kommunikation erfordern, Geräten mit schnelleren Verbindungen zu. Angesichts der Abhängigkeiten zwischen Aufgaben und der Heterogenität des Netzwerks ist es zunächst erforderlich, die Kosten spezifischer Zeitplanungsstrategien zu modellieren. Um die komplexe Kommunikationskosten von Trainingsgrundmodellen zu erfassen, schlägt Together eine neuartige Formulierung vor und zerlegt das Kostenmodell unter Verwendung der Graphentheorie in zwei Ebenen:
Graphentheorie ist ein Teilgebiet der Mathematik, das die Eigenschaften und Strukturen von Graphen (Netzwerken) untersucht. Ein Graph besteht aus Knoten (Knoten) und Kanten (Linien, die Knoten verbinden). Der Hauptzweck der Graphentheorie besteht darin, verschiedene Eigenschaften von Graphen zu untersuchen, wie die Konnektivität, die Färbung und die Art von Pfaden und Zyklen in Graphen.
Das erste Level ist ein ausbalanciertes Graphpartitionierungsproblem (Aufteilung der Knotenmenge eines Graphen in mehrere Teilmengen gleicher oder annähernd gleicher Größe unter Minimierung der Anzahl von Kanten zwischen den Teilmengen). Bei dieser Partitionierung stellt jede Teilmengen eine Partition dar, und die Kommunikationskosten werden durch Minimierung der Kanten zwischen den Partitionen reduziert, was den Kommunikationskosten der Datenparallelität entspricht.
Die zweite Ebene beinhaltet ein gemeinsames Graphen-Matching und das Problem des Handlungsreisenden (ein kombinatorisches Optimierungsproblem, das Elemente des Graphen-Matchings und des Problems des Handlungsreisenden kombiniert). Das Graphen-Matching-Problem besteht darin, eine Übereinstimmung im Graphen zu finden, die einige Kosten minimiert oder maximiert. Das Problem des Handlungsreisenden sucht den kürzesten Weg, der alle Knoten im Graphen besucht, was den Kommunikationskosten des Pipeline-Parallelismus entspricht.
Das obige Diagramm ist eine schematische Darstellung des Prozesses. Aufgrund der komplexen Berechnungen, die bei der tatsächlichen Implementierung involviert sind, wird der in dem Diagramm beschriebene Prozess zur einfacheren Verständnis vereinfacht. Für eine detaillierte Implementierung kann man die Dokumentation auf der offiziellen Website von Together konsultieren.
Angenommen, es gibt eine Menge von NN-Geräten, DD, mit unsicheren Kommunikationsverzögerungen (Matrix AA) und Bandbreiten (Matrix BB), basierend auf der Gerätemenge DD, erzeugen wir zunächst eine ausgeglichene Graphpartition. Jede Partition oder Gruppe von Geräten enthält ungefähr die gleiche Anzahl von Geräten, die alle dieselbe Pipelinestufe verarbeiten. Dadurch wird sichergestellt, dass während der Datenparallelität jede Gerätegruppe einen ähnlichen Arbeitsaufwand ausführt. Entsprechend den Kommunikationsverzögerungen und Bandbreiten kann eine Formel die "Kosten" für die Datenübertragung zwischen Gerätegruppen berechnen. Jede ausgeglichene Gruppe wird zusammengeführt, um ein vollständig verbundenes grobes Diagramm zu erstellen, wobei jeder Knoten eine Pipelinestufe darstellt und die Kanten die Kommunikationskosten zwischen zwei Phasen darstellen. Um die Kommunikationskosten zu minimieren, wird ein Matching-Algorithmus verwendet, um zu bestimmen, welche Gerätegruppen zusammenarbeiten sollen.
Für eine weitere Optimierung kann dieses Problem auch als ein offenes Traveling-Salesman-Problem modelliert werden (offenes Loop bedeutet, dass es nicht notwendig ist, zum Ausgangspunkt des Pfades zurückzukehren), um einen optimalen Pfad zur Datenübertragung über alle Geräte zu finden. Schließlich verwendet Together einen innovativen Zeitplanalgorithmus, um die optimale Zuweisungsstrategie für das gegebene Kostenmodell zu finden, wodurch die Kommunikationskosten minimiert und die Schulungsdurchsatz maximiert werden. Laut Tests, selbst wenn das Netzwerk unter dieser Zeitplanoptimierung 100-mal langsamer ist, beträgt der end-to-end-Training-Durchsatz nur etwa 1,7 bis 2,3-mal langsamer.
Kommunikationskomprimierungsoptimierung:
Für die Optimierung der Kommunikationskompression hat Together den AQ-SGD-Algorithmus eingeführt (für den detaillierten Berechnungsprozess siehe das Paper "Fine-tuning Language Models over Slow Networks using Activation Compression with Guarantees"). Der AQ-SGD-Algorithmus ist eine neuartige Aktivierungskomprimierungstechnik, die entwickelt wurde, um Probleme mit der Kommunikationseffizienz während des parallelen Trainings von Pipelines über langsame Netzwerke zu beheben. Anders als bei früheren Methoden der direkten Komprimierung von Aktivierungswerten konzentriert sich AQ-SGD auf die Komprimierung der Änderungen der Aktivierungswerte derselben Trainingsstichprobe in verschiedenen Zeiträumen. Diese einzigartige Methode führt eine interessante "selbstausführende" Dynamik ein, bei der sich die Leistung des Algorithmus allmählich verbessern wird, wenn sich das Training stabilisiert. Der AQ-SGD-Algorithmus wurde streng theoretisch analysiert und weist unter bestimmten technischen Bedingungen gute Konvergenzraten und begrenzte Fehlerquantisierungsfunktionen auf. Der Algorithmus kann effektiv implementiert werden, ohne zusätzlichen End-to-End-Laufzeitaufwand hinzuzufügen, obwohl er die Verwendung von mehr Arbeitsspeicher und SSD zum Speichern von Aktivierungswerten erfordert. Durch umfangreiche Experimente mit Sequenzklassifizierungs- und Sprachmodellierungsdatensätzen wurde gezeigt, dass AQ-SGD die Aktivierungswerte auf 2–4 Bit komprimiert, ohne die Konvergenzleistung zu beeinträchtigen. Darüber hinaus kann AQ-SGD mit modernsten Gradientenkompressionsalgorithmen integriert werden, um eine "End-to-End-Kommunikationskompression" zu erreichen, was bedeutet, dass der Datenaustausch zwischen allen Maschinen, einschließlich Modellgradienten, Vorwärtsaktivierungswerten und Rückwärtsgradienten, auf niedrige Präzision komprimiert wird, wodurch die Kommunikationseffizienz des verteilten Trainings erheblich verbessert wird. Im Vergleich zur End-to-End-Trainingsleistung in einem zentralisierten Computernetzwerk (z. B. 10 Gbit/s) ohne Komprimierung ist sie derzeit nur 31 % langsamer. In Kombination mit den Daten zur Planungsoptimierung besteht zwar noch eine gewisse Lücke zwischen den zentralisierten Rechennetzen, aber es besteht große Hoffnung, in Zukunft aufzuholen.
In der Dividendenperiode, die die KI-Welle mit sich gebracht hat, ist der AGI-Rechenleistungsmarkt zweifellos der Markt mit dem größten Potenzial und der größten Nachfrage unter den verschiedenen Rechenleistungsmärkten. Die höchste Entwicklungsschwierigkeit, Hardwareanforderungen und Kapitalanforderungen bringen jedoch Herausforderungen für diese Branche mit sich. Durch die Kombination der beiden oben genannten Projekte sind wir noch einige Zeit von der Einführung des AGI-Rechenleistungsmarktes entfernt. Das echte dezentrale Netzwerk ist auch viel komplizierter als das ideale Szenario. Es reicht derzeit nicht aus, um mit den Cloud-Giganten zu konkurrieren.
Zum Zeitpunkt des Verfassens stellte ich auch fest, dass einige kleinere Projekte, die sich noch in den Kinderschuhen befinden (die PPT-Stufe), begonnen haben, einige neue Einstiegspunkte zu erkunden, wie z.B. die Konzentration auf die weniger anspruchsvolle AGI-Inferenzstufe anstelle der Trainingsphase. Langfristig ist jedoch die Bedeutung von Dezentralisierung und Erlaubnissystemen tiefgreifend. Das Recht auf Zugang und Training der AGI-Rechenleistung sollte nicht in den Händen weniger zentralisierter Giganten konzentriert sein. Die Menschheit braucht weder eine neue „Theokratie“ noch einen neuen „Papst“, noch sollte sie teure Mitgliedsbeiträge zahlen.