SlideShare a Scribd company logo
1 of 18
Download to read offline
Классификация сигналов
головного мозга для
нейрокомпьютерного
интерфейса
www.azoft.com
Разработка программного обеспечения на заказ
Разработка программного обеспечения на заказ
Введение
	
Классификация сигналов, полученных с коры головного мозга при
помощи электроэнцефалографа (сокр. ЭЭГ, прибор, измеряющий
электрическую активность головного мозга), является весьма актуальной
и значимой задачей в современном мире. Классификация различных
сигналов коры головного мозга позволяет диагностировать различные
заболевания, например эпилепсию, и предрасположенность к ним, а
также создавать нейроинтерфейсы для управления робототехническими
устройствами, в том числе протезы для людей с ограниченными
возможностями.
R&D-команда Azoft совместно с Сергеем Алямкиным и представителями
компании Expasoft приняли участие в конкурсе “Grasp-and-Lift EEG
Detection” от Kaggle (платформа для исследователей разных уровней,
где можно опробовать свои модели анализа данных на серьезных
и актуальных задачах). Условия конкурса требовали от участников
с наименьшей вероятностью ошибки классифицировать различные
движения правой руки, используя при этом данные ЭЭГ, чтобы в
последующем создать нейрокомпьютерный интерфейс.
Задача проекта
Разработать модель, которая позволит классифицировать различные
движения правой руки по данным электроэнцефалограммы.
План проекта
1.	 Изучение биологических аспектов задачи.
2.	 Препроцессинг (подготовка) данных.
3.	 Выделение характерных признаков сигнала.
4.	 Выбор алгоритма машинного обучения.
5.	 Сравнение полученных моделей и отправка лучшего результата.
Реализация
Изучение биологических аспектов задачи
Головной мозг – высший орган нервной системы – как анатомо-
функциональное образование может быть условно подразделен на
несколько уровней (Рис. 2), каждый из которых осуществляет собственные
функции.
I уровень — кора головного мозга — осуществляет высшее управление
чувствительными и двигательными функциями, преимущественное
управление сложными когнитивными процессами.
II уровень — базальные ядра полушарий большого мозга —
осуществляет управление непроизвольными движениями и регуляцию
мышечного тонуса.
III уровень — гиппокамп, гипофиз, гипоталамус, поясная извилина,
миндалевидное ядро — осуществляет преимущественное управление
эмоциональными реакциями и состояниями, а также эндокринную
регуляцию.
IV уровень (низший) — ретикулярная формация и другие структуры
ствола мозга — осуществляет управление вегетативными процессами. [1]
Разработка программного обеспечения на заказ
Рис. 1. Общая структура головного мозга
Разработка программного обеспечения на заказ
Цифрами на рисунке 1 отмечены следующие структуры: 1) кора головного
мозга; 2) таламус; 3) мозолистое тело; 4) зрительный нерв; 5) глаз; 6)
миндалина; 7) гипоталамус; 8) гипофиз; 9) гиппокамп; 10) мост; 11)
мозжечок; 12) спинной мозг; 13) продолговатый мозг; 14) ретикулярная
формация.
Как анатомическое образование большой мозг состоит из двух
полушарий — правого и левого.
В каждом полушарии имеется пять долей (Рис. 2):
1.	 лобная;
2.	 теменная;
3.	 затылочная;
4.	 височная;
5.	 островковая, островок.
Рис. 2. Доли полушарий головного мозга
Все данные (и анатомические, и физиологические, и клинические)
свидетельствуют о ведущей роли коры больших полушарий в мозговой
организации психических процессов. Кора больших полушарий является
наиболее дифференцированным по строению и функциям отделом
головного мозга.
Кора головного мозга подразделяется на следующие структурные
элементы:
	 • древнюю
	 • старую
	 • среднюю
	 • новую
