Муниципальный народный музей
истории Пермского района
Адрес: ул. Камская, 5Б
Телефон: 296 - 55 - 20

Некоторые алгоритмы под капотом мозга

Некоторое время назад мне захотелось изучить современные материалы по нейробиологии с точки зрения программиста. То есть вытащить из них основные алгоритмы, очистив их от лишних химических/биологических подробностей. 

Так что, если кто-то любит искусственные нейросети и хочет поискать вдохновения в естественных, эта статья может подойти. Все охватить одной статьей, понятно, не удалось — данных уж очень много.

Сначала краткое описание работы био-нейрона, чтобы было понятно дальнейшее. Кто и так знает основы — смело пропускайте.

 

Биологический нейрон: сома, дендриты, синапсы, спайк, EPSP, мембранный потенциал

 

STDP


Предполагается, что основа долговременной памяти — это то, как распределена эффективность по синапсам нейронов. Какие-то синапсы ослабляются, какие-то усиляются. Это называется пластичность. Но по какому алгоритму решается, какие синапсы и как будут менять веса? Самый известный принцип в живых нейросетях — Spike-timing-dependent plasticity.

Он наблюдается от насекомых до человека и формулируется так:

Если входной спайк в данный синапс склонен приходить непосредственно перед тем, как нейрон сам сгенерирует спайк, то синапс усиливается. 
Если входной спайк в данный синапс склонен приходить сразу после генерации спайка самим нейроном, то синапс ослабляется.


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


Зависимость прироста/убыли веса синапса от Δt меду входным (pre) и выходным(post) спайком

Это явление очень известно и подтверждено во многих экспериментах, но нужно отметить, что перебирая разные протоколы эксперимента, можно все же добиться искажения/нарушения этого закона, не нарушая формальные требования к пре-пост спайкам[0].

Обратное распространение спайка


Пирамидальный нейрон (пожалуй, самый известный тип нейронов коры) имеет тысячи синапсов, которыми усыпано его дендритное дерево (на самом деле, у него два дендритных дерева). Если мы выберем несколько синапсов — близко к соме, подальше, и совсем далеко от нее — и посмотрим, какие для них получатся графики STDP, то графики будут разные. 

Для близких к соме синапсов график будет выглядеть классически — как вариация на тему хеббовского обучения. То есть как на картинке выше. Чем дальше от сомы, тем меньше амплитуда этого обучения. А если взять далекие синапсы, то можно увидеть и совсем странные вещи. Например, если входной спайк (который пришел в синапс) предшествовал выходному, то в эксперименте наблюдалось не усиление, а ослабление этого синапса. Антихеббовское обучение, Карл! Однако, его удавалось вернуть в хеббовское русло, если на дальних дендритах заставить генерироваться дендритные спайки. Вобщем, с обучением ближних к соме синапсов все довольно четко, а на дальних выглядит, как будто там каша другой алгоритм обучения[1].

Давайте посмотрим, откуда растут ноги у этого всего. Итак, для итерации STDP нужно, чтоб в соме был сгенерирован спайк. После этого синапсы должны о нем быстро узнать. Для этого желательно, чтоб спайк распространился к ним из аксонного холмика. Хорошая новость — это и в самом деле так происходит. Нейрон посылает спайк не только другим нейронам, но и обратно в свои дендриты. «Плохая» новость — при обратном распространении этот спайк затухает. Слишком быстро, чтоб дойти до дальних дендритов. Теперь понятно, почему обучение ближних и дальних синапсов имеет различия. Осталось разобраться, что же все-таки происходит в дальних синапсах.

Тут важно помнить, что дендриты не являются пассивными проводниками возмущений. Они сами умеют генерировать спайки, когда «считают нужным». Если по какой-то причине дендрит сгенерировал спайк, и одновременно в эту зону пришел уже порядком затухший спайк от сомы, то, сложившись с дендритным спайком, он (может быть) получит как-бы пинок второе дыхание и сможет рапространиться дальше в это поддерево. По крайней мере, есть такая гипотеза. Другая гипотеза — возможно, синапсы на далеких дендритах обучаются вообще без использования обратно распространяющегося соматического спайка. Об этом будет ниже.

Интересные эффекты в дендритах — для пластичности достаточно дендритных спайков


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

Потом в экспериментах выяснилось, что можно искусственно подавить в нейроне соматические спайки и все равно регистрировать увеличение весов в его синапсах в ответ на их стимуляцию (не любую). Оказалось, что пластичность возникает, когда стимуляция синапсов достаточно сильна для возникновения в этом месте дендритных спайков. Они — достаточно сильное возмущение, чтобы запустить пластичность в этом месте.[2] Да-да, без участия остального нейрона. То есть “минимальным элементом” обработки информации можно считать даже не нейрон, а отдельную дендритную ветвь.

