Уже много лет человечество пытается научить компьютер думать самостоятельно, но пока количество ошибок слишком велико. Возможно ли преодолеть этот барьер
Попытки скопировать человеческий интеллект предпринимаются уже несколько веков. Еще в 1770 году венгерский изобретатель Вольфган фон Кемпелен создал автомат, который обыгрывал в шахматы всех, кто с ним состязался, и даже победил Наполеона Бонапарта. При этом для большего эффекта зрителям демонстрировались сложные механизмы машины. Позже изобретатель был разоблачен — внутри автомата сидел опытный шахматист, управляющий всем процессом. Однако событие успело наделать много шума.
Как все начиналось
Прошло много лет прежде чем в 50-е годы XX века Фрэнк Розенблатт изобрел персептрон — математическую модель связанных объектов, где входным сигналом для одного объекта служили выходные сигналы от других.
Самым главным свойством персептрона было так называемое обратное распространение ошибки. Это поле элементов (узлов), связанных друг с другом в сеть (матрица). Первоначально они одинаково реагируют на входящий сигнал — например оставляют его таким, как он был. Но допустим, мы хотим научить персептрон отличать буквы друг от друга. Мы подаем на вход то А, то Б, то Г в случайном порядке. Модель изначально не знает ничего ни про один из объектов, но ей дается обратная связь, по которой создается функция ошибки, определяющая, сильно ли ошиблась модель. В случае угадывания буквы функция выдает ноль (это значит, что ошибки нет). По мере того, насколько далек персептрон от правильного ответа, значение функции увеличивается. Сигнал об ошибке подается обратно на вход, что приводит к коррекции модели: у узлов в матрице менялись веса. В итоге персептрон запоминал свое состояние при определенных наборах входных объектов, то есть обучался.
Термин «обучение модели», к собственно обучению не имел никакого отношения. На самом деле, состояние модели приходило к равновесию после нескольких циклов обратного распространения ошибки. Также маятник приходит к равновесию после того, как его раскачали. Но сам факт, что модель могла запоминать свое состояние и оставаться в нем, похож на процесс обучения человека. Модель показалась ученым интересной и позже легла в основу первой нейронной сети.
Дальнейшее развитие теории нейросетей переживало многочисленные взлеты и падения на протяжении десятилетий. Среди наиболее известных открытий были первая модель искусственного интеллекта — Logic Theorist (LT, «логический теоретик»), изобретенная в 1956 году Алленом Ньюуэлом и Гербертом Саймоном, и «Элиза» — программа, поддерживающая разговор на английском языке на любую тему, созданная в 1965 году Джозефом Вайзенбаумом. Однако оказалось, что компьютерные возможности того времени не позволяли применять нейронные сети для более практических целей. В частности, для распознавания техники вероятного противника, на что так надеялись военные.
На 1990-е годы пришелся новый расцвет нейросетей. Достижения исследователей в области Data Mining (извлечения данных), машинного понимания и перевода языка, компьютерного зрения и других областях снова сделали актуальными изучение возможностей искусственного интеллекта. Развитие скорости процессоров и снижение стоимости памяти дали ученым возможность обучать нейросети быстрее и на более или менее реальных задачах. Но оказалось, что данных и ресурсов для обучения было мало, нейросети были «недостаточно разумны» — выдавали большой процент ошибок. Поэтому они нашли применение в специализированных задачах, например, распознавании символов, а общий интерес к искусственному интеллекту снова упал.
Нейроны человека и нейросети
Имеют ли нейросети какое-то отношение к нейронам в голове человека и можно ли называть их интеллектом?
Современное представление о процессе мышления человека основывается на том, что нейроны в коре головного мозга могут связываться друг с другом своими отростками-аксонами, периодически получая от «соседей» сигналы и переходя из базового в возбужденное состояние. В головном мозге человека насчитывается около 85—86 млрд нейронов, и один нейрон может иметь связи со многими (до 20 тысяч) другими нейронами. Тот факт, что эта структура способна мыслить, всегда привлекал внимание ученых.
Термин «искусственный интеллект» («artificial intelligence») был изобретен и впервые озвучен в 1956 году американским ученым Джоном Маккарти. В описание модели персептрона, о которой было рассказано выше, уже в 50-х – 60-х были введены статистические понятия узлов, сети и весов, и эти узлы под влиянием работ того времени по изучению человеческого мозга назвали нейронами.
В ходе развития искусственного интеллекта появилось множество типов сетей. В нашем мозге происходят одновременно и процессы распознавания образов, и текста, и картинок, и все это откладывается в памяти. Компьютерные же нейросети не столь универсальны: пришлось придумывать разные виды, каждый из которых лучше всего приспособлен для своей задачи: сверточные — в основном используются для анализа изображений, рекуррентные — для анализа динамических изменений, автокодировщики — для классификаций (например, для распознавания букв, символов), кодировщики-декодировщики — для выявления ключевых характеристик объекта, соревновательные нейросети — для порождения новых объектов, и специальные ячейки памяти (LTSM) — для запоминания и хранения информации.
Параллельно с типами нейросетей появилась и идея создания многослойных нейросетей, когда один слой одинаковых нейронов является входом для другого слоя. Позже также стали объединять разные типы слоев в одной модели, и все это с целью приблизить нейросети по уровню понимания к интеллекту человека.
Наши дни
Текущее внимание к нейросетям и активное использование термина «искусственный интеллект» обязано впечатляющим результатам, которых удалось добиться с переносом вычислений на видеокарты. Каждая из них содержит гораздо больше вычислительных ядер, чем центральный процессор, а также собственную память — это привело к ускорению обучения нейросетей в сотни раз по сравнению с обычными процессорами. Второй причиной нового витка в области AI стало возникновение огромных объемов данных для обучения.
Сейчас крупнейшие компании мира зарабатывают за счет нейросетей: соцсети (и их партнеры, как печально известная Cambridge Analitica) таргетируют рекламу при помощи аналитики, Nvidia и другие разработчики создают платформы для использования в автомобилях—автопилотах, способных качественно распознавать знаки и пешеходов на дорогах и реагировать на ситуацию. Однако ИИ применяют и в ближайшее время будут применять в основном для юридически не обязывающих действий. Они могут предупредить о появлении незнакомого лица на объекте или мошенника-рецидивиста в банке, упростят вождение, но не возьмут на себя ответственность за финальное решение.
Можно ли считать нейросети, служащие основой для решения задач классификации информации, искусственным интеллектом? Понять это можно, ответив на простой вопрос — может ли искусственный интеллект существовать и эффективно работать без естественного. Ответ — нет, потому что для решения любой задачи именно человек настраивает параметры нейросети для получения адекватных результатов. Грубо говоря, для решения каждой задачи выбирается своя архитектура нейросети. Ситуация, когда ИИ будет самостоятельно решать, какую нейросеть создать для решения конкретной задачи, пока даже не просматривается на горизонте.
Несмотря на то, что ИИ все-таки смог обыграть человека в шахматы, сейчас, как и несколько веков назад за каждой машиной, обыгрывающей человека, скрываются люди, создавшие ее.
Как компьютер учили думать как человека. И почему у него это не получается