Итак, вам надоели разработчики LLM-систем, потребляющие десятки миллиардов долларов и создающие прожорливых монстров, требующих немыслимых Гигаватт электроэнергии и вы решили, что пора взять всё в свои руки и наконец разработать уже AGI о котором так много говорят, но мало делают. Но вы не знаете с чего начать и у вас нет знакомых китайцев из DeepSeek? Тогда это краткое пособие для вас. В нем, мы затронем базовые аспекты создания AGI, которые позволят любому начинающему разработчику погрузиться в тему и в свободное время создать своего личного «Джарвиса».

Структура пособия:

1. Представление информации

2. Требования к модели

3. Архитектура модели

1. Представление информации

Начнем конечно с самой основы - представления информации. Для интеллекта информация первична. Она его формирует и он ее формирует. Кстати, сразу первое простое домашнее задание: что было первым, информация или интеллект? Ответы пишите в комментариях.

В больших языковых моделях(LLM) базовой единицей представления информации является токен. Если говорить простым языком, то это минимальная единица информации, обладающая семантическим смыслом(слово и часть слова). Углубляться в вопросы токенизации мы с вами не будем, потому что — это костыль, а настоящий AGI в костылях не нуждается. Токенизации давно пора занять свое почетное место рядом с дискетами.

Система сама должна находить естественные границы в потоке данных. Это как разделить апельсин - можно порезать его на равные математически выверенные дольки кухонным ножом (токены), а можно просто раскрыть его по естественным границам. Как вы предпочитаете?

Первичная информация имеет континуальную, т. е. непрерывную природу и методы предобработки, вынесенные за пределы модели, вроде токенизации, могут вносить искажения, терять важную контекстуальную часть информации, дискретизируя ее. А значит мы работаем только с первичной информацией: символьный/байтовый поток наше все. Но поскольку для разных источников (например видео, изображение и звук) мерность отличается, то сразу подумайте об адаптерах, при этом не забывая, что адаптер — часть модели и также обучается вместе с ней.

2. Требования к модели

Выделим основные требования к модели:

2.1. Динамичность. Классические модели ИИ, реализованные на базе искусственных нейронных сетей (ИНС), являются статическими, после обучения их веса фиксируются и любые изменения требуют переобучения или дообучения модели. Конечно эта проблема очень явная и ее пытаются решать, используя, к примеру, методы онлайн-обучения, но это не решает других проблем данной модели. Например, для ИНС актуальна проблема катастрофического забывания в ситуации, когда мы работаем с потоковыми данными, когда распределение в этих данных динамически изменяется. В стандартной архитектуре ИНС нет механизмов, защищающих определенные веса и отмечающих их важность — модель обновляется полностью и старые данные «забываются». Это можно сравнить с памятью студента после сданного экзамена. Да, есть конечно дополнительные надстройки вроде Elastic Weight Consolidation или Synaptic Intelligence, задача которых защищать важные веса, но в совокупности с фиксированной начальной структурой ИНС - это создает определенный барьер ёмкости модели, когда веса модели будут исчерпаны и она утратит способность адекватно воспринимать новые данные. Т.е. работая с ИНС все время не оставляет ощущение, что они похожи на Приору — вроде ездит, но постоянно необходимо что-то доделывать, прикручивать, улучшать.

Настоящий AGI должен обучаться постоянно в режиме реального времени, не иметь никаких ограничений по размеру модели и это должно быть его архитектурной особенностью, а не надстройкой, пытающейся устранить архитектурные недостатки.

Проще говоря, AGI должен быть как сорока, которая тащит в гнездо всё блестящее, а не как голубь, забывающий, зачем прилетел на подоконник. Его архитектура должна позволять наращивать “мозги” на ходу — без перезагрузки и криков «ой, всё сломалось!».

2.2. Гибкая структура. Опять же, возвращаясь к существующим моделям — их структура статична и закладывается до обучения, а не в процессе. Т.е. не поступающие данные формируют структуру модели, а данные пытаются запихнуть в жестко заданную структуру. Какие при этом могут происходить искажения, даже думать не хочется. Но разработчики упорно продолжают оптимизировать гиперпараметры, натягивая сову на глобус и меряются тем у кого она меньше порвалась.

Именно данные, информация, должны определять структуру модели, а не наоборот. В живом мозге изучение новой информации, получение опыта, активирует процессы нейрогенеза, формирует новые связи. Только так должно быть в настоящем AGI.

