Привет, я токсичный программист в области машинного обучения (МЛ), и у меня есть идея создать проект, посвящённый разработке сильного искусственного интеллекта (далее — СИИ (или же AGI)). В небольшом блоге я буду делиться с вами своим опытом в создании чат-бота, который будет обладать СИИ, ну или хотя бы казаться таким.
Научную работу не гарантирую, но буду делится своими мыслями и успехами.
В конце публикации я приведу ссылки на источники, которые использовал в своих рассуждениях, и постараюсь объяснить, почему выбрал именно этот подход.
Добро пожаловать в мир отсутствия конкретики и логики
СИИ – алгоритм, который умеет решать сложные задачи используя знания об окружающем мире, и используя их как человек.
Что это значит? Например, есть голосовой помощник, который хорошо научился говорить, но дать ему тело и попросить убраться, для него это станет сложной задачей. Основная проблема таких повторюшек, это отсутствие логического мышления. СИИ это алгоритм, который может САМ обучаться, САМ рассуждать, САМ думать.
То есть, СИИ – это алгоритм, который ведёт себя как человек. Не имитирует, а именно, что ведёт. Поведения человека для машины не является формальной задачей, поэтому реализовать это будет невозможно, но мы тут для того, чтобы всё исправить.
Избиение модели на функции
Как и любой другой большой проект, нужно его разбить на функциональные блоки. Наш случай особенный, мы разобьём модель на 7 социальных модулей, почти как у GLaDOS в portal, только там модули отвечали за эмоции, а у нас за функции:
Модуль "Обучения"
Модуль "Воображения/образа/мысли"
Модуль "Памяти"
Модуль "Самосознания"
Модуль "Размышления"
Модуль "Образ цели"
Модуль "Действия"
Блок "Обучения"
В этой статье разберём первый модуль.
Обучение – это процесс построения новых взаимосвязей между воспринимаемыми образами и образами, которые уже есть в памяти.
Не хочу изобретать велосипед и пойду по стопам Алана Тьюринга, представим нашу модель как ребёнка и будем её обучать такими же методами.
Например:
Чем чаще ребёнок слышит одно и тоже, тем быстрее он это запоминает. Это избыток информации. Обычная LLM (БЯМ - большая языковая модель (GPT4)) модель обучается на специальных размеченных данных (датасет), которые весят несколько терабайтов. Для этого они использую глубокое обучение, что и я предлагаю использовать. Мы сможем скармливать модели не только специальные датасеты, но и обучать модель в моменте, и так при общение она будет обучаться. Мы сами ребёнку, будем рассказывать что, как и где есть.
Чем больше у ребёнка будет разных источников информации, тем эффективнее будет его обучение. Я предлагаю использовать обучение сразу в коллективе, если у модели будет сразу же несколько "учителей" это будет лучше, чем один.
С первой попытки у ребёнка не получится воспроизвести информацию правильно, и он будет пытаться снова и снова воспроизвести её, пока не получит правильный результат. Ребёнку нужно взаимодействовать с внешним миром для обучения. Это метод проб и ошибок. Для обучения модели нужно использовать систему вознаграждений. За каждый правильный ответ мы награждаем машину баллами, условными единицами, за ошибку, мы ее наказывает отнимая баллы.
Ребёнок будет стремится быть похожим на окружающих. Он будет учиться у них. Так строится личность. Будем откровенны, допускать модель в интернет сразу - чревато, опыт Тау я не очень хочу повторять (но было бы весело), у нас есть возможность допустить его в группы, где он может наблюдать и сразу же обучаться. Плюс можно дать возможность модели воспринимать видео, картинки и другие типы файлов.
Используя данные методы вытекает две основные проблемы:
Дезинформация
Безопасность ИИ (система оценивания)
К этим проблемам мы обязательно вернемся, но ближе к делу.
Обучение невозможно без обратной связи
У модели есть основной мотив – решить проблему, справляться с трудностью, поступающей из вне. Её задача распознать образы, которые поступают в виде запроса, создать целостный образ, используя избыточную информацию, находящуюся в интернете. Для этого нам нужно добиться самообучения, модель должна сама ставить цели обучения и чтобы этого достичь нужны критерии обучения:
Академическая успеваемость. Нет, мы не будем ставить оценки нашему боту, эта статическая задачка, которая сравнивает совпадение реальных и запланированных результатов нашего обучения.
Обучаемость. Будем наблюдать как наша модель усваивает информацию.
Обученность. Система знаний, умений и навыков.
Качество знаний. Оценивается по таким показателям, как полнота, системность, глубина, действенность, прочность.
Перед запросом память машины чиста и поэтому ей необходимо понять смысл промпта (промт - запрос), найти сложные корреляции (взаимосвязь между разными показателями) и мотиваторы. Сформировать избыточное информационное поле для того, чтобы иметь возможность размышлять (создавать новые информационные цепочки).
Создать обратную связь с моделью можно следующим образом: пользователь может скорректировать «точку начала рассуждения» и выбрать направление формирования ответа (размышления) в рамках сформированного инфополя. Модель демонстрирует результат размышления пользователю и ждет коррекционное уточняющее слово (мотиватор).
В качестве инфопотока может выступать любой поток данных: текст, видео, картинка и пр. Алгоритм способен находить корреляции и выстраивать упорядоченные данные как в хронологии, так и без нее. Использование текстовых данных позволяет достаточно просто получить инфопоток и наглядно продемонстрировать результаты работы алгоритма.
Вся полученная информация в модели будет хранится в виде двоичного кода и работать с двоичным кодом куда проще как нам, так и модели.
Заключение
Создание СИИ сложная и невозможная для решения задача на данный момент. Создавая этот девблог я хочу поделится своими идеями и найти feedback. Если объединиться, можно создать не просто очередной инструмент на базе ИИ, а что то больше (и оно необязательно должно нас убить).
В этой статье я предложил теоретический подход к обучению модели и как это можно воссоздать. Я надеюсь это кому то поможет
Вот мой тг канал, там я рассказываю про проект и не только
А это список литературы который я использовал. Он будет постоянно обновляться.