З моменту народження GPT-3 генеративний штучний інтелект відкрив вибухонебезпечний поворотний момент у галузі штучного інтелекту завдяки своїй дивовижній продуктивності та широким сценаріям застосування. Це призвело до того, що технологічні гіганти стікаються на шлях штучного інтелекту. Однак цей сплеск приніс із собою численні проблеми. Операції навчання та виведення великих мовних моделей (LLM) вимагають великої обчислювальної потужності. З ітераційним оновленням цих моделей попит і вартість обчислювальних потужностей експоненціально зростають. На прикладі GPT-2 і GPT-3 різниця в кількості параметрів між GPT-2 і GPT-3 становить 1166 разів (GPT-2 має 150 мільйонів параметрів, а GPT-3 – 175 мільярдів). Вартість одного навчального сеансу GPT-3 була розрахована на основі моделей ціноутворення публічних хмар GPU на той час, що сягало до 12 мільйонів доларів. Це у 200 разів більше, ніж у GPT-2. У практичному використанні кожен запит користувача вимагає обчислення логічного висновку. Виходячи з 13 мільйонів незалежних користувачів на початку цього року, відповідний попит на чіпи становитиме понад 30 000 графічних процесорів A100. Тоді початкові інвестиційні витрати становитимуть приголомшливі 800 мільйонів доларів, а орієнтовна щоденна вартість висновків моделі становитиме 700 000 доларів.
Недостатня обчислювальна потужність і висока вартість стали серйозними проблемами, з якими стикається вся індустрія штучного інтелекту. Примітно, що подібна проблема, схоже, стикається з блокчейн-індустрією. З одного боку, четвертий халвінг біткоіни і схвалення ETF неминучі. У міру зростання майбутніх цін попит майнерів на обчислювальне обладнання неминуче значно зросте. З іншого боку, технологія Zero-Knowledge Proof (ZKP) процвітає, і Віталік неодноразово підкреслював, що вплив ZK на сферу блокчейну в найближчі десять років буде таким же важливим, як і сам блокчейн. Хоча ця технологія є багатообіцяючою для майбутнього блокчейн-індустрії, ZK також споживає багато обчислювальної потужності та часу на створення доказів через складний процес обчислень, як і штучний інтелект.
У найближчому майбутньому нестача обчислювальної потужності стане необхідністю. Таким чином, ринок децентралізованої обчислювальної потужності стане прибутковим бізнес-підприємством?
Ринок децентралізованих обчислювальних потужностей фактично еквівалентний децентралізованим хмарним обчисленням, але особисто я вважаю, що цей термін більше підходить для опису нових проектів, які будуть обговорюватися пізніше. Ринок децентралізованих обчислювальних потужностей слід розглядати як підмножину DePIN (Decentralized Physical Infrastructure Networks), метою якого є створення відкритого ринку обчислювальної потужності, де будь-хто, хто має незадіяні обчислювальні ресурси, може пропонувати свої ресурси, стимульовані токенами, в основному обслуговуючи B2B-клієнтів і спільноти розробників. З точки зору більш звичних проектів, такі мережі, як Render Network, яка базується на децентралізованих рішеннях для рендерингу GPU, і Akash Network, розподілений одноранговий ринок хмарних обчислень, належать до цього напрямку.
Наступний текст розпочнеться з основних концепцій, а потім обговорить три нові ринки на цьому шляху: ринок обчислювальної потужності AGI, ринок обчислювальної потужності Bitcoin та ринок обчислювальної потужності AGI на ринку апаратного прискорення ZK. Останні два будуть розглянуті в "Перспектива обіцяючого напрямку: децентралізований ринок обчислювальної потужності (Частина 2)".
Концепція обчислювальної потужності може бути відстежена до винаходу комп'ютера. Оригінальний комп'ютер використовував механічні пристрої для виконання обчислювальних завдань, і обчислювальна потужність вказувала на обчислювальні здібності механічного пристрою. З розвитком комп'ютерної технології концепція обчислювальної потужності також еволюціонувала. Сьогоднішня обчислювальна потужність зазвичай вказує на спільну роботу апаратного забезпечення комп'ютера (ЦП, ГПУ, ПЛІС тощо) та програмного забезпечення (операційні системи, компілятори, додатки тощо).
Обчислювальна потужність відноситься до обсягу даних, які комп'ютер або інший обчислювальний пристрій можуть обробляти протягом певного періоду часу або кількості обчислювальних завдань, які вони можуть завершити. Обчислювальна потужність зазвичай використовується для опису продуктивності комп'ютера або інших обчислювальних пристроїв. Це важливий показник обробних здатностей обчислювального пристрою.
Обчислювальна потужність може бути виміряна різними способами, такими як швидкість обчислення, споживання енергії, точність обчислень та паралелизм. У галузі обчислень, до загальновживаних метрик обчислювальної потужності входять FLOPS (операції з плаваючою комою на секунду), IPS (інструкції на секунду), TPS (транзакції на секунду) тощо.
FLOPS вимірює здатність комп'ютера обробляти операції з рухомою комою (математичні операції з десятковими дробами, які потребують урахування питань точності та помилок округлення). Він вимірює, скільки операцій з рухомою комою може виконати комп'ютер за секунду. FLOPS є показником високопродуктивних обчислювальних можливостей комп'ютера і широко використовується для вимірювання обчислювальних здатностей суперкомп'ютерів, серверів високопродуктивних обчислень, графічних процесорів (GPU) і т. д. Наприклад, якщо у комп'ютерній системі є 1 TFLOPS (один трильйон операцій з рухомою комою на секунду), це означає, що вона може завершити 1 трильйон операцій з рухомою комою на секунду.
IPS вимірює швидкість, з якою комп'ютер обробляє інструкції. Це вимірювання кількості інструкцій, які комп'ютер може виконати за секунду, і вимірювання продуктивності однієї інструкції комп'ютера, яке зазвичай використовується для вимірювання продуктивності центрального процесора (CPU). Наприклад, CPU з IPS 3 ГГц (3 мільярди інструкцій на секунду) означає, що він може виконувати 3 мільярди інструкцій за секунду.
TPS вимірює можливість комп'ютера обробляти транзакції. Він вимірює, скільки транзакцій комп'ютер може завершити за секунду, зазвичай використовується для вимірювання продуктивності сервера баз даних. Наприклад, сервер баз даних має TPS 1 000, що означає, що він може обробляти 1 000 транзакцій баз даних за секунду.
Крім того, існують деякі метрики обчислювальної потужності для конкретних сценаріїв застосування, такі як швидкість інференції, швидкість обробки зображень та точність розпізнавання голосу.
Обчислювальна потужність GPU відноситься до обчислювальної здатності графічних процесорів (GPU). На відміну від центральних процесорів (CPU), GPU - апаратне забезпечення, спеціально призначене для обробки графічних даних, таких як зображення та відео. У них є велика кількість обчислювальних блоків та ефективні можливості паралельного обчислення, і вони можуть виконувати велику кількість операцій з числами з плаваючою комою одночасно. Оскільки GPU спочатку були розроблені для обробки графіки в іграх, вони зазвичай мають вищі тактові частоти та більшу пропускну здатність пам'яті, ніж CPU для підтримки складних графічних обчислень.
Архітектура: ЦП та ГП мають різні обчислювальні архітектури. ЦП зазвичай мають одне або кілька ядер, кожне з яких є загальнопризначеним процесором, здатним виконувати різноманітні операції. ГП, з іншого боку, мають велику кількість потокових процесорів та шейдерів, які спеціально використовуються для виконання розрахунків, пов'язаних із обробкою зображень;
Паралельне обчислення: Графічні процесори, як правило, мають вищі можливості паралельних обчислень. Центральний процесор має обмежену кількість ядер, і кожне ядро може виконувати лише одну інструкцію, але у графічного процесора може бути тисячі потокових процесорів, які можуть виконувати одночасно кілька інструкцій та операцій. Тому графічні процесори, як правило, краще підходять для виконання паралельних обчислювальних завдань, таких як машинне навчання та глибоке навчання, які вимагають значних паралельних обчислень;
Проектування програм: Програмування для графічних процесорів є відносно складнішим порівняно з ЦП. Для цього потрібно використовувати конкретні мови програмування (такі як CUDA або OpenCL) та конкретні техніки програмування для використання паралельних обчислювальних можливостей графічних процесорів. Натомість програмування ЦП є простішим і може використовувати загальнопризначені мови програмування та інструменти.
У епоху Індустріальної Революції нафта була кров'ю світу і проникла в кожну галузь промисловості. У майбутній епоху штучного інтелекту обчислювальна потужність буде "цифровою нафтою" світу. Від лихоманки великих компаній зашвидкість AI чіпів та акцій Nvidia, які перевищили один трильйон доларів, до недавнього блокування Сполученими Штатами висококласних чіпів з Китаю, включаючи потужність обчислювальної потужності, розмір чіпа та навіть плани заборонити хмари з ГПУ, важливість обчислювальної потужності очевидна. Обчислювальна потужність стане товаром наступної епохи.
Штучний інтелект (AI) - це нова технічна наука, яка вивчає, розробляє та застосовує теорії, методи, технології для моделювання, розширення та розширення людського інтелекту. Вона виникла в 1950-1960-х роках і, після півстоліття еволюції, пережила переплетені розвитки через три хвилі: символізм, зв'язківці та підходи на основі агентів. Сьогодні, як нова технологія загального призначення, AI викликає глибокі зміни в соціальному житті та в усіх галузях. Більш конкретне визначення генеративного AI на даний момент: Artificial General Intelligence (AGI), система штучного інтелекту з широким спектром розуміння, яка може виконувати завдання та працювати в різних галузах з інтелектом, схожим або перевищуючим людський рівень. AGI в основному потребує трьох елементів: глибоке навчання (DL), великі дані та значну обчислювальну потужність.
Глибоке навчання є підгалуззю машинного навчання (ML), алгоритми глибокого навчання - це нейронні мережі, сховані за відтворенням людського мозку. Наприклад, людський мозок містить мільйони взаємопов'язаних нейронів, які спільно вчаться та обробляють інформацію. Так само, нейронні мережі глибокого навчання (або штучні нейронні мережі) складаються з кількох шарів штучних нейронів, які спільно працюють у комп'ютері. Ці штучні нейрони, відомі як вузли, використовують математичні обчислення для обробки даних. Штучні нейронні мережі - це алгоритми глибокого навчання, які використовують ці вузли для вирішення складних проблем.
Нейронні мережі можуть бути розділені на вхідний шар, приховані шари та вихідний шар. Зв'язки між цими різними шарами складаються з параметрів.
Вхідний шар: Вхідний шар є першим шаром нейромережі і відповідає за отримання зовнішніх вхідних даних. Кожен нейрон у вхідному шарі відповідає певній ознаці вхідних даних. Наприклад, у обробці зображень кожен нейрон може відповідати значенню пікселя на зображенні.
Приховані шари: вхідний рівень обробляє дані та передає їх глибшим шарам у мережі. Ці приховані шари обробляють інформацію на різних рівнях, коригуючи свою поведінку при отриманні нової інформації. Мережі глибокого навчання можуть мати сотні прихованих рівнів, які дозволяють їм аналізувати проблеми з різних точок зору. Наприклад, якщо вам дають зображення невідомої тварини, яку потрібно класифікувати, ви можете порівняти його з тваринами, яких ви вже знаєте. Наприклад, визначити, що це за тварина, можна за формою вух, кількістю ніг, розміром зіниць. Приховані шари в глибоких нейронних мережах працюють аналогічним чином. Якщо алгоритм глибокого навчання намагається класифікувати зображення тварини, кожен прихований шар буде обробляти різні ознаки тварин і намагатися їх точно класифікувати.
Вихідний шар: Вихідний шар є останнім шаром нейронної мережі і відповідає за генерацію виходу мережі. Кожен нейрон у вихідному шарі представляє можливу категорію або значення виходу. Наприклад, у задачі класифікації кожен нейрон у вихідному шарі може відповідати категорії, тоді як у задачі регресії у вихідному шарі може бути лише один нейрон, значення якого представляє результат прогнозу;
Параметри: У нейронних мережах зв'язки між різними шарами представлені вагами та зміщеннями, які оптимізуються під час процесу навчання, щоб дозволити мережі точно ідентифікувати шаблони в даних та робити прогнози. Збільшення параметрів може поліпшити потужність моделі нейронної мережі, тобто здатність моделі вчитися та представляти складні шаблони в даних. Проте відповідно збільшення параметрів призведе до збільшення потреби в обчислювальній потужності.
Для ефективного навчання нейронних мереж зазвичай потрібні великі, різноманітні та високоякісні дані з різних джерел. Ці дані є основою для навчання та перевірки моделей машинного навчання. Аналізуючи великі дані, моделі машинного навчання можуть вивчити закономірності та взаємозв'язки в межах даних, що дозволяє їм робити передбачення або класифікацію.
Потреба в значних обчислювальних потужностях випливає з декількох аспектів нейронних мереж: складних багатошарових структур, великої кількості параметрів, необхідності обробки величезних обсягів даних і ітеративних методів навчання (під час фази навчання модель повинна повторювати багаторазові ітерації, виконуючи прямі та зворотні обчислення поширення для кожного шару, включаючи обчислення для функцій активації, функції втрат, градієнти та оновлення ваги), NEND для високоточних обчислень, можливостей паралельних обчислень, методів оптимізації та регуляризації, а також процесів оцінки та верифікації моделей. У міру розвитку глибокого навчання потреба у величезних обчислювальних потужностях для AGI зростає приблизно в 10 разів щороку. Остання на даний момент модель, GPT-4, містить 1,8 трильйона параметрів, з одноразовою вартістю навчання понад 60 мільйонів доларів і вимогами до обчислювальної потужності 2,15e25 FLOPS (21,5 квінтильйонів операцій з плаваючою комою). Попит на обчислювальні потужності для навчання майбутніх моделей все ще зростає, і нові моделі розробляються все більшими темпами.
Згідно з найавторитетнішими оцінками, звіт про оцінку глобального індексу обчислювальної потужності за 2022-2023 роки, який було спільно складено Міжнародним корпоративним департаментом (IDC), компанією Інспур Інформейшн та Глобальним Інститутом досліджень промисловості Університету Цінхуа, капіталізація глобального ринку обчислення штучного інтелекту очікується зрости від 19,5 мільярда доларів у 2022 році до 34,66 мільярда доларів у 2026 році. Ринок генеративного обчислення штучного інтелекту прогнозується зрости від 820 мільйонів доларів у 2022 році до 10,99 мільярда доларів у 2026 році. Питома вага генеративного обчислення штучного інтелекту в загальному ринку обчислення штучного інтелекту очікується зрости від 4,2% до 31,7%.
Виробництво графічних процесорів зі штучним інтелектом було монополізовано виключно NVIDIA, і вони надзвичайно дорогі (останній H100 був проданий за ціною 40 000 доларів за одиницю). Як тільки графічні процесори випускаються, їх розкуповують технологічні гіганти в Кремнієвій долині. Деякі з цих пристроїв використовуються для навчання власних нових моделей. Решта здаються в оренду розробникам штучного інтелекту через хмарні платформи, такі як ті, що належать Google, Amazon і Microsoft, які контролюють величезну кількість обчислювальних ресурсів, таких як сервери, графічні процесори та TPU. Обчислювальні потужності стали новим ресурсом, монополізованим цими гігантами. Багато розробників штучного інтелекту навіть не можуть придбати виділений графічний процесор без націнки. Для того, щоб використовувати новітнє обладнання, розробникам доводиться орендувати хмарні сервери AWS або Microsoft. Фінансові звіти свідчать про те, що цей бізнес має надзвичайно високі прибутки. Хмарні сервіси AWS можуть похвалитися валовим прибутком у 61%, тоді як маржа валового прибутку Microsoft ще вища – 72%.
Так отже, нам потрібно прийняти цю централізовану владу та контроль, і платити 72% маржі прибутку за обчислювальні ресурси? Чи вони, велетні, що монополізували Web2, також будуть домінувати в наступній ері?
Щодо антимонопольної політики, децентралізація зазвичай вважається оптимальним рішенням. Придивляючись до існуючих проектів, чи можемо ми досягти потужності обчислень, необхідної для штучного інтелекту через проекти зберігання DePIN, поєднані з протоколами, такими як RDNR для використання простою GPU? Відповідь - ні. Шлях до усунення дракона не такий простий. Ранні проекти не були спеціально розроблені для потужності обчислень штучного загального інтелекту і не є реальними. Приведення потужності обчислень на блокчейн стикається принаймні із наступними п'ятьма викликами:
Перевірка роботи: Для побудови дійсно довірної обчислювальної мережі, яка надає економічні стимули учасникам, мережа повинна мати спосіб перевірки того, чи були насправді виконані обчислення глибокого навчання. Основна проблема тут полягає в залежності стану моделей глибокого навчання; в цих моделях вхід для кожного шару залежить від виходу з попереднього шару. Це означає, що ви не можете просто перевірити один окремий шар у моделі, не враховуючи всі інші шари перед ним. Обчислення для кожного шару базується на результатах всіх попередніх шарів. Тому, для перевірки завершеної роботи в конкретній точці (наприклад, в конкретному шарі), всю роботу від початку моделі до цієї конкретної точки слід виконати;
Ринок: Як ринок, що розвивається, ринок обчислювальних потужностей штучного інтелекту схильний до дилем попиту та пропозиції, таких як проблема холодного старту. Ліквідність попиту та пропозиції має бути приблизно узгоджена з самого початку, щоб ринок міг успішно зростати. Для того, щоб отримати потенційну пропозицію обчислювальної потужності, учасникам повинні бути надані чіткі стимули в обмін на їх обчислювальні ресурси. Ринку потрібен механізм для відстеження виконаних обчислень і своєчасної оплати провайдерам. На традиційних маркетплейсах посередники вирішують такі завдання, як управління та адаптація, одночасно знижуючи операційні витрати, встановлюючи мінімальні пороги оплати. Однак такий підхід є витратним при розширенні обсягу ринку. Лише невелика частина пропозиції може бути економічно захоплена, що призводить до порогового рівноважного стану, в якому ринок може лише захопити та підтримувати обмежену пропозицію, не маючи можливості зростати далі;
Проблема зупинки: Проблема зупинки є фундаментальним питанням в обчислювальній теорії, яке включає в себе визначення, чи завершиться задане обчислювальне завдання за скінченну кількість часу, чи буде працювати нескінченно. Ця проблема є нерозв'язною, що означає, що не існує універсального алгоритму, який може передбачити, чи завершиться будь-який заданий обчислений за скінченний час. Наприклад, виконання смарт-контрактів на Ethereum також стикається з аналогічною проблемою зупинки. Неможливо заздалегідь визначити, скільки обчислювальних ресурсів знадобиться для виконання смарт-контракту, або чи він завершиться у разумний час.
(У контексті глибокого навчання ця проблема буде складнішою, оскільки моделі та фреймворки перейдуть від статичної побудови графів до динамічної побудови та виконання.)
Конфіденційність: Дизайн та розробка з урахуванням конфіденційності є обов'язковим для команд проекту. Хоча велику кількість досліджень з машинного навчання можна проводити на публічних наборах даних, для покращення продуктивності моделі та її адаптації до конкретних застосувань модель зазвичай потребує додаткової настройки на власних користувальницьких даних. Цей процес настройки може включати обробку особистих даних, тому потрібно враховувати вимоги щодо захисту конфіденційності.
Паралельне виконання: Це ключовий фактор у неможливості поточних проєктів. Моделі глибокого навчання зазвичай навчаються паралельно на великих апаратних кластерах з власною архітектурою та надзвичайно низькою затримкою, а в GPU в розподілених обчислювальних мережах зумовлюють затримку через часті обміни даними та обмежуються продуктивністю найповільнішого GPU. Коли обчислювальні ресурси ненадійні та ненадійні, як досягти гетерогенного паралельного виконання - це проблема, яку потрібно вирішити. Поточний прийнятний метод - досягнення паралельного виконання за допомогою моделей трансформаторів, таких як Switch Transformers, які тепер мають високопаралельні характеристики.
Рішення: Хоча поточні спроби створення децентралізованого ринку обчислювальної потужності штучного загального інтелекту все ще знаходяться на початкових етапах, існують два проекти, які початково вирішили проблему консенсусного дизайну децентралізованих мереж та імплементацію децентралізованих мереж обчислювальної потужності в моделюванні та інференції. Далі буде використано Gensyn та Together як приклади для аналізу методів дизайну та проблем децентралізованого ринку обчислювальної потужності штучного загального інтелекту.
Gensyn - це ринок обчислювальної потужності AGI, який все ще знаходиться в стадії будівництва, з метою вирішення різноманітних викликів децентралізованого обчислення глибокого навчання та зменшення витрат, пов'язаних з поточним глибоким навчанням. Gensyn, в основному, є протоколом доказу участі першого рівня на основі мережі Polkadot, який безпосередньо винагороджує розв'язувачів (тех, хто вирішує обчислювальні завдання) через розумні контракти в обмін на їхні простою GPU-пристрої для обчислення та виконання завдань машинного навчання.
Повертаючись до попереднього питання, основа побудови по-справжньому недовірчої обчислювальної мережі полягає в перевірці завершеної роботи з машинним навчанням. Це дуже складне питання, що потребує знаходження балансу між перетином теорії складності, теорії ігор, криптографії та оптимізації.
Gensyn пропонує просте рішення, де розв'язувачі надсилають результати виконаних ними завдань машинного навчання. Щоб переконатися в точності цих результатів, інший незалежний верифікатор намагається повторити ту саму роботу. Такий підхід можна назвати одиночною реплікацією, оскільки лише один верифікатор повторно виконає завдання. Це означає, що є лише одна додаткова робота для перевірки точності оригінальної роботи. Однак, якщо особа, яка перевіряє роботу, не є початковим запитувачем, то проблема довіри все одно існує. Самі верифікатори можуть бути нечесними, і їхню роботу потрібно перевіряти. Це призводить до потенційної проблеми, коли якщо особа, яка перевіряє роботу, не є початковим запитувачем, то для перевірки її роботи знадобиться інший верифікатор. Але цьому новому верифікатору також не можна довіряти, тому для перевірки його роботи потрібен ще один верифікатор, який може тривати вічно, створюючи нескінченний ланцюжок реплікації. Тут нам потрібно ввести три ключові поняття і переплести їх, щоб побудувати систему учасників з чотирма ролями для вирішення проблеми нескінченного ланцюга.
Ймовірнісні докази навчання: Створює сертифікати завершеної роботи, використовуючи метадані з процесу оптимізації на основі градієнта. Повторюючи певні етапи, ці сертифікати можуть бути швидко перевірені, щоб забезпечити, що робота виконана, як очікувалося.
Протокол позиціонування на основі графа: Використання багатогранного, графового протоколу точного позиціонування та послідовного виконання крос-оцінювачів. Це дозволяє повторно запускати та порівнювати верифікаційну роботу для забезпечення її послідовності, що в кінцевому підсумку підтверджується самим блокчейном.
Гра стимулів у стилі Truebit: Використовуйте ставки та зниження для побудови гри стимулів, щоб забезпечити, що кожен економічно обґрунтований учасник буде діяти чесно та виконувати очікувані завдання.
Система учасників складається з подавачів, вирішувачів, перевіряючих та осіб, які викривають порушення.
Подавачі:
Відправники - це кінцеві користувачі системи, які надають завдання для обчислення та оплачують одиниці виконаної роботи;
Розв'язувачі:
Розв'язувачі - основні робочі системи, що здійснюють навчання моделі та генерують докази, які перевіряються перевіряючим;
Перевірники:
Перевірники є ключовими для зв'язку недетермінованого процесу навчання з детермінованими лінійними обчисленнями, реплікування частин доказу розв'язувача та порівняння відстаней з очікуваними порогами;
Співробітники, які розкривають інформацію
Розкривачі - останній бар'єр, перевіряючи роботу верифікаторів і висуваючи виклики з надією отримати щедрі винагороди.
Графічна система, розроблена протоколом, працює через вісім етапів, охоплюючи чотири основні ролі учасників, для завершення всього процесу від подання завдання до кінцевої перевірки.
Подання завдання: Завдання складаються з трьох конкретних частин інформації:
Метадані, що описують завдання та гіперпараметри;
Файл моделі у двійковому форматі (або базова архітектура);
Публічно доступні, попередньо оброблені навчальні дані.
Для подання завдання подавач вказує деталі завдання у машинночитомому форматі та подає його до ланцюжка разом із бінарним файлом моделі (або машинночитомою архітектурою) та громадськодоступним місцем попередньо оброблених навчальних даних. Громадські дані можна зберігати в простому сховищі об'єктів, такому як S3 від AWS, або в децентралізованому сховищі, такому як IPFS, Arweave або Subspace.
Профілювання: Процес профілювання встановлює поріг відстані для підтвердження навчання. Перевіряльники періодично отримують завдання профілювання та генерують пороги мутації для порівняння доказів навчання. Для генерації порогу перевіряльник визначено виконує і знову виконує частини навчання з використанням різних випадкових насінь, генеруючи та перевіряючи власні докази. Під час цього процесу перевіряльник встановлює загальний очікуваний поріг відстані для недетермінованої роботи рішення, який може використовуватися для підтвердження.
Навчання: Після профілювання завдання потрапляють в загальний басейн завдань (аналогічний Mempool Ethereum). Виберіть рішення для виконання завдання та видаліть завдання з басейну завдань. Рішення виконують завдання на основі метаданих, надісланих відправником, та моделі та тренувальних даних, які надані. Під час виконання тренувальних завдань рішення також генерують докази навчання, регулярно перевіряючи точки та зберігаючи метадані (включаючи параметри) під час процесу навчання, щоб верифікатори могли якнайточніше реплікувати наступні оптимізаційні кроки.
Генерація доказу: Розв'язувачі періодично зберігають ваги моделей або оновлення та відповідні індекси навчального набору даних, щоб ідентифікувати вибірки, які використовуються для генерації оновлень ваги. Частоту збереження можна налаштувати для надання більш міцних гарантій або для заощадження простору для зберігання. Докази можуть бути “накладені”, що означає, що вони можуть починати з випадкового розподілу, який використовується для ініціалізації ваг, або з передвченими вагами, що генеруються за допомогою їх власних доказів. Це дозволяє протоколу побудувати набір перевірених, передвчених базових моделей, які можна налаштувати для більш конкретних завдань.
Перевірка доказів: Після завершення завдання розв'язувачі реєструють завершення завдання на ланцюжку та показують свій доказ навчання на загальнодоступному місці для верифікаторів. Верифікатори витягують завдання верифікації з громадського пулу завдань та виконують обчислювальну роботу для перезапуску частини доказу та виконання обчислень відстані. Потім ланцюжок разом з порогом, розрахованим під час профілювання, використовує отриману відстань для визначення відповідності верифікації доказу.
Завдання на основі графіка: Після перевірки доказу навчання викривачі можуть відтворити роботу верифікаторів, щоб перевірити, чи сама робота з перевірки була виконана правильно. Якщо викривачі вважають, що перевірка була виконана неправильно (зловмисно чи ні), вони можуть оскаржити її в арбітражі за винагороду. Ця винагорода може надходити від депозитів розв'язувача та валідатора (у разі справжнього позитивного результату) або від бонусу лотерейного пулу (у разі помилкового спрацьовування), при цьому арбітраж виконується за допомогою самого ланцюжка. Викривачі (які виступають у ролі верифікаторів у своїй справі) перевірятимуть і згодом оскаржуватимуть роботу лише в тому випадку, якщо вони очікують отримати відповідну компенсацію. На практиці це означає, що викривачі повинні приєднуватися до мережі та виходити з неї залежно від кількості інших активних викривачів (тобто з реальними депозитами та викликами). Таким чином, очікувана стратегія за замовчуванням для будь-якого викривача полягає в тому, щоб приєднатися до мережі, коли інших викривачів стає менше, внести депозит, випадковим чином вибрати активне завдання та розпочати процес верифікації. Після одного завдання вони хапають інше випадкове активне завдання і повторюють, доки кількість інформаторів не перевищить визначений поріг виплат, після чого вони залишать мережу (або, що ймовірніше, переключаться на іншу роль у мережі — верифікатора чи розв'язувача — залежно від своїх апаратних можливостей), доки ситуація знову не зміниться.
Арбітраж договорів: Коли верифікатори викликають скарги від розкривачів секретів, вони вступають в процес з ланцюгом, щоб дізнатися місцезнаходження спірної операції або вводу, і в кінцевому підсумку ланцюг виконає останню основну операцію і вирішить, чи є обґрунтована скарга. Щоб зберегти чесність розкривачів секретів і подолати дилему верифікаторів, тут вводяться періодичні примусові помилки та виплати джекпоту.
Розрахунок: Під час процесу розрахунку учасникам сплачується на підставі висновків ймовірних та детермінованих перевірок. Різні сценарії оплати виникають в залежності від результатів попередніх перевірок та викликів. Якщо робота вважається виконаною правильно та всі перевірки пройшли успішно, як провайдери рішень, так і перевіряючі отримують винагороду за виконані операції.
Генсин розробив складну теоретико-ігрову систему на рівнях верифікації та стимулюючих рівнях, яка дозволяє швидко виявляти та виправляти помилки шляхом точного визначення розбіжностей у мережі. Однак у нинішній системі все ще не вистачає багатьох деталей. Наприклад, як встановити параметри, щоб винагороди та штрафи були обґрунтованими, не встановлюючи занадто високий поріг? Чи розглядали ви екстремальні сценарії та різну обчислювальну потужність розв'язувачів у теоретико-ігрових аспектах? Детального опису гетерогенного паралельного виконання в поточній версії whitepaper немає. Генсину ще належить пройти довгий шлях.
Together.ai - це компанія, що акцентує увагу на відкритих, децентралізованих рішеннях з обчислювальної штучної інтелекту для великих моделей. Вона має на меті забезпечити можливість доступу до ШІ будь-де. Суворо кажучи, Together не є проєктом блокчейну, але він попередньо вирішив проблеми з латентністю у децентралізованих мережах ШІ. Тому ця стаття аналізує лише рішення Together і не оцінює сам проєкт.
Як досягти навчання та інференції великих моделей, коли децентралізовані мережі у 100 разів повільніші за дата-центри?
Давайте уявимо розподіл GPU, що беруть участь в децентралізованій мережі. Ці пристрої будуть розподілені по різних континентах і містах, кожен з яких потребує підключення з різними затримками та пропускною здатністю. Як показано на малюнку нижче, симульований розподілений сценарій показує пристрої, розташовані в Північній Америці, Європі та Азії, з різними пропускними здатностями та затримками між ними. Що потрібно зробити, щоб ефективно поєднати їх між собою?
Розподілена модель обчислювального моделювання: На діаграмі нижче показано ситуацію тренування базової моделі на кількох пристроях, що включає три типи комунікації: Пряме активація, Зворотній градієнт та Бічна комунікація.
Поєднуючи пропускну здатність та затримку, потрібно враховувати дві форми паралельності: паралельність конвеєра та паралельність даних, що відповідають трьом типам зв'язку в багатопристроївному сценарії:
У паралельній обробці потоків всі шари моделі розділяються на кілька етапів, де кожен пристрій обробляє один етап, який є послідовністю підрядних шарів, таких як кілька блоків трансформатора. Під час прямого поширення активації передаються наступному етапу, а під час зворотного поширення градієнти активацій передаються назад на попередній етап.
У паралельному обробці даних пристрої незалежно обчислюють градієнти для різних мікро-партій, але потрібно синхронізувати ці градієнти через комунікацію.
Оптимізація планування:
У децентралізованому середовищі процес навчання часто обмежується комунікацією. Алгоритми планування, як правило, призначають завдання, які вимагають інтенсивної комунікації, пристроям з більш швидкими з'єднаннями. Враховуючи залежності між завданнями та різноманітність мережі, спочатку необхідно смоделювати вартість конкретних стратегій планування. Для того щоб зафіксувати складну комунікаційну вартість навчання базових моделей, Together пропонує нову формулювання та декомпозицію вартісної моделі на два рівні за допомогою теорії графів:
Теорія графів - це галузь математики, яка вивчає властивості та структури графів (мереж). Граф складається з вершин (вузлів) та ребер (ліній, що з'єднують вузли). Головна мета теорії графів - вивчення різних властивостей графів, таких як зв'язність, розфарбування, та характер шляхів та циклів у графах.
Перший рівень - це проблема балансового розбиття графа (розділення вершинного набору графа на кілька підмножин рівних або майже рівних розмірів з мінімізацією кількості ребер між підмножинами). У цьому розбитті кожна підмножина представляє собою розділ, а витрати на комунікацію зменшуються за рахунок мінімізації ребер між розділами, що відповідає витратам на комунікацію паралелізму даних.
Другий рівень включає у себе спільне вирішення проблеми відповідності графіків та проблеми комівояжера (комбінаторна оптимізаційна проблема, яка поєднує елементи відповідності графіків та проблеми комівояжера). Проблема відповідності графіків полягає у знаходженні збігу у графіку, що мінімізує або максимізує певні витрати. Проблема комівояжера полягає в пошуку найкоротшого шляху, який відвідає всі вузли в графіку, що відповідає витратам зв'язку паралелізму каналу.
Вищезазначена схема є схематичним зображенням процесу. У зв'язку зі складними обчисленнями, необхідними для фактичної реалізації, описаний у схемі процес спрощено для полегшення розуміння. Для докладної реалізації можна звернутися до документації на офіційному веб-сайті Together.
Припустимо, що існує набір пристроїв NN, DD, з невизначеними затримками зв'язку (матриця AA) і смугами пропускання (матриця BB), на основі набору пристроїв DD ми спочатку генеруємо збалансований розділ графа. Кожен розділ або група пристроїв містить приблизно однакову кількість пристроїв, і всі вони обробляють один і той же етап конвеєра. Це гарантує, що під час паралелізму даних кожна група пристроїв виконує однаковий обсяг роботи. Відповідно до затримок зв'язку та пропускної здатності формула може розрахувати «вартість» передачі даних між групами пристроїв. Кожна збалансована група об'єднується для створення повністю зв'язаного грубого графа, де кожен вузол представляє етап конвеєра, а ребра представляють вартість зв'язку між двома етапами. Щоб мінімізувати витрати на зв'язок, використовується алгоритм зіставлення, який визначає, які групи пристроїв повинні працювати разом.
Для подальшої оптимізації цю проблему також можна моделювати як проблему мандрівного торгівця з відкритою петлею (відкрита петля означає, що немає необхідності повертатися до початкової точки шляху), щоб знайти оптимальний шлях для передачі даних через всі пристрої. Нарешті, Together використовує інноваційний алгоритм планування для знаходження оптимальної стратегії розподілу для заданої моделі вартості, що дозволяє мінімізувати витрати на комунікацію та максимізувати пропускну здатність навчання. Згідно з тестами, навіть якщо мережа працює в 100 разів повільніше під час цієї оптимізації планування, пропускна здатність тренування з кінця в кінець лише приблизно в 1,7–2,3 рази повільніше.
Оптимізація стиснення комунікацій:
Для оптимізації стиснення зв'язку компанія Together ввела алгоритм AQ-SGD (детальний процес розрахунків див. у статті "Fine-tuning Language Models over Slow Networks using Activation Compression with Guarantees"). Алгоритм AQ-SGD — це нова техніка стиснення активації, призначена для вирішення проблем ефективності зв'язку під час паралельного навчання конвеєра через повільні мережі. На відміну від попередніх методів безпосереднього стиснення значень активації, AQ-SGD фокусується на стисненні змін значень активації однієї і тієї ж навчальної вибірки в різні періоди. Цей унікальний метод вводить цікаву динаміку «самовиконання», коли очікується, що продуктивність алгоритму поступово покращуватиметься в міру стабілізації навчання. Алгоритм AQ-SGD був ретельно теоретично проаналізований і довів, що має хорошу швидкість збіжності при певних технічних умовах і обмежених функціях квантування помилок. Алгоритм може бути ефективно реалізований без додавання додаткових накладних витрат на наскрізне виконання, хоча він вимагає використання більшої кількості пам'яті та SSD для зберігання значень активації. Завдяки масштабним експериментам з класифікації послідовностей і наборів даних мовного моделювання, було показано, що AQ-SGD стискає значення активації до 2-4 біт без шкоди для продуктивності збіжності. Крім того, AQ-SGD може бути інтегрований з найсучаснішими алгоритмами стиснення градієнтів для досягнення «наскрізного стиснення зв'язку», що означає, що обмін даними між усіма машинами, включаючи градієнти моделі, значення прямої активації та зворотні градієнти, стискаються до низької точності, тим самим значно підвищуючи ефективність зв'язку розподіленого навчання. У порівнянні з наскрізною продуктивністю навчання в централізованій обчислювальній мережі (наприклад, 10 Гбіт/с) без стиснення, вона в даний час лише на 31% повільніша. У поєднанні з даними про оптимізацію планування, хоча між централізованими обчислювальними мережами все ще існує певний розрив, є велика надія надолужити згаяне в майбутньому.
У дивідентний період, що настав за хвилею штучного інтелекту, ринок обчислювальної потужності AGI є безперечно найбільш потенційним та найбільш популярним серед різних ринків обчислювальної потужності. Однак найвищі складнощі розвитку, вимоги до апаратного забезпечення та капіталовкладення створюють виклики для цієї галузі. Поєднуючи два вищезазначених проекти, ми все ще далеко від запуску ринку обчислювальної потужності AGI. Реальна децентралізована мережа також набагато складніша, ніж ідеальний сценарій. Наразі недостатньо конкурентоспроможна порівняно з хмарними гігантами.
На момент написання я також спостерігав, що деякі невеликі проекти, які все ще знаходяться на початковому етапі (етап PPT), почали досліджувати нові точки входу, такі як акцент на менш складний етап інференції AGI, а не на етап навчання. Однак у довгостроковій перспективі значення децентралізації та систем без дозволу глибоке. Право на доступ та навчання розрахункової потужності AGI не повинно концентруватися в руках кількох централізованих гігантів. Людству не потрібна нова "теократія" або новий "папа", і не слід платити дорогі членські внески.
分享
З моменту народження GPT-3 генеративний штучний інтелект відкрив вибухонебезпечний поворотний момент у галузі штучного інтелекту завдяки своїй дивовижній продуктивності та широким сценаріям застосування. Це призвело до того, що технологічні гіганти стікаються на шлях штучного інтелекту. Однак цей сплеск приніс із собою численні проблеми. Операції навчання та виведення великих мовних моделей (LLM) вимагають великої обчислювальної потужності. З ітераційним оновленням цих моделей попит і вартість обчислювальних потужностей експоненціально зростають. На прикладі GPT-2 і GPT-3 різниця в кількості параметрів між GPT-2 і GPT-3 становить 1166 разів (GPT-2 має 150 мільйонів параметрів, а GPT-3 – 175 мільярдів). Вартість одного навчального сеансу GPT-3 була розрахована на основі моделей ціноутворення публічних хмар GPU на той час, що сягало до 12 мільйонів доларів. Це у 200 разів більше, ніж у GPT-2. У практичному використанні кожен запит користувача вимагає обчислення логічного висновку. Виходячи з 13 мільйонів незалежних користувачів на початку цього року, відповідний попит на чіпи становитиме понад 30 000 графічних процесорів A100. Тоді початкові інвестиційні витрати становитимуть приголомшливі 800 мільйонів доларів, а орієнтовна щоденна вартість висновків моделі становитиме 700 000 доларів.
Недостатня обчислювальна потужність і висока вартість стали серйозними проблемами, з якими стикається вся індустрія штучного інтелекту. Примітно, що подібна проблема, схоже, стикається з блокчейн-індустрією. З одного боку, четвертий халвінг біткоіни і схвалення ETF неминучі. У міру зростання майбутніх цін попит майнерів на обчислювальне обладнання неминуче значно зросте. З іншого боку, технологія Zero-Knowledge Proof (ZKP) процвітає, і Віталік неодноразово підкреслював, що вплив ZK на сферу блокчейну в найближчі десять років буде таким же важливим, як і сам блокчейн. Хоча ця технологія є багатообіцяючою для майбутнього блокчейн-індустрії, ZK також споживає багато обчислювальної потужності та часу на створення доказів через складний процес обчислень, як і штучний інтелект.
У найближчому майбутньому нестача обчислювальної потужності стане необхідністю. Таким чином, ринок децентралізованої обчислювальної потужності стане прибутковим бізнес-підприємством?
Ринок децентралізованих обчислювальних потужностей фактично еквівалентний децентралізованим хмарним обчисленням, але особисто я вважаю, що цей термін більше підходить для опису нових проектів, які будуть обговорюватися пізніше. Ринок децентралізованих обчислювальних потужностей слід розглядати як підмножину DePIN (Decentralized Physical Infrastructure Networks), метою якого є створення відкритого ринку обчислювальної потужності, де будь-хто, хто має незадіяні обчислювальні ресурси, може пропонувати свої ресурси, стимульовані токенами, в основному обслуговуючи B2B-клієнтів і спільноти розробників. З точки зору більш звичних проектів, такі мережі, як Render Network, яка базується на децентралізованих рішеннях для рендерингу GPU, і Akash Network, розподілений одноранговий ринок хмарних обчислень, належать до цього напрямку.
Наступний текст розпочнеться з основних концепцій, а потім обговорить три нові ринки на цьому шляху: ринок обчислювальної потужності AGI, ринок обчислювальної потужності Bitcoin та ринок обчислювальної потужності AGI на ринку апаратного прискорення ZK. Останні два будуть розглянуті в "Перспектива обіцяючого напрямку: децентралізований ринок обчислювальної потужності (Частина 2)".
Концепція обчислювальної потужності може бути відстежена до винаходу комп'ютера. Оригінальний комп'ютер використовував механічні пристрої для виконання обчислювальних завдань, і обчислювальна потужність вказувала на обчислювальні здібності механічного пристрою. З розвитком комп'ютерної технології концепція обчислювальної потужності також еволюціонувала. Сьогоднішня обчислювальна потужність зазвичай вказує на спільну роботу апаратного забезпечення комп'ютера (ЦП, ГПУ, ПЛІС тощо) та програмного забезпечення (операційні системи, компілятори, додатки тощо).
Обчислювальна потужність відноситься до обсягу даних, які комп'ютер або інший обчислювальний пристрій можуть обробляти протягом певного періоду часу або кількості обчислювальних завдань, які вони можуть завершити. Обчислювальна потужність зазвичай використовується для опису продуктивності комп'ютера або інших обчислювальних пристроїв. Це важливий показник обробних здатностей обчислювального пристрою.
Обчислювальна потужність може бути виміряна різними способами, такими як швидкість обчислення, споживання енергії, точність обчислень та паралелизм. У галузі обчислень, до загальновживаних метрик обчислювальної потужності входять FLOPS (операції з плаваючою комою на секунду), IPS (інструкції на секунду), TPS (транзакції на секунду) тощо.
FLOPS вимірює здатність комп'ютера обробляти операції з рухомою комою (математичні операції з десятковими дробами, які потребують урахування питань точності та помилок округлення). Він вимірює, скільки операцій з рухомою комою може виконати комп'ютер за секунду. FLOPS є показником високопродуктивних обчислювальних можливостей комп'ютера і широко використовується для вимірювання обчислювальних здатностей суперкомп'ютерів, серверів високопродуктивних обчислень, графічних процесорів (GPU) і т. д. Наприклад, якщо у комп'ютерній системі є 1 TFLOPS (один трильйон операцій з рухомою комою на секунду), це означає, що вона може завершити 1 трильйон операцій з рухомою комою на секунду.
IPS вимірює швидкість, з якою комп'ютер обробляє інструкції. Це вимірювання кількості інструкцій, які комп'ютер може виконати за секунду, і вимірювання продуктивності однієї інструкції комп'ютера, яке зазвичай використовується для вимірювання продуктивності центрального процесора (CPU). Наприклад, CPU з IPS 3 ГГц (3 мільярди інструкцій на секунду) означає, що він може виконувати 3 мільярди інструкцій за секунду.
TPS вимірює можливість комп'ютера обробляти транзакції. Він вимірює, скільки транзакцій комп'ютер може завершити за секунду, зазвичай використовується для вимірювання продуктивності сервера баз даних. Наприклад, сервер баз даних має TPS 1 000, що означає, що він може обробляти 1 000 транзакцій баз даних за секунду.
Крім того, існують деякі метрики обчислювальної потужності для конкретних сценаріїв застосування, такі як швидкість інференції, швидкість обробки зображень та точність розпізнавання голосу.
Обчислювальна потужність GPU відноситься до обчислювальної здатності графічних процесорів (GPU). На відміну від центральних процесорів (CPU), GPU - апаратне забезпечення, спеціально призначене для обробки графічних даних, таких як зображення та відео. У них є велика кількість обчислювальних блоків та ефективні можливості паралельного обчислення, і вони можуть виконувати велику кількість операцій з числами з плаваючою комою одночасно. Оскільки GPU спочатку були розроблені для обробки графіки в іграх, вони зазвичай мають вищі тактові частоти та більшу пропускну здатність пам'яті, ніж CPU для підтримки складних графічних обчислень.
Архітектура: ЦП та ГП мають різні обчислювальні архітектури. ЦП зазвичай мають одне або кілька ядер, кожне з яких є загальнопризначеним процесором, здатним виконувати різноманітні операції. ГП, з іншого боку, мають велику кількість потокових процесорів та шейдерів, які спеціально використовуються для виконання розрахунків, пов'язаних із обробкою зображень;
Паралельне обчислення: Графічні процесори, як правило, мають вищі можливості паралельних обчислень. Центральний процесор має обмежену кількість ядер, і кожне ядро може виконувати лише одну інструкцію, але у графічного процесора може бути тисячі потокових процесорів, які можуть виконувати одночасно кілька інструкцій та операцій. Тому графічні процесори, як правило, краще підходять для виконання паралельних обчислювальних завдань, таких як машинне навчання та глибоке навчання, які вимагають значних паралельних обчислень;
Проектування програм: Програмування для графічних процесорів є відносно складнішим порівняно з ЦП. Для цього потрібно використовувати конкретні мови програмування (такі як CUDA або OpenCL) та конкретні техніки програмування для використання паралельних обчислювальних можливостей графічних процесорів. Натомість програмування ЦП є простішим і може використовувати загальнопризначені мови програмування та інструменти.
У епоху Індустріальної Революції нафта була кров'ю світу і проникла в кожну галузь промисловості. У майбутній епоху штучного інтелекту обчислювальна потужність буде "цифровою нафтою" світу. Від лихоманки великих компаній зашвидкість AI чіпів та акцій Nvidia, які перевищили один трильйон доларів, до недавнього блокування Сполученими Штатами висококласних чіпів з Китаю, включаючи потужність обчислювальної потужності, розмір чіпа та навіть плани заборонити хмари з ГПУ, важливість обчислювальної потужності очевидна. Обчислювальна потужність стане товаром наступної епохи.
Штучний інтелект (AI) - це нова технічна наука, яка вивчає, розробляє та застосовує теорії, методи, технології для моделювання, розширення та розширення людського інтелекту. Вона виникла в 1950-1960-х роках і, після півстоліття еволюції, пережила переплетені розвитки через три хвилі: символізм, зв'язківці та підходи на основі агентів. Сьогодні, як нова технологія загального призначення, AI викликає глибокі зміни в соціальному житті та в усіх галузях. Більш конкретне визначення генеративного AI на даний момент: Artificial General Intelligence (AGI), система штучного інтелекту з широким спектром розуміння, яка може виконувати завдання та працювати в різних галузах з інтелектом, схожим або перевищуючим людський рівень. AGI в основному потребує трьох елементів: глибоке навчання (DL), великі дані та значну обчислювальну потужність.
Глибоке навчання є підгалуззю машинного навчання (ML), алгоритми глибокого навчання - це нейронні мережі, сховані за відтворенням людського мозку. Наприклад, людський мозок містить мільйони взаємопов'язаних нейронів, які спільно вчаться та обробляють інформацію. Так само, нейронні мережі глибокого навчання (або штучні нейронні мережі) складаються з кількох шарів штучних нейронів, які спільно працюють у комп'ютері. Ці штучні нейрони, відомі як вузли, використовують математичні обчислення для обробки даних. Штучні нейронні мережі - це алгоритми глибокого навчання, які використовують ці вузли для вирішення складних проблем.
Нейронні мережі можуть бути розділені на вхідний шар, приховані шари та вихідний шар. Зв'язки між цими різними шарами складаються з параметрів.
Вхідний шар: Вхідний шар є першим шаром нейромережі і відповідає за отримання зовнішніх вхідних даних. Кожен нейрон у вхідному шарі відповідає певній ознаці вхідних даних. Наприклад, у обробці зображень кожен нейрон може відповідати значенню пікселя на зображенні.
Приховані шари: вхідний рівень обробляє дані та передає їх глибшим шарам у мережі. Ці приховані шари обробляють інформацію на різних рівнях, коригуючи свою поведінку при отриманні нової інформації. Мережі глибокого навчання можуть мати сотні прихованих рівнів, які дозволяють їм аналізувати проблеми з різних точок зору. Наприклад, якщо вам дають зображення невідомої тварини, яку потрібно класифікувати, ви можете порівняти його з тваринами, яких ви вже знаєте. Наприклад, визначити, що це за тварина, можна за формою вух, кількістю ніг, розміром зіниць. Приховані шари в глибоких нейронних мережах працюють аналогічним чином. Якщо алгоритм глибокого навчання намагається класифікувати зображення тварини, кожен прихований шар буде обробляти різні ознаки тварин і намагатися їх точно класифікувати.
Вихідний шар: Вихідний шар є останнім шаром нейронної мережі і відповідає за генерацію виходу мережі. Кожен нейрон у вихідному шарі представляє можливу категорію або значення виходу. Наприклад, у задачі класифікації кожен нейрон у вихідному шарі може відповідати категорії, тоді як у задачі регресії у вихідному шарі може бути лише один нейрон, значення якого представляє результат прогнозу;
Параметри: У нейронних мережах зв'язки між різними шарами представлені вагами та зміщеннями, які оптимізуються під час процесу навчання, щоб дозволити мережі точно ідентифікувати шаблони в даних та робити прогнози. Збільшення параметрів може поліпшити потужність моделі нейронної мережі, тобто здатність моделі вчитися та представляти складні шаблони в даних. Проте відповідно збільшення параметрів призведе до збільшення потреби в обчислювальній потужності.
Для ефективного навчання нейронних мереж зазвичай потрібні великі, різноманітні та високоякісні дані з різних джерел. Ці дані є основою для навчання та перевірки моделей машинного навчання. Аналізуючи великі дані, моделі машинного навчання можуть вивчити закономірності та взаємозв'язки в межах даних, що дозволяє їм робити передбачення або класифікацію.
Потреба в значних обчислювальних потужностях випливає з декількох аспектів нейронних мереж: складних багатошарових структур, великої кількості параметрів, необхідності обробки величезних обсягів даних і ітеративних методів навчання (під час фази навчання модель повинна повторювати багаторазові ітерації, виконуючи прямі та зворотні обчислення поширення для кожного шару, включаючи обчислення для функцій активації, функції втрат, градієнти та оновлення ваги), NEND для високоточних обчислень, можливостей паралельних обчислень, методів оптимізації та регуляризації, а також процесів оцінки та верифікації моделей. У міру розвитку глибокого навчання потреба у величезних обчислювальних потужностях для AGI зростає приблизно в 10 разів щороку. Остання на даний момент модель, GPT-4, містить 1,8 трильйона параметрів, з одноразовою вартістю навчання понад 60 мільйонів доларів і вимогами до обчислювальної потужності 2,15e25 FLOPS (21,5 квінтильйонів операцій з плаваючою комою). Попит на обчислювальні потужності для навчання майбутніх моделей все ще зростає, і нові моделі розробляються все більшими темпами.
Згідно з найавторитетнішими оцінками, звіт про оцінку глобального індексу обчислювальної потужності за 2022-2023 роки, який було спільно складено Міжнародним корпоративним департаментом (IDC), компанією Інспур Інформейшн та Глобальним Інститутом досліджень промисловості Університету Цінхуа, капіталізація глобального ринку обчислення штучного інтелекту очікується зрости від 19,5 мільярда доларів у 2022 році до 34,66 мільярда доларів у 2026 році. Ринок генеративного обчислення штучного інтелекту прогнозується зрости від 820 мільйонів доларів у 2022 році до 10,99 мільярда доларів у 2026 році. Питома вага генеративного обчислення штучного інтелекту в загальному ринку обчислення штучного інтелекту очікується зрости від 4,2% до 31,7%.
Виробництво графічних процесорів зі штучним інтелектом було монополізовано виключно NVIDIA, і вони надзвичайно дорогі (останній H100 був проданий за ціною 40 000 доларів за одиницю). Як тільки графічні процесори випускаються, їх розкуповують технологічні гіганти в Кремнієвій долині. Деякі з цих пристроїв використовуються для навчання власних нових моделей. Решта здаються в оренду розробникам штучного інтелекту через хмарні платформи, такі як ті, що належать Google, Amazon і Microsoft, які контролюють величезну кількість обчислювальних ресурсів, таких як сервери, графічні процесори та TPU. Обчислювальні потужності стали новим ресурсом, монополізованим цими гігантами. Багато розробників штучного інтелекту навіть не можуть придбати виділений графічний процесор без націнки. Для того, щоб використовувати новітнє обладнання, розробникам доводиться орендувати хмарні сервери AWS або Microsoft. Фінансові звіти свідчать про те, що цей бізнес має надзвичайно високі прибутки. Хмарні сервіси AWS можуть похвалитися валовим прибутком у 61%, тоді як маржа валового прибутку Microsoft ще вища – 72%.
Так отже, нам потрібно прийняти цю централізовану владу та контроль, і платити 72% маржі прибутку за обчислювальні ресурси? Чи вони, велетні, що монополізували Web2, також будуть домінувати в наступній ері?
Щодо антимонопольної політики, децентралізація зазвичай вважається оптимальним рішенням. Придивляючись до існуючих проектів, чи можемо ми досягти потужності обчислень, необхідної для штучного інтелекту через проекти зберігання DePIN, поєднані з протоколами, такими як RDNR для використання простою GPU? Відповідь - ні. Шлях до усунення дракона не такий простий. Ранні проекти не були спеціально розроблені для потужності обчислень штучного загального інтелекту і не є реальними. Приведення потужності обчислень на блокчейн стикається принаймні із наступними п'ятьма викликами:
Перевірка роботи: Для побудови дійсно довірної обчислювальної мережі, яка надає економічні стимули учасникам, мережа повинна мати спосіб перевірки того, чи були насправді виконані обчислення глибокого навчання. Основна проблема тут полягає в залежності стану моделей глибокого навчання; в цих моделях вхід для кожного шару залежить від виходу з попереднього шару. Це означає, що ви не можете просто перевірити один окремий шар у моделі, не враховуючи всі інші шари перед ним. Обчислення для кожного шару базується на результатах всіх попередніх шарів. Тому, для перевірки завершеної роботи в конкретній точці (наприклад, в конкретному шарі), всю роботу від початку моделі до цієї конкретної точки слід виконати;
Ринок: Як ринок, що розвивається, ринок обчислювальних потужностей штучного інтелекту схильний до дилем попиту та пропозиції, таких як проблема холодного старту. Ліквідність попиту та пропозиції має бути приблизно узгоджена з самого початку, щоб ринок міг успішно зростати. Для того, щоб отримати потенційну пропозицію обчислювальної потужності, учасникам повинні бути надані чіткі стимули в обмін на їх обчислювальні ресурси. Ринку потрібен механізм для відстеження виконаних обчислень і своєчасної оплати провайдерам. На традиційних маркетплейсах посередники вирішують такі завдання, як управління та адаптація, одночасно знижуючи операційні витрати, встановлюючи мінімальні пороги оплати. Однак такий підхід є витратним при розширенні обсягу ринку. Лише невелика частина пропозиції може бути економічно захоплена, що призводить до порогового рівноважного стану, в якому ринок може лише захопити та підтримувати обмежену пропозицію, не маючи можливості зростати далі;
Проблема зупинки: Проблема зупинки є фундаментальним питанням в обчислювальній теорії, яке включає в себе визначення, чи завершиться задане обчислювальне завдання за скінченну кількість часу, чи буде працювати нескінченно. Ця проблема є нерозв'язною, що означає, що не існує універсального алгоритму, який може передбачити, чи завершиться будь-який заданий обчислений за скінченний час. Наприклад, виконання смарт-контрактів на Ethereum також стикається з аналогічною проблемою зупинки. Неможливо заздалегідь визначити, скільки обчислювальних ресурсів знадобиться для виконання смарт-контракту, або чи він завершиться у разумний час.
(У контексті глибокого навчання ця проблема буде складнішою, оскільки моделі та фреймворки перейдуть від статичної побудови графів до динамічної побудови та виконання.)
Конфіденційність: Дизайн та розробка з урахуванням конфіденційності є обов'язковим для команд проекту. Хоча велику кількість досліджень з машинного навчання можна проводити на публічних наборах даних, для покращення продуктивності моделі та її адаптації до конкретних застосувань модель зазвичай потребує додаткової настройки на власних користувальницьких даних. Цей процес настройки може включати обробку особистих даних, тому потрібно враховувати вимоги щодо захисту конфіденційності.
Паралельне виконання: Це ключовий фактор у неможливості поточних проєктів. Моделі глибокого навчання зазвичай навчаються паралельно на великих апаратних кластерах з власною архітектурою та надзвичайно низькою затримкою, а в GPU в розподілених обчислювальних мережах зумовлюють затримку через часті обміни даними та обмежуються продуктивністю найповільнішого GPU. Коли обчислювальні ресурси ненадійні та ненадійні, як досягти гетерогенного паралельного виконання - це проблема, яку потрібно вирішити. Поточний прийнятний метод - досягнення паралельного виконання за допомогою моделей трансформаторів, таких як Switch Transformers, які тепер мають високопаралельні характеристики.
Рішення: Хоча поточні спроби створення децентралізованого ринку обчислювальної потужності штучного загального інтелекту все ще знаходяться на початкових етапах, існують два проекти, які початково вирішили проблему консенсусного дизайну децентралізованих мереж та імплементацію децентралізованих мереж обчислювальної потужності в моделюванні та інференції. Далі буде використано Gensyn та Together як приклади для аналізу методів дизайну та проблем децентралізованого ринку обчислювальної потужності штучного загального інтелекту.
Gensyn - це ринок обчислювальної потужності AGI, який все ще знаходиться в стадії будівництва, з метою вирішення різноманітних викликів децентралізованого обчислення глибокого навчання та зменшення витрат, пов'язаних з поточним глибоким навчанням. Gensyn, в основному, є протоколом доказу участі першого рівня на основі мережі Polkadot, який безпосередньо винагороджує розв'язувачів (тех, хто вирішує обчислювальні завдання) через розумні контракти в обмін на їхні простою GPU-пристрої для обчислення та виконання завдань машинного навчання.
Повертаючись до попереднього питання, основа побудови по-справжньому недовірчої обчислювальної мережі полягає в перевірці завершеної роботи з машинним навчанням. Це дуже складне питання, що потребує знаходження балансу між перетином теорії складності, теорії ігор, криптографії та оптимізації.
Gensyn пропонує просте рішення, де розв'язувачі надсилають результати виконаних ними завдань машинного навчання. Щоб переконатися в точності цих результатів, інший незалежний верифікатор намагається повторити ту саму роботу. Такий підхід можна назвати одиночною реплікацією, оскільки лише один верифікатор повторно виконає завдання. Це означає, що є лише одна додаткова робота для перевірки точності оригінальної роботи. Однак, якщо особа, яка перевіряє роботу, не є початковим запитувачем, то проблема довіри все одно існує. Самі верифікатори можуть бути нечесними, і їхню роботу потрібно перевіряти. Це призводить до потенційної проблеми, коли якщо особа, яка перевіряє роботу, не є початковим запитувачем, то для перевірки її роботи знадобиться інший верифікатор. Але цьому новому верифікатору також не можна довіряти, тому для перевірки його роботи потрібен ще один верифікатор, який може тривати вічно, створюючи нескінченний ланцюжок реплікації. Тут нам потрібно ввести три ключові поняття і переплести їх, щоб побудувати систему учасників з чотирма ролями для вирішення проблеми нескінченного ланцюга.
Ймовірнісні докази навчання: Створює сертифікати завершеної роботи, використовуючи метадані з процесу оптимізації на основі градієнта. Повторюючи певні етапи, ці сертифікати можуть бути швидко перевірені, щоб забезпечити, що робота виконана, як очікувалося.
Протокол позиціонування на основі графа: Використання багатогранного, графового протоколу точного позиціонування та послідовного виконання крос-оцінювачів. Це дозволяє повторно запускати та порівнювати верифікаційну роботу для забезпечення її послідовності, що в кінцевому підсумку підтверджується самим блокчейном.
Гра стимулів у стилі Truebit: Використовуйте ставки та зниження для побудови гри стимулів, щоб забезпечити, що кожен економічно обґрунтований учасник буде діяти чесно та виконувати очікувані завдання.
Система учасників складається з подавачів, вирішувачів, перевіряючих та осіб, які викривають порушення.
Подавачі:
Відправники - це кінцеві користувачі системи, які надають завдання для обчислення та оплачують одиниці виконаної роботи;
Розв'язувачі:
Розв'язувачі - основні робочі системи, що здійснюють навчання моделі та генерують докази, які перевіряються перевіряючим;
Перевірники:
Перевірники є ключовими для зв'язку недетермінованого процесу навчання з детермінованими лінійними обчисленнями, реплікування частин доказу розв'язувача та порівняння відстаней з очікуваними порогами;
Співробітники, які розкривають інформацію
Розкривачі - останній бар'єр, перевіряючи роботу верифікаторів і висуваючи виклики з надією отримати щедрі винагороди.
Графічна система, розроблена протоколом, працює через вісім етапів, охоплюючи чотири основні ролі учасників, для завершення всього процесу від подання завдання до кінцевої перевірки.
Подання завдання: Завдання складаються з трьох конкретних частин інформації:
Метадані, що описують завдання та гіперпараметри;
Файл моделі у двійковому форматі (або базова архітектура);
Публічно доступні, попередньо оброблені навчальні дані.
Для подання завдання подавач вказує деталі завдання у машинночитомому форматі та подає його до ланцюжка разом із бінарним файлом моделі (або машинночитомою архітектурою) та громадськодоступним місцем попередньо оброблених навчальних даних. Громадські дані можна зберігати в простому сховищі об'єктів, такому як S3 від AWS, або в децентралізованому сховищі, такому як IPFS, Arweave або Subspace.
Профілювання: Процес профілювання встановлює поріг відстані для підтвердження навчання. Перевіряльники періодично отримують завдання профілювання та генерують пороги мутації для порівняння доказів навчання. Для генерації порогу перевіряльник визначено виконує і знову виконує частини навчання з використанням різних випадкових насінь, генеруючи та перевіряючи власні докази. Під час цього процесу перевіряльник встановлює загальний очікуваний поріг відстані для недетермінованої роботи рішення, який може використовуватися для підтвердження.
Навчання: Після профілювання завдання потрапляють в загальний басейн завдань (аналогічний Mempool Ethereum). Виберіть рішення для виконання завдання та видаліть завдання з басейну завдань. Рішення виконують завдання на основі метаданих, надісланих відправником, та моделі та тренувальних даних, які надані. Під час виконання тренувальних завдань рішення також генерують докази навчання, регулярно перевіряючи точки та зберігаючи метадані (включаючи параметри) під час процесу навчання, щоб верифікатори могли якнайточніше реплікувати наступні оптимізаційні кроки.
Генерація доказу: Розв'язувачі періодично зберігають ваги моделей або оновлення та відповідні індекси навчального набору даних, щоб ідентифікувати вибірки, які використовуються для генерації оновлень ваги. Частоту збереження можна налаштувати для надання більш міцних гарантій або для заощадження простору для зберігання. Докази можуть бути “накладені”, що означає, що вони можуть починати з випадкового розподілу, який використовується для ініціалізації ваг, або з передвченими вагами, що генеруються за допомогою їх власних доказів. Це дозволяє протоколу побудувати набір перевірених, передвчених базових моделей, які можна налаштувати для більш конкретних завдань.
Перевірка доказів: Після завершення завдання розв'язувачі реєструють завершення завдання на ланцюжку та показують свій доказ навчання на загальнодоступному місці для верифікаторів. Верифікатори витягують завдання верифікації з громадського пулу завдань та виконують обчислювальну роботу для перезапуску частини доказу та виконання обчислень відстані. Потім ланцюжок разом з порогом, розрахованим під час профілювання, використовує отриману відстань для визначення відповідності верифікації доказу.
Завдання на основі графіка: Після перевірки доказу навчання викривачі можуть відтворити роботу верифікаторів, щоб перевірити, чи сама робота з перевірки була виконана правильно. Якщо викривачі вважають, що перевірка була виконана неправильно (зловмисно чи ні), вони можуть оскаржити її в арбітражі за винагороду. Ця винагорода може надходити від депозитів розв'язувача та валідатора (у разі справжнього позитивного результату) або від бонусу лотерейного пулу (у разі помилкового спрацьовування), при цьому арбітраж виконується за допомогою самого ланцюжка. Викривачі (які виступають у ролі верифікаторів у своїй справі) перевірятимуть і згодом оскаржуватимуть роботу лише в тому випадку, якщо вони очікують отримати відповідну компенсацію. На практиці це означає, що викривачі повинні приєднуватися до мережі та виходити з неї залежно від кількості інших активних викривачів (тобто з реальними депозитами та викликами). Таким чином, очікувана стратегія за замовчуванням для будь-якого викривача полягає в тому, щоб приєднатися до мережі, коли інших викривачів стає менше, внести депозит, випадковим чином вибрати активне завдання та розпочати процес верифікації. Після одного завдання вони хапають інше випадкове активне завдання і повторюють, доки кількість інформаторів не перевищить визначений поріг виплат, після чого вони залишать мережу (або, що ймовірніше, переключаться на іншу роль у мережі — верифікатора чи розв'язувача — залежно від своїх апаратних можливостей), доки ситуація знову не зміниться.
Арбітраж договорів: Коли верифікатори викликають скарги від розкривачів секретів, вони вступають в процес з ланцюгом, щоб дізнатися місцезнаходження спірної операції або вводу, і в кінцевому підсумку ланцюг виконає останню основну операцію і вирішить, чи є обґрунтована скарга. Щоб зберегти чесність розкривачів секретів і подолати дилему верифікаторів, тут вводяться періодичні примусові помилки та виплати джекпоту.
Розрахунок: Під час процесу розрахунку учасникам сплачується на підставі висновків ймовірних та детермінованих перевірок. Різні сценарії оплати виникають в залежності від результатів попередніх перевірок та викликів. Якщо робота вважається виконаною правильно та всі перевірки пройшли успішно, як провайдери рішень, так і перевіряючі отримують винагороду за виконані операції.
Генсин розробив складну теоретико-ігрову систему на рівнях верифікації та стимулюючих рівнях, яка дозволяє швидко виявляти та виправляти помилки шляхом точного визначення розбіжностей у мережі. Однак у нинішній системі все ще не вистачає багатьох деталей. Наприклад, як встановити параметри, щоб винагороди та штрафи були обґрунтованими, не встановлюючи занадто високий поріг? Чи розглядали ви екстремальні сценарії та різну обчислювальну потужність розв'язувачів у теоретико-ігрових аспектах? Детального опису гетерогенного паралельного виконання в поточній версії whitepaper немає. Генсину ще належить пройти довгий шлях.
Together.ai - це компанія, що акцентує увагу на відкритих, децентралізованих рішеннях з обчислювальної штучної інтелекту для великих моделей. Вона має на меті забезпечити можливість доступу до ШІ будь-де. Суворо кажучи, Together не є проєктом блокчейну, але він попередньо вирішив проблеми з латентністю у децентралізованих мережах ШІ. Тому ця стаття аналізує лише рішення Together і не оцінює сам проєкт.
Як досягти навчання та інференції великих моделей, коли децентралізовані мережі у 100 разів повільніші за дата-центри?
Давайте уявимо розподіл GPU, що беруть участь в децентралізованій мережі. Ці пристрої будуть розподілені по різних континентах і містах, кожен з яких потребує підключення з різними затримками та пропускною здатністю. Як показано на малюнку нижче, симульований розподілений сценарій показує пристрої, розташовані в Північній Америці, Європі та Азії, з різними пропускними здатностями та затримками між ними. Що потрібно зробити, щоб ефективно поєднати їх між собою?
Розподілена модель обчислювального моделювання: На діаграмі нижче показано ситуацію тренування базової моделі на кількох пристроях, що включає три типи комунікації: Пряме активація, Зворотній градієнт та Бічна комунікація.
Поєднуючи пропускну здатність та затримку, потрібно враховувати дві форми паралельності: паралельність конвеєра та паралельність даних, що відповідають трьом типам зв'язку в багатопристроївному сценарії:
У паралельній обробці потоків всі шари моделі розділяються на кілька етапів, де кожен пристрій обробляє один етап, який є послідовністю підрядних шарів, таких як кілька блоків трансформатора. Під час прямого поширення активації передаються наступному етапу, а під час зворотного поширення градієнти активацій передаються назад на попередній етап.
У паралельному обробці даних пристрої незалежно обчислюють градієнти для різних мікро-партій, але потрібно синхронізувати ці градієнти через комунікацію.
Оптимізація планування:
У децентралізованому середовищі процес навчання часто обмежується комунікацією. Алгоритми планування, як правило, призначають завдання, які вимагають інтенсивної комунікації, пристроям з більш швидкими з'єднаннями. Враховуючи залежності між завданнями та різноманітність мережі, спочатку необхідно смоделювати вартість конкретних стратегій планування. Для того щоб зафіксувати складну комунікаційну вартість навчання базових моделей, Together пропонує нову формулювання та декомпозицію вартісної моделі на два рівні за допомогою теорії графів:
Теорія графів - це галузь математики, яка вивчає властивості та структури графів (мереж). Граф складається з вершин (вузлів) та ребер (ліній, що з'єднують вузли). Головна мета теорії графів - вивчення різних властивостей графів, таких як зв'язність, розфарбування, та характер шляхів та циклів у графах.
Перший рівень - це проблема балансового розбиття графа (розділення вершинного набору графа на кілька підмножин рівних або майже рівних розмірів з мінімізацією кількості ребер між підмножинами). У цьому розбитті кожна підмножина представляє собою розділ, а витрати на комунікацію зменшуються за рахунок мінімізації ребер між розділами, що відповідає витратам на комунікацію паралелізму даних.
Другий рівень включає у себе спільне вирішення проблеми відповідності графіків та проблеми комівояжера (комбінаторна оптимізаційна проблема, яка поєднує елементи відповідності графіків та проблеми комівояжера). Проблема відповідності графіків полягає у знаходженні збігу у графіку, що мінімізує або максимізує певні витрати. Проблема комівояжера полягає в пошуку найкоротшого шляху, який відвідає всі вузли в графіку, що відповідає витратам зв'язку паралелізму каналу.
Вищезазначена схема є схематичним зображенням процесу. У зв'язку зі складними обчисленнями, необхідними для фактичної реалізації, описаний у схемі процес спрощено для полегшення розуміння. Для докладної реалізації можна звернутися до документації на офіційному веб-сайті Together.
Припустимо, що існує набір пристроїв NN, DD, з невизначеними затримками зв'язку (матриця AA) і смугами пропускання (матриця BB), на основі набору пристроїв DD ми спочатку генеруємо збалансований розділ графа. Кожен розділ або група пристроїв містить приблизно однакову кількість пристроїв, і всі вони обробляють один і той же етап конвеєра. Це гарантує, що під час паралелізму даних кожна група пристроїв виконує однаковий обсяг роботи. Відповідно до затримок зв'язку та пропускної здатності формула може розрахувати «вартість» передачі даних між групами пристроїв. Кожна збалансована група об'єднується для створення повністю зв'язаного грубого графа, де кожен вузол представляє етап конвеєра, а ребра представляють вартість зв'язку між двома етапами. Щоб мінімізувати витрати на зв'язок, використовується алгоритм зіставлення, який визначає, які групи пристроїв повинні працювати разом.
Для подальшої оптимізації цю проблему також можна моделювати як проблему мандрівного торгівця з відкритою петлею (відкрита петля означає, що немає необхідності повертатися до початкової точки шляху), щоб знайти оптимальний шлях для передачі даних через всі пристрої. Нарешті, Together використовує інноваційний алгоритм планування для знаходження оптимальної стратегії розподілу для заданої моделі вартості, що дозволяє мінімізувати витрати на комунікацію та максимізувати пропускну здатність навчання. Згідно з тестами, навіть якщо мережа працює в 100 разів повільніше під час цієї оптимізації планування, пропускна здатність тренування з кінця в кінець лише приблизно в 1,7–2,3 рази повільніше.
Оптимізація стиснення комунікацій:
Для оптимізації стиснення зв'язку компанія Together ввела алгоритм AQ-SGD (детальний процес розрахунків див. у статті "Fine-tuning Language Models over Slow Networks using Activation Compression with Guarantees"). Алгоритм AQ-SGD — це нова техніка стиснення активації, призначена для вирішення проблем ефективності зв'язку під час паралельного навчання конвеєра через повільні мережі. На відміну від попередніх методів безпосереднього стиснення значень активації, AQ-SGD фокусується на стисненні змін значень активації однієї і тієї ж навчальної вибірки в різні періоди. Цей унікальний метод вводить цікаву динаміку «самовиконання», коли очікується, що продуктивність алгоритму поступово покращуватиметься в міру стабілізації навчання. Алгоритм AQ-SGD був ретельно теоретично проаналізований і довів, що має хорошу швидкість збіжності при певних технічних умовах і обмежених функціях квантування помилок. Алгоритм може бути ефективно реалізований без додавання додаткових накладних витрат на наскрізне виконання, хоча він вимагає використання більшої кількості пам'яті та SSD для зберігання значень активації. Завдяки масштабним експериментам з класифікації послідовностей і наборів даних мовного моделювання, було показано, що AQ-SGD стискає значення активації до 2-4 біт без шкоди для продуктивності збіжності. Крім того, AQ-SGD може бути інтегрований з найсучаснішими алгоритмами стиснення градієнтів для досягнення «наскрізного стиснення зв'язку», що означає, що обмін даними між усіма машинами, включаючи градієнти моделі, значення прямої активації та зворотні градієнти, стискаються до низької точності, тим самим значно підвищуючи ефективність зв'язку розподіленого навчання. У порівнянні з наскрізною продуктивністю навчання в централізованій обчислювальній мережі (наприклад, 10 Гбіт/с) без стиснення, вона в даний час лише на 31% повільніша. У поєднанні з даними про оптимізацію планування, хоча між централізованими обчислювальними мережами все ще існує певний розрив, є велика надія надолужити згаяне в майбутньому.
У дивідентний період, що настав за хвилею штучного інтелекту, ринок обчислювальної потужності AGI є безперечно найбільш потенційним та найбільш популярним серед різних ринків обчислювальної потужності. Однак найвищі складнощі розвитку, вимоги до апаратного забезпечення та капіталовкладення створюють виклики для цієї галузі. Поєднуючи два вищезазначених проекти, ми все ще далеко від запуску ринку обчислювальної потужності AGI. Реальна децентралізована мережа також набагато складніша, ніж ідеальний сценарій. Наразі недостатньо конкурентоспроможна порівняно з хмарними гігантами.
На момент написання я також спостерігав, що деякі невеликі проекти, які все ще знаходяться на початковому етапі (етап PPT), почали досліджувати нові точки входу, такі як акцент на менш складний етап інференції AGI, а не на етап навчання. Однак у довгостроковій перспективі значення децентралізації та систем без дозволу глибоке. Право на доступ та навчання розрахункової потужності AGI не повинно концентруватися в руках кількох централізованих гігантів. Людству не потрібна нова "теократія" або новий "папа", і не слід платити дорогі членські внески.