Интересные эффекты в дендритах — кластеризация


В нейронах гиппокампа было обнаружено, что LTP (долговременное усиление веса) одного синапса снижает порог для возникновения LTP на соседних синапсах. Затем было проведено исследование для нейронов сенсорной коры мыши, в которой нейроны обрабатывали данные от усов. И обнаружилось, что синаптическая пластичность имеет склонность к кластеризации. 

Был взят конкретный нейрон, и выбрано 15% синапсов, которые наиболее интенсивно подвергались пластичности. Их распределение по нейрону оказалось неслучайно: значительная часть оказалась соседями — 50 из 161. Потом был взят нейрон из сенсорной коры мыши, у которой были отрезаны усы (то есть нейрон страдал недостатком информации). Эффект кластеризации в таком нейроне отсутствовал. Зато он был глобально более чувствителен ко входным сигналам [3].

Интересные эффекты в дендритах — от перестановки слагаемых всё меняется




Итак, пусть к нам на дендрит пришли два EPSP, как на картинке выше. Возмущение, которое они вызовут в соме, зависит не только от величины этих EPSP, но и от:

1) их расстояния до сомы
2) их расстояния друг от друга

Рассмотрим по порядку. Если из синапса в дендрит пришел EPSP, то он будет рапространяться к соме и затухать по пути. То есть, чем дальше он был, тем больше затухнет. А если на его пути попадется активировавшийся тормозной синапс, то EPSP тут же и заглохнет. Таким образом, если у нас были два довольно далеких друг от друга EPSP, то они внесут два маленьких возмущения в сому — и то если повезет.

Но если они оказались рядом друг с другом, то дедрит может сгенерировать в этом месте спайк. Это такое возмущение, у которого амплитуда больше, чем просто сумма EPSPшек. У дендритного спайка уже куда больше шансов пробежаться до сомы, и вклад будет больше. [4].

Связывание фич синхронизацией


(synchronisation encodes relation, feature binding)

Из предыдущих пунктов вытекает, что относительный тайминг спайков важен для процессов пластичности в синапсах. И в этом свете никак нельзя обойти явление временной синхронизации нейронов. Это явление вездесущее и, видимо, очень фундаментальное, т.к. есть на всех уровнях мозга. Рассмотрим конкретный пример.

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


Все зеленые точки здесь воспринимаются не по-отдельности, а как целое

Рабочая гипотеза предполагает, что кора использует синхронизацию разрядов в нейронах для кодирования отношения “единое целое” о тех участках сигнала, на которые отвечали эти нейроны. Т.е. дальше их ответы будут обрабатываться как единое целое вышестоящими нейросетями, потому что именно вот эти спайки придут туда одновременно, а значит, буду суммироваться, не успев затухнуть.

Синхронизация активности в коре на больших расстояниях является предпосылкой к тому, чтобы вызвавший эту активность сигнал (например, увиденное слово) получил доступ в зону сознательного восприятия. Аналогичный сигнал, будучи обработан бессознательно, вызовет только локальную синхронизацию [5]

Каким образом синхронизируются популяции нейронов — предмет расследования [6].

Несинаптическая пластичность


Помимо весов синапсов, в ходе обучения могут подвергаться изменению и другие характеристики нейрона. Может меняться его общая возбудимость (читай, порог для генерации спайка). Если много весов укрепились, то нейрону есть смысл понизить свою возбудимость. А если наоборот — низкий уровень изменения в весах, то имеет смысл повысить. 

Другой пример — аксон умеет изменять время, за которое он проведет спайк адресатам. Еще — если долгое время стимулировать нейрон на низкой частоте, он уменьшает свою возбудимость, и это долговременный эффект.

Replay


В гиппокампе есть нейроны, которые реагируют на определенное место в пространстве. Называеются клетки места. То есть, если крыса находится в одном месте лабиринта, то максимально реагирует одна клетка места, если в другом — другая. Когда крыса спит или отдыхает, в гиппокампе начинают в ускоренном темпе проигрываться те последовательности клеток места, которые соответствовали реально пройденным перед этим маршрутам. Для остальных клеток места такого не наблюдается, то есть именно эти последовательности — не случайны.



На рисунке: крыса идет по прямому треку, и сначала активируется “синяя” клетка места, потом “красная”, и потом “зеленая”. Потом она получает подкрепление, и начинается ускоренное проигрывание этой последовательности в обратном порядке “ синий красный зеленый”. 
Кроме того, гиппокамп может проигрывать будущие места, перед тем, как крыса их действительно посетит (preplay). 

