Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Первая модель искусственного нейрона Мак-Каллока-Питтса
Сейчас один из самых популярных инструментов искусственного интеллекта — это нейронные сети. Само название намекает на то, что речь идёт о некотором аналоге естественных нейронов и синаптических связей в мозгу. Отсюда вытекает распространённое ошибочное предположение, что нейронные сети являются точной копией своего биологического прототипа. Конечно же, это не так, а точнее не совсем так: учёные действительно работают над созданием импульсных нейронных сетей, предназначенных для максимально достоверной симуляции процессов, происходящих в нервной ткани, но обычно искусственный нейронные сети довольно сильно отличаются от своих биологических прародителей. Революция глубокого обучения произошла благодаря моделям, похожим на мозг примерно в той мере, в которой самолёты похожи на птиц. И всё-таки у истоков создания этих моделей стояли попытки учёных три четверти века назад постичь принципы работы нервной системы живых существ.
Один из «дедушек» современных нейросетей — это перцептрон Розенблатта, представленный публике в конце 1950-х, но его появлению предшествовали другие, менее известные попытки описать принципы, по которым могла бы работать «думающая» машина, подобная мозгу. К ним относятся исследования Уолтера Питтса и Уоррена Мак-Каллока. Их модель, увидевшая свет в 1943-м году в статье под названием «Логическое исчисление идей, относящихся к нервной активности», была весьма новаторским изобретением. И за ней стоит довольно занятная история. Кто такие были эти товарищи, приложившие руку к созданию модели? Чопорные учёные в очках с роговой оправой или, может, аналог современных хипстеров из thinktank’ов?
Согласно рукописи нашего коллеги — Сергея Маркова aka oulenspiegel, по рассказам очевидцев, этих учёных объединяла не только любовь к математике и нейрофизиологии, но и, например, левые взгляды: на вечеринках у Уоррена Мак-Каллока собиралась интеллигенты, пили виски и обсуждали разные актуальные научные и политические вопросы. Но об этом немного позже.
Предыстория
Начнём с того, что если бы не было Уолтера Питтса, может быть, никакой модели и не было бы создано. Как смог Питтс, простой мальчишка из Детройта, выросший в неблагополучной семье, познакомиться с профессором? Часто он сбегал из дома, так как, по словам друга и коллеги Питтса, Джерома Летвина, отец мальчика был водопроводчиком и часто бил сына. В один из таких эпизодов Питтс провёл неделю в библиотеке, где в его руки попала книга Бертрана Рассела и Альфреда Уайтхеда «Principia Mathematica» («Основания математики»; в научных трудах эту фундаментальную работу обычно называют просто «PM»). Мир математики, такой уютный и безопасный, в отличие от реального, не на шутку увлёк мальчика. Уже тогда, в 13 лет, он смог сформулировать ряд вопросов, письмо с которыми адресовал Расселу. Тот ответил с восхищением и благодарностью и предложил Питтсу приехать учиться в аспирантуре в Кембридже. Увы, для тринадцатилетнего подростка это было абсолютно нереально, но через несколько лет, когда Рассел прибыл в США прочитать курс лекций в Чикагском университете, Питтс отправился в Чикаго, сбежав из отчего дома, чтобы уже не вернуться в него никогда. Рассел с радостью встретил юного Уолтера и представил его своему приятелю Рудольфу Карнапу, математику, который в то время работал в Чикагском университете. Карнап остался впечатлён. Но из-за того, что пятнадцатилетний «вундеркинд» получил лишь неполное школьное образование, он не смог официально стать студентом университета. В итоге юноше выделили специальную небольшую стипендию, которой хватало на то, чтобы снимать небольшую комнатёнку и перебиваться с хлеба на воду. Работая с Карнапом, Питтс заинтересовался работами по математической теории нервной проводимости, написанными Николаем Рашевским, украинским иммигрантом в США, отцом-основателем математической биофизики.
Работая с Карнапом, Питтс быстро пришёл к выводу, что, хотя структура мозга должна определяться генетически, гены никак не могут задавать каждую из триллионов
синаптических связей. Необходимый объём генетической информации был бы попросту слишком велик. Питтс предположил, что человек рождается с около-случайными математическими параметрами нейронов, и в результате некоторого процесса они меняются на подходящие к выполнению той или иной задачи. C технической точки зрения такой подход оказался удобным, мы используем его и сейчас — веса нейронных сетей на начальном этапе обычно инициализируются случайным образом.
Так как Питтс заинтересовался темой математического моделирования мозга, Джером Летвин, со слов которого мы много знаем о юности Питтса, решил познакомить того с Уорреном Мак-Каллоком, который занимался исследованиями мозга и на тот момент недавно перебрался в Чикаго. Последний быстро привлек юношу к своему проекту по созданию логической модели мозга и нервной системы.
Питтс на несколько лет перебрался в дом Мак-Каллоков, где эти двое начали работу над «взломом» логики нейронных сетей мозга. «Неделями они анализировали потоки сигналов по разветвлённым мозговым путям», — вспоминал позже Летвин. При этом 18-летний Питтс, похожий на «уточку-очкарика», разительно контрастировал со своим коллегой, философом и мечтателем 42-х лет, который частенько сопровождал свои штудии бокалом хорошего виски. Посиделки товарищей вылились в одну из основополагающих работ в области искусственного интеллекта, название которой мы уже упоминали — «Логическое исчисление идей, относящихся к нервной активности».
Уолтер Питтс
Мак-Каллок был сыном бизнесмена. Он получил религиозное школьное образование, но вскоре отошёл от религии и стал размышлять в научных терминах о том, как устроен человек. Если разумом движет не бог, то значит какие-то механизмы, рассуждал он. В поиске этих механизмов он и пришёл к своей исследовательской теме — как работает мозг и сознание. Он получил хорошее университетское образование и с 1934-го года работал в Лаборатории нейрофизиологии Йельского университета, а в 1941 перешёл на факультет психиатрии Иллинойсского университета.
Уоррен Мак-Каллок
Кстати, у семейства Мак-Каллоков — Уоррена и жены — было в собственности целое ранчо. Они купили его, чтобы организовать там летний лагерь для нуждающихся детей (видимо, будучи под впечатлением от жизненной истории Питтса). Позже туда стали съезжаться на отдых разного рода интеллектуалы. Вечеринки, как правило, проходили в либеральном ключе, с купанием голышом. Несмотря на протесты своей ультраконсервативной супруги, бывал там и Норберт Винер, один из отцов-основателей кибернетики. Посетители ранчо часто видели его в шезлонге с сигарой в руках. Здесь он забывал о повседневной рутине и погружался в мир размышлений и интеллектуальных бесед.
И опять Летвин знакомит Питтса с человеком, с которым ему предстоит работать — с Винером. История повторяется — Винер остаётся так впечатлён талантом юноши, что предлагает ему позицию аспиранта в MIT, несмотря на отсутствие у Питтса формального образования. В 1943-го году они начинают работать вместе над математическим моделированием мозга. Винер надеялся помочь Питтсу своими знаниями теории вероятностей и статистики, так как понимал, что нейронные сети могут лечь в основу вычислительных машин, а это предвещало кибернетическую революцию.
Питтс быстро приобрёл большой авторитет в компании кибернетиков — многие исследователи просили его прочитать их статьи перед публикацией, чтобы быть уверенными, что их математические выкладки не содержат ошибок. Но отношения с самим Винером у Питтса были непростыми.
Винер был обеспокоен недостаточным прогрессом своего ученика в работе над диссертацией и считал, что корнем проблемы является разрушительное влияние приятелей Питтса — Летвина и Оливера Селфриджа, которые постоянно ввязывались в различные авантюры. Одна из них касалось геологии. Питтс был уверен, что в скалах Массачусетса должны быть изумруды, и с помощью Селфриджа раздобыл динамит, чтобы взорвать его в предполагаемом месте их залегания. В результате последовавшего взрыва Питтс сломал руку. Другой авантюрой стал дебют Летвина и Питтса в роли начинающих сценаристов в Голливуде. Они написали пьесу «Шестое королевство» о не говорящем по-английски человеке из Польши, который посещает врача с жалобой на головную боль и в результате серии недоразумений оказывается в сумасшедшем доме.
Однажды Питтс забыл в камере хранения чемодан с манускриптом статьи, который Винер дал ему на вычитку. После долгой череды приключений статью удалось вернуть, но Винер был сильно рассержен: он опасался, что из-за досадной задержки с публикацией результатов его опередит Клод Шеннон, который также работал над этой темой.
Впрочем, Винер и сам был знаменит своей рассеянностью, история сохранила множество забавных воспоминаний современников об этом. Например, Роберт Фано, коллега Винера, профессор электротехники и информатики в MIT, рассказывал, что однажды в конце беседы в институтском коридоре, Винер спросил своего собеседника, в каком направлении он шёл и, услышав ответ, сказал: «Хорошо! Это значит, что я уже пообедал».
Норберт Винер
Источник фото
Тем временем, Мак-Каллок перебрался к Питтсу в Бостон, получив щедрый грант на исследование мозга в стенах MIT. На дверях кабинета коллег красовалась надпись «Экспериментальная эпистемология». Будучи воодушевлёнными таким успехом, они пишут Винеру и Розенблюту, его коллеге, письмо в шуточном тоне, которое начинается со слов «Знайте, о благороднейшие, великодушные и могущественные лорды...». Это шуточное послание совершенно неожиданно для его авторов стало спусковым крючком цепи нелепых событий, изменивших судьбу Мак-Каллока и Питтса, а также, возможно, пути развития науки на заре нейросетевой эры.
Винер в то время пребывал в состоянии депрессии — издательства, ещё вчера конкурировавшие за право издать его «Кибернетику», одно за другим отказывались публиковать автобиографию учёного. В ней он довольно неоднозначно отзывался о некоторых своих коллегах, и никто из издателей не хотел скандала. Жена Винера Маргарет решила, что это подходящий момент для того, чтобы поссорить его с коллегами, которые по её мнению оказывали на Винера плохое влияние. Маргарет рассказывает мужу удивительную историю о том, что несколькими годами ранее, когда их дочь Барбара несколько месяцев жила на ранчо Мак-Каллоков перед поступлением в университет, Летвин и Питтс якобы «много раз соблазняли их дочь». Депрессия, прошлые обиды из-за статьи, ужасный рассказ жены — всё это привело Винера в состояние, в котором шутливое письмо стало последней каплей. Он в довольно резком тоне попросил передать бывшим товарищам, что с этого момента никакого сотрудничества между ними быть не может.
Ссора с Винером сильно подкосила Питтса. На это наложились и научные неудачи. Результат его с Летвином эксперимента над зрением лягушек плохо согласовывался с предположениями Питтса и Мак-Каллока. Товарищи показывали амфибиям разные источники света, картинки из их естественной среды, «троллили» их управляемыми искусственными мухами на магнитах. Летвин записывал сигналы, передаваемые глазом в мозг, и сопоставлял их с использованными стимулами. Оказалось, глаз не просто регистрирует видимое, но фильтрует и анализирует информацию о визуальных характеристиках — о контрастности, изгибах и движении! В будущем результаты этих исследований были изложены в ставшей классической статье «Что сообщает глаз лягушки мозгу лягушки» (1959).
Джером Летвин (слева) и Уолтер Питтс
Источник фото
Почему Питтс расстроился, получив такие результаты? Он предполагал, что мозг является дискретным логическим устройством, выполняющим обработку сигналов органов чувств, однако выяснилось, что за обработку сигналов во многом отвечают аналоговые процессы, происходившие в хитросплетениях клеток сетчатки.
Питтс уничтожил свою недописанную диссертацию, стал много пить и почти забросил науку. В 1964-м году во время лекционного тура в Стокгольм остановилось сердце 70-летнего Винера. А в мае 1969-го, в возрасте 46 лет, умирает Питтс. Мак-Каллок пережил его лишь на несколько месяцев и умер в сентябре 1969-го.
В субботу, 21 апреля 1969 года, дрожащей рукой алкоголика, Питтс передал письмо из своей палаты в больнице Бет-Исраэль в палату Мак-Каллока в отделении интенсивной терапии сердца в госпитале Бригама: «Я понимаю, что у тебя был лёгкий коронарный приступ; …что ты присоединен ко множеству датчиков, подключенных к панелям и сигналам тревоги, которые постоянно контролирует медсестра, и, в силу этого, ты не можешь перевернуться в постели. Без сомнения, это кибернетика. Но всё это вызывает во мне ужасную грусть».
Лишь Летвин надолго пережил своих товарищей и умер в 2011-м. Во многом благодаря ему мы и знаем подробности жизни этих выдающихся людей.
Что же такого в работе Мак-Каллока и Питтса?
Уоррен Мак-Каллок ещё до встречи с Питтсом задавался вопросом, как можно описать причинную структуру нейронных событий и вывести логическую теорию знания. Он пытался найти то, что сам же назвал «психоном», — элементарную единицу нервной деятельности. Отчасти он был вдохновлён попытками Лейбница представить человеческое знание при помощи универсального символьного языка. Но не он один ставил себе такие задачи. Николай Рашевский и его группа математической биофизики занималась похожими вещами, за исключением того, что они пытались работать с гладкими функциями и дифференциальным исчислением, в то время как Мак-Каллок хотел использовать математическую логику и булеву алгебру. Такие схожие мысли пришли в голову двум разным людям неспроста: на тот момент совсем недавно сделали свои открытия Ричард Катон, Сантьяго Рамон-и-Кахаль, Луи Лапик, а затем и Ханс Бергер.
В современных учебниках нейрон Мак-Каллока и Питтса очень часто описывается неправильно. То, что приводится в качестве схемы работы этого нейрона, в действительности является описанием нейрона розенблаттовского перцептрона.
Важно понимать, что в нейроне Мак-Каллока и Питтса нет привычных нам изменяемых синаптических весов. Принцип работы нейрона Мак-Каллока и Питтса формулируется следующим образом: нейрон x срабатывает на шаге t, если соблюдаются два условия: 1) нет ни одного нейрона, связанного с нейроном x ингибирующей связью, сработавшего на шаге t − 1, и 2) число нейронов, связанных с нейроном x возбуждающей связью и сработавших на шаге t − 1, больше θ.
Вместо суммирования входящих сигналов, умноженных на соответствующие синаптические веса, есть подсчёт числа сработавших нейронов, связанных с данным возбуждающей связью, и сравнение их с пороговой величиной. При этом ингибирующая связь полностью запрещает срабатывание нейрона. Нейрон Мак-Каллока и Питтса это полностью дискретная модель, созданная вполне в духе символьной логики Рассела и Уайтхеда. Конечно, нейрон Мак-Каллока и Питтса при ближайшем рассмотрении оказывается частным случаем нейрона Розенблатта, на который наложены дополнительные ограничения. Синаптические веса в нём могут принимать значения равные лишь 1 или −∞.
В сетях Мак-Каллока и Питтса изначально в принципе отсутствует механизм обучения — первые попытки придумать такой механизм были предприняты лишь во второй половине 1940-х годов (работы Шимбела и Раппопорта). «Дискретное» наследие сетей Мак-Каллока и Питтса ещё долго тяготело над нейросетевыми исследованиями. Даже Розенблатт, сделавший под влиянием работ Хебба, Фарли, Кларка и Рочестера серьёзный шаг вперёд в обучении нейронных сетей, доказав теорему о сходимости перцептрона, не смог полностью преодолеть «ментальный фреймворк» символьного подхода — в его перцептронах функции активации так и остались «ступенчатыми», что делало невозможным применение методов градиентного спуска для обучении нейронных сетей. Именно поэтому проблема обучения многослойных перцептронов так и не была решена им в удовлетворительной мере. Впрочем, работа Фрэнка Розенблатта заслуживает как минимум одного отдельного поста.
Важно помнить, что в отличие от Розенблатта, которого интересовало, в первую очередь, создание обучающихся машин, Мак-Каллока и Питтса занимал совершенно другой вопрос — о том, как логика и закономерности мышления могут быть связаны с «физиологическим субстратом», как структуры, составленные из клеток, передающих импульсы, могут рассуждать, строить логические выводы.
Чтобы построить модель мышления, Питтсу и его старшему коллеге нужно было решить две задачи. Во-первых, научиться вычислять поведение любой заданной сети, а во-вторых, научится находить сеть, которая будет вести себя заданным образом (если, конечно, такая сеть существует). Иными словами, им предстояло найти паттерн активации сети при различных конфигурациях, и для этого сформулировать условия активации нейрона в разных условиях.
На ранних этапах своей работы Мак-Каллок столкнулся с проблемой петель (или кругов, как он их называл). Поведение линейной цепи без петель (сейчас мы называем такие сети сетями прямого распространения — feedforward neural networks) более-менее понятно, сигналы передаются от предшествующих в цепочке нейронов к следующим за ними и так далее. Моменту обработки каждого нейрона можно строго сопоставить некоторый момент времени t (сегодня мы говорим о t как о номере слоя сети, в котором находится нейрон). Однако как только в сети появлялись циклы (то есть сеть в современных терминах становилась рекуррентной), величина t теряла свой смысл. Кстати, существование петель в нейронных сетях мозга тогда ещё ставили под вопрос. Если они и существуют, предполагали тогда, наверное, именно они и вызывают эпилепсию. Сейчас-то мы знаем, что эпилепсия вызвана рядом других механизмов!
Именно в момент теоретического кризиса, вызванного проблемой петель, на помощь Мак-Каллоку пришёл Питтс. Он отлично знал логику, — неудивительно, ведь он был учеником Рудольфа Карнапа — одного из крупнейших специалистов в области формальной логики и ведущего представителя логического позитивизма. Именно карнаповский Язык-II (Language II) было решено использовать в дальнейшем для нотации. Но в итоге он оказался настолько сложен, что даже самым крутым математикам непросто его читать, да и авторы из-за этого допустили несколько ошибок.
Кроме того, Питтс до этого написал три статьи на связанные темы. Для решения задачи петель он предложил выделить подмножество «циклических» нейронов (на рис. 1 это нейроны 1 и 2), и для них необходимо:
1. Найти количество шагов N такое, чтобы состояния этих нейронов N шагов назад определяли их текущие состояния.
2. Найти для этих нейронов все возможные комбинации состояний и показать, как они меняются через каждые N шагов.
3. Связать сеть с конкретным утверждением, которое нужно проверить.
рис. 1
Определим N для этой сети, оно будет равно двум (то есть, состояние циклических нейронов будет зависеть от состояния два шага назад). Затем опишем все возможные состояния этой сети X.
X_1(t) = N_1(t) и N_2(t) (то есть оба нейрона активировались во время t)
X_2(t) = N_1(t) и не N_2(t)
X_3(t) = не N_1(t) и N_2(t)
X_4(t) = не N_1(t) и не N_2 (t) (ни один из двух нейронов не активировался во время t)
Дальше мы можем сопоставить сеть с определённым утверждением и проверить, является ли X_i (t) истинным или ложным.
Вот такой он,
***
Вопреки распространённому заблуждению, Мак-Каллок и Питтс не приводят нигде формального доказательства тьюринг-полноты (тьюринг-полнота модели означает, что с её помощью можно представить любую логическую операцию, заданную конечным количеством «слов») созданной ими модели, этот вывод они, по всей видимости, считали тривиальным, по крайней мере фон Нейман считал этот факт доказанным.
Кстати, в третьей части своей статьи исследователи предлагают распространить результаты своих наработок и на то, что мы бы сейчас назвали гуманитарными и социальными разделами психологии. Они, например, говорят, что их теории достаточно, чтобы описать и бихевиоризм, и интроспективную психологию, и физиологическую. Более того, они утверждают, что психиатру совсем не обязательно знать личное прошлое пациента, чтобы поставить диагноз, так как нейронная сеть определяется её текущим состоянием и текущими входными сигналами (это, вероятно, камень в огород Фрейда, который многое объяснял событиями из детства).
Модель Мак-Каллока и Питтса оказала огромное влияние на дальнейшее развитие информатики, но, возможно, вовсе не так, как принято писать в институтских учебниках. Конечно, её появление повлияло на дальнейшее развитие искусственных нейронных сетей, однако не меньшее влияние она оказала на развитие электронной вычислительной техники и классических символьных вычислений. Знаменитый «Отчёт от EDVAC», ставший продуктом труда Джона фон Неймана и его коллег и впервые сделавший достоянием общественности классическую «архитектуру фон Неймана», содержит единственную ссылку на работы других исследователей. И это ссылка на статью Мак-Каллока и Питтса. Сигнал, циркулирующий в петлевом контуре нейронной сети, стал для фон Неймана прообразом оперативной памяти цифровой машины.
Именно статья Мак-Каллока и Питтса стала в начале 1950 отправной точкой для одной из фундаментальных работ Стивена Клини. Он, в отличие от фон Неймана, не считал вопрос о тьюринг-полноте сетей Мак-Каллока и Питтса самоочевидным и решил построить формальное доказательство. Он определил понятие «регулярные события» [regular events] (сегодня называемые «регулярными языками» [regular languages], «рациональными языками» [rational languages] или «регулярными множествами» [regular sets]) и доказал, что сети Мак-Каллока и Питтса могут «представлять» [represent] регулярные события (в современной терминологии они могут «принимать» [accept] регулярные языки). Именно от этого термина происходит понятие «регулярные выражения» [regular expressions], хорошо известный большинству современных программистов.
Теперь, каждый раз набирая в ноутбуке строку «import re», вы просто обязаны вспомнить добрым словом двух романтиков эпохи первых нейронных сетей.
Забавно, что термин «регулярные» в отношении событий, языков, множеств и выражений, является хорошей иллюстрацией принципа «нет ничего более постоянного, чем временное». В своей работе Клини пишет: «Сейчас мы опишем класс событий, которые будем называть «регулярными событиями» (мы будем рады любым предложениям относительно более наглядного термина)». Как видим, за 70 лет подходящих предложений не поступило. Прилагательное «regular» в английском языке имеет несколько значений. Это и «регулярный», и «обычный», и «очередной», и «правильный», и даже «официальный». Что именно из этого имел в виду Клини? Этим вопросом исследователи задаются и в наши дни. По всей видимости, он хотел указать на то, что эти события обязательно происходят всякий раз, когда модель находится в одном и том же состоянии и получает на вход один и тот же сигнал.
В той же статье Клини также определил альтернативный формализм, являющийся обобщением сетей Мак-Каллока и Питтса, позволив «ячейкам» (то есть нейронам) сети принимать любые из конечного числа внутренних состояний. Клини назвал свой новый формализм «конечными автоматами» [finite automata] и показал, что сети Мак-Каллока и Питтса вычислительно эквивалентны конечным автоматам.
И на сладкое: Питтс и Летвин пробовали себя в роли сценаристов, а Мак-Каллок писал стихи. Поистине универсальные умы, сочетающие в себе и «физику», и «лирику»!
Вот один из опусов Мак-Каллока в переводе Сергея Маркова:
Мы замки на небе возводим,
И не растаять им в пыли,
Пока мы ими сумасбродим,
Пока с ума нас не свели.
Таскай их (жребий безысходен)
По разным уголкам Земли.
Мы замки на небе возводим,
И не растаять им в пыли.
И славен час, коль отцвели,
Но прежде чем во тьму уходим,
Находим ум, что плодороден,
Где б семена взойти могли.
Мы замки на небе возводим,
И не растаять им в пыли.