Нейрон — штука довольно простая. Это крошечный физический объект, состав которого нам понятен. Он включает в себя те же компоненты, которые входят в любую животную клетку, но которые, однако, имеют ряд уникальных особенностей. Когда несколько сотен миллионов нейронов объединяются в сеть, происходят поистине фантастические вещи: мы, владельцы этой нейронной сети, можем узнавать друзей, наслаждаться музыкой Бетховена или ловить мяч одной рукой с расстояния 27 м.
Нейрон, как и все клетки позвоночных, представляет собой мешочек с внутриклеточной жидкостью, отделенный от окружающей среды тонкой эластической мембраной. Одни нейроны похожи на детские воздушные шарики. Форма других более сложна: они походят на амеб. Третьи и вовсе поражают своим причудливым строением. Большинство нейронов напоминают голые деревья зимой с многочисленными ветвями и веточками — с помощью этих отростков они соединяются с другими нейронами, своими ближайшими и дальними соседями. Но при всей замысловатости форм нейрон, как и любая другая клетка, состоит из единого внутреннего пространства, заключенного в границы мембраны — даже если местами эта мембрана напоминает не привычный мыльный пузырь, а тончайшие изогнутые трубочки для напитков.
Что же представляет собой клеточная мембрана? Она состоит из липидов — разновидности жиров, которые, как известно, не смешиваются с водой. Благодаря этому мембрана и выполняет свою барьерную функцию между внутренней и внешней водными средами. Но сама по себе эта липидная оболочка мало что может делать. В лабораторных условиях можно создать искусственную клетку, имеющую одну только клеточную мембрану, но такая клетка будет лежать мертвым грузом. Настоящая клеточная мембрана усеяна мириадами крошечных молекулярных машин, каждая из которых выполняет свою конкретную задачу — например, один из видов встроенных в нее белковых молекул открывает «ворота» (каналы), пропуская внутрь клетки и из нее потоки заряженных частиц (ионов). Этот механизм лежит в основе передачи нервного импульса.
Нервные клетки выполняют множество функций, но главная из них — та, что отличает их практически от всех остальных клеток, — коммуникация с другими нейронами. В большинстве случаев они делают это посредством передачи коротких электрических импульсов, или спайков. Эти импульсы могут передаваться как на короткие, так и на очень длинные расстояния. Некоторые нейроны поддерживают коммуникацию (мы говорим: «Обмениваются нервными импульсами») только со своими ближайшими соседями. Эти так называемые интернейроны (вставочные нейроны или нейроны локальной сети) передают сигналы на расстояние до 10 микрометров, то есть всего до одной сотой миллиметра (1 мкм равен 0,001 мм). Для сравнения: некоторые нервные импульсы проходят путь от головного мозга до нижней части спинного мозга, когда вы пытаетесь пошевелить большим пальцем ноги, или в обратном направлении, если вы больно бьетесь ногой о лежащий на земле камень.
Нервные импульсы передаются через нейроны совсем не так, как электрический ток, текущий по медным проводам. Это гораздо более сложный биологический процесс, и в нем активно участвует клеточная мембрана: передача электрического импульса происходит за счет быстрого колебания мембранного потенциала, которое возникает в результате перемещения потоков ионов внутрь клетки и из нее через встроенные в мембрану специализированные белковые молекулы (ионные каналы). Вот почему передача импульсов происходит довольно медленно по сравнению с течением электрического тока. В зависимости от типа аксона скорость распространения по нему нервного импульса составляет от 10 до 100 м/сек, тогда как электричество бежит по проводам со скоростью около 300 млн м/сек. Такая низкая проводимость ограничивает вычислительную мощность нашего мозга и является основной причиной того, почему он не может использовать для решения проблем простые стратегии перебора, основанные на грубой вычислительной силе.
На конце аксона обычно находится синапс. Это место контакта, через которое нейроны общаются друг с другом. Возникший в синапсе нейрона электрический сигнал преобразуется в химический: под воздействием спайка специальный синаптический механизм выбрасывает в пространство между двумя синапсами (синаптическую щель) особые химические вещества, которые воспринимаются синапсом другого нейрона. Эти химические передатчики сигналов называются нейромедиаторами или трансмиттерами. Поскольку существует очень много разных типов нейромедиаторов, которые используются для разных целей в разных отделах мозга, а также благодаря тому, что механизм их выработки включает множество шагов, мы имеем возможность вмешиваться в этот процесс и в какой-то степени манипулировать функционированием мозга — с терапевтическими целями или ради удовольствия. Например, мы можем воздействовать на синапсы с помощью нейролептиков, противоэпилептических препаратов, валиума, помогающего нам успокоиться, прозака, делающего нас счастливыми, а также хорошо известного всем никотина.
Одни нейромедиаторы возбуждают постсинаптический нейрон, другие тормозят; одни действуют очень быстро (за миллисекунды), другие довольно медленно (за секунды и даже десятки секунд). Во многих, но не во всех случаях нейрон может синтезировать только один вид нейромедиатора. Учитывая, что разные типы нейронов имеют тысячи различных паттернов связей с другими нейронами, дополнительное многообразие нейромедиаторов значительно увеличивает разнообразие вычислений, которые может выполнять мозг.
Выбрасываемые нейроном нейромедиаторы могут быть возбуждающими или тормозящими — могут повышать или понижать активность воспринимающего их нейрона. (В реальности нейрон редко подвергается воздействию только одного типа нейромедиаторов, но сейчас для простоты обсуждения давайте предположим, что это так.) Второй нейрон интегрирует все получаемые им входные сигналы, и, если за короткое время количество определенных сигналов превышает определенный порог, в нем возникает волна возбуждения — «потенциал действия». Этот потенциал действия распространяется по нейрону и передается дальше третьему нейрону, приводя к его возбуждению или торможению, и т. д.
На этом этапе мы видим вторую важную функцию нейронов: они решают, какие сигналы передать другим нейронам, а какие не пропустить дальше. Это решение принимается ими, как уже было сказано, путем объединения всех получаемых входных сигналов. Проще говоря, они складывают все возбуждающие сигналы и исключают из них все тормозящие. Разумеется, это очень упрощенная картина, учитывая все разнообразие входящих сигналов и факторов, влияющих на их действие. Изучением этого процесса занимается отдельная область нейробиологии: некоторые из умнейших моих коллег посвятили свою жизнь исследованию многочисленных и удивительных способов синаптической коммуникации.
Итак, базовая функция нейрона — ждать поступления химических входных сигналов и, когда эти сигналы достигают определенной величины, генерировать потенциал действия, чтобы передать нервный импульс. Но простая передача импульсов от нейрона к нейрону не делает мозг мозгом. Чтобы мозг был мозгом, необходимо, чтобы нейроны принимали решения о том, какие сигналы передавать дальше, а какие нет. Разумеется, я сильно упрощаю, потому что моя цель — рассказать вам о восприятии. А для этого вам нужно знать всего несколько ключевых вещей и прежде всего то, что потенциал действия вызывает изменение электрического заряда на своем пути и мы, простые смертные, можем отследить этот электрический импульс, или спайк, при помощи тончайших длинных зондов, называемых микроэлектродами.
В предыдущей главе рассказывалось об опытах Хьюбела и Визеля.
Проводя эксперименты на кошках и обезьянах, они впервые применили к исследованиям зрительной коры новую технологию микроэлектродов, позволяющих регистрировать возбуждение отдельных нейронов. С помощью таких электродов они изучили, как происходит бинокулярное зрение, а главное — выяснили, на что реагируют отдельные нейроны, как некоторые из них служат детекторами границ, другие реагируют на форму линейных сегментов и т. д.
Из книги "Глубокое обучение", Николенко С., Кадурин А., Архангельская Е.
Со многими задачами человеческий мозг до сих пор справляется лучше и быстрее, чем компьютер. Например, мы лучше обращаемся с естественным языком: можем прочитать, понять и содержательно изучить книгу, а современные компьютеры испытывают большие проблемы с ответами даже на очевидные для человека вопросы. Да и вообще мы хорошо умеем обучаться в широком смысле этого слова – компьютерные программы пока очень далеки от человеческого уровня обобщений и поиска взаимосвязей между разнородной информацией. Что же делает человеческий мозг таким эффективным? Как он умудряется достичь таких высот? В чем разница между тем, что делают нейроны в мозге, и тем, что делают транзисторы в процессоре? Тема эта неисчерпаема, поэтому здесь мы приведем только пару локальных примеров, с помощью которых продемонстрируем основные различия и отчасти мотивируем отдельные особенности нейронных сетей.
Человеческий (да и любой другой) мозг состоит из нейронов. У каждого из них есть один длинный отросток, аксон, и много коротких отростков, дендритов, которые связываются с аксонами других нейронов. Связи между дендритами и аксонами тоже имеют сложную структуру и называются синапсами. Связей в мозге очень много: порядка 10¹¹ (сто миллиардов) нейронов, у каждого из которых в среднем 7000 связей, то есть получается, что в нашем мозге содержится порядка 10¹⁴–10¹⁵ (сто триллионов) синапсов.
Каждый нейрон время от времени посылает по аксону нервный импульс (поанглийски он называется spike), который имеет электрическую природу. Пока нейрон жив, он никогда не останавливается и продолжает подавать сигналы. Но при этом нейрон может находиться в двух разных состояниях: когда он находится в «выключенном» состоянии, частота подачи сигналов маленькая, а когда он возбуждается, «включается», частота подачи импульсов (firing rate) сильно увеличивается. Активация нейронов зависит от сигналов, приходящих через синапсы и затем дендриты от других нейронов. Связь в синапсе, кстати, может быть как положительная (excitation), когда активация соседнего нейрона повышает вероятность активации нашего, так и отрицательная (inhibition), когда активация соседнего нейрона, наоборот, подавляет активность.
Хотелось бы, конечно, провести аналогию между нейронами и транзисторами, из которых состоит процессор, но уже на уровне подачи нервных импульсов мы видим первое важное различие между мозгом и компьютером. Дело в том, что нейрон работает стохастически: он выдает электрические сигналы через случайные промежутки времени. Их последовательность можно довольно хорошо приблизить пуассоновским случайным процессом, интенсивность которого меняется в зависимости от того, возбужден нейрон или нет. В компьютерах тоже есть гейты, обменивающиеся сигналами друг с другом, но они делают это совершенно не стохастически, а с очень жесткой синхронизацией: частота процессора, давно уже измеряющаяся в гигагерцах, – это и есть частота такой синхронизации. На каждом такте гейт одного уровня передает сигнал следующему уровню, и делают они это хоть и несколько миллиардов раз в секунду, но строго одновременно, по команде.
Возможно, дело в том, что в биологии все нечетко, и синхронизация между нейронами была бы желательна, но достичь ее у создавшей нас эволюции просто не получилось? Вовсе нет: простейшие наблюдения показывают, что на самом деле нейроны хорошо умеют синхронизироваться и очень точно засекать весьма короткие промежутки времени.
Самая простая и яркая иллюстрация этого – стереозвук. Когда вы переходите от одной стороны комнаты к другой, вы можете, опираясь исключительно на звук, идущий из колонок вашего компьютера, определить направление на его источник. Очевидно, в доисторические времена для людей было крайне важно понять, слева или справа хрустнула ветка под лапой тигра... Чтобы узнать направление, вы отмечаете разницу во времени, когда звук приходит в левое и правое ухо. Расстояние между внутренними ушами не слишком большое, сантиметров двадцать. И если разделить его на скорость звука (340 м/с), получится очень короткий интервал, десятые доли миллисекунды, который, тем не менее, нейроны отлично распознают, что позволяет определить направление с хорошей точностью. То есть ваш мозг в принципе мог бы работать как компьютер с частотой, измеряющейся килогерцами. С учетом огромной степени параллелизации, достигнутой в архитектуре мозга, это могло бы привести к вполне разумной вычислительной мощности. Но почему-то мозг этого не делает.
Кстати, о параллелизации. Второе важное замечание про работу человеческого мозга: мы распознаем лицо человека за пару сотен миллисекунд. А частота импульсов в аксонах бывает от 10 Гц в неактивном состоянии до примерно 200 Гц во время самой сильной активации. Это значит, что связи между отдельными нейронами активируются минимум за десятки миллисекунд, и в полном цикле распознавания человеческого лица не может быть последовательной цепочки активаций длиннее, чем буквально несколько нейронов; скорее всего, меньше десятка!
То есть мозг, с одной стороны, содержит огромное число нейронов и еще больше связей между ними, но с другой – устроен очень плоско по сравнению с обычным процессором. Процессор в компьютере исполняет длинные последовательные цепочки команд, обрабатывая их в синхронном режиме, а у мозга цепочки короткие, зато работает он асинхронно (стохастически) и с очень высокой степенью параллелизации: нейроны активируются сразу во многих местах мозга, когда начинают распознавать лицо и делать много других увлекательных вещей. Можно сказать, что с этой точки зрения мозг больше похож на видеокарту, чем на процессор, и к видеокартам мы действительно еще вернемся.
В человеческом мозге есть огромное число «горизонтальных» связей между нейронами (когда связаны друг с другом нейроны одного уровня), множество замкнутых цепочек связанных нейронов, а также неожиданных и непонятных связей нейронов из совершенно разных областей мозга. Все эти связи время от времени срабатывают, но единой картины того, зачем все это нужно и как используется, в науке пока не сложилось. Так что на самом деле мы очень плохо понимаем, как работает настоящий человеческий мозг, и искусственные нейронные сети – это не попытка приблизиться к реальной структуре, а достаточно абстрактные модели, созданные для решения оптимизационных задач.
Здесь стоит отметить, что в нейробиологии и информатике есть целое направление исследований, связанное с моделированием биологических, «настоящих» нейронов. Разных моделей много, их можно условно разделить на электрические, предсказывающие напряжение на клеточной мембране нейрона , и естественные, которые прогнозируют вероятность (и частоту) активации как функцию от входного воздействия. Используются эти модели в наше время не только для интереса, но и для разработки «протезов» нейронов, например, для восстановления сетчатки глаза.
Важнейшее свойство человеческого мозга – его пластичность. Многие исследования мозга, особенно ранние, выделяли в нем зоны, отвечающие за те или иные функции. По большому счету, только это и было доступно первым нейробиологам: они могли изучать, что человек теряет при травмах того или иного отдела мозга. Так, например, центр Брока, открытый Полем Брока еще в 1865 году, отвечает за артикуляцию речи.
(Поль Брока (Paul Pierre Broca, 1824–1880) – французский хирург и антрополог. Брока был фактически основателем современной антропологии: в середине XIX века он провел ряд исследований, сравнивая характеристики скелетов разных времен (пришлось раскапывать могилы, что тогда не очень приветствовалось), основал первое в Европе общество антропологии и журнал «Антропологическое обозрение». Впрочем, в наше время ученому изрядно бы досталось: исходя из того, что размер мозга напрямую связан с уровнем интеллекта, он пришел к выводу, что мужчины в среднем значительно умнее женщин, а также разделил расы на «высшие» и «низшие» на основе своих сравнений размеров мозга. Кстати, мозг самого Поля Брока сейчас находится в «Музее Человека» в Париже.)
Если центр Брока поврежден, больной по-прежнему все понимает, но при попытках говорить получается ерунда: распадается грамматика, не удается подбирать правильные предлоги, путаются звуки в словах. А зона Вернике отвечает, наоборот, за понимание речи на слух. В человеческом мозге много узко специализированных участков.
Исходя из этих исследований, можно подумать, что мать-природа (точнее, мать-эволюция) создала человеческий мозг подобно компьютеру с детально разработанной спецификацией: есть «видеокарта», отвечающая за зрение, есть «звуковая карта», обрабатывающая звук, есть «чатбот», который обучился языку, и все они представляют собой особые архитектуры нейронов, специально подогнанные под соответствующую задачу еще на генетическом уровне.
Такая система взглядов была, конечно, вполне логична на ранних этапах изучения мозга. Основателем этой теории считается Галилео Галилей, а пользовавшаяся большой популярностью в XIX веке френология по сути своей основана именно на этом предположении.
Однако это вовсе не обязательно так! Исследования нейропластичности показывают, что нейроны из самых разных областей мозга могут при необходимости принимать на себя функции, обычно им не свойственные. Сейчас уже ясно, что в нашем мозге не только постоянно образуются новые связи между нейронами (новые синапсы), но и происходит непрерывное обновление самих нейронов (нейрогенезис). А уже существующие нейроны могут переобучиться для того, чтобы обрабатывать совершенно новые сигналы. Считается, что на нейропластичности основан феномен фантомных болей: нейроны, которые раньше «отвечали» за утраченные органы, начинают обучаться чему-то новому, а другие отделы мозга по привычке интерпретируют новые сигналы как идущие от уже давно не существующих конечностей.
Более того, уже сейчас разрабатываются очень интересные устройства, основанные на нейропластичности. Система BrainPort, например, пытается обучить человека видеть... языком! Информация от укрепленной на голове камеры поступает – прямо в цифровом виде, пиксел за пикселом, – на специальную матрицу электродов, укрепленную на языке (язык здесь нужен только потому, что это очень чувствительный орган, на котором много нервных окончаний). В результате человек действительно способен обучиться видеть (не так, как обычными глазами, конечно), то есть мозг, по всей видимости, каким-то образом распознает, что осязательная информация, поступающая с языка, больше не похожа на вкус еды, а скорее напоминает зрительные образы, и «перенаправляет» ее в зрительную кору. Да и обычный кохлеарный имплантат, которые уже сегодня помогает сотням тысяч слабослышащих людей, основан на схожем принципе: он не пытается симулировать слуховые ощущения во внутреннем ухе, а оцифровывает звук и подает его на электроды, непосредственно стимулирующие кохлеарный нерв.
И даже еще более того, в этих примерах можно было бы сказать, что у мозга уже «есть аппарат» для обработки изображений, и дообучение могло бы состоять всего лишь в том, чтобы научиться передавать данные из необычной «точки входа» в нужные участки коры головного мозга (собственно, видимо, так оно и происходит), а не в том, чтобы научиться обрабатывать с нуля эти данные. Однако есть примеры обучения и совершенно новым, нехарактерным для человека вещам. Например, некоторые слепые люди развивают в себе способность к эхолокации, определению местоположения окружающих объектов по отраженному от них звуку, – совсем как у летучих мышей (ну ладно, не так хорошо, как у летучих мышей, конечно). Некоторые слепые могут просто щелкать языком и определять окружающие объекты, прислушиваясь к отзвукам. А в других экспериментах вполне зрячие люди обучались эхолокации, получая сигналы с укрепленного на них сонара.
Итак, мы узнали, что человеческий мозг состоит из связанных между собой нейронов, которые активируются в зависимости от своих «предков» и при активации передают друг другу сигналы. Мы выяснили, что мозг может адаптироваться к новым источникам информации, даже изначально совершенно чуждым ему. Исследования нейропластичности, да и просто тот факт, что все нейроны в мозге работают примерно одинаково, убеждают нас в том, что весь мозг функционирует по некоему «единому алгоритму», который может обучать конгломераты из нейронов на самых разных данных, выделяя признаки из потока неструктурированной информации.
При создании искусственного интеллекта очень естественно задаться вопросом: можем ли мы этот единый алгоритм тоже как-то промоделировать? Очень заманчиво было бы построить модель этого «единого алгоритма», сгруппировать вместе много-много искусственных нейронов и получить готовый к употреблению мозг. Основная идея искусственных нейронных сетей – собрать сеть из простых нейронов, активирующихся или не активирующихся в зависимости от снабженных поддающимися тренировке весами, – действительно позаимствована у природы. Однако дальше путь развития искусственного интеллекта отошел от природы; настоящие нейроны устроены значительно сложнее, чем компьютерные модели. Конечно, наши знания о мозге не очень детальны, и результаты исследований того, как работают глубокие сети, никак нельзя напрямую переносить на функционирование человеческого мозга (да и крысиного лучше поостеречься) – слишком много там еще непонятного для нас. Да и ставить перед собой цель как можно точнее смоделировать человеческий мозг нейронной сетью – возможно, не лучшая идея. Однако все это совершенно не запрещает нам вдохновляться тем, как работает мозг, использовать архитектурные идеи, приходящие из нейробиологии, для того, чтобы улучшить работу нейронных сетей. Есть несколько очень удачных параллелей между алгоритмами и архитектурами, использовавшимися в нейронных сетях, и представлениями современной нейробиологии о том, как устроен наш мозг. Просто надо понимать, что результатом здесь на данный момент могут быть только более удачные модели для решения конкретных прикладных задач. До задачи «повторить архитектуру человеческого мозга» мы, скорее всего, все-таки еще не доросли.