Не менее интересно — процесс реплея во сне затрагивает еще и кору мозга. То есть одновременно и в коре, и в гиппокампе реплеится то, что связано с один и тем же опытом, испытанным во время предыдущего бодрствования [7]. Есть гипотеза, что гиппокамп — модуль быстрого запоминания, а кора — медленного глубокого обучения. Возможно, гиппокамп запоминает события-эпизоды в порядке их следования, а затем “проигрывает” их коре раз за разом в ускоренном темпе, чтоб та вытащила из этих последовательностей скрытые закономерности. Тогда понятно, почему пациент с удаленным гиппокампом теряет возможность создавать новые долговременные воспоминания, но не теряет те, что были сделаны до операции. 

L-LTP (late-phase LTP)


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

Латеральное торможение


(lateral inhibition, surround inhibition, surround suppression)

Этот простой принцип известен ученым с пещерных времен. Возможно, вы видели иллюзии вроде этой:



На заре нейронауки считалось, что нейрон выискивает в своем рецептивном поле некий стимул, и если искомый стимул там нашелся — то нейрон интенсивно генерирует спайки. Если нашлось не совсем то, но похоже — тоже генерирует спайки, но не так интенсивно. А потом выяснилось, что активность нейрона может подавляться активностями из вне его рецептивного поля.

Помимо возбудительной сети (она же главная), в мозге присутствует еще одна — сеть из тормозных интернейронов. “Главные” нейроны обеспечивают возбуждение в сети, а интернейроны — как правило, тормозят его. Интернейроны имеют локальную область дествия. Главных нейронов больше, чем интернейронов, но зато интернейроны более разнообразны. Конкретно упомянутая зрительная иллюзия предположительно берется из-за взаимодействия возбудительных нейронов с тормозными. Логика процесса такая: чем больше активирован нейрон, тем сильнее он тормозит (при помощи интернейронов) активность по соседству. Возбудительные нейроны соревнуются друг с другом за право внести наибольший вклад в сигнал для следующего слоя нейронов. Если ты был сильно активирован, то сильно затормозишь соседей. Если соседи были слабо активированы, то слабо затормозят тебя. В результате все нелинейности во входных данных «выпятятся» еще сильнее, и уже с этим будет работать следующий слой.

Очень наглядная иллюстрация принципа

 

Детекторы ошибок в предсказаниях[8]


Дофаминовые нейроны учатся связывать какие-то “ключи” во входном сигнале с получением награды. Используют при этом такой алгоритм: 

(1) Если произошла непредсказанная награда, то нейроны реагируют увеличением частоты спайков (у нас положительная ошибка).
(2) После обучения они уже реагируют на “ключевое событие”, а не на саму награду. Т.е. на предшественника награды они выдают увеличение частоты. А на награду, если она приходит по расписанию, реакции уже нет (у нас нет ошибки).
(3) Если обученный нейрон предсказал награду, а она не произошла — он реагирует уменьшением частоты спайков (у нас отрицательная ошибка)



Есть мнение, что там не просто ассоциативное обучение, а установление связи “причина — следствие”. То есть, например, грозовые облака имеют корреляцию с дождем, потому что часто так бывает — видишь облака, а потом видишь дождь. То же самое бывает с зонтиком: видишь у людей зонтики, а потом видишь дождь. Но если хоть один раз дождь начался без зонтиков, то уже ясно, что зонтики не причина дождя.

Бонус для дочитавших: возникновение условного рефлекса на конкретном нейроне

 

Заключение


Тот же STDP на первый взгляд может показаться цельным алгоритмом обучения для сетей из спайковых нейронов. Но в реальности сейчас пока нет эффективно обучающихся искусственных спайковых моделей. То есть, что-то они могут — например, выдать 95% на бенчмарке MNIST — но более нетривиальные задачи на них еще не очень. 

Куда больший прогресс в последние годы произошел в таких сетях, где спайки отсутствуют как класс. Алгоритмы обучения там основаны на градиентном спуске по поверхности ошибки, где ошибка есть функция весов синапсов. Работа с аспектом времени достигается за счет обратных связей в топологии. В эти сети успешно внедряется внимание и подкрепление. На фоне этого всего спайковые модели пока выглядят “бедно”. 

Какой из этого вывод? Сложно сказать однозначно. Возможно, нас еще ждут прорывы в спайковых сетях: недаром же мозг состоит из спайковых нейронов. А возможно, текущим спайковым моделям просто не хватает вычислительной мощности нашего железа, чтоб «показать себя». Наконец, возможно, спайки это низкоуровневая особенность био-железа, поверх которого мозг реализует все тот же градиентный спуск по ошибке в каком-то виде. Впрочем, в текущую рабочую гипотезу нейробиологии это не входит за отсутствием оснований.

458435
Сегодня
Этот месяц
Посетители за все время
2400
34324
458435

Your IP: 54.80.103.120
Server Time: 2018-04-21 23:03:21
.