Идиот или гений? Как работает и на что способен искусственный интеллект - Мамедьяров Заур 4 стр.



Рис. 3. Иллюстрация перцептрона, который распознает рукописные восьмерки. Каждый пиксель на изображении 18 × 18 пикселей соответствует одному входному сигналу перцептрона, что дает 324 (= 18 × 18) входных сигнала.


Как узнать веса и порог перцептрона

В отличие от символической системы Универсального решателя задач, которую я описала ранее, перцептрон не имеет очевидных правил для выполнения задачи, а все его знания закодированы в числах, определяющих веса входных сигналов и пороговое значение. В ряде статей Розенблатт показал, что при корректных весах и пороговом значении такой перцептрон, как на рисунке 3B, вполне неплохо справляется с такими задачами на восприятие, как распознавание простых рукописных цифр. Но как именно определить корректные веса и пороговое значение для конкретной задачи? И снова Розенблатт предложил ответ, навеянный работой мозга: перцептрон должен сам узнавать эти значения. Но каким образом? Вторя популярным в то время теориям бихевиоральной психологии, Розенблатт считал, что перцептроны должны обучаться, накапливая условный рефлекс. Отчасти вдохновленный работой бихевиориста Б. Ф. Скиннера, который обучал крыс и голубей выполнять задачи с помощью положительного и отрицательного подкрепления, Розенблатт полагал, что перцептрон следует обучать на примерах: его нужно вознаграждать, когда он выдает верный результат, и наказывать, когда он ошибается. Теперь такая форма обучения в ИИ называется обучением с учителем. В ходе обучения система получает пример и генерирует выходной сигнал, а затем получает сигнал от учителя, который показывает, насколько выходной сигнал системы отличается от верного. Затем система использует этот сигнал, чтобы скорректировать веса и пороговое значение.

Концепция обучения с учителем ключевой элемент современного ИИ, поэтому ее стоит разобрать подробнее. Как правило, обучение с учителем требует большого набора положительных (скажем, коллекции восьмерок, написанных разными людьми) и отрицательных (скажем, коллекции других рукописных цифр, среди которых нет восьмерок) примеров. Каждый пример размечается человеком, который присваивает ему определенную категорию (метку)  здесь это восьмерка и не восьмерка. Метка применяется в качестве контрольного сигнала. Некоторые положительные и отрицательные примеры используются для тренировки системы и формируют тренировочное множество. Оставшиеся примеры тестовое множество используются для оценки работы системы после обучения, чтобы понять, насколько хорошо она научилась правильно отвечать на запросы в целом, а не только на обучающие примеры.

Вероятно, самым важным в информатике стоит признать понятие алгоритм. Оно обозначает рецепт со списком шагов, которые компьютер может предпринять для решения конкретной задачи. Главным вкладом Фрэнка Розенблатта в ИИ стало создание особого алгоритма, названного алгоритмом обучения перцептрона. С помощью этого алгоритма перцептрон можно научить на примерах определять веса и пороговое значение для получения верных ответов. Вот как он работает: сначала весам и порогу присваиваются случайные значения в диапазоне от 1 до 1. В нашем примере первому входному сигналу может быть присвоен вес 0,2, второму вес 0,6 и так далее. Пороговым значением может стать 0,7. С генерацией начальных значений без труда справится компьютерная программа, называемая генератором случайных чисел.

Теперь мы можем приступать к процессу обучения. Перцептрон получает первый обучающий пример, не видя метку с верной категорией. Перцептрон умножает каждый входной сигнал на его вес, суммирует результаты, сравнивает сумму с пороговым значением и выдает либо 1, либо 0. Здесь выходной сигнал 1 означает, что перцептрон распознал восьмерку, а выходной сигнал 0  что он распознал не восьмерку. Далее в процессе обучения выходной сигнал перцептрона сравнивается с верным ответом, который дает присвоенная человеком метка (восьмерка или не восьмерка). Если перцептрон прав, веса и пороговое значение не меняются. Если же перцептрон ошибся, веса и пороговое значение слегка корректируются так, чтобы сумма входных сигналов в этом тренировочном примере оказалась ближе к нужной для верного ответа. Более того, степень изменения каждого веса зависит от соответствующего значения входного сигнала, то есть вина за ошибку в основном возлагается на входные сигналы, которые сильнее других повлияли на результат. Например, в восьмерке на рис. 3A главным образом на результат повлияли бы более насыщенные (здесь черные) пиксели, в то время как пиксели с нулевой насыщенностью (здесь белые) не оказали бы на него никакого влияния. (Для любопытных читателей я описала некоторые математические подробности в примечании[30].)