2.3. Комбинирование вероятностно-статистических методов LLM с эмерджентными символическими системами, способными работать с логикой, знаниями, фактами и причинно-следственными связями. Именно статистическим характером LLM систем обусловлена их совершенно ненадежная работа с фактами. Каждый факт нужно многократно дублировать в обучающих выборках, чтобы он с некой вероятностью(!) усвоился. Отсюда потребность строить очередные костыли в виде RAG-систем для работы с фактографической информацией. Иначе LLM просто безбожно врут.

Вероятностно-статистические методы отлично позволяют уловить взаимосвязи, построить модель мира и это их сильная сторона, которую нужно использовать при создании AGI.

Эмерджентные символические системы формируются за счет выделения системой устойчивых паттернов и отношений в данных через механизмы ассоциации и кластеризации. Система формирует собственные "символы" как абстракции высокого уровня, обнаруживает причинно-следственные связи через повторяющиеся последовательности событий, оценивает их значимость и отражает их в модели.

2.4. Мультимодальность. Система AGI должна универсально работать с любыми источниками информации — текстом, звуком, изображением и т. д. Но поскольку мы определились, что она работает с символьным/байтовым потоком через специализированные адаптеры, то это требование автоматически выполняется. У разных источников информации отличаться будет только размерность о которой мы говорили в первом разделе про представление информации.

Обязательно в процессе разработки поэкспериментируйте с 4D-данными — представьте, что ваш AGI учится на видео так же легко, как дрессируется кошка на сосисках. А 5D? Ну, это уже для тех, кто мечтает, чтобы ИИ понял, почему вы плачете в конце “Интерстеллара”.

3. Архитектура модели

Следующий шаг вашей разработки — выбор архитектуры модели. Исходя из требований, сформулированных ранее однозначно можно определить, что архитектура искусственных нейронных сетей нам категорически не подходит и нужно ее отправить куда? Правильно, туда, куда ранее мы отправили токенизацию.

А поскольку единственный реально работающий прототип, реализующий принципы AGI это биологический мозг, то верным решением будет пойти по пути копирования механизмов его работы, обратившись к достижениям нейробиологии и когнитивной психологии.

3.1. Ядро системы

Начнем к самого важного момента, каким образом, в виде какой модели реализовать все озвученные ранее требования? Идеальным кандидатом на эту роль являются иерархические графы, хотя вы можете попробовать и свои варианты в ходе разработки.

Графовая модель представления подразумевает гибкость и динамичность модели, является универсальной в представлении данных и знаний. Иерархическая структура идеально подходит для модели предсказательного кодирования (об этом позже).

В графе обязательно нужно предусмотреть механизм активаций и их затухания, по аналоги с нейронами биологического мозга, когда поступающие сенсорные данные активируют соответствующие паттерны по всей иерархии модели, формируя отражение воспринимаемой реальности на всех уровнях. Данный механизм позволит устанавливать ассоциативные связи (см. Хеббовское обучение).

3.2. Восприятие и обучение

Задача восприятия и обучения нашей системы сводится к трем основным элементам:

Формирование узлов и связей

Задача восприятия — получать первичную информацию, преобразовывать ее в активации существующих паттернов, либо, в случае отсутствия таких паттернов, за счет алгоритмов (статистический анализ, кластеризация, Хеббовское обучение) абстрагировать их, находить ассоциации и взаимосвязи. Все это в соответствии с концепцией микрогенеза восприятия, основы которой были заложены еще аж в конце 19 века. И, между прочим, российским ученым-психологом Николаем Ланге!

Настройка параметров

Задача по настройке параметров модели в основном ложится на плечи теории предсказательного кодирования. По исследованиям нейробиологов и когнитивных психологов она является основным кандидатом для описания процессов обучения в мозге.
В чем именно она заключается? По сути, каждый момент времени мозг прогнозирует состояние среды в которой находится и свое внутреннее на каждом уровне восприятия, а затем сравнивает прогноз с реальностью и на основе ошибки прогноза вносит изменения в модель. Т.е. данная теория предполагает иерархическое устройство восприятия.

Кроме того, передача информации в такой системе — двунаправленная. Снизу вверх поступает сенсорная информация, абстрагируемая на верхних уровнях, а сверху вниз — прогнозы, которые сравниваются с реальными сенсорными сигналами на входе для определения ошибок прогнозирования и адаптации внутренней модели мира на их основе.

