До начала использования инструментов искуственного интеллекта (так же упоминаемых как Artificial Intelligence, AI, ИИ), я не особо интересовался историей вопроса, но по мере вовлечения стал интересоваться историей развития технологии, какие вопросы решали исследователи, чтобы прийти к текущему результату, какие вопросы ставят в текущих исследованиях. Эти заметки являются попыткой систематизации информации, которые надеюсь станут полезны ещё кому-то и помогут с разных сторон посмотреть на то, что мы называем искусственным интеллектом.
Если смотреть на историю без современного маркетинга, ИИ возник не внезапно. Историю ИИ лучше начинать не с современных нейросетей и даже не с компьютеров, а с нескольких научных направлений, которые сошлись в 1940–1950-х годах. Впоследствии эти научные направления сформировали отдельную научную область с названием Artificial Intelligence, зародившуюся в 1955–1956 годах.
Предыстория: математическая логика и вычислимость
Задолго до появления термина AI учёные пытались формализовать рассуждение.
В XIX – начале XX века развивалась математическая логика: возникла идея описывать рассуждения формальными правилами, то есть фактически представить часть человеческого мышления как операции над символами.
Особенно важным стал вопрос:
Можно ли вообще механически выполнять вычисления и логические рассуждения?
1930-е
В 1930-х годах работы Алана Тьюринга и других математиков заложили теоретический фундамент вычислительных машин. Тьюринг формализовал понятие вычислимости и описал абстрактную вычислительную машину, ныне известную как машина Тьюринга.
Это ещё не был искусственный интеллект. Но появилась принципиально важная идея:
интеллектуальную задачу можно попытаться представить как последовательность формальных вычислительных операций
1940-е
Первая математическая модель искусственного нейрона
Одним из важнейших непосредственных предшественников нейросетей стала работа Уоррена Маккалока и Уолтера Питтса:
«A Logical Calculus of the Ideas Immanent in Nervous Activity», опубликованная в 1943 году.
Авторы предложили математическую модель нейрона, в которой работа нервной системы описывалась с помощью логики.
Идея была очень существенной с инженерной точки зрения:
нейрон можно представить как элемент, который получает сигналы и в зависимости от них выдаёт результат
Маккалок и Питтс показали, что сети таких формализованных элементов способны реализовывать логические операции.
Это ещё не была обучаемая нейросеть в современном смысле. Но именно здесь появляется математическая связь:
нервная система > формальные элементы > логические операции > вычисление
Работа 1943 года сегодня считается одним из фундаментальных предшественников искусственных нейронных сетей и ИИ.
Появление электронных вычислительных машин
Параллельно развивалась другая линия — электронные компьютеры.
Во время Второй мировой войны были созданы первые практически значимые электронные вычислительные системы. Например, ENIAC был представлен в 1946 году.
Именно появление программируемых вычислительных машин сделало практически возможной следующую идею:
Если машина способна выполнять произвольные последовательности операций, можно попытаться запрограммировать её не только для арифметики, но и для решения задач, которые обычно выполняет человек
Это принципиальный переход от теории вычисления к машинному решению интеллектуальных задач.
1950-е
Следующий чрезвычайно важный этап — статья Алана Тьюринга: A. M. Turing, «Computing Machinery and Intelligence», 1950.
Она была опубликована в журнале Mind в октябре 1950 года.
Тьюринг начинает статью с вопроса:
«Can machines think?»
Но вместо попытки дать строгое определение словам «машина» и «думать» он предлагает заменить вопрос экспериментом, который он назвал imitation game — «игрой в имитацию». Именно из этой работы впоследствии появился широко известный тест Тьюринга.
При этом важно не допускать распространённой ошибки: Тьюринг не создал первый ИИ, но сформулировал фундаментальную проблему и предложил способ обсуждать способность машины демонстрировать поведение, неотличимое в определённых условиях от человеческого.
Ещё более интересно, что в статье 1950 года есть отдельный раздел «Learning Machines» — «обучающиеся машины». То есть идея машинного обучения существовала задолго до современных систем глубокого обучения (deep learning).
В 1951–1952 годах появляются первые работающие программы, связанные с ИИ. Здесь начинается уже собственно история программ, демонстрирующих интеллектуальное поведение.
В начале 1950-х годов создавались программы для игры в шашки, шахматы и решения логических задач. Одним из важных исследователей был Кристофер Стрэчи, который написал программу игры в шашки. Другим был Артур Самуэль (IBM), который в 1950-х разработал значительно более развитую программу игры в шашки и исследовал возможность её обучения на основе собственного опыта. Параллельно Клод Шеннон в 1950 году опубликовал работу о программировании компьютера для игры в шахматы.
Это очень важный момент:
ИИ первоначально развивался не как «создание мозга», а как попытка заставить компьютер выполнять отдельные интеллектуальные задачи
Например:
- играть в игры
- доказывать теоремы
- решать логические задачи
- распознавать закономерности
- манипулировать символами
В 1955 находится одна из наиболее точно документированных дат — появляется само название «Artificial Intelligence».
31 августа 1955 года Джон Маккарти, Марвин Минский, Натаниэл Рочестер и Клод Шеннон подготовили: «A Proposal for the Dartmouth Summer Research Project on Artificial Intelligence». Именно в названии этого документа появляется выражение: Artificial Intelligence.
Авторы предложили провести летом 1956 года двухмесячное исследование в Dartmouth College.
В документе была сформулирована очень амбициозная гипотеза:
различные аспекты обучения и интеллекта в принципе можно настолько точно описать, чтобы машина могла их симулировать
В частности, исследователи собирались изучать:
- использование машиной языка
- формирование абстракций и понятий
- решение задач, которые тогда считались доступными человеку
- способность машины совершенствовать себя
То есть содержание предложения удивительно близко к тому, что сегодня мы называем AI research.
Летом 1956 года в Dartmouth College состоялся исследовательский проект, который вошёл в историю как «Dartmouth Summer Research Project on Artificial Intelligence».
Именно это событие обычно называют рождением искусственного интеллекта как самостоятельного научного направления. Неверно говорить, что в 1956 году был изобретён искусственный интеллект, но в этот период сформировалось научное направление, получившее название Artificial Intelligence, которое в дальнейшем привело к его появлению в текущем виде.
До Dartmouth уже существовали:
- математическая теория вычислений
- цифровые компьютеры
- математические модели нейронов
- исследования машинного решения задач
- программы для игр
- идеи машинного обучения
- работы Тьюринга о машинном интеллекте
Dartmouth объединил эти направления в одну исследовательскую программу и только после этого начинается собственно история ИИ как научной дисциплины.
Очень быстро появились первые действительно знаменитые AI-системы.
В 1956 году Аллен Ньюэлл, Герберт Саймон и Клифф Шоу разработали программу Logic Theorist. Она предназначалась для автоматического доказательства математических теорем. Это был один из первых примеров программы, специально созданной для выполнения задачи, которую принято считать интеллектуальной. Logic Theorist стала чрезвычайно важной для дальнейшего развития символьного ИИ — подхода, в котором интеллект моделируется посредством символов, правил и логических операций.
Две основные линии развития ИИ
И вот здесь начинается особенно интересная часть истории. Уже в 1950-х фактически сформировались две разные концепции того, как создавать искусственный интеллект.
Линия №1 — символический ИИ
Идея:
интеллект = работа с символами и правилами.
Например:
Человек > символы > правила > логические операции > вывод
Это направление развивали Ньюэлл, Саймон, Маккарти, Минский и другие.
Отсюда впоследствии появились:
- экспертные системы
- логическое программирование
- автоматическое доказательство теорем
- системы правил
- представление знаний (knowledge representation)
- классический NLP
Линия №2 — искусственные нейронные сети
Другая идея:
интеллект возникает из взаимодействия большого количества простых элементов, похожих на нейроны
Здесь фундаментальной была работа Маккалока и Питтса 1943 года.
Позднее появились:
- перцептрон Фрэнка Розенблатта
- исследования обучения нейронных сетей
- многослойные сети
- метод обратного распространения ошибки (backpropagation)
- глубокое обучение (deep learning)
- современные большие языковые модели
Историческая цепочка этого направления выглядит так:
- 1943 > математический нейрон
- 1950-е > первые обучаемые/нейросетевые модели
- 1980-е > возрождение многослойных сетей
- 1990-е > статистическое машинное обучение
- 2000-е > вычислительно масштабируемые нейросети
- 2010-е > Deep Learning
- 2017 > Transformer
- 2020-е > большие языковые и мультимодальные модели
И о ней я расскажу в следующих заметках.