Все шаги повторяются на каждом из обучающих примеров. Процесс обучения много раз проходится по всем обучающим примерам, слегка корректируя веса и пороговое значение при каждой ошибке перцептрона. Обучая голубей, психолог Б. Ф. Скиннер обнаружил, что учиться лучше постепенно, совершая множество попыток, и здесь дело обстоит точно так же: если слишком сильно изменить веса и пороговое значение после одной попытки, система может научиться неправильному правилу (например, чрезмерному обобщению, что нижняя и верхняя половины восьмерки всегда равны по размеру). После множества повторов каждого обучающего примера система (как мы надеемся) окончательно определяет набор весов и пороговое значение, при которых перцептрон дает верные ответы для всех обучающих примеров. На этом этапе мы можем проверить перцептрон на примерах из тестового множества и увидеть, как он справляется с распознаванием изображений, не входивших в обучающий набор.

Детектор восьмерок полезен, когда вас интересуют только восьмерки. Но что насчет распознавания других цифр? Не составляет труда расширить перцептрон таким образом, чтобы он выдавал десять выходных сигналов, по одному на каждую цифру. Получая пример рукописной цифры, перцептрон будет выдавать единицу в качестве выходного сигнала, соответствующего этой цифре. При наличии достаточного количества примеров расширенный перцептрон сможет узнать все необходимые веса и пороговые значения, используя алгоритм обучения.

Розенблатт и другие исследователи показали, что сети перцептронов можно научить выполнять относительно простые задачи на восприятие, а еще Розенблатт математически доказал, что теоретически достаточно обученные перцептроны могут безошибочно выполнять задачи определенного, хотя и строго ограниченного класса. При этом было непонятно, насколько хорошо перцептроны справляются с более общими задачами ИИ. Казалось, эта неопределенность не мешала Розенблатту и его спонсорам из Научно-исследовательского управления ВМС США делать до смешного оптимистичные прогнозы о будущем алгоритма. Освещая пресс-конференцию Розенблатта, состоявшуюся в июле 1958 года, газета The New York Times написала:

Сегодня ВМС продемонстрировали зародыш электронного компьютера, который, как ожидается, сможет ходить, говорить, видеть, писать, воспроизводить себя и сознавать свое существование. Было сказано, что в будущем перцептроны смогут узнавать людей, называть их по именам и мгновенно переводить устную речь и тексты с одного языка на другой[31].

Да, даже в самом начале ИИ страдал от шумихи. Вскоре я расскажу о печальных последствиях такого ажиотажа. Но пока позвольте мне на примере перцептронов объяснить основные различия между символическим и субсимволическим подходом к ИИ.

Поскольку знания перцептрона состоят из набора чисел, а именно определенных в ходе обучения весов и порогового значения,  сложно выявить правила, которые перцептрон использует при выполнении задачи распознавания. Правила перцептрона не символические: в отличие от символов Универсального решателя задач, таких как ЛЕВЫЙ-БЕРЕГ, #МИССИОНЕРОВ и ПЕРЕМЕСТИТЬ, веса и порог перцептрона не соответствуют конкретным понятиям. Довольно сложно преобразовать эти числа в понятные людям правила. Ситуация существенно усложняется в современных нейронных сетях с миллионами весов.

Можно провести грубую аналогию между перцептронами и человеческим мозгом. Если бы я могла заглянуть к вам в голову и понаблюдать за тем, как некоторое подмножество ста миллиардов ваших нейронов испускает импульсы, скорее всего, я бы не поняла, ни о чем вы думаете, ни какие правила применяете при принятии конкретного решения. Тем не менее человеческий мозг породил язык, который позволяет вам использовать символы (слова и фразы), чтобы сообщать мне часто недостаточно четко,  о чем вы думаете и почему приходите к определенным выводам. В этом смысле наши нервные импульсы можно считать субсимволическими, поскольку они лежат в основе символов, которые каким-то образом создает наш мозг. Перцептроны, а также более сложные сети искусственных нейронов, называются субсимволическими по аналогии с мозгом. Их поборники считают, что для создания искусственного интеллекта языкоподобные символы и правила их обработки должны не программироваться непосредственно, как для Универсального решателя задач, а рождаться в нейроноподобных архитектурах точно так же, как интеллектуальная обработка символов рождается в мозге.

Ограниченность перцептронов

После Дартмутского семинара 1956 года доминирующее положение в сфере ИИ занял символический лагерь. В начале 1960-х годов, пока Розенблатт увлеченно работал над перцептроном, большая четверка основателей ИИ, преданных символическому лагерю, создала авторитетные и прекрасно финансируемые лаборатории ИИ: Марвин Минский открыл свою в MIT, Джон Маккарти в Стэнфорде, а Герберт Саймон и Аллен Ньюэлл в Университете Карнеги Меллона. (Примечательно, что эти университеты по сей день входят в число самых престижных мест для изучения ИИ.) Минский, в частности, полагал, что моделирование мозга, которым занимался Розенблатт, ведет в тупик и ворует деньги у более перспективных проектов символического ИИ[32]. В 1969 году Минский и его коллега по MIT Сеймур Пейперт опубликовали книгу Перцептроны[33], в которой математически доказали, что существует крайне ограниченное количество типов задач, поддающихся безошибочному решению перцептроном, а алгоритм обучения перцептрона не сможет показывать хорошие результаты, когда задачи будут требовать большого числа весов и порогов.

