Здравствуй, Geektimes! Я хочу поделиться свой работой над созданием системы позволяющей моделировать рефлекторные и когнитивные процессы, протекающие в нервной системе.
Частично система воплощена в простенькой программе, созданной на игровом движке Unity3D. Это своего рода симулятор нервной системы, благодаря которому возможно имитировать не только простые рефлексы, но и демонстрировать различные явления в нервной системе, такие как привыкание, сенсибилизация и образование условных рефлексов. А также возможно эмулировать временную и долговременную память и её консолидацию, эмоции и эмоциональное поведение. Причем как простые эмоции, к примеру, голод и насыщение, так и более сложные, такие как любопытство, страх или привязанность. Благодаря системе у нас появится возможность разобраться в предназначении различных областей мозга, в том, как происходит распознавание зрительных образов, как происходит обучение и эмоциональная оценка происходящего.
Я планирую рассказать обо всем этом в серии статей и роликов. Первые три статьи посвящены основам, в которых я расскажу о главных составляющих системы – нейроэлементах.
Главными элементами системы являются – нейроэлементы. Я намеренно избегаю названия «нейрон» потому, что нейроэлемент не всегда символизирует биологический нейрон, а может являться в некоторых случаях аналогом некоторой части биологического нейрона, а в некоторых и группой нейронов. Но основой для нейроэлемента является, конечно же, биологический нейрон.
В системе можно выделить три основах вида нейроэлементов: простой сумматор, модулируемый нейроэлемент и ассоциативный нейроэлемент. Нейроэлементы разделены по сложности, каждый следующий нейроэлемент обладает дополнительным рядом свойств. Такое разделение позволяет лучше понять принципы работы системы и в простых примерах применять более простые нейроэлементы.
Самый простой нейроэлемент в системе – это простой сумматор. Это некий элемент, который может иметь входы и выходы. Причем в системе существует несколько типов связей, во-первых, это сигналы от рецепторов, существует блок рецепторов-кнопок, которые работают в реальном времени. Во-вторых, нейроэлементы связанны между собой посредством синапсов.
Синапсы бывают трех типов: синапсы прямого действия (ионотропные), синапсы модулирующего действия (метаботропные) и контактные синапсы (эфапсы). Все эти типы синапсов имеют аналоги в биологической нервной системе.
Синапсы прямого действия (а) характеризуются своей силой (F), которая представлена в системе как реальное число. Знак этого числа указывает на то, какое синапс оказывает действие тормозящее или побудительное.
Все сигналы обрабатываются в реальном времени, и могут поступать в нейроэлемент независимо друг от друга, как это происходит в биологическом нейроне. Прежде всего, сигналы синапсов прямого действия поступают в сумматор (б).
Сумматор можно представить следующим образом, он подобен сосуду, в который собирается все порции медиатора. Но при выделении нейромедиатора в синаптическую щель в биологической нервной системе, происходит его непрерывная трата. Нейромедиатор в синаптической щели разрушается специальным ферментом, он может поглотиться обратно синапсом или выйти за пределы синаптической щели. Поэтому в нашем сосуде имеется отверстие, благодаря которому происходить постоянное уменьшение общей массы нейромедиатора (в). Параметр D характеризующий скорость снижения модуля общей суммы.
Если общая масса нейромедиатора превысит определённый порог (г), то происходит активация нейроэлемента, но если порции нейромедиатора окажется меньше порога, то со временем его уровень может упасть до нуля и никакой активации не произойдёт.
Для синапсов прямого действия существуют два типа нейромедиаторов: побудительные и тормозящие. В системе это определяется знаком силы синапса. И действие различных по знаку синапсов взаимно нейтрализуются. Общая сумма может быть отрицательной, тогда будет происходить её повышение до нуля с установленной скоростью.
При активации нейроэлемента, он входит в состояние активности, в котором он перестает отвечать на внешние сигналы и через определённую временную задержку активирует все свои исходящие синапсы. Далее подобно биологическому нейрону, в нейроэлементе происходит временная задержка для восстановления, в этот период времени нейроэлемент не отвечает на внешние раздражители.
Контактные синапсы (з) активируют нейроэлемент если он не находится в активном состоянии или в периоде восстановления. Можно сказать, что сигнал, от контактных синапсов, активирует нейроэлемент, если это возможно в данный момент, иначе игнорируется.
Давайте рассмотрим, как работают нейроэлементы на примере самого простого рефлекса: коленного рефлекса. Коленный рефлекс состоит всего из трех нейронов, рецепторный нейрон получают сигнал от рецепторов сухожилия, далее передает сигнал вставочному нейрону и затем моторный нейрон передает сигнал на мышцу разгибатель.
Так рефлекс выглядит в программе:
Пример с торможением. Нейроэлемент, связанный с рецептором «E» оказывает тормозящее действие:
Пример конкуренции рефлексов (по работам Сеченова И.М.). Взаимное подавление двух различных рефлексов:
Трансформация ритма возбуждения
Единичные импульсы для нервной системы это редкость. В большинстве случаев сигналы от рецепторов представляют собой ряд импульсов, причем по интенсивности этих импульсов можно говорить о степени воздействия на рецептор. Чем чаще воспроизводятся импульсы, тем сильнее воздействие, оказываемое на рецептор, сильнее давление, если это рецептор давления, выше температура, если это рецептор температуры и т.д.
И одно из наблюдаемых явлений в нервной системе, это трансформация ритма возбуждения – изменение частоты нервных импульсов при прохождении через нервный центр.
С помощью нейроэлемента возможно увеличить частоту нервных импульсов. В случае когда уровень разового воздействия на нейроэлемент значительно выше, чем его порог активации и нейроэлемент успевает несколько раз сработать прежде, чем значение сумматора снизится до уровня ниже, чем порог.
Снижение частоты пульсации нервных импульсов осуществляется благодаря увеличению времени отдыха нейроэлемента, как отмечалось ранее, во время отдыха нейроэлемент не отвечает на внешние сигналы.
Пример преобразования импульсов из редких в более учащённые. В данном случае уровень разового воздействия на нейроэлемент значительно выше, чем его порог активации и он успевает несколько раз сработать прежде, чем значение сумматора снизится до уровня ниже, чем порог:
Пример снижения частоты импульсов. Здесь это осуществляется благодаря увеличению времени отдыха нейроэлемента, как я уже отмечал, во время отдыха нейроэлемент не отвечает на внешние сигналы:
Пространственная и временная суммация
Представленная модель нейроэлемента позволяется объяснить, как происходит временная и пространственная суммация в биологическом нейроне. Временная суммация проявляется в том, что ряд подпороговых импульсов от оного синапса, если эти импульсы происходят достаточно часто, могут привести к активация нейрона. Это происходит из-за того, что скорость уменьшения суммы воздействия может, оказывается меньше, чем скорость пополнения этой суммы.
В биологических нейронах существует явление, которое указывает на то, что суммация имеет не только временной, но и пространственный характер. Даже если сумма подпороговых сигналов превышает порог, но эти сигналы поступают на синапсы расположенные на достаточном расстоянии друг от друга, то активации может не произойти.
Такое явление можно смоделировать, используя несколько нейроэлементов, к примеру, каждому отдельному нейроэлементу может соответствовать дендрит.
2. Симулятор нервной системы. Часть 2. Модулируемый нейроэлемент
3. Симулятор нервной системы. Часть 3. Ассоциативный нейроэлемент
4. Память, консолидация памяти и бабушкины нейроны
5. Моделирование эмоций или электронное чувство новизны
6. Удивительный мозжечок
7. Структура и стартовые настройки мозга
Комментарии (13)
Di-Roll
08.09.2016 09:46Читал ваши прошлые публикации, весьма интересно.
Очень хотелось бы посмотреть исходники, если это представляется возможным.aigame
08.09.2016 09:50Показывать исходники мне будет стыдно. Я не программист, да и в плане переписать всё с добавлением нового функционала. В будущем обязательно поделюсь.
Di-Roll
08.09.2016 09:57Тогда буду следить за Вашими статьями и дальше.
А в плане функционала, чего ждать в будущем?
AlekseiMorozov19730316Ru
08.09.2016 10:00«Исходники» — не так важны. Главное — развитие Ваших идей. Не тратьте времени на «перепись всего». Это того не стоит.
veydlin
08.09.2016 12:51+2Это важно, если люди хотят посмотреть алгоритм то они его проследят в коде любого вида, а потом уже можно переписать
Так что можете выкладывать смело
lavmax
08.09.2016 18:09+1Исходники важны, если вы хотите подключать сообщество к разработке. И тем более если вы не программист. Думаю найдутся энтузиасты (я бы например посмотрел в свободное время), которые помогут развить ваши идеи с помощью своих навыков программирования.
AlekseiMorozov19730316Ru
08.09.2016 09:52Блестяще. Было бы замечательно, если бы «нейроэлемент» имел «универсальный» характер и просто «виртуализировал» свои функции. Попробуйте объединить в «нейроэлементе» «кабельные» и «эфирные» функции, то есть добавьте в модель широковещательное распространение паттернов нейронов мозга. Это избавит от необходимости функционально «специализировать» «нейроэлементы».
lavmax
08.09.2016 18:10Очень интересно! Как происходит создание, отмирание и модификация существующих связей? Есть ли самонастройка весов в синапсах или только готовые модели?
Botrops
Будет версия под Андроид?
aigame
) Нет, нет необходимости. Будет только версия на windows.