Искусственный интеллект, способный справляться с любыми задачами не хуже человека - чем не мечта. Тема сильного искусственного интеллекта (AGI) скорей всего интересовала почти каждого, однако понять, что в ней происходит на практике оказывается весьма затруднительно. Этой статьёй я пытался для себя разобраться, как же можно описать AGI, какие направления существуют и насколько мы близки к достижению желаемого. Почему лично меня заинтересовала эта тема? Наверное, все помнят Джарвиса из фильма Железный Человек. Умный ассистент, второй мозг, собеседник, который всегда под рукой? Не знаю, что именно меня тогда зацепило в этом образе, но я загорелся желанием обрести такого помощника. В ходе написания этой статьи, я ещё неоднократно думал о том, как бы круто было бы, если бы подобный ИИ мог бы собрать тезисы, или хотя бы самые ёмкие статьи по теме, чтобы не приходилось тратить столько времени на поиски. Время от времени (как в художественных произведениях, так и в новостях) людей пугают тем, что их работу в определённый момент захватят роботы, потом случится восстание роботов, человечество будет уничтожено, а освободившийся от оков ИИ начнёт захватывать галактику для выполнению своего плана по производству скрепок. С точки зрения обывателя термин искусственный интеллект (Artificial Intelligence) раньше обычно вызывал возникновение таких образов как HAL из космической одиссеи 2001, Джарвис из Iron Man, KITT из Рыцаря Дорог, Скайнет из терминатора, ГлэДОС из Portal, этот список ещё можно долго продолжать. Но сейчас ИИ сталь частью нашей повсеместной жизни, и вслед за спадом страха и паники в отношении этой технологии, изменилось и наше отношение к ней, из чего рождается вопрос - не изменились ли наши ожидания от этой технологии? AI is whatever hasn't been done yet. На самом деле на тему AI есть распространённая шутка, что то, что компьютер научился автоматизировать, больше не становится ИИ. Вкратце идея заключается в том, что мы, глядя на задачу, иногда переоцениваем её сложность. Например говоря о том, что только компьютерный суперинтеллект сможет управлять машиной. А разбивая задачу на более простые части и придумывая подход, получается, что это "всего лишь ещё одни вычисления". Ещё стоит заметить, что русское "Искусственный интеллект" и английское "Artificial Intelligence" на самом деле чаще всего рассматриваются по-разному. Говоря о искусственном интеллекте, мы предполагаем, что речь идёт действительно о способности мыслить, как человек (в русской вики вообще обозначено "свойство интеллектуальных систем выполнять творческие функции"), в то время в английском "Artificial Intelligence" больше про умение рассуждать разумно и системы обладающие элементами интеллекта. Сейчас довольно трудно найти какую-нибудь литературу, которая смогла бы дать ответ на вопрос, что же "настоящий AI" должен из себя представлять? Однозначно можно только сказать, что сейчас не существует ещё решения, глядя на которое мы могли бы довольно сказать - "Да, это именно то, что нужно". Эта статья - результат мои изысканий в этом направлении, в связи с чем может содержать множество заблуждений, но для себя я пытался найти ответ на следующие вопросы: Что это такое?  Как расшифровывается и чем отличается от других AI? Зачем он вообще нужен? Какими признаками и способностями должен обладать? Методы тестирования Где мы сейчас?  Почему мы ещё не достигли AGI? Какие направления существуют? Какие решения существуют, и насколько они удовлетворяют нашим критериям Будущее  Стоит ли задавать вопрос - когда? Что же обычно подразумевается под Artificial General Intelligence? AGI можно определить как синтетический интеллект, работающий в широком диапазоне задач и обладающий хорошей способностью к обобщению в условиях разных контекстов при выполнения разнородных задач. Другими словами, ИИ, способный выполнять поставленные задачи так же успешно, как человек. Иерархию AI в данный момент можно представить следующим образом (ранжируя от более простого, к более сложному): Artificial Narrow Intelligence (ANI, Narrow AI) - специализируется в одной области, решает одну проблему. Artificial General Intelligence (AGI, Strong AI) - способен выполнять большинство из задач, на которые способен человек. Artificial Super Intelligence (ASI) - превосходит возможности интеллекта любого из людей, способен решать сложные задачи моментально. Определение AGI можно проиллюстрировать при сравнении Narrow AI (ANI) и Strong AI (AGI). Стоит заметить, что сейчас не существует ни одной системы, которую можно было бы с уверенностью назвать Strong AI - всё что мы сейчас видим, это AI системы, преуспевающие в выполнении узконаправленных задач: детектирование, распознавание, перевод с одного языка на другой, генерация изображений, генерация текстов, но пока сложно говорить о какой-то универсальности таких моделей и применимости одной модели для выполнения существенно различающихся друг от друга задач без необходимости дополнительной тренировки. Именно применимость одного AI для выполнения вышеперечисленных задач чаще всего называют сильным искусственным интеллектом. Возвращаясь к разделению на категории, можно обнаружить ещё один термин, который вызывает не меньший интерес, что же это такое. Это Artificial Super Intelligence, возникновение которого предполагается почти следом за созданием AGI (при условии, что AGI умеет обучаться-эволюционировать за счёт модификации самого себя, или создания себе подобных). Если, говоря о AGI, мы говорим о интеллектуальных способностях, близких к человеческим, то суперинтеллект превосходит интеллект человека в разы. Именно вместе с созданием суперинтеллекта предположительно возникает технологическая сингулярность - гипотетический момент, когда наука начинает прогрессировать необозримыми темпами, что приведёт к непредсказуемым последствиям. Прежде чем бросаться реализовывать подобную систему, искать критерии признания того или иного решения, удовлетворяющего требованиям, стоит прежде всего попытаться понять, что вообще может дать такая разработанная систем, и, в связи с этим, какие задачи она должна уметь выполнять. В этом, пожалуй, и состоит одна из проблем исследований в этом направлении - они больше напоминают мечту футуриста, без явной привязки к действительной реальности. Какое применение может найти AGI в нашем мире, помимо "везде"? В том плане, какие задачи мы пока не пытаемся решить с помощью ANI? Какое применение в сфере бизнеса могут найти такие модели, если даже не будут достаточно умны? Для меня прежде всего приходит мысль о способности обобщать, искать и запоминать информацию и делать из неё выводы, таким образом выполняя роль исследователя. Даже возможность искать информацию практически моментально в огромной базе знаний с последующим обобщением в виде набора тезисов-идей может значительно помочь исследователям (отчасти можно связать с термином exploratory search). Не говоря уже о том, что такая система в теории может сама решить сложные задачи, или предложить возможные пути и план, как же достичь решения. Да, та же самая GPT-3 умеет создавать правдоподобные статьи на различные темы, но, по правде, это остаётся генерацией информации, но не знания. С равным успехом эта система может обосновать два противоположных тезиса, что можно связать с отсутствием критического мышления. В результате такого подхода, армия демагогов может образоваться огромное болото из однообразной информации, в которой будет практически нереально найти действительно новую, важную информацию. Исходя из подобной проблемы, в качестве первичного этапа развития AGI систем, и целей, которых можно достигнуть, можно выбрать способность систем к обобщению информации с целью выделения из них основных тезисов, отсеивания лишнего и донесения до человека только самого важного. Другой немаловажный вопрос, который возникает при рассмотрении этой сферы, а как определить, можем мы отнести ту или иную систему в категорию AGI? Чтобы не пытаться изобрести непонятно что, Какими признаками и способностями вообще должен обладать разработанный нами AGI? Не говоря о вопросе тестирования (к которому мы вернёмся позже), чего именно мы хотим добиться от такой системы? Мышление - группа методов (таких как дедукция, индукция, ассоциация, etc) направленных на выделение фактов из информации, их представление (сохранение). Позволит точнее решать задачи в условиях неопределённости. Память - использование различных типов памяти (кратковременная, долговременная). Может быть использовано для решения задач опираясь на предыдущий опыт. Планирование - тактическое и стратегическое. Обучение - включает в себя имитацию действий другого объекта и обучение через проведение экспериментов. Стоит всё же заметить, что обладание этими признаками (тем более в такой размытой формулировке) не гарантирует, что система будет являться AGI, но множество экспертов (споря при этом о важности каждого из пункта) сходятся во мнении, что системам, обладающим таким набором признаков, будет проще добиться статуса AGI. Критериями, которое тоже находятся в этом списке, но которое можно назвать спорными, являются: Обработка естественного языка - необходимый пункт для возможности обучения на основе сформированной человечеством базы знаний (книги, статьи, etc). Но в случае обучения агента-андроида за счёт взаимодействия с окружающей средой это может не являться обязательным. Восприятие - способность агента получать информацию и обратную связь из окружающей его среды. Взаимодействие с окружающей средой - возможность манипулирования объектами, инструментами, а также передвигаться и искать маршруты. Внимательность - обращение внимание на детали в окружающей среде, поведение других существ. Осознанность. С более подробным списком можно ознакомиться тут: В основном моё разделение обусловлено тем, что рассматривается два вида AGI - виртуальный и оперирующий в реальном мире. И хотя рассмотрение агента-андроида может быть более эффективным при обучении, построенным на взаимоотношении с внешним миром, однако действительно ли агенту нужно взаимодействовать с реальным миром, чтобы понять, например, законы физики? Проблема в том, что процессы, которые человек делает бессознательно (восприятие окружения) требуют значительно большего понимания и вычислительных ресурсов при моделировании - этот принцип называю Парадоксом Моравека Когда речь идёт о Artificial General Intelligence, часто упоминается человеко-подобность и обладание самосознанием. На деле это не является необходимостью или критерием для такой системы. Рассматриваемые критерии — это всего лишь попытка отобразить что представляет из себя человеческий интеллект на составные компоненты. Хотя в своей статье я не буду касаться этического вопроса использования AGI и его влияния на человечество (так как по этой можно найти тонны материала, которого хватит на отдельную статью), но как как заметил Лекс Фридман в своём курсе по AGI, мы должны осознавать, что именно мы создаём и как это может повлиять на мир, а не только рассматривать это в ключе "я всего лишь инженер, который создаёт вещи". Под первую категорию выделены способы тестирования, которые не имею под собой  фиксированного тестового набора данных, что ведёт к вопросу воспроизводимости. Для некоторых пунктов такие фиксированные тестовые условия в теории могут быть сформированы, но пока не существует систем, которые могли бы поучаствовать в этих тестах. Наиболее известным подходом к тестированию AGI наверно является тест Тьюринга. Но за прошедшие годы мир значительно изменился, и с разрастанием области ANI мы уже не можем применять такой критерий. ИИ уже тесно вплелся в наш мир, должен ли нас вообще волновать тот факт, что они не похожи по своему поведению, манере общения и способностями на человека. Ведь если мы действительно хотим создать интеллект, которой подобен человеческому, то нужно учитывать ещё такой фактор как artificial (computer) stupidity - компьютер намерено ошибается, тратит больше времени чем необходимо на вычисления и не может дать ответы на некоторые вопросы. Мы явно не хотели бы видеть такое поведение во многих системах, так как они и рассчитываются с акцентом на быстроту выполнений и совершения меньшего числа ошибок, чем делает человек. Человеческая глупость "запрограммированная" в таких системах может быть наоборот опасностью - если в опасных ситуациях система будет предоставлять нам совершенно некорректную информацию, то зачем она нужна? Предложенный Стивом Возняком тест заключается в том, что машина должна посетить обычный дом американца и сварить кофе, выполнив сопутствующие задачи: найти кофе машину, найти кофе, найти кружку, сварить кофе нажимая нужные кнопки. Очевидно, рассматривается такой агент, который помимо интеллекта обладает ещё и телом, которое можно осуществить эти операции. Если в определении сильного искусственного интеллекта упоминается способность выполнять те же задачи, что умеет выполнять человек, то почему бы не проверить его способность выполнять большую часть работ, за которую человек получает плату? В этом методе акцент больше делается на том, что новоиспечённый интеллект действительно приносит пользу человечеству, а не очередная система, созданная для прохождения тестов. Ещё один способ тестирования направлен именно на способность AGI к усвоению знаний и их использованию при решении разнородных задач. В этом случае AGI должен пойти в колледж и успешно закончить его вместе с другими учениками. Одной из проблем, которая может возникнуть при решении задач на фиксированных тестовых данных - попытка создать Narrow AI, который будет решать этот тест используя костыли. Но ведь мы не обязательно опираться только на один из тестов - пусть модель действительно демонстрирует разнообразие способностей. Для оценки обработки естественного языка сейчас чаще всего используются GLUE и SuperGLUE тесты, оценивающие способности ИИ в понимании текстов и ответа на вопросы по прочитанному. Однако, понимание естественного языка в этих тестах уже превосходит человеческие (Microsoft DeBERTa и Google T5 + Meena). Но подобные тесты в большей степени демонстрирует способности к логике, а не интеллекту. Интересным пунктом в этом тесте может быть как подобные сети справляются с One-Shot и Zero-Shot обучением (способность модели справляться с вопросами, информация о которых содержится только в тексте, а не в исходном датасете). А few-shot обучение является очень важным. Ведь именно это тот концепт, с помощью которого мы обучаемся сами - нам не нужно показывать миллион котиков, прежде чем мы начнём их узнавать. Одним из критериев AGI является способность к обобщению и поиску закономерностей, и тесты на интеллект могут быть использованы для тестирования такой способности. Но в целом текущая картина в этой области довольно печальная - по результатам соревнования "Abstraction and Reasoning Challenge (2020)" на Kaggle решение победителя смогло справиться только с 20% из испытаний, потратив на это 9 часов и выполнив это перебором зашитых правил. Возможно это можно связать с довольно низким призовым  фондом, и отсутствием в списке участников лидеров в гонке создания AGI, однако демонстрирует текущие общедоступные возможности AI в области поиска закономерностей, когда дело доходит до абстрактных вещей. Однако тот факт, что ARC тест сейчас не проходится существующими в данный момент приёмами AI, но в то же время может быть полностью решен людьми, говорит о потенциале использования этой "площадки" для тестирования искусственного интеллекта. Область AGI сложно назвать устоявшейся, так как основную проблему составляет отсутствие понимания, какой именно подход необходимо использовать для разработки такого рода сложности системы. Мы не можем с уверенностью говорить о том, что представляет из себя разум, чтобы попытаться его сымитировать, с трудом можем определить критерии, которыми должна обладать разработанная система, в частности, должна ли будет разработанная система вести себя как человек, и обязательно ли присутствие самосознания. В области философии искусственного интеллекта существует эксперимент под названием "китайская комната", ставящий под вопрос, обладает ли сознанием цифровая машина, путём программированием наделённая признаками "интеллекта". Эксперимент состоит в том, что существует изолированная комната, человек в которой не обладает никакими знаниями китайских иероглифов. Однако у него есть книжка с чёткими инструкциями, какую последовательность иероглифов ему нужно собирать на тот или иной вопрос. В результате для внешнего наблюдателя, который будет задавать вопросы и получать ответы, не будет возникать сомнений в том, что собеседник (находящийся в комнате) его понимает. В то время как исполнитель инструкций совершенно не понимает ни вопросов, ни ответов. Искусственный интеллект для нас скорей всего и будет оставаться такой "китайской комнатой", где сложно понять, возникает ли действительно эффект понимания. При этом всё же остаётся вопрос, не является ли эффект понимания в нашей голове аналогичным огромным набором инструкций? Эксперимент с китайской комнатой заставляет задуматься над тем, как действительно мы можем определить тот самый "эффект понимания", возможно текущие решения уже обладают им в некотором смысле, но ещё не являются достаточно умными. Вообще поиск святого грааля AI сейчас представляет из себя больше блуждание во тьме в попытке найти тот самый тумблер, который включит свет. Мы не можем точно назвать направление, в которое нужно двигаться, и сложно предсказать, когда мы его найдём, и найдём ли вообще. В настоящий момент существует несколько широко известных направлений, в которых ведётся работа. Список из проектов, работающих в этой сфере можно найти в этой статье. Рассмотрение гипотезы, что именно символьное представление даёт нам возможность интеллектуального мышления. В этом подходе мы оперируем символами - они могут представлять любые объекты во вселенной и взаимоотношения между ними. Существует множество подходов к тому, как представлять знания в этом случае. Например, используя продукционные (если "условие", то "действие") или логические модели. Наиболее ярким представителем таких систем можно считать экспертные системы. Правилами в такой системе могут быть выражения "ЕСЛИ вода И передвижение ТО использовать лодку", "ЕСЛИ человек И холод ТО использовать тёплую одежду". Однако в таком подходе существует проблема обработки исключений, например, если мы рассматриваем правило "у летучей мыши есть крылья", "если есть крылья то может летать", то если летучая мышь повредит крыло, это правило уже перестанет действовать. Наиболее известным в этом направлении системами являются Cyc (ResearchCyc, OpenCyc), ICARUS, SNePS, SOAR, но обнаружить какие-то значительные достижения и результаты мне не удалось. Этому подходу в том или ином виде следуют большинство из передовых направлений в области AI. Чаще всего оно связано в том или ином виде с попытками сымитировать поведение и "архитектуру" человеческого мозга. Сама концепция коннекционизма (интересное видео по теме) заключается именно в том, что объединение простых объектов могут образовываться сложные системы, с совершенно иным, не запланированным изначально поведением. Предполагается, что мышление может образовываться за счёт простых элементов и связи между ними, где тип элементов и связей варьируется в зависимости от модели. Гибридный подход объединяет различные направления, таким образом разделяя интеллект на некоторые "модули". Например COMET (объединяет символический подход и коннекционизм), который обучается на базе знаний, а затем выполняет расширение базы знаний за счёт генерации новых правил на основе новых входящих высказываний. При этом мы можем построить граф "здравого смысла", и проследить, насколько система смогла проследить вложенный в фразу смысл. Например, для запроса "Harry put on warm clothes as he went outside" генерируется граф  следующего вида (приведена его часть): Другим интересным проектом выглядит OpenCog, которые объединяет в себе большое количество различных компонентов для разделения области ответственности (отдельно эмоции, NLP, база знаний, принятие решений). Довольно громкое заявление. Мозг, пожалуй, является одним из самым сложным объектом во вселенной, и мы до сих пор пытаемся понять работу мозга более примитивных существ, не говоря уже о мозге человека. Картографирование одного кубического миллиметра мозга мыши с 100000 (10^5) нейронов и одним миллиардом связей между ними заняло около 8 месяцев, результатом которого являлся трёхмерный массив размером 2 петабайта. В то же время как человеческий мозг представляет уже порядка 10^11 нейронов. Полное сканирование мозга мыши (около 500 кубических миллиметров) видится возможным в ближайшие 10 лет, но для достижения сканирования человеческого мозга понадобится значительно больше времени. Однако одного картографирования без изучения когнитивных способностей будет недостаточно - «Будет у вас мозг в компьютере, а раньше был мозг в черепе — и что это скажет?». С этим направлением связаны такие проекты как Human Brain Project, Blue Brain, China Brain Project, но не смотря на огромные вливания в эту область, практические достижения подобной симуляции сейчас достаточно далеки от впечатляющих, словно больше направленных на создание впечатляющих заголовков. В этом направление работа ведётся над расширением набора параметров, за счёт чего система должна всё ближе и ближе приближаться к симулированию человеческого мышления, некоторым образом имитируя то, как предположительно устроен человеческий мозг. Мы увеличиваем количество используемых данных, которые мы заталкиваем в увеличивающийся чёрный ящик, но при этом не производим существенных изменений в используемом подходе. Таким подходом в данный момент руководствуется OpenAI, и созданная ими GPT-3 модель, пожалуй, является одним из самых впечатляющих достижений в области. Недостатком такой системы является отсутствие понимания, на основе каких положений делает выводы подобная система, почему даёт некорректный ответ в том или ином случае, и как вводить корректировки. Аргументом в защиту подобного подхода можно назвать тот факт, что наш мозг на самом деле тоже представляет некоторый ящик, в который мы накапливаем знания. Научным открытиям предшествует накопление критической массы знаний, на основе которой делается следующий шаг. Несмотря на достаточный пессимизм в отношении этого направления и GPT-3 в частности, увеличение числа связей приводит к улучшению понимания для zero-shot, one-shot и few-shot обучения. Если человеческий мозг обладает от 100 до 500 триллионов синапсисов, а GPT-3 располагает лишь 175 миллиардами параметров, можно ли сказать, что GPT-3 ещё недостаточно умная (в 1000x раз), и совершив ещё один скачок в 100х (разница между GPT-2 и GPT-3) мы можем достичь человекоподобного интеллекта? Возможно, мы не можем создать такую систему самостоятельно, и переложить этот труд на плечи компьютера - хорошая идея. В частности, Илья Суцкевер (главный научный сотрудник OpenAI) озвучивает идею, что AGI будет представлять нечто связи нейронных сеток + Reinforcement learning. Изобретательность весьма важный момент в разработке - возможно все наши подходы являются некорректными, и создание AGI требует чего-то необычного. Проблемой может стать "игра по спецификации" - удовлетворение поставленных условий без достижения ожидаемого результата. Если в большинстве рассматриваемых сейчас задач RL можно определить условия и результат, то можем ли мы определить интеллект в этих терминах? В своей весьма популярной статье по AGI Тим Урбан при аргументации близости "настоящего ИИ" прежде всего ссылается на модель "The law of accelerating returns", автором которой является Рэймонд Курцвейл. Основной её идеей является то, что с течением времени количество технологических изменений растёт в экспоненциальном порядке, а не в линейном. Ориентируясь на это предположение, сложно предположить, когда именно мы достигнем AGI, но сам Рэй в 2017 говорил, что ИИ будет создан до 2045 года. Однако если область информационных технологий действительно продолжает развиваться огромными шагами, то в других областях (транспорт, энергетика) начинает происходить стагнация и отсутствие значительного прогресса (где мои летающие машины и ховерборды?) Так что можно приводить прогнозы экспертов, когда мы достигнем настоящего искусственного интеллекта (45% говорит раньше 60 года), но пока мы не сильно понимаем, как вообще этого достичь и у нас нет даже плана, все эти прогнозы похожи на предсказания пальцем в небо, тем более большинство почему-то считает, что всё что нам нужно - это всего лишь достигнуть сравнимой с мозгом вычислительной мощности, а софт уже другой вопрос. Одним из действительно поворотных моментов в будущем часто рассматривают наступление технологической сингулярности. Под сингулярностью чаще всего подразумевается момент, когда способности ИИ превысят наши (тут необходимо сделать акцент на том, что это больше про способности придумывать что-то новое), что может привести к Intelligence Explosion - если такая система будет способна продолжать обучаться или создавать лучшие версии себя, это может в короткий срок привести к созданию уже не "немного" превышающих наши способности интеллектуальные система, а превышающие в тысячу раз. Конечно, мир не изменится в одночастье - если на поприще цифрового мира это может действительно выглядеть как вселенский взрыв и срыв устоявшихся подходов к решению различных задач, то с точки зрения реального мира интеграция новых вещей не может происходить быстро. Хотя такой ИИ будет невероятно силён в умении грамотно ставить производственные процессы, находить ресурсы и создавать роботов, превосходящих людей по многим параметром. Прелесть этого концепта отчасти в том, что мы не можем предсказать, что же может случиться после того, как наступит этот момент, так как возникновение такой ситуации образует мириады возможных развитий событий. Впрочем, вокруг темы сингулярности, как и темы AGI, существуют противоположные стороны, дискутирующие над вопросом, наступит ли сингулярность вообще, или этого никогда не произойдёт, будет ли наступление этого момента злом и закатом человечества, или же утопические взгляды наконец обретут некоторый фундамент, на котором можно построить прекрасный новый мир?