Минский и Пейперт отметили, что если перцептрон усовершенствовать, добавив дополнительный слой искусственных нейронов, то количество типов задач, которые сможет решать устройство, значительно возрастет[34]. Перцептрон с таким дополнительным слоем называется многослойной нейронной сетью. Такие сети составляют основу значительной части современного ИИ, и я подробно опишу их в следующей главе. Пока же я отмечу, что в то время, когда Минский и Пейперт писали свою книгу, многослойные нейронные сети еще не были широко изучены, в основном потому что не существовало общего алгоритма, аналогичного алгоритму обучения перцептрона, для определения весов и пороговых значений.

Ограниченность простых перцептронов, установленная Минским и Пейпертом, была уже известна людям, работавшим в этой сфере[35]. Сам Фрэнк Розенблатт много работал с многослойными перцептронами и признавал, что их сложно обучать[36]. Но последний гвоздь в крышку гроба перцептронов вогнала не математика Минского и Пейперта, а их рассуждения о многослойных нейронных сетях:

[Перцептрон] обладает многими свойствами, привлекающими внимание: линейность, интригующая способность к обучению, очевидная простота перцептрона как разновидности устройства для параллельных вычислений. Нет никаких оснований предполагать, что любое из этих достоинств распространяется на многослойный вариант. Тем не менее мы считаем важной исследовательской задачей разъяснить (или отвергнуть) наше интуитивное заключение о том, что обсуждаемое расширение бесплодно[37].

Ой-ой! Сегодня последнее предложение этого отрывка, возможно, сочли бы пассивно-агрессивным. Такие негативные спекуляции отчасти объясняют, почему в конце 1960-х финансирование исследований нейронных сетей прекратилось, хотя государство продолжало вливать немалые деньги в символический ИИ. В 1971 году Фрэнк Розенблатт утонул в возрасте сорока трех лет. Лишившись главного идеолога и большей части государственного финансирования, исследования перцептронов и других систем субсимволического ИИ практически остановились. Ими продолжали заниматься лишь несколько отдельных академических групп.

Зима ИИ

Тем временем поборники символического ИИ писали заявки на гранты, обещая скорые прорывы в таких областях, как понимание речи и языка, построение логических выводов на основе здравого смысла, навигация роботов и беспилотные автомобили. К середине 1970-х годов были успешно развернуты некоторые узкие экспертные системы, но обещанных прорывов общего характера так и не произошло.

Это не укрылось от внимания финансирующих организаций. Британский Совет по научным исследованиям и Министерство обороны США подготовили отчеты, в которых дали крайне отрицательную оценку прогрессу и перспективам исследований ИИ. В частности, в британском отчете отмечалось, что некоторые надежды вселяет продвижение в области специализированных экспертных систем программ, написанных для работы в узких сферах, где программирование полностью принимает во внимание человеческий опыт и человеческие знания в соответствующей области,  но подчеркивалось, что текущие результаты работы над программами общего назначения, ориентированными на копирование механизма решения широкого спектра задач с человеческого [мозга], удручают. Вожделенная долгосрочная цель исследований в сфере ИИ кажется все такой же далекой[38]

Примечания

1

A. Cuthbertson, DeepMind AlphaGo: AI Teaches Itself «Thousands of Years of Human Knowledge» Without Help, Newsweek, Oct. 18, 2017, www.newsweek.com/deepmind-alphago-ai-teaches-human-help-687620.

2

Здесь и далее я цитирую высказывания Дугласа Хофштадтера из интервью, которое я взяла у него после встречи в Google, причем цитаты точно отражают содержание и тон его ремарок, сделанных в присутствии инженеров Google.

3

Слова Джека Шварца цит. по: G.-C. Rota, Indiscrete Thoughts (Boston: Berkhäuser, 1997), 22.

4

D. R. Hofstadter, Gödel, Escher, Bach: an Eternal Golden Braid (New York: Basic Books, 1979), 678. (Русское издание: Хофштадтер Д. Гёдель. Эшер. Бах: эта бесконечная гирлянда / Пер. с англ. М. Эскиной.  Самара: Бахрах-М, 2001.)

5

Ibid., 676.

6

Цит. по: D. R. Hofstadter, Staring Emmy Straight in the Eye and Doing My Best Not to Flinch, in Creativity, Cognition, and Knowledge, ed. T. Dartnell (Westport, Conn.: Praeger, 2002), 67100.

7

Цит. по: R. Cellan-Jones, Stephen Hawking Warns Artificial Intelligence Could End Mankind, BBC News, Dec. 2, 2014, www.bbc.com/news/technology-30290540.

8

M. McFarland, Elon Musk: «With Artificial Intelligence, We Are Summoning the Demon», Washington Post, Oct. 24, 2014. https://www.washingtonpost.com/news/innovations/wp/2014/10/24/elon-musk-with-artificial-intelligence-we-are-summoning-the-demon/

Назад Дальше