Разработка программного обеспечения на заказ
У человека новая кора – наиболее сложная по строению – по
протяженности составляет 96% от всей поверхности полушарий, поэтому
рассматривать будем именно её.
Все области новой коры построены по единому принципу. Наиболее
типична для человека новая шестислойная кора (Рис. 3), однако в разных
отделах мозга число слоев различно. Слои отличаются между собой по
толщине, структуре нейронов и их организации.
Кора полушарий головного мозга человека неоднородна даже в
пределах одного полушария и имеет различный клеточный состав (Рис.
3). Это позволило выделить в ней однотипно организованные центры –
цитоархитектонические поля.
Цитоархитектоника – это наука, изучающая особенности строения коры
головного мозга, касающихся клеток. Изучает отличительные признаки
различных формаций коры, касающиеся общего характера клеточного
строения: величину и форму клеточных элементов, их распределения на
слои, густоту их расположения во всем поперечнике коры и в отдельных
её слоях, ширину коры и ее слоев, их деления на подслои, наличие
тех или иных специальных клеточных форм в том или ином слое,
распределение клеток в вертикальном направлении.
Рис. 3. Схема нейронного и цитоархитектонического строения некоторых зон коры
головного мозга
Границы цитоархитектонических полей совпадают с функционально
специализированными участками неокортекса, отвечающими за
Разработка программного обеспечения на заказ
различные органы чувств. Сведения о функциональных полях человека
уточнялись исследованиями различного характера, например при
сопоставлении локальных разрушений участков коры с наблюдаемыми
отклонениями в поведении, проведение прямой стимуляции коры
микроэлектродами, позитронно-эмиссионной томографией и другими
методами по исследованию мозга. [2]
Рассмотрим сенсомоторные центры лобной области мозга человека
подробнее.
Рис. 4. Сенсомоторные центры лобной области мозга человека
(по данным разных авторов)
Сенсомоторные центры мозга человека, отмеченные на рисунке 4: 1)
корень языка; 2) гортань; 3) нёбо; 4) нижняя челюсть; 5) язык; 6) нижняя
часть лица; 7) верхняя часть лица; 8) шея; 9) пальцы руки; 10) кисть; 11)
рука от плеча до кисти; 12) плечо; 13) лопатка; 14) грудь; 15) живот; 16)
голень; 17) колено; 18) бедро; 19) пальцы ноги; 20) большой палец ноги;
21) четыре пальца ноги; 22) стопа; 23) лицо; 24) глотка. Между синей
и красной линиями лежат моторные центры коры, а между красной и
зелёной линиями - сенсомоторные. [3]
Таким образом мы выяснили расположение функциональных зон. Кроме
того, нам нужно установить, на каких часотах работает мозг в этих зонах
при движении руки.
Объединяя данные разных авторов, получаем, что основная активность,
связанная с движением руки, должна находиться в диапазоне от 7 Гц до
30 Гц.
Разработка программного обеспечения на заказ
Препроцессинг (подготовка) данных
Фильтрация
Основные артефакты в сигнале электроэнцефалограммы: движение
глаз, движение электродов, сокращения мышц головы и сердца, а также
сетевая помеха 50-60 Гц. Помехи, вызванные движением глаз, электродов
и мышц, располагаются в области более низких частот по сравнению с
полезным сигналом от 0,1 Гц до 6 Гц. Поэтому было решено использовать
полосовой фильтр с полосой пропускания от 7 до 30 Гц.
По условиям конкурса полученная система должна быть казуальной,
то есть в конкретный момент классификации нельзя брать данные из
будущего. Кроме того, согласно правилам конкурса, классификация
сигнала будет считаться точной, если она войдет в промежуток ±150
милисекунд, то есть ±75 отсчётов. Исходя из этого, максимальный
порядок полосового фильтра может быть 75*2 = 150.
Важно, чтобы фильтрация вносила наименьшие искажения в сигнал,
поэтому был выбран фильтр с конечной импульсной характеристикой,
поскольку его фазо-частотная характеристика линейна, и он даёт
равномерную групповую задержку в полосе пропускания. Также нами
было использовано окно Кайзера с beta = 1 для устранения эффекта
Гиббса.
Рис. 5. Амплитудно-частотная и фазо-частотная характеристики полученного фильтра
Разработка программного обеспечения на заказ
Рис. 6. Групповая задержка полученного фильтра
Из полученных амплитудно-частотной (синий цвет) и фазо-частотной
(красный цвет) характеристик (Рис. 5) видно, что частоты ниже 7 и выше
30 отфильтровываются, а фазо-частотная характерика является линейной.
Также групповая задержка фильтра равна 75 (Рис. 6) во всей полосе
частот, что удовлетворяет нашим изначальным требованиям к фильтру.
Децимация
Децимация - понижение частоты дискретизации. Поскольку
максимальная полезная частота составляет 30 Гц, то, учитывая теорему
Найквиста, частота дискретизации должна быть больше 60 Гц. Мы
понизили частоту дискретизации с 500 Гц до 62,5 Гц. Полосовая
фильтрация от 7 Гц до 30 Гц при децимации позволяет избежать
алиасинга.
Выделение характерных признаков сигнала
Для классификаторов, используемых в машинном обучении, было
необходимо выделить характерные признаки сигнала (фичи), чтобы
уменьшить количество входных данных, отсеять лишнее и увеличить
точность классификации.
Для начала мы решили попробовать один из самых распространённых
методов извлечения характерных признаков - метод главных компонент.
Разработка программного обеспечения на заказ
Метод главных компонент
Основная идея метода главных компонент в данной задаче следующая:
на несколько электродов может приходить один и тот же сигнал с коры
головного мозга (Рис. 7).
Рис. 7. Смешивание сигналов в процессе их пути от коры головного мозга
до электродов, расположенных на голове
Если предположить, что сигналы смешиваются линейно, то вектор
сигналов с датчиков:
где – вектор столбец 32x1 – сигналы на датчиках.
– вектор столбец 10x1 – сигналы с коры головного мозга.
– матрица 32x10 – неизвестна.
Можно обратить эту зависимость:
где - псевдообратная матрица (Moore–Penrose pseudoinverse).
Если мы знаем матрицу , то на вход классификатора можем подавать
не исходные сырые данные , а улучшенные данные .
Разработка программного обеспечения на заказ
Мы пытались вычислить матрицу , используя SVD (singular value
decomposition) – сингулярное разложение матрицы.
Все 32 сигнала собираются в матрицу сигналов X. Каждый сигнал -
это столбец матрицы. Матрица X имеет размер Nx32. Эта матрица
подвергалась сингулярному разложению
,
где – унитарные матрицы, - диагональная матрица в который все
элементы положительны и отсортированы в порядке убывания. имеет
размер Nx32, – 32x32, – 32x32.
Первые несколько столбцов матрицы должны быть теми самыми
глубинными сигналами которые возникают в голове когда пациент
начинает двигать рукой. Первые несколько столбцов являются главными
компонентами. В последних столбцах матрицы обычно находятся
шумы.
При проведении анализа данных с использованием SVD мы не нашли
корреляции между сигналами из первых столбцов матрицы и моментами
когда пациент начинал двигать руку. Поэтому решили отказаться от
данного метода. Возможно, причина неудачи в том, что SVD предполагает
внутри себя, что глубинные сигналы взаимно ортогональны. А они, судя
по результатам экспериментов, не взаимно ортогональны. Кроме этого,
количество датчиков в нашем эксперименте сводилось к 32, что не
является достаточным для хорошей SVD. Для неортогональных сигналов
нужно использовать ICA (independent component analysis) - метод
независимых компонент. ICA мы не успели попробовать.
Разработка программного обеспечения на заказ
Выбор электродов с точки зрения биологии
На рисунке 8 видно пространственное расположение электродов.
Электроды, с которых предоставлялись данные, помечены цифрами от 1
до 32.
Рис. 8. Схематическое изображение электродов на поверхности головы
Существует такое понятие, как межполушарная асимметрия. Наряду с
другими значениями оно показывает, что левое полушарие отвечает за
правую часть тела, а правое полушарие за левую часть тела. Испытуемые
двигали правой рукой, значит сигнал изначально возникал в левом
полушарии. Основываясь на этом и в соответствии с рисунком 4, были
выбраны следующие электроды: FC5, FC1, T7, C3, Cz, CP5 и CP1.
Разработка программного обеспечения на заказ
Вейвлет-преобразование
Выбрав нужные электроды, мы решили сосредоточиться на вейвлет-
преобразовании в качестве выделения необходимых характерных
признаков.
Техника вейвлет-преобразования одномерного сигнала широко
применяется в разных областях, начиная от обработки сейсмических
сигналов и заканчивая обработкой речевых сигналов. Данный подход
имеет ряд преимуществ по сравнению со спектральным анализом в
случае нестационарных, импульсных сигналов.
Выбор конкретного вида и типа вейвлетов во многом зависит от
анализируемых сигналов и задач анализа. В настоящее время не
существует однозначных методов, позволяющих выбрать оптимальный
вейвлет для решения конкретной задачи, зачастую задача выбора
вейвлет-функции ложится на плечи эксперта. Существует негласный
принцип выбора вейвлета – вид базовой вейвлет-функции должен быть
похож на обрабатываемый сигнал.
В качестве базовой функции был выбран вейвлет Гаусса gaus2:
Рис. 9. Вейвлет Гаусса gaus2
Разработка программного обеспечения на заказ
Рис. 10. Результат вейвлет-преобразования для сигнала ЭЭГ
Вейвлет-преобразование позволяет анализировать “тонкую” структуру
сигналов за счет одновременной локализации и по частоте, и по
времени.
Выбор алгоритма машинного обучения
В первую очередь решили использовать уже хорошо знакомые нам
свёрточные нейронные сети, которые входят в алгоритмы глубинного
обучения.
В глубинном обучении выделять характерные признаки необязательно,
т.к. поиск таких признаков и обучение по ним уже там содержатся.
Свёрточные нейронные сети (CNN - convolutional neural network)
Сверточные нейронные сети хорошо зарекомендовали себя с
двумерными сигналами (такими как изображение), однако такие сети
могут работать и с одномерными сигналами (Рис. 11).
Разработка программного обеспечения на заказ
Рис. 11. Пример работы свёрточной нейронной сети с одномерным сигналом [4]
На вход свёрточной нейронной сети подаётся 32 одномерных сигнала за
определенный период времени.
Опытным путём было выявлено, что 4096 отсчётов (до децимации) дают
наименьшую вероятность ошибки в конечной модели.
В итоге получилась следующая модель (Рис. 12).
Разработка программного обеспечения на заказ
Рис. 12. Полученная модель, где CL - свёрточный слой (convolutional layer),MP -
map pooling, FC - полносвязный слой (fully conected layer), FM - количество масок с
характерными признаками (feature masks), kernel_x - размер ядра, stride - размер шага
Данная модель позволила нам получить площадь под кривой ROC (area
under ROC curve) равную 0.91983.
Рис. 13. Результат полученной модели
Увеличение количества масок, свёрточных слоёв, изменения размеров
ядра не давали улучшений. Площадь под кривой колебалась
от ~0.88 до ~0.91.
Случайные деревья
Алгоритм “случайные деревья” или “случайный лес” в настоящее время
является одним из самых популярных в области классификации. Поэтому
мы решили попробовать и его. Алгоритм состоит из ансамбля решающих
деревьев, для каждого из которых из общей выборки генерируется своя
выборка.
Для понимания работы алгоритма приведем пример решающего дерева
для абстрактной задачи с двумя характерными признаками (Рис. 14).
Разработка программного обеспечения на заказ
Изначально на плоскости располагаются признаки, принадлежащие
двум разным классам. Делим их так, чтобы одной горизонтальной или
вертикальной линией отделить один класс от другого. Далее аналогичным
образом делим получившиеся плоскости до тех пор, пока не добьёмся,
чтобы вероятность доминирующего класса превышала некий порог или
была достигнута максимальная глубина узла, или количество элементов в
подмножестве стало меньше установленного порога.
Рис. 15. Пример построения решающего дерева для двух характерных признаков. [5]
Само по себе решающее дерево - это не очень устойчивый и надежный
алгоритм. Высокая точность классификации и универсальность алгоритма
достигаются именно за счёт ансамбля (комитета) таких решающих
деревьев.
Мы не успели опробовать структуру “вейвлет-преобразование +
случайный лес”, поскольку не учли, что вейвлет-преобразование является
весьма затратной по времени задачей.
Рекуррентные нейронные сети (RNN – recurrent neural network)
Рекуррентные искусственные нейронные сети - это нейронные сети,
в которых есть обратные связи. Биологические нейронные сети –
Разработка программного обеспечения на заказ
рекуррентные. В них есть память. У животных и человека есть память.
Обратные связи дают возможность сети иметь память. Когда у сети
есть память, то нет необходимости подавать историю сигнала в сеть.
Причем глубина памяти в прошлое определяется во время обучения.
Для рекуррентной нейронной сети мы использовали “сырые” данные, то
есть не извлекали из них характерные признаки, поскольку рекуррентная
нейронная сеть делает это сама. Таким образом, рекуррентная
нейронная сеть имеет 32 входа.
Мы провели серию опытов с рекуррентной нейронной сетью, пробовали
разные архитектуры и задержки в обратных связях. Сеть не обучалась.
Были проблемы с памятью – не удавалось создать сложную сеть с числом
слоев больше двух. Поняли, что нужно использовать специальный вид
нейронных сетей LSTM (Long Short Term Memory).
LSTM имеет внутри себя особые ячейки памяти которые сделаны на
основе контролируемой обратной связи с коэффициентом 1.
Рис 16. Ячейка памяти рекуррентной нейронной сети вида LSTM
Решение - включить или выключить обратную связь в сети - принимает
другая часть нейронной сети. При выключении обратной связи
происходит забывание информации в ячейке памяти. Таким образом,
сеть сама решает, когда ей запомнить информацию, когда использовать, а
когда забыть.
К сожалению, мы не успели разобраться в том, как обучать LSTM до
завершения конкурса.
Разработка программного обеспечения на заказ
Заключение
	
