Введение Сразу скажу, что эта заметка не имеет никакого отношения к перцептронам, сетям Хопфилда или любым другим искусственным нейронным сетям.
Мы смоделируем работу «настоящей», «живой» биологической нейронной сети, в которой происходят процессы генерации и распространения нервных импульсов.
В англоязычной литературе такие сети из-за их отличия от искусственных нейронных сетей называются спайковыми нейронными сетями, однако в русскоязычной литературе устоявшегося названия нет. Некоторые называют их просто нейронными сетями, другие — импульсными нейронными сетями, а третьи — шиповыми сетями.
Большинство читателей наверняка слышали о проектах Синий мозг И Человеческий мозг Спонсируемое Евросоюзом правительство ЕС выделило на последний проект около миллиарда евро, что свидетельствует о большом интересе к этой области.
Оба проекта тесно связаны и пересекаются друг с другом, у них даже один и тот же руководитель.
Генри Маркрам , что может вызвать некоторую путаницу относительно того, чем они отличаются друг от друга.
Короче говоря, конечная цель обоих проектов — разработать модель всего мозга, состоящего из примерно 86 миллиардов нейронов.
Проект Blue Brain — это вычислительная часть, а Human Brain — скорее фундаментальная часть, где работают над сбором научных данных о принципах работы мозга и созданием единой модели.
Чтобы соприкоснуться с этой наукой и попытаться самим сделать нечто подобное, хотя и в гораздо меньших масштабах, и была написана эта заметка.
На хабе уже было несколько интересных и познавательных статей по нейробиологии, что очень радует. 1. Нейробиология и искусственный интеллект: часть первая – образовательная программа.
3. Нейронаука и искусственный интеллект: Часть третья — Представление данных и память Но они не затрагивали вопросы вычислительной нейробиологии, или иначе вычислительной нейробиологии, включающей компьютерное моделирование электрической активности нейронов, поэтому я решил восполнить этот пробел.
Немного биологии
Рис.
1 — Схематическое изображение строения нейрона.
Прежде чем мы приступим к моделированию, нам необходимо ознакомиться с некоторыми основами нейробиологии.
Типичный нейрон состоит из трех частей: тела (сомы), дендритов и аксона.
Дендриты получают сигналы от других нейронов (это вход нейрона), а аксон передает сигналы от тела нейрона к другим нейронам (выход).
Точка контакта аксона одного нейрона с дендритом другого нейрона называется синапсом.
Сигнал, полученный от дендритов, суммируется в организме и, если он превышает определенный порог, генерируется нервный импульс или, другими словами, спайк.
Тело клетки окружено липидной мембраной, которая является хорошим изолятором.
Ионный состав цитоплазмы нейронов и межклеточной жидкости различается.
В цитоплазме концентрация ионов калия выше, а концентрация натрия и хлора ниже, а в межклеточной жидкости все наоборот. Это связано с работой ионных насосов, которые постоянно перекачивают определенные типы ионов против градиента концентрации, потребляя при этом энергию, запасенную в молекулах аденозинтрифосфата (АТФ).
Самый известный и изученный из этих насосов — натриево-калиевый насос.
Он выводит 3 иона натрия наружу и забирает 2 иона калия внутрь нейрона.
На рисунке 2 изображен ионный состав нейрона и обозначены ионные насосы.
Благодаря работе этих насосов в нейроне образуется равновесная разность потенциалов между внутренней стороной мембраны, заряженной отрицательно, и внешней, заряженной положительно.
Рис.
2 – Ионный состав нейрона и окружающей среды Помимо насосов, на поверхности нейрона имеются еще ионные каналы, которые при изменении потенциала или при воздействии химических веществ могут открываться или закрываться, тем самым увеличивая или уменьшая токи определенного вида ионов.
Если мембранный потенциал превышает определенный порог, натриевые каналы открываются, а поскольку снаружи натрия больше, появляется электрический ток, направленный внутрь нейрона, что еще больше увеличивает мембранный потенциал и еще больше открывает натриевые каналы, происходит резкое увеличение мембранного потенциала.
.
Физики назовут это положительной обратной связью.
Но, начиная с определенного значения потенциала, превышающего пороговый потенциал открытия натриевых каналов, открываются и калиевые каналы, благодаря чему ионы калия начинают уходить наружу, снижая мембранный потенциал и тем самым возвращая его к равновесному значению.
Если начальное возбуждение меньше порога открытия натриевых каналов, то нейрон вернется в равновесное состояние.
Что интересно, амплитуда генерируемого импульса слабо зависит от амплитуды возбуждающего тока: либо импульс есть, либо его нет, закон «все или ничего».
Кстати, именно принцип «все или ничего» вдохновил Маккалока и Питтса на создание моделей искусственных нейронных сетей.
Но область искусственных нейронных сетей развивается по-своему, и ее главная цель — наиболее оптимальное решение практических задач, независимо от того, как это связано с процессами обработки информации в живом мозге.
А спайковые нейронные сети — это модель того, как работает настоящий мозг.
Можно собрать спайковую сеть для распознавания визуальных образов, но для практического использования лучше подходят классические нейронные сети; они проще, быстрее рассчитываются на компьютере, и для них придумано множество алгоритмов обучения конкретным практическим задачам.
Принцип «все или ничего» наглядно изображен на рисунке 3. Внизу — входной ток, направленный внутрь мембраны нейрона, а вверху — разность потенциалов между внутренней и внешней частью мембраны.
Поэтому, согласно доминирующей сейчас концепции в живых нейронных сетях, информация кодируется в моменты возникновения импульсов или, как сказали бы физики, посредством фазовой модуляции.
Рис.
3 – Генерация нервного импульса.
Внизу указан ток, подаваемый в клетку в пА, а вверху — мембранный потенциал в мВ.
Возбудить нейрон можно, например, вставив в него микроэлектрод и подав ток внутрь нейрона, но в живом мозге возбуждение обычно происходит за счет синаптического действия.
Как уже говорилось, нейроны соединяются друг с другом с помощью синапсов, образующихся в местах контакта аксона одного нейрона с дендритами другого.
Нейрон, от которого поступает сигнал, называется пресинаптическим, а тот, к которому сигнал поступает, — постсинаптическим.
При возникновении импульса на пресинаптическом нейроне он высвобождает в синаптическую щель нейромедиаторы, которые открывают натриевые каналы на постсинаптическом нейроне, после чего происходит описанная выше цепочка событий, приводящая к возбуждению.
Помимо возбуждения, нейроны могут также тормозить друг друга.
Если пресинаптический нейрон тормозной, то он высвободит в синаптическую щель тормозной нейромедиатор, открывающий хлорные каналы, а так как снаружи хлора больше, то хлор поступает в нейрон, за счет чего увеличивается отрицательный заряд на внутренней стороне мембраны.
(не забывайте, что ионы хлора в отличие от натрия и калия заряжены отрицательно), переводя нейрон в еще более неактивное состояние.
В этом состоянии нейрон труднее возбудить.
Математическая модель нейрона
На основе описанных выше динамических механизмов нейрона можно составить его математическую модель.На данный момент созданы различные относительно простые модели, такие как «Inregrate and Fire», в которых нейрон представлен в виде конденсатора и резистора, а также более сложные, биологически правдоподобные модели, такие как модель Ходжкина-Хаксли, что гораздо сложнее как в вычислительном плане, так и в плане анализа его динамики, но гораздо точнее описывает динамику мембранного потенциала нейрона.
В этой статье мы будем использовать модель Ижикевича [1], она представляет собой компромисс между вычислительной сложностью и биофизической правдоподобностью.
Несмотря на свою вычислительную простоту, эта модель способна воспроизводить большое количество явлений, происходящих в реальных нейронах.
Модель Ижикевича задается как система дифференциальных уравнений (рис.
4).
Рис.
4 – модель Ижикевича Где а, б, в, г, к, См различные параметры нейронов.
Вм – разность потенциалов на внутренней и внешней сторонах мембраны, а Хм — вспомогательная переменная.
я — внешний постоянный приложенный ток.
В этой модели наблюдаются свойства, характерные для нейронов: генерация спайка в ответ на одиночный импульс внешнего тока и генерация последовательности спайков с определенной частотой при подаче на нейрон постоянного внешнего тока.
Исын - сумма синаптических токов от всех нейронов, с которыми связан данный нейрон.
Если на пресинаптическом нейроне генерируется спайк, то на постсинаптическом нейроне происходит скачок синаптического тока, который затухает экспоненциально с характерным временем.
Перейдем к кодированию
Итак, мы подходим к самому интересному.Пришло время закодировать виртуальный участок нервной ткани на компьютере.
Для этого численно решим систему дифференциальных уравнений, определяющих динамику мембранного потенциала нейрона.
Для интегрирования воспользуемся методом Эйлера.
Мы будем кодировать на C++, рисовать скриптами, написанными на Python, с использованием библиотеки Matplolib, но те, у кого нет Python, могут рисовать в Excel. Нам понадобятся двумерные массивы Вмс, Умс размеры Цим*Ннер хранить мембранные потенциалы и вспомогательные переменные каждого нейрона в каждый момент времени, Цим это время моделирования в отсчетах, и Ннер количество нейронов в сети.
Соединения будем хранить в виде двух массивов pre_con И post_con размеры Нкон , где индексы — числа связей, а значения — индексы пресинаптических и постсинаптических нейронов.
Нкон — количество соединений.
Нам также нужен массив для представления переменной, которая модулирует экспоненциально затухающий постсинаптический ток каждого синапса, для этого мы создаем массив й размеры Нкон*Цим .
Теги: #искусственный интеллект #Биотехнология #биоинформатика #бионика #вычислительная биология #нейронаука #нейронаука #спайковые нейронные сети #спайковые нейронные сетиconst float h = .
5f;
-
Сидя
19 Oct, 24 -
Google Adsense Для Доменеров.
19 Oct, 24 -
Дзержинск: По Итогам Года
19 Oct, 24 -
Дайджест It-Событий За Декабрь
19 Oct, 24