Эта модель, кстати, очень хорошо объясняет тот факт, почему человека привлекает все необычное — все, что не попадает в прогноз мозга, в его ожидание, вызывает повышенное внимание, желание изучить. При высокой ошибке прогнозирования включается механизм любопытства. Этим эффектом пользуются, например фотографы, которые используют необычные ракурсы. Мы видим вроде что-то привычное, но под непривычным углом и это притягивает внимание. А какие еще проявления этого эффекта вы замечали? Напишите в комментариях.

Прошивка «мировоззрения»

И, пожалуй ключевым моментом в обучении системы является необходимость ручного «программирования» структур графа для формирования базовой прошивки, если хотите BIOSа системы. Все живые организмы имеют такую прошивку в виде безусловных рефлексов, реакций, направленных на выживание конкретной особи и вида. Этот набор является основополагающим для формирования картины мира данной особи, т.к. вся поступающая информация, весь опыт, проходит через призму этих базовых установок. Они являются основой осознания, проводящей границу между «я» и окружающим миром, а также определяют динамику существования. Но в живых организмах эта прошивка определяется генетической информацией, а наш AGI этого лишен, поэтому потребуется ручное вмешательство.

Так как сформировать эту структуру? Для этого вы можете разделить процесс обучения на 2 этапа: пассивный и активный. На пассивном этапе системе предоставляется информация и она автоматически формирует на ее базе нейтральную, беспристрастную картину мира. После того, как основные параметры сформированы, на вход системы подаются «программирующие» установки, например «я люблю своего создателя», фиксируются соответствующие активации паттернов, их веса усиливаются и замораживаются, либо, как вариант, создается на этой базе новый паттерн, более высокой иерархии и также фиксируется от изменений. Конечно это сильно упрощенный пример, но главное, чтобы вы поняли суть. Таким образом, можно задать необходимый набор установок, который жестко прошит в системе и который она будет соблюдать. После этого запускается активный этап обучения, когда система может взаимодействовать с окружающим миром и получать опыт исходя из заданных ей установок.

Обязательно поэкспериментируйте с разным набором базовых установок и понаблюдайте за различиями в развитии системы. Но обязательно помните, что перед тем как запустить свой AGI, вы должны убедиться, что можете дотянуться до кнопки выключения, либо предусмотрите автоматический механизм отключения, если вы определенное время не выходите на связь. Тем самым вы можете спасти мир.

3.3. Взаимодействие с окружением

Кроме восприятия, настоящая система AGI должна иметь инструменты взаимодействия с окружающей средой для получения обратной связи и реализации своих целей и задач.

Если помните, сенсорные механизмы у нас реализованы с помощью однонаправленных адаптеров, передающих информацию от источника в модель. Взаимодействие с внешней средой мы можем также реализовать с помощью однонаправленных адаптеров, но направленных вовне, передающих команды к исполнительным механизмам. Замыкание контура обратной связи происходит через внешнюю среду и система получает через сенсорные механизмы результаты своих действий, обучаясь на них.

Заключение

На этом наше краткое пособие по созданию персонального AGI можно считать завершенным. Конечно, как многие могли заметить, оно не является полным и исчерпывающим, потому что является кратким ) Многие моменты вам придется изучить самостоятельно в процессе разработки. Некоторые важные моменты, с которыми вы обязательно столкнетесь при разработке были сознательно опущены, чтобы оставить вам простор для творчества. Иначе процесс станет такой же скучной рутиной, как «рисование» картин по номерам. От себя хочу пожелать вам успеха в этом начинании и помнить, что ничто не является догмой, даже это пособие ) Его задача исключительно в том, чтобы дать альтернативный взгляд на привычные вещи. И разумеется вы всегда можете найти свои, более лучшие, эффективные решения и, например, переизобрести ИНС с новыми качествами.

С наилучшими пожеланиями!

Комментарии (2)


  1. Devastor87
    30.01.2025 08:26

    данные, информация, должны определять структуру модели, а не наоборот.

    Золотые слова!


  1. ioleynikov
    30.01.2025 08:26

    Вашими устами бы да мед пить :-) Что конкретно вы предлагаете ? Небольшая подсказка: алгоритм , сопоставления с образцом для продукционных систем Rete строит граф, узлам которого соответствуют правила вывода. Кроме того Вы забыли упомянуть важный механизм обучения с подкреплением (reinforcement learning). Очевидно, что его можно применить к графам.

    Удачи !