В результате проведённых опытов наша команда получила высокое
качество классификации сигналов головного мозга в процессе
движения руки. Благодаря метрике качества “площадь под кривой
ROC”, полученной в результате использования свёрточных нейронных
сетей, мы убедились в эффективности алгоритмов глубинного обучения
в классификации сигналов различного рода. Это позволяет нам с
уверенностью заключить, что свёрточные нейронные сети – один из
лучших существующих на сегодня методов машинного обучения для
создания нейрокомпьютерного интерфейса. Проще говоря, дайте нам
электрические сигналы с вашего мозга, и мы скажем вам, что вы делали!
Список использованных источников и
литературы
	
[1]	 Хомская Е.Д. Х = Нейропсихиология: 4-е издание. — СПб.: Питер. -
2005. – 496 с: ил.
[2]	 Localizing Movement-Related Primary Sensorimotor Cortices with
Multi-Band EEG Frequency Changes and Functional MRI. Kuo C-C, Luu P,
Morgan KK, Dow M, Davey C, et al. (2014) Localizing Movement-Related
Primary Sensorimotor Cortices with Multi-Band EEG Frequency Changes and
Functional MRI. PLoS ONE 9(11): e112103. doi: 10.1371/journal.pone.0112103
[3]	 Возникновение мозга человека. — М: ВЕДИ. Савельев С.В., 2010. —
324 с.: ил.
[4]	 Learning deep physiological models of affect. H. P. Martinez, Y. Bengio,
G. N. Yannakakis Computational Intelligence Magazine, IEEE, Vol. 8, No. 2.
(May 2013), pp. 20-33.
[5]	 Модель Random Forest для классификации, реализация на c#:
[Электронный ресурс]

