5.2.2 Исследования Румельхарта
Рост интереса к многослойным нейронным сетям в 1980-е гг. был во многом связан с работами Дэвида Румельхарта. Что примечательно, Румельхарт был психологом, так же как Хебб и Розенблатт, а если точнее, то математическим психологом. Он изучал математическую психологию в Стэнфордском университете и получил степень доктора философии в 1967 г.
Румельхарт разработал множество моделей, объясняющих различные аспекты человеческого познания, начиная от двигательного контроля и понимания текста и заканчивая зрительным распознаванием букв, пониманием метафор и аналогий[1]. В 1975 г. он работал над исследованиями в области познания в составе исследовательской группы Калифорнийского университета в Сан-Диего (University of California, San Diego, далее UCSD), получившей название LNR — по первым буквам фамилий её основателей — Питера Линдсея, Дона Нормана, одного из знаменитых «грязнуль», и самого Румельхарта[2].
Обобщавшая результаты группы книга «Исследования в области познания» (Explorations in Cognition, 1975) содержала предложение о создании новой области — «когнитивной науки» (когнитивистики) [cognitive science] — за счёт совместных усилий специалистов из области искусственного интеллекта, лингвистики и психологии[3]. Этот же термин появился в том же году и в заголовке книги[4], написанной информатиком Дэниелом Боброу и психологом Алланом Коллинзом. Идея довольно быстро завоевала популярность, и в ряде университетов при поддержке фонда Альфреда Слоуна были созданы соответствующие междисциплинарные центры.
Когнитивная наука — это междисциплинарное научное исследование психики и психических процессов. Она изучает природу, задачи и функции познания (в широком смысле этого слова). Когнитивисты изучают интеллект и поведение, уделяя особое внимание тому, каким образом нервная система представляет, обрабатывает и изменяет информацию. Психические явления (феномены), находящиеся в центре внимания когнитивистики, включают в себя язык, восприятие, память, внимание, рассуждение и эмоции[5], [6].
Хотя сам термин «когнитивная наука» появился только в 1970-е, многие исследователи придерживаются мнения, что эта дисциплина сформировалась значительно раньше. Например, Джордж Миллер считал днём рождения когнитивистики 11 сентября 1956 г. — второй день симпозиума Специальной группы по теории информации (Special Interest Group in Information Theory). В начале 2000-х Миллер вспоминал: «Я покинул симпозиум с убеждением, скорее интуитивным, чем рациональным, что экспериментальная психология, теоретическая лингвистика и компьютерное моделирование когнитивных процессов являются частями единого целого и что будущее покажет постепенную координацию и развитие их общих целей»[7].
Одним из поворотных моментов в процессе возвращения интереса к нейронным сетям стала небольшая конференция, организованная Румельхартом и Норманом в 1979 г. По их приглашению в UCSD собрались нейробиологи, когнитивные психологи, исследователи искусственного интеллекта, математики и инженеры-электронщики[8]. Двое из приглашённых соорганизаторов конференции — информатик Джеффри Хинтон и психолог Джеймс Андерсон — выпустили по итогам конференции книгу «Параллельные модели ассоциативной памяти» (Parallel Models of Associative Memory, 1981)[9], заметно повлиявшую на отношение к нейронным сетям в научном сообществе.
В своей книге Хинтон и Андерсон показывают, как такой психологический феномен, как человеческая память, основанная на ассоциациях, может быть результатом работы нейросетевых моделей. В предисловии, написанном Румельхартом и Норманом, указываются три причины, по которым приведённые в книге модели человеческой памяти отличаются от описанных ранее.
Первая состоит в том, что новые модели построены на основе данных нейрофизиологии.
Вторая заключается в том, что предложенные Хинтоном и Андерсоном модели представляют собой альтернативу теориям, использующим для объяснения механизмов хранения и поиска в памяти «пространственные метафоры». Дело в том, что под влиянием развития вычислительной техники в XX в. многие нейрофизиологи, вольно или невольно, стали использовать компьютерные аналогии для объяснения принципов работы мозга человека. Например, человеческая память стала рассматриваться в виде множества ячеек, каждая из которых способна хранить те или иные данные. При этом подразумевалось, что ячейки, хранящие отдельные образы, можно локализовать в пространстве, то есть указать конкретный участок мозга, отвечающий за хранение соответствующих данных. А в новых моделях, предложенных Хинтоном и Андерсоном, различные образы могут соответствовать различным паттернам активности одних и тех же единиц (нейронов). То есть, согласно новым моделям, конкретные образы не локализованы в каких-либо отдельных участках мозга, а возникают в результате совместной активации распределённых ансамблей нервных клеток, причём отдельные клетки могут участвовать сразу в нескольких подобных ансамблях. Забегая вперёд, можно отметить, что современные научные данные в целом хорошо согласуются с идеями когнитивистов 1970-х гг. Например, в статье «Расшифровка подлежащей информационной структуры нейронных представлений понятий» (Decoding the information structure underlying the neural representation of concepts)[10], увидевшей свет в журнале PNAS в феврале 2022 г., убедительно показано (с привлечением данных магнитно-резонансной томографии), что концептуальные знания хранятся в виде паттернов нейронной активности, которые кодируют сенсомоторную и эмоциональную информацию о каждом понятии.
И наконец, третья причина заключается в том, что предлагаемые модели работают без необходимости назначать центрального исполнителя или координатора обработки[11], то есть в мозге отсутствует аналог центрального процессора компьютера и каждый нейрон выполняет обработку сигналов параллельно с другими нейронами. В некотором смысле работа Хинтона и Андерсона стала бунтом против подходов, составлявших главное направление в когнитивной психологии.
В 1982 г. была создана наследница группы LNR — группа PDP (Parallel distributed processing, Параллельная распределённая обработка). Помимо Румельхарта, в неё вошли доцент UCSD Джеймс Макклелланд, вышеупомянутый Хинтон, биолог Терренс Сейновски, когнитивист Пол Смоленский и психолингвист Джеффри Элман. В работе группы также принимал участие молодой аспирант Румельхарта и Нормана Майкл Джордан, будущий научный руководитель Эндрю Ына. Спустя четверть века, в 2016 г., журнал Science признает Джордана самым влиятельным в мире исследователем в области информатики, а, намекая в своём каламбуре на знаменитого баскетбольного тёзку и однофамильца Джордана, колумнист Science назовёт последнего «Майклом Джорданом от информатики»[12].
Отправной точкой исследований группы стал тот факт, что в основе работы мозга лежат массовые параллельные вычисления, производимые сетями взаимосвязанных нейронов, что радикальным образом отличается от последовательных вычислений, лежащих в основе большинства методов, предложенных в рамках символьного подхода. Как позже отмечал Румельхарт: «Общей темой всех этих усилий был интерес к изучению мозга как модели параллельного вычислительного устройства, сильно отличающегося от традиционного последовательного компьютера»[13].
Ранние исследования группы PDP заложили будущий фундамент дисциплины, известной сегодня под названием «глубокое обучение». Далее по тексту книги мы будем не раз возвращаться к различным исследованиям учёных, входивших в эту группу, результатами которых стало формирование современной науки в области искусственных нейронных сетей.
Забавно, что Румельхарт, по всей видимости, обладал в начале своей работы над перцептронами довольно поверхностными сведениями об исследованиях Розенблатта. В первой половине 1980-х гг. в учебной литературе, скорее всего во многом под влиянием работ Минского и Пейперта, утвердилось мнение о перцептроне как о тупиковой ветви развития, модели, представляющей разве что исторический интерес. Идеи Розенблатта тиражировались в крайне упрощённом виде, что создавало у учёных нового поколения впечатление о примитивности и ограниченности его модели. Строго говоря, практически все разновидности перцептрона, рассматривавшиеся Розенблаттом с 1958 г., являются по современной классификации многослойными. Однако в практических работах Розенблатт использовал в основном перцептрон, состоящий из трёх слоёв нейронов (и двух слоёв синаптических связей), причём веса первого слоя, как мы уже упоминали ранее, были равны 1 или −1 и устанавливались вручную. Выставление этих весов могло осуществляться по определённой, заданной исследователем закономерности или же случайным образом. Обычно (за исключением отдельных случаев) набор весов первого слоя определяет такое гиперпространство, в котором задача становится линейно разделимой, в результате чего гарантируется сходимость процесса обучения[14]. Однако многие исследователи упустили из вида наличие такого настраиваемого слоя в перцептроне Розенблатта, поэтому считали, что Розенблатт изучал только однослойные перцептроны. К их числу относился, по всей видимости, и Румельхарт.
В 1986 г. Румельхарт публикует сборник статей (коллективную монографию), где возвращается к дискуссии о перцептронах. Рассуждая о необходимости обучения не только второго, но и первого слоя, Румельхарт приводит рисунок из книги Минского и Пейперта, снабдив его подписью: «Однослойный перцептрон, анализируемый Минским и Пейпертом»[15]. Рассматривая перцептрон Розенблатта как однослойный, Румельхарт приходит к ошибочному выводу: «В своей известной книге „Перцептроны“ Минский и Пейперт (1969) документируют ограничения перцептрона. Самым простым примером функции, которая не может быть вычислена перцептроном, является „исключающее или“ (XOR)»[16].
В действительности Минский и Пейперт, как мы знаем, никогда не утверждали, что перцептрон неспособен вычислить функцию XOR. Однако, интерпретируя высказывания авторов «Перцептронов» в таком ключе, Румельхарт бросается в решительную атаку на эту ветряную мельницу и успешно одолевает её.
Он видит решение проблемы в том, что необходимо «взять оригинальную двумерную задачу и преобразовать её в соответствующую трёхмерную задачу». Обосновывая принципиальную важность многослойности, Румельхарт исходил из ошибочной посылки, что перцептрон Розенблатта не обладает этим качеством. Отдельным курьёзным моментом в данном случае является то, что Розенблатт в «Принципах нейродинамики» рассматривал аналог предлагаемого Румельхартом многослойного перцептрона (так называемый перцептрон с переменными S—A связями, часто просто «перцептрон Румельхарта»)[17].
Однако одно принципиальное отличие у перцептрона Румельхарта всё-таки было. В перцептроне Розенблатта условием срабатывания нейрона было превышение нулевого порога суммой входных сигналов. Если сумма входов искусственного нейрона превышала 0, то на выход передавалась единица, в противном случае выходом нейрона был 0, то есть отсутствие сигнала. Такая пороговая функция носит название функции Хевисайда, она же единичная ступенчатая функция, функция единичного скачка, «включённая единица» или попросту «ступенька».
Однако при всей своей простоте «ступенька» обладает одним ярко выраженным недостатком: она не является непрерывной. Если на выходе перцептрона Розенблатта вы получаете 0 вместо 1 или 1 вместо 0, то вы не можете определить, насколько в действительности текущая конфигурация сети была близка к правильному ответу. Возможно, для получения правильного ответа было достаточно лишь небольшой коррекции одного из синаптических весов, а возможно — текущая конфигурация безнадёжно далека от той, которая способна эффективно решать поставленную перед ней задачу. Розенблаттовский перцептрон, по меткому замечанию Науа Кана, страдает от своеобразного биполярного расстройства: «Перцептрон с единичной ступенчатой функцией не слишком „стабилен“ в качестве „кандидата для серьёзных отношений“ с нейронными сетями. Подумайте об этом: у этой девушки (или парня) есть серьёзные биполярные проблемы! Он(а) то „тих(а)“ и „подавлен(а)“ (при z < 0) и вовсе не отвечает вам. А на другой день (при z ≥ 0), он(а) внезапно становится „разговорчивым(ой)“ и „живым(ой)“, болтая с вами без умолку. Чёрт, радикальные перемены! Нет никакого перехода в его (её) настроении, и вы не знаете, когда оно ухудшается или улучшается. Да… это шаговая функция»[18].
Остроумный метод коррекции ошибки, использованный Розенблаттом, хорошо работал при наличии одного слоя обучаемых весов, но как быть с настройкой синаптических весов глубокой сети? Решая именно эту проблему, Уидроу в ADALINE использовал для коррекции ошибки величину сигнала до прохождения его через функцию активации. Ивахненко, как мы уже знаем, использовал нейроны, в основу которых был положен полином Колмогорова — Габора, являющийся непрерывной функцией от входных значений (при этом Ивахненко подбирал параметры полинома при помощи методов регрессионного анализа и не использовал ничего хотя бы отдалённо похожего на различные методы коррекции ошибки, применявшиеся Розенблаттом и Уидроу). В перцептроне Румельхарта роль функции активации играет логистическая функция[19], график которой имеет форму сглаженной «ступеньки». Функции с подобными графиками иногда называют сигмоидами, поскольку их график напоминает букву S.
Кстати говоря, Оливер Хевисайд, человек, имя которого получила «ступенька», был весьма незаурядной личностью. Учёный-самоучка, инженер, физик и математик, он впервые применил комплексные числа для изучения электрических цепей, независимо от других математиков создал векторный анализ, получил множество других значимых результатов на стыке физики и математики. Он на всю жизнь заслужил репутацию научного смутьяна, однако его весьма неортодоксальные работы заметно изменили облик математики и физики. Возражая на обвинения в недостаточной математической строгости его работ, Хевисайд решительно заявил: «Математика — экспериментальная наука, и определения даются не в начале, а позже. Они возникают сами, когда природа предмета уже развита». А в другой раз высказался ещё более афористично: «Должен ли я отказаться от обеда, потому что не полностью понимаю процесс пищеварения?»
Использование непрерывной функции активации открыло перед глубокими нейронными сетями совершенно новые перспективы. В результате появления и повсеместного признания метода обратного распространения ошибки произошёл долгожданный прорыв в области обучения глубоких сетей. Однако эта революция удивительным образом растянулась почти на два десятилетия.
- ↑ David E. Rumelhart: A Scientific Biography / The David E. Rumelhart Prize For Contributions to the Theoretical Foundations of Human Cognition // https://web.archive.org/web/20131030220027/http://rumelhartprize.org/?page_id=10
- ↑ Klahr D. (2014). Cognition and Instruction. Carnegie Mellon Symposia on Cognition Series. Psychology Press // https://books.google.ru/books?id=GmWYAgAAQBAJ
- ↑ Frankish K., Ramsey W. (2012). The Cambridge Handbook of Cognitive Science. Cambridge University Press // https://books.google.ru/books?id=JjEzjrZ6ZG4C
- ↑ Bobrow D. G., Collins A. F. (1975). Representation and Understanding: Studies in Cognitive Science. Academic Press, Inc // https://dl.acm.org/doi/book/10.5555/1102011
- ↑ Thagard P., Zalta E. N. (2008). Cognitive Science / The Stanford Encyclopedia of Philosophy // https://plato.stanford.edu/archives/fall2008/entries/cognitive-science/
- ↑ Willingham D. T. (2002). Ask the Cognitive Scientist. Allocating Student Study Time: “Massed” versus “Distributed” Practice / American Federation of Teachers // https://www.aft.org/periodical/american-educator/summer-2002/ask-cognitive-scientist
- ↑ Miller G. A. (2003). The cognitive revolution: a historical perspective / TRENDS in Cognitive Sciences, Vol. 7, No.3, March 2003 // https://www.cs.princeton.edu/~rit/geo/Miller.pdf
- ↑ Frankish K., Ramsey W. (2012). The Cambridge Handbook of Cognitive Science. Cambridge University Press // https://books.google.ru/books?id=JjEzjrZ6ZG4C
- ↑ Hinton G. E., Anderson J. A. (1981). Parallel Models of Associative Memory. Erlbaum // https://books.google.ru/books/about/Parallel_Models_of_Associative_Memory.html?id=rZ99AAAAMAAJ
- ↑ Fernandino L., Tong J.-Q., Conant L. L., Humphries C. J., Binder J. R. (2022). Decoding the information structure underlying the neural representation of concepts / PNAS, Vol. 119, Iss. 6 // https://doi.org/10.1073/pnas.2108091119
- ↑ Quinlan P. T. (1987) Theoretical notes on “Parallel models of associative memory” / Cognitive Neuropsychology, Vol. 4, Iss. 3, pp. 333—364 // https://doi.org/10.1080/02643298708252043
- ↑ Bohannon J. (2016). Who’s the Michael Jordan of computer science? New tool ranks researchers' influence / Science, Apr. 20, 2016 // https://www.sciencemag.org/news/2016/04/who-s-michael-jordan-computer-science-new-tool-ranks-researchers-influence
- ↑ Rumelhart D. E. (1990). Brain Style Computation: Learning and Generalization / Zornetzer S. E., Davis J. L., Lau C. (1990). An Introduction to Neural and Electronic Networks. San Diego: Academic Press // https://books.google.ru/books?id=6ZNQAAAAMAAJ
- ↑ Сергей (tac). (2012). Какова роль первого «случайного» слоя в перцептроне Розенблатта / Хабр, 21 марта // https://habr.com/ru/post/140387/
- ↑ Rumelhart D. E., McClelland J. L. (1986). Parallel Distributed Processing: Explorations in the Microstructures of Cognition. Cambridge, MA: MIT Press // https://doi.org/10.7551/mitpress/5236.001.0001
- ↑ McClelland J. L., Rumelhart D. E. (1989). Explorations in Parallel Distributed Processing — Macintosh version: A Handbook of Models, Programs, and Exercises. MIT Press // https://books.google.ru/books?id=3WkcZOWmljEC
- ↑ Rosenblatt F. (1961). Principles of Neurodynamics. Perceptrons and the Theory of Brain Mechanisms. Cornell aeronautical lab inc., Buffalo, New York. Defense Technical Information Center // https://books.google.ru/books?id=Tk2tDAEACAAJ
- ↑ Kang N. (2017). Multi-Layer Neural Networks with Sigmoid Function — Deep Learning for Rookies (2) / Towards Data Science, Jun 27 // https://towardsdatascience.com/multi-layer-neural-networks-with-sigmoid-function-deep-learning-for-rookies-2-bf464f09eb7f
- ↑ Rumelhart D. E., Hinton G. E., Williams R. J. (1986). Learning representations by back-propagating errors / Nature, Vol. 323, Iss. 6088, pp. 533—536 // https://doi.org/10.1038/323533a0