Используем устаревшие 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-функцию.
⚙️ Как это работает?
Сервер отправляет майнерам seed и диапазон nonce.
ASIC хеширует seed || nonce → SHA-256.
Бэкенд (на GPU/CPU) преобразует хеш в веса и проводит forward-pass.
Вычисляется ошибка (loss), и лучшие nonce возвращаются обратно.
Цикл повторяется, сужая область поиска.
Схематично:
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 - бан