More Related Content

Similar to Классификация сигналов головного мозга для нейрокомпьютерного интерфейса

NUG_prezentatsia_o_neyronnykh_setyakh_24_02.pptx
NUG_prezentatsia_o_neyronnykh_setyakh_24_02.pptxNUG_prezentatsia_o_neyronnykh_setyakh_24_02.pptx
NUG_prezentatsia_o_neyronnykh_setyakh_24_02.pptx
whiskeycat17
 
исследования возможностей нейронных сетей в задачах медицинской диагностики
исследования возможностей нейронных сетей в задачах медицинской диагностикиисследования возможностей нейронных сетей в задачах медицинской диагностики
исследования возможностей нейронных сетей в задачах медицинской диагностики
Lelya321
 
нервная система
нервная системанервная система
нервная система
Alex Sarsenova
 

Similar to Классификация сигналов головного мозга для нейрокомпьютерного интерфейса (20)

Di common
Di commonDi common
Di common
 
Пакет Стандарт
Пакет СтандартПакет Стандарт
Пакет Стандарт
 
Описание задач «Научного Хакатона»
Описание задач «Научного Хакатона»Описание задач «Научного Хакатона»
Описание задач «Научного Хакатона»
 
Лекция 1
Лекция 1Лекция 1
Лекция 1
 
