Летом 1956 года в Дартмутском колледже в Нью-Гэмпшире собралась небольшая, но весьма интересная группа: Клод Шеннон, родоначальник теории информации, и Герберт Саймон, единственный в истории человек, получивший Нобелевскую премию по экономике, присуждаемую Шведской королевской академией наук, и самую престижную ИТ-премию - премию Тьюринга, присуждаемую Ассоциацией вычислительной техники. Их собрал молодой исследователь Джон Маккарти, который хотел обсудить, "как заставить машины использовать язык, формировать абстракции и понятия" и "решать проблемы, которые сейчас доступны только человеку". Это была первая встреча ученых, посвященная тому, что Маккарти назвал "искусственным интеллектом". И она задала некий шаблон для последующих 60 с лишним лет, в течение которых в этой области не было достигнуто никаких успехов, соответствующих заявленным амбициям.
В серии The Economist, посвященной искусственному интеллекту вышли также статьи "Компании, занимающиеся разработкой искусственного интеллекта, скоро исчерпают большую часть данных в Интернете" и "Гонка за контроль над глобальной цепочкой поставок чипов ИИ продолжается"
Встреча в Дартмуте не стала началом научного поиска алгоритмов и машин, способных мыслить как люди. Алан Тьюринг, в честь которого названа премия Тьюринга, задумывался об этом; то же самое делал и Джон фон Нейман, вдохновивший Маккарти. К 1956 году уже существовало несколько подходов к решению этой проблемы. Историки считают, что одной из причин, по которой Маккарти ввел для своего проекта термин "искусственный интеллект", позднее - "AI", было то, что этот термин был достаточно широким, чтобы охватить все известные подходы, оставляя открытым вопрос о том, какой из них может оказаться лучшим. Некоторые исследователи отдавали предпочтение системам, основанным на сочетании фактов о мире с аксиомами геометрии и символической логики, чтобы вывести соответствующие ответы; другие предпочитали создавать системы, в которых вероятность одного события зависела бы от постоянно обновляемых вероятностей многих других.
В последующие десятилетия в этой области было много интеллектуального брожения и споров, но к 1980-м годам было достигнуто широкое согласие относительно дальнейшего пути развития: "экспертные системы", использующие символическую логику для сбора и применения лучших человеческих ноу-хау. Японское правительство, в частности, поддержало идею создания таких систем и создания оборудования, которое могло бы для этого понадобиться. Но в большинстве своем такие системы оказались слишком негибкими, чтобы справиться с беспорядком реального мира. К концу 1980-х годов понятие "AI" утратило свою актуальность и стало нарицательным: "слишком много обещал и не выполнил". Те исследователи, которые все еще работали в этой области, стали избегать этого термина.
Именно из одного из таких очагов упорства и родился сегодняшний бум. В 1940-х годах, когда были получены первые сведения о том, как работают клетки мозга - разные виды нейронов, и ученые-компьютерщики начали задумываться о том, могут ли машины быть устроены таким же образом. В биологическом мозге существуют связи между нейронами, которые позволяют активности одного нейрона вызывать или подавлять активность другого; действия одного нейрона зависят от действий других нейронов, подключенных к нему. Первая попытка смоделировать это в лаборатории (предпринятая Марвином Мински, студентом Дартмутского университета) использовала аппаратное обеспечение для моделирования сетей нейронов. С тех пор слои взаимосвязанных нейронов моделируются в программном обеспечении.
Искусственные нейронные сети не программируются с помощью явных правил; вместо этого они "учатся", получая множество примеров. В процессе обучения сила связей между нейронами (так называемые "веса") многократно регулируется, так что в итоге при заданных входных данных получаются соответствующие выходные данные. Сам Минский отказался от этой идеи, но ее продолжили другие. К началу 1990-х годов нейронные сети были обучены таким вещам, как сортировка почты путем распознавания написанных от руки цифр. Исследователи полагали, что добавление новых слоев нейронов позволит добиться более сложных результатов. Но при этом системы работали гораздо медленнее.
Новый вид компьютерного оборудования позволил обойти эту проблему. Его потенциал был наглядно продемонстрирован в 2009 году, когда исследователи из Стэнфордского университета увеличили скорость работы нейронной сети в 70 раз, используя игровой ПК в своей комнате в общежитии. Это стало возможным благодаря тому, что помимо "центрального процессора" (CPU), который есть во всех компьютерах, в этом был установлен "графический процессор" (GPU) для создания игровых миров на экране. И этот процессор был запрограммирован таким образом, чтобы обеспечить работу нейросетевого кода.
Сочетание этого аппаратного ускорения с более эффективными алгоритмами обучения позволило обучать сети с миллионами связей за разумное время; нейронные сети могли обрабатывать большие входные данные и, что очень важно, иметь больше внутренних слоев. Эти "более глубокие" сети оказались гораздо более способными.
Сила этого нового подхода, получившего название "глубокое обучение", deep learning, стала очевидной в ходе конкурса ImageNet Challenge 2012 года. Системам распознавания изображений, участвовавшим в соревновании, была предоставлена база данных из более чем миллиона помеченных файлов изображений. Для каждого слова, например "собака" или "кошка", база данных содержала несколько сотен фотографий. Системы распознавания образов обучались на этих примерах "отображать" входные данные в виде изображений на выходные в виде однословных описаний. Затем системам было предложено создать такие описания при подаче ранее не виденных тестовых изображений. В 2012 году команда под руководством Джеффа Хинтона, работавшего в то время в Университете Торонто, использовала глубокое обучение для достижения точности в 85 %. Это сразу же было признано прорывом.
К 2015 году почти все специалисты в области распознавания изображений использовали глубокое обучение, а точность побед в конкурсе ImageNet Challenge достигла 96 % - лучше, чем средний результат человека. Глубокое обучение также применялось для решения множества других "проблем... предназначенных для людей", которые можно свести к отображению одного типа вещей на другой: распознавание речи (преобразование звука в текст), распознавание лиц (преобразование лиц в имена) и перевод.
Во всех этих приложениях огромное количество данных, доступных через интернет, было жизненно важным условием успеха; более того, количество людей, пользующихся интернетом, говорило о возможности создания больших рынков. Чем больше (то есть глубже) становились сети и чем больше обучающих данных им предоставлялось, тем выше становилась их производительность. Вскоре глубокое обучение стало применяться во всех видах новых продуктов и услуг. Появились устройства, управляемые голосом, такие как Alexa от Amazon. Стали использоваться онлайн-сервисы транскрипции, расшифровки. Веб-браузеры предлагали автоматические переводы. Говорить о том, что подобные вещи были созданы с помощью AI, стало звучать круто, а не постыдно, хотя и несколько излишне: почти каждая технология, которую тогда и сейчас называют AI, на самом деле опирается на глубокое обучение под капотом.
Chatgpt и его конкуренты, похоже, действительно "используют язык и формируют абстракции".
В 2017 году к количественным преимуществам, которые дает увеличение вычислительной мощности и объема данных, добавилось качественное изменение: новый способ организации связей между нейронами, получивший название "трансформер". Трансформеры позволяют нейронным сетям отслеживать паттерны на входе, даже если элементы паттерна находятся далеко друг от друга, что позволяет им уделять "внимание" определенным особенностям данных. Трансформеры дают нейросетям лучшее понимание контекста, что позволяет использовать их в технике под названием "самоконтролируемое обучение", “self-supervised learning”. По сути, в процессе обучения некоторые слова случайным образом пропускаются, и модель сама учится подбирать наиболее вероятного кандидата. Поскольку обучающие данные не нужно маркировать заранее, такие модели можно обучать на миллиардах слов необработанного текста, взятого из Интернета.
Задумайтесь над своей языковой моделью
Большие языковые модели (LLM) на основе трансформеров начали привлекать к себе внимание в 2019 году, когда стартап OpenAI выпустил модель под названием gpt-2 (gpt означает generative pre-trained transformer, "генеративный предварительно обученный трансформер"). Оказалось, что такие LLM способны к "эмерджентному" поведению, для которого они не были явно обучены. Впитывание огромного количества языковых конструкций сделало их не только удивительно искусными в лингвистических задачах, таких как обобщение или перевод, но и в таких вещах, как простая арифметика и написание программ, которые неявно присутствовали в обучающих данных. К сожалению, это также означало, что они воспроизводили предубеждения в поступающих к ним данных, а значит, многие из преобладающих в человеческом обществе предрассудков также проявлялись в их результатах.
В ноябре 2022 года более крупная модель от OpenAI, GPT-3.5, была представлена публике в виде чат-бота. Любой человек с веб-браузером мог ввести запрос и получить ответ. Ни один потребительский продукт не раскупался так быстро. В течение нескольких недель ChatGPT генерировал все - от эссе для колледжа до компьютерного кода. AI сделал еще один большой скачок вперед.
Если первая когорта AI-продуктов была основана на распознавании, то вторая - на генерации. Модели глубокого обучения, такие как Stable Diffusion и DALL-E, которые также дебютировали примерно в то время, использовали технику, называемую диффузией, чтобы превратить текстовые подсказки в изображения. Другие модели могут создавать удивительно реалистичные видео, речь или музыку.
Скачок не только технологический. Создание вещей имеет значение. ChatGPT и такие конкуренты, как Gemini от Google и Claude от Anthropic, основанной исследователями, ранее работавшими в OpenAI, производят вычисления, как и другие системы глубокого обучения. Но тот факт, что они отвечают на запросы с помощью разных усвоенных и формируемых паттернов, делает их совсем непохожими на программы, распознающие лица или делающие перевод. Похоже, они действительно "используют язык" и "формируют абстракции", как и предполагал Маккарти.
В этой серии материалов мы рассмотрим, как работают эти модели, насколько могут расшириться их возможности, какие новые способы их использования появятся, а также для чего они не будут или не должны использоваться.