Мы (человечество) очень хотим создать разум. Инопланетян мы пока не нашли, поэтому пытаемся собрать его сами из кремния и электричества. Но то, куда свернула индустрия сегодня, вызывает вопросы. Мы греем планету мегаваттами энергии, перемножая гигантские матрицы в дата-центрах, чтобы обучить LLM. Backpropagation и современный инференс - это непозволительно дорого и энергозатратно.
А что если вернуться к истокам? Что если интеллект — это не градиентный спуск, а кристаллизация связей под давлением информации?
В этой статье я расскажу о концепте Термодинамического Мозга. Это самоорганизующийся граф, который обучается в один проход O(1), непрерывно адаптируется к новым данным, спит по ночам, чтобы не сойти с ума, и настолько нетребователен к ресурсам, что его можно запустить хоть во вкладке браузера, хоть на Arduino.
Глобально — это направленный граф состояний. Обучение в нем происходит просто по мере «чтения» текста.
Например, мы читаем слово «т-е-к-с-т». Алгоритм переходит из узла «т» в узел «е», из «е» в «к» и так далее. Узлы — это состояния, а переходы между ними имеют Температуру.
Чем чаще мы переходим по конкретной связи, тем «горячее» она становится (энергия накапливается).
Когда связь перегревается (паттерн становится железобетонным), происходит Митоз — узел расширяется, вбирая в себя дополнительный контекст. Граф растет вглубь.
Время от времени мозг спит. Он спавнится в случайных узлах и начинает бродить по самым горячим переходам (ему снятся сны). Это нужно, чтобы находить зацикливания, принудительно их разбивать и забывать (удалять) связи, которые давно остыли.
Экологичность и локальность. Нам нужен ИИ, который не требует GPU-ферм. Этот мозг обучается прямо на лету, на устройстве пользователя. Он никогда не переобучается с нуля - он просто меняет топологию связей.
Управление роботами (Real-time). В робототехнике нам нужен инференс за микросекунды. В нашем графе поиск следующего действия — это O(1), просто переход по ссылке в памяти.
Агентность. Если на выходные (базовые) узлы графа повесить не буквы текста, а команды моторов (вперед, назад, захват), этот граф станет полностью агентным. Он сможет сам искать для себя датасеты, исследуя мир, избегать боли (остывание) и стремиться к цели (нагрев).
P.S. На данный момент архитектура идеально работает с детерминированными (точными) паттернами.
Давайте залезем под капот. В основе лежат четыре принципа.
Вместо того чтобы хранить вероятности, мы храним интенсивность опыта. Каждый переход по связи прибавляет ей +1 к температуре. Но каждую миллисекунду все связи в графе понемногу остывают. Горячая связь — это магистраль, достоверное правило. Холодная — шум или опечатка. Чтобы не пересчитывать весь граф каждый такт, мы используем «ленивое» вычисление температуры (обновляем её по формуле затухания только тогда, когда наступаем на связь).
Представьте базовый узел буквы «Т». После нее в тексте может идти всё что угодно: «а», «о», «р». Энтропия огромна.
Мы начинаем читать текст, и связь Т -> А раскаляется. Мозг понимает: этот паттерн слишком важен. Происходит Митоз.
Узел «А» отпочковывает от себя специалиста — узел «А, но только после Т». Теперь, когда алгоритм видит «Т», он прыгает не в общую свалку буквы «А», а в этот глубокий контекст. Если внутри него раскалится связь к «Р», появится узел «Р после ТА».
Граф не склеивает строки, он удлиняет пути, превращая стохастику в детерминированные рельсы.
Мозг, который помнит всё — болен. Во сне алгоритм бродит по своим нейронным путям. Если связь остыла ниже критического минимума, она безжалостно удаляется. Память освобождается для новых гипотез. Если во сне алгоритм находит бесконечный цикл (A -> B -> A -> B), он принудительно вызывает митоз, чтобы вырваться из логической петли.
Так как мы ограничены RAM, у графа есть инстинкт самосохранения. Если лимит связей (допустим, 50 миллионов) исчерпан, мозг начинает стрессовать: порог забывания резко растет, и он начинает удалять даже «теплые» связи, жертвуя маловажным ради сохранения фундаментального опыта.
Написать это на ООП (new Node()) было ошибкой - браузерный Garbage Collector умирал на первом миллионе объектов. Пришлось переписать ядро на жесткий Data-Oriented Design (DOD).
Весь граф теперь - это несколько гигантских плоских бинарных массивов. Связи реализованы как связные списки внутри монолитного пула памяти. Результат? Браузер легко держит десятки миллионов узлов, поглощая текст на скорости тысяч символов в секунду без единого лага.
https://schoolscience.org/tbrain/ - попробовать термодинамический мозг можно здесь
код - https://github.com/mozg4D/t-brin/tree/main
*В данный момент работает на процессоре на одном потоке, рекомендую загружать датасеты до 1 гб. Это proof of concept - он очень глупый
|
Параметр |
Современные LLM (Transformers) |
Термодинамический Мозг |
|
Сложность обучения |
O(N^2) и выше (эпохи, градиенты) |
O(1) обучение в один проход «на лету» |
|
Инференс |
Тяжелые вычисления (матрицы) |
Прямой переход по ссылке в памяти |
|
Железо |
Кластеры NVIDIA H100 / A100 |
Браузер, смартфон, Arduino |
|
Дообучение |
Дорогое Fine-tuning / RAG |
Постоянное, бесшовное «поедание» текста |
|
Прозрачность |
«Черный ящик» с весами |
Визуальный граф горячих/холодных связей |
|
Память |
Статическое контекстное окно |
Динамический «митоз» (глубина не ограничена) |
|
Экология |
Греет планету мегаваттами |
Спит по ночам, потребляет копейки |
Зачем я это пишу?
Я — всего лишь один человек. У меня есть основная работа, проекты, и лишь иногда я могу отвлечься «по фану» на проектирование мозгов для терминатора. А вас - много) Так что читайте, забирайте код, ломайте его, критикуйте и развивайте.
Мне кажется, что если мы хотим получить настоящий AGI или хотя бы автономных роботов, способных учиться на ходу, нам нужно перестать греть планету видеокартами и поискать более элегантные, «биологические» пути вычисления смыслов.
Чуть ранее я создал Neural Autocomplete
Это сверхлегкая «нейросеть», написанная с нуля на чистом JS, которая генерирует текст прямо в браузере.
https://schoolscience.org/nn/
Да, сейчас это все еще «статистический попугай». Хеш-таблицы, как и графы, по своей природе детерминированы — они ищут точное совпадение. Чтобы выйти за рамки «тупого Т9» и получить гибкость настоящей нейросети, нужно добавить LSH (Locality Sensitive Hashing).
Моя гипотеза: любую современную нейросеть можно выразить через вложенные многомерные хеш-таблицы и LSH.
Источник