OCT for glaucoma + HRTclub2013
OCT for glaucoma + HRTclub2013OCT for glaucoma + HRTclub2013
OCT for glaucoma + HRTclub2013
 
NEUROTRACKER
NEUROTRACKERNEUROTRACKER
NEUROTRACKER
 
NUG_prezentatsia_o_neyronnykh_setyakh_24_02.pptx
NUG_prezentatsia_o_neyronnykh_setyakh_24_02.pptxNUG_prezentatsia_o_neyronnykh_setyakh_24_02.pptx
NUG_prezentatsia_o_neyronnykh_setyakh_24_02.pptx
 
исследования возможностей нейронных сетей в задачах медицинской диагностики
исследования возможностей нейронных сетей в задачах медицинской диагностикиисследования возможностей нейронных сетей в задачах медицинской диагностики
исследования возможностей нейронных сетей в задачах медицинской диагностики
 
Cognitive enhancement devices (CED)
Cognitive enhancement devices (CED)Cognitive enhancement devices (CED)
Cognitive enhancement devices (CED)
 
Brain text
Brain textBrain text
Brain text
 
Сенсорный костюм
Сенсорный костюмСенсорный костюм
Сенсорный костюм
 
Трудные шаги к победе
Трудные шаги к победеТрудные шаги к победе
Трудные шаги к победе
 
новости 30
новости 30новости 30
новости 30
 
EEG segmentation method based on analysis of traveling waves
EEG segmentation method based on analysis of traveling wavesEEG segmentation method based on analysis of traveling waves
EEG segmentation method based on analysis of traveling waves
 
Нейросети
НейросетиНейросети
Нейросети
 
Sulimov 2009 10_30
Sulimov 2009 10_30Sulimov 2009 10_30
Sulimov 2009 10_30
 
нервная система
нервная системанервная система
нервная система
 
Deep Learning Course Introduction
Deep Learning Course IntroductionDeep Learning Course Introduction
Deep Learning Course Introduction
 
Пакет Суперлайт
Пакет СуперлайтПакет Суперлайт
Пакет Суперлайт
 
Неврология
НеврологияНеврология
Неврология
 

Классификация сигналов головного мозга для нейрокомпьютерного интерфейса

  • 1. Классификация сигналов головного мозга для нейрокомпьютерного интерфейса www.azoft.com Разработка программного обеспечения на заказ
  • 2. Разработка программного обеспечения на заказ Введение Классификация сигналов, полученных с коры головного мозга при помощи электроэнцефалографа (сокр. ЭЭГ, прибор, измеряющий электрическую активность головного мозга), является весьма актуальной и значимой задачей в современном мире. Классификация различных сигналов коры головного мозга позволяет диагностировать различные заболевания, например эпилепсию, и предрасположенность к ним, а также создавать нейроинтерфейсы для управления робототехническими устройствами, в том числе протезы для людей с ограниченными возможностями. R&D-команда Azoft совместно с Сергеем Алямкиным и представителями компании Expasoft приняли участие в конкурсе “Grasp-and-Lift EEG Detection” от Kaggle (платформа для исследователей разных уровней, где можно опробовать свои модели анализа данных на серьезных и актуальных задачах). Условия конкурса требовали от участников с наименьшей вероятностью ошибки классифицировать различные движения правой руки, используя при этом данные ЭЭГ, чтобы в последующем создать нейрокомпьютерный интерфейс. Задача проекта Разработать модель, которая позволит классифицировать различные движения правой руки по данным электроэнцефалограммы. План проекта 1. Изучение биологических аспектов задачи. 2. Препроцессинг (подготовка) данных. 3. Выделение характерных признаков сигнала. 4. Выбор алгоритма машинного обучения. 5. Сравнение полученных моделей и отправка лучшего результата.
  • 3. Реализация Изучение биологических аспектов задачи Головной мозг – высший орган нервной системы – как анатомо- функциональное образование может быть условно подразделен на несколько уровней (Рис. 2), каждый из которых осуществляет собственные функции. I уровень — кора головного мозга — осуществляет высшее управление чувствительными и двигательными функциями, преимущественное управление сложными когнитивными процессами. II уровень — базальные ядра полушарий большого мозга — осуществляет управление непроизвольными движениями и регуляцию мышечного тонуса. III уровень — гиппокамп, гипофиз, гипоталамус, поясная извилина, миндалевидное ядро — осуществляет преимущественное управление эмоциональными реакциями и состояниями, а также эндокринную регуляцию. IV уровень (низший) — ретикулярная формация и другие структуры ствола мозга — осуществляет управление вегетативными процессами. [1] Разработка программного обеспечения на заказ Рис. 1. Общая структура головного мозга
  • 4. Разработка программного обеспечения на заказ Цифрами на рисунке 1 отмечены следующие структуры: 1) кора головного мозга; 2) таламус; 3) мозолистое тело; 4) зрительный нерв; 5) глаз; 6) миндалина; 7) гипоталамус; 8) гипофиз; 9) гиппокамп; 10) мост; 11) мозжечок; 12) спинной мозг; 13) продолговатый мозг; 14) ретикулярная формация. Как анатомическое образование большой мозг состоит из двух полушарий — правого и левого. В каждом полушарии имеется пять долей (Рис. 2): 1. лобная; 2. теменная; 3. затылочная; 4. височная; 5. островковая, островок. Рис. 2. Доли полушарий головного мозга Все данные (и анатомические, и физиологические, и клинические) свидетельствуют о ведущей роли коры больших полушарий в мозговой организации психических процессов. Кора больших полушарий является наиболее дифференцированным по строению и функциям отделом головного мозга. Кора головного мозга подразделяется на следующие структурные элементы: • древнюю • старую • среднюю • новую
  • 5. Разработка программного обеспечения на заказ У человека новая кора – наиболее сложная по строению – по протяженности составляет 96% от всей поверхности полушарий, поэтому рассматривать будем именно её. Все области новой коры построены по единому принципу. Наиболее типична для человека новая шестислойная кора (Рис. 3), однако в разных отделах мозга число слоев различно. Слои отличаются между собой по толщине, структуре нейронов и их организации. Кора полушарий головного мозга человека неоднородна даже в пределах одного полушария и имеет различный клеточный состав (Рис. 3). Это позволило выделить в ней однотипно организованные центры – цитоархитектонические поля. Цитоархитектоника – это наука, изучающая особенности строения коры головного мозга, касающихся клеток. Изучает отличительные признаки различных формаций коры, касающиеся общего характера клеточного строения: величину и форму клеточных элементов, их распределения на слои, густоту их расположения во всем поперечнике коры и в отдельных её слоях, ширину коры и ее слоев, их деления на подслои, наличие тех или иных специальных клеточных форм в том или ином слое, распределение клеток в вертикальном направлении. Рис. 3. Схема нейронного и цитоархитектонического строения некоторых зон коры головного мозга Границы цитоархитектонических полей совпадают с функционально специализированными участками неокортекса, отвечающими за
  • 6. Разработка программного обеспечения на заказ различные органы чувств. Сведения о функциональных полях человека уточнялись исследованиями различного характера, например при сопоставлении локальных разрушений участков коры с наблюдаемыми отклонениями в поведении, проведение прямой стимуляции коры микроэлектродами, позитронно-эмиссионной томографией и другими методами по исследованию мозга. [2] Рассмотрим сенсомоторные центры лобной области мозга человека подробнее. Рис. 4. Сенсомоторные центры лобной области мозга человека (по данным разных авторов) Сенсомоторные центры мозга человека, отмеченные на рисунке 4: 1) корень языка; 2) гортань; 3) нёбо; 4) нижняя челюсть; 5) язык; 6) нижняя часть лица; 7) верхняя часть лица; 8) шея; 9) пальцы руки; 10) кисть; 11) рука от плеча до кисти; 12) плечо; 13) лопатка; 14) грудь; 15) живот; 16) голень; 17) колено; 18) бедро; 19) пальцы ноги; 20) большой палец ноги; 21) четыре пальца ноги; 22) стопа; 23) лицо; 24) глотка. Между синей и красной линиями лежат моторные центры коры, а между красной и зелёной линиями - сенсомоторные. [3] Таким образом мы выяснили расположение функциональных зон. Кроме того, нам нужно установить, на каких часотах работает мозг в этих зонах при движении руки. Объединяя данные разных авторов, получаем, что основная активность, связанная с движением руки, должна находиться в диапазоне от 7 Гц до 30 Гц.
  • 7. Разработка программного обеспечения на заказ Препроцессинг (подготовка) данных Фильтрация Основные артефакты в сигнале электроэнцефалограммы: движение глаз, движение электродов, сокращения мышц головы и сердца, а также сетевая помеха 50-60 Гц. Помехи, вызванные движением глаз, электродов и мышц, располагаются в области более низких частот по сравнению с полезным сигналом от 0,1 Гц до 6 Гц. Поэтому было решено использовать полосовой фильтр с полосой пропускания от 7 до 30 Гц. По условиям конкурса полученная система должна быть казуальной, то есть в конкретный момент классификации нельзя брать данные из будущего. Кроме того, согласно правилам конкурса, классификация сигнала будет считаться точной, если она войдет в промежуток ±150 милисекунд, то есть ±75 отсчётов. Исходя из этого, максимальный порядок полосового фильтра может быть 75*2 = 150. Важно, чтобы фильтрация вносила наименьшие искажения в сигнал, поэтому был выбран фильтр с конечной импульсной характеристикой, поскольку его фазо-частотная характеристика линейна, и он даёт равномерную групповую задержку в полосе пропускания. Также нами было использовано окно Кайзера с beta = 1 для устранения эффекта Гиббса. Рис. 5. Амплитудно-частотная и фазо-частотная характеристики полученного фильтра
  • 8. Разработка программного обеспечения на заказ Рис. 6. Групповая задержка полученного фильтра Из полученных амплитудно-частотной (синий цвет) и фазо-частотной (красный цвет) характеристик (Рис. 5) видно, что частоты ниже 7 и выше 30 отфильтровываются, а фазо-частотная характерика является линейной. Также групповая задержка фильтра равна 75 (Рис. 6) во всей полосе частот, что удовлетворяет нашим изначальным требованиям к фильтру. Децимация Децимация - понижение частоты дискретизации. Поскольку максимальная полезная частота составляет 30 Гц, то, учитывая теорему Найквиста, частота дискретизации должна быть больше 60 Гц. Мы понизили частоту дискретизации с 500 Гц до 62,5 Гц. Полосовая фильтрация от 7 Гц до 30 Гц при децимации позволяет избежать алиасинга. Выделение характерных признаков сигнала Для классификаторов, используемых в машинном обучении, было необходимо выделить характерные признаки сигнала (фичи), чтобы уменьшить количество входных данных, отсеять лишнее и увеличить точность классификации. Для начала мы решили попробовать один из самых распространённых методов извлечения характерных признаков - метод главных компонент.
  • 9. Разработка программного обеспечения на заказ Метод главных компонент Основная идея метода главных компонент в данной задаче следующая: на несколько электродов может приходить один и тот же сигнал с коры головного мозга (Рис. 7). Рис. 7. Смешивание сигналов в процессе их пути от коры головного мозга до электродов, расположенных на голове Если предположить, что сигналы смешиваются линейно, то вектор сигналов с датчиков: где – вектор столбец 32x1 – сигналы на датчиках. – вектор столбец 10x1 – сигналы с коры головного мозга. – матрица 32x10 – неизвестна. Можно обратить эту зависимость: где - псевдообратная матрица (Moore–Penrose pseudoinverse). Если мы знаем матрицу , то на вход классификатора можем подавать не исходные сырые данные , а улучшенные данные .
  • 10. Разработка программного обеспечения на заказ Мы пытались вычислить матрицу , используя SVD (singular value decomposition) – сингулярное разложение матрицы. Все 32 сигнала собираются в матрицу сигналов X. Каждый сигнал - это столбец матрицы. Матрица X имеет размер Nx32. Эта матрица подвергалась сингулярному разложению , где – унитарные матрицы, - диагональная матрица в который все элементы положительны и отсортированы в порядке убывания. имеет размер Nx32, – 32x32, – 32x32. Первые несколько столбцов матрицы должны быть теми самыми глубинными сигналами которые возникают в голове когда пациент начинает двигать рукой. Первые несколько столбцов являются главными компонентами. В последних столбцах матрицы обычно находятся шумы. При проведении анализа данных с использованием SVD мы не нашли корреляции между сигналами из первых столбцов матрицы и моментами когда пациент начинал двигать руку. Поэтому решили отказаться от данного метода. Возможно, причина неудачи в том, что SVD предполагает внутри себя, что глубинные сигналы взаимно ортогональны. А они, судя по результатам экспериментов, не взаимно ортогональны. Кроме этого, количество датчиков в нашем эксперименте сводилось к 32, что не является достаточным для хорошей SVD. Для неортогональных сигналов нужно использовать ICA (independent component analysis) - метод независимых компонент. ICA мы не успели попробовать.
  • 11. Разработка программного обеспечения на заказ Выбор электродов с точки зрения биологии На рисунке 8 видно пространственное расположение электродов. Электроды, с которых предоставлялись данные, помечены цифрами от 1 до 32. Рис. 8. Схематическое изображение электродов на поверхности головы Существует такое понятие, как межполушарная асимметрия. Наряду с другими значениями оно показывает, что левое полушарие отвечает за правую часть тела, а правое полушарие за левую часть тела. Испытуемые двигали правой рукой, значит сигнал изначально возникал в левом полушарии. Основываясь на этом и в соответствии с рисунком 4, были выбраны следующие электроды: FC5, FC1, T7, C3, Cz, CP5 и CP1.
  • 12. Разработка программного обеспечения на заказ Вейвлет-преобразование Выбрав нужные электроды, мы решили сосредоточиться на вейвлет- преобразовании в качестве выделения необходимых характерных признаков. Техника вейвлет-преобразования одномерного сигнала широко применяется в разных областях, начиная от обработки сейсмических сигналов и заканчивая обработкой речевых сигналов. Данный подход имеет ряд преимуществ по сравнению со спектральным анализом в случае нестационарных, импульсных сигналов. Выбор конкретного вида и типа вейвлетов во многом зависит от анализируемых сигналов и задач анализа. В настоящее время не существует однозначных методов, позволяющих выбрать оптимальный вейвлет для решения конкретной задачи, зачастую задача выбора вейвлет-функции ложится на плечи эксперта. Существует негласный принцип выбора вейвлета – вид базовой вейвлет-функции должен быть похож на обрабатываемый сигнал. В качестве базовой функции был выбран вейвлет Гаусса gaus2: Рис. 9. Вейвлет Гаусса gaus2
  • 13. Разработка программного обеспечения на заказ Рис. 10. Результат вейвлет-преобразования для сигнала ЭЭГ Вейвлет-преобразование позволяет анализировать “тонкую” структуру сигналов за счет одновременной локализации и по частоте, и по времени. Выбор алгоритма машинного обучения В первую очередь решили использовать уже хорошо знакомые нам свёрточные нейронные сети, которые входят в алгоритмы глубинного обучения. В глубинном обучении выделять характерные признаки необязательно, т.к. поиск таких признаков и обучение по ним уже там содержатся. Свёрточные нейронные сети (CNN - convolutional neural network) Сверточные нейронные сети хорошо зарекомендовали себя с двумерными сигналами (такими как изображение), однако такие сети могут работать и с одномерными сигналами (Рис. 11).
  • 14. Разработка программного обеспечения на заказ Рис. 11. Пример работы свёрточной нейронной сети с одномерным сигналом [4] На вход свёрточной нейронной сети подаётся 32 одномерных сигнала за определенный период времени. Опытным путём было выявлено, что 4096 отсчётов (до децимации) дают наименьшую вероятность ошибки в конечной модели. В итоге получилась следующая модель (Рис. 12).
  • 15. Разработка программного обеспечения на заказ Рис. 12. Полученная модель, где CL - свёрточный слой (convolutional layer),MP - map pooling, FC - полносвязный слой (fully conected layer), FM - количество масок с характерными признаками (feature masks), kernel_x - размер ядра, stride - размер шага Данная модель позволила нам получить площадь под кривой ROC (area under ROC curve) равную 0.91983. Рис. 13. Результат полученной модели Увеличение количества масок, свёрточных слоёв, изменения размеров ядра не давали улучшений. Площадь под кривой колебалась от ~0.88 до ~0.91. Случайные деревья Алгоритм “случайные деревья” или “случайный лес” в настоящее время является одним из самых популярных в области классификации. Поэтому мы решили попробовать и его. Алгоритм состоит из ансамбля решающих деревьев, для каждого из которых из общей выборки генерируется своя выборка. Для понимания работы алгоритма приведем пример решающего дерева для абстрактной задачи с двумя характерными признаками (Рис. 14).
  • 16. Разработка программного обеспечения на заказ Изначально на плоскости располагаются признаки, принадлежащие двум разным классам. Делим их так, чтобы одной горизонтальной или вертикальной линией отделить один класс от другого. Далее аналогичным образом делим получившиеся плоскости до тех пор, пока не добьёмся, чтобы вероятность доминирующего класса превышала некий порог или была достигнута максимальная глубина узла, или количество элементов в подмножестве стало меньше установленного порога. Рис. 15. Пример построения решающего дерева для двух характерных признаков. [5] Само по себе решающее дерево - это не очень устойчивый и надежный алгоритм. Высокая точность классификации и универсальность алгоритма достигаются именно за счёт ансамбля (комитета) таких решающих деревьев. Мы не успели опробовать структуру “вейвлет-преобразование + случайный лес”, поскольку не учли, что вейвлет-преобразование является весьма затратной по времени задачей. Рекуррентные нейронные сети (RNN – recurrent neural network) Рекуррентные искусственные нейронные сети - это нейронные сети, в которых есть обратные связи. Биологические нейронные сети –
  • 17. Разработка программного обеспечения на заказ рекуррентные. В них есть память. У животных и человека есть память. Обратные связи дают возможность сети иметь память. Когда у сети есть память, то нет необходимости подавать историю сигнала в сеть. Причем глубина памяти в прошлое определяется во время обучения. Для рекуррентной нейронной сети мы использовали “сырые” данные, то есть не извлекали из них характерные признаки, поскольку рекуррентная нейронная сеть делает это сама. Таким образом, рекуррентная нейронная сеть имеет 32 входа. Мы провели серию опытов с рекуррентной нейронной сетью, пробовали разные архитектуры и задержки в обратных связях. Сеть не обучалась. Были проблемы с памятью – не удавалось создать сложную сеть с числом слоев больше двух. Поняли, что нужно использовать специальный вид нейронных сетей LSTM (Long Short Term Memory). LSTM имеет внутри себя особые ячейки памяти которые сделаны на основе контролируемой обратной связи с коэффициентом 1. Рис 16. Ячейка памяти рекуррентной нейронной сети вида LSTM Решение - включить или выключить обратную связь в сети - принимает другая часть нейронной сети. При выключении обратной связи происходит забывание информации в ячейке памяти. Таким образом, сеть сама решает, когда ей запомнить информацию, когда использовать, а когда забыть. К сожалению, мы не успели разобраться в том, как обучать LSTM до завершения конкурса.
  • 18. Разработка программного обеспечения на заказ Заключение В результате проведённых опытов наша команда получила высокое качество классификации сигналов головного мозга в процессе движения руки. Благодаря метрике качества “площадь под кривой ROC”, полученной в результате использования свёрточных нейронных сетей, мы убедились в эффективности алгоритмов глубинного обучения в классификации сигналов различного рода. Это позволяет нам с уверенностью заключить, что свёрточные нейронные сети – один из лучших существующих на сегодня методов машинного обучения для создания нейрокомпьютерного интерфейса. Проще говоря, дайте нам электрические сигналы с вашего мозга, и мы скажем вам, что вы делали! Список использованных источников и литературы [1] Хомская Е.Д. Х = Нейропсихиология: 4-е издание. — СПб.: Питер. - 2005. – 496 с: ил. [2] Localizing Movement-Related Primary Sensorimotor Cortices with Multi-Band EEG Frequency Changes and Functional MRI. Kuo C-C, Luu P, Morgan KK, Dow M, Davey C, et al. (2014) Localizing Movement-Related Primary Sensorimotor Cortices with Multi-Band EEG Frequency Changes and Functional MRI. PLoS ONE 9(11): e112103. doi: 10.1371/journal.pone.0112103 [3] Возникновение мозга человека. — М: ВЕДИ. Савельев С.В., 2010. — 324 с.: ил. [4] Learning deep physiological models of affect. H. P. Martinez, Y. Bengio, G. N. Yannakakis Computational Intelligence Magazine, IEEE, Vol. 8, No. 2. (May 2013), pp. 20-33. [5] Модель Random Forest для классификации, реализация на c#: [Электронный ресурс]