14

Используем устаревшие ASIC-майнеры для обучения нейросетей: революционный подход через SHA-256


🔧 Используем устаревшие ASIC-майнеры для обучения нейросетей: революционный подход через SHA-256


🧠 Проблема: обучение нейросетей — слишком дорого

Глубокие модели, такие как GPT и Stable Diffusion, требуют миллионов долларов на обучение. Гигантские кластеры GPU жрут электричество, греют воздух и сжигают бюджеты. А что если я скажу, что миллионы готовых вычислительных устройств — уже лежат пылью в гаражах, фермах и дата-центрах?

Речь о ASIC-майнерах, оптимизированных под SHA-256. Например, Antminer S9 или Whatsminer M30S — они умеют только хешировать, но делают это с терахешной скоростью при умеренном энергопотреблении. Почему бы не использовать их для подбора весов нейросети?


💡 Идея: подбираем веса через поиск nonce

Поскольку ASIC не умеют в матрицы и градиенты, мы переворачиваем парадигму: веса нейросети задаются как хеши от seed + nonce, а обучение сводится к их поиску.

Каждый слой сети определим так:

Wl=φ(SHA256(seed∣∣nonce))W_l = φ(SHA256(seed || nonce))

  • seed — константа, уникальная для слоя;

  • nonce — искомое значение, которое подбирает ASIC;

  • φ — преобразование хеша в тензор весов (например, 32 байта → 8 float32 значений).

Такой подход превращает обучение в задачу поиска хороших nonce, при которых сеть минимизирует loss-функцию.


⚙️ Как это работает?

  1. Сервер отправляет майнерам seed и диапазон nonce.

  2. ASIC хеширует seed || nonce → SHA-256.

  3. Бэкенд (на GPU/CPU) преобразует хеш в веса и проводит forward-pass.

  4. Вычисляется ошибка (loss), и лучшие nonce возвращаются обратно.

  5. Цикл повторяется, сужая область поиска.

Схематично:

Seed → [ASIC: SHA-256] → Weights → [GPU: Inference] → Loss → Feedback


🔌 Железо: работаем с тем, что было

Модель Хешрейт (TH/s) Потребление (Вт) Antminer S9 14 1350 Antminer S19 Pro 110 3250 Whatsminer M30S++ 112 3472

Даже старые модели вроде S9 могут выдавать миллионы хешей в секунду. Это примерно 1 млн уникальных попыток весов каждую секунду — абсолютно бесплатно, если устройство уже есть.


🛠️ Стек: как всё соединить

  • Контроллер: модифицированный CGMiner или BFGminer, принимающий задания через API.

  • Бэкенд: Python (Flask или gRPC), который управляет заданием, оценивает модели и логирует результаты.

  • Хранилище: Redis для кеша nonce, HDF5 или Parquet для логов весов и метрик.

Пример API-запроса:

curl -X POST http://localhost:5000/job \ -d '{"seed": "conv1_layer", "nonce_range": [0, 1000000]}'


🚀 Производительность

На примере сети с 100 млн параметров (ResNet, LSTM, Transformer):

  • Один SHA-256 хеш → 8 float32 весов.

  • Нужно ~12.5 млн хешей для генерации одного слоя.

  • Antminer S19 Pro делает 110 * 10⁶ хешей/с → один слой — за ~0.1 сек.

Даже без backpropagation, поиск весов работает удивительно быстро.


🤔 Что с точностью?

Конечно, нет градиентов — значит, классическое обучение невозможно. Но:

  • Мы можем использовать RLHF (подкрепление + human feedback);

  • Применить эволюционные алгоритмы (selection + mutation);

  • Использовать легковесные модели (MobileNet вместо ResNet50).

Если принять парадигму "модель как найденный артефакт", а не как результат градиентного спуска — подход вполне реален.


📉 Ограничения и обходы

Проблема Решение Нет backpropagation Эволюция, RL, поиск Мало битов → грубые веса Квантование + агрегирование Медленно для глубоких сетей Обучение только отдельных слоёв GPU всё ещё нужен Только для оценки (в разы дешевле)


🌍 Потенциал и будущее

Представьте: миллионы старых ASIC-майнеров по миру запускаются повторно — не ради бесполезного "proof-of-work", а ради обучения ИИ. Один S9 сегодня стоит $20–30 — дешевле, чем кулер для GPU. Вместо того чтобы выкидывать их, мы можем строить:

  • Децентрализованные обучающие фермы;

  • Proof-of-training в блокчейне;

  • Параллельные эксперименты без дорогостоящего оборудования.


📦 Open Source и примеры

🔗 GitHub (WIP): Прототип контроллера + backend на Python
📊 Бенчмарки: Сравнение с GPU (NVIDIA 3060, A100)
📃 Whitepaper: Теория сходимости + метрики


🙋 Кто заинтересуется?

  • Хакеры и энтузиасты старого железа

  • Дата-центры с простаивающими ASIC

  • Исследователи альтернативных методов обучения

  • Блокчейн-проекты, желающие перейти от PoW к PoT (Proof of Training)


Заключение

Это не просто способ оживить старое железо — это попытка пересмотреть саму парадигму обучения. В мире, где всё автоматизируется и централизуется, почему бы не вернуть вычисления обратно — в гаражи, на балконы и на отработавшие фермы?

Если вас вдохновила идея — подпишитесь и давайте делать обучение доступным снова.

Искусственный интеллект

4.5K поста11.3K подписчиков

Правила сообщества

ВНИМАНИЕ! В сообществе запрещена публикация генеративного контента без детального описания промтов и процесса получения публикуемого результата.


Разрешено:


- Делиться вопросами, мыслями, гипотезами, юмором на эту тему.

- Делиться статьями, понятными большинству аудитории Пикабу.

- Делиться опытом создания моделей машинного обучения.

- Рассказывать, как работает та или иная фиговина в анализе данных.

- Век жить, век учиться.


Запрещено:


I) Невостребованный контент

  I.1) Создавать контент, сложный для понимания. Такие посты уйдут в минуса лишь потому, что большинству неинтересно пробрасывать градиенты в каждом тензоре реккурентной сетки с AdaGrad оптимизатором.

  I.2) Создавать контент на "олбанском языке" / нарочно игнорируя правила РЯ даже в шутку. Это ведет к нечитаемости контента.

  I.3) Добавлять посты, которые содержат лишь генеративный контент или нейросетевой Арт без какой-то дополнительной полезной или интересной информации по теме, без промтов или описания методик создания и т.д.


II) Нетематический контент

  II.1) Создавать контент, несвязанный с Data Science, математикой, программированием.

  II.2) Создавать контент, входящий в противоречие существующей базе теорем математики. Например, "Земля плоская" или "Любое действительное число представимо в виде дроби двух целых".

  II.3) Создавать контент, входящий в противоречие с правилами Пикабу.


III) Непотребный контент

  III.1) Эротика, порнография (даже с NSFW).

  III.2) Жесть.


За нарушение I - предупреждение

За нарушение II - предупреждение и перемещение поста в общую ленту

За нарушение III - бан