Аннотация:

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

Технология электроэнцефалографии (ЭЭГ) приобретает все большую популярность в различных приложениях. В этом отчете мы предлагаем автоматизированную систему на основе глубокого обучения, которая может классифицировать рабочую нагрузку на 3 категории — высокая, средняя и низкая, используя электроэнцефалографические сигналы (ЭЭГ), полученные с помощью недорогого устройства ЭЭГ (Emotiv EEG). Рабочая нагрузка является критическим фактором, влияющим на производительность человека в любой области, начиная от исследований, корпоративной работы и заканчивая армейскими личным составом. В этом исследовании для получения сигналов мозга использовалась 14-канальная ЭЭГ, в то время как испытуемым давали несколько задач для выполнения, которые были разделены в зависимости от рабочей нагрузки, которую они могут вызвать у человека. Затем полученные сигналы пропускались через различные алгоритмы глубокого обучения в качестве обучающих наборов. Затем обученные модели глубокого обучения использовались для классификации рабочей нагрузки на человека путем простого сбора сигналов ЭЭГ этого человека и передачи их через эти модели.

Введение:

В этой исследовательской работе мы использовали пять алгоритмов глубокого обучения для обучения, а затем сравнили результаты каждого из алгоритмов, чтобы выяснить, какой алгоритм лучше всего подходит для наших результатов. Аппарат Emotiv EEG использовался для сбора данных по 14 каналам. Поскольку обнаружено, что электроэнцефалографические данные содержат много шума и других мешающих элементов, которые, если их напрямую ввести в алгоритмы в качестве обучающих данных, могут привести к ошибочным результатам. Следовательно, полученные данные ЭЭГ затем обрабатывались с помощью различных методов цифровой обработки сигналов, чтобы отфильтровать шум и другие элементы и попытаться сделать сигнал как можно более чистым.

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

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

Искусственная нейронная сеть

Первой моделью глубокого обучения, которую мы использовали, была искусственная нейронная сеть. Мы разработали глубокую нейронную сеть, состоящую из 1 скрытого слоя с 8 скрытыми нейронами. Входом в сеть были 14-канальные сигналы ЭЭГ, поэтому входной слой состоял из 14 нейронов. Результатом, который мы хотели, был классификатор, который мог бы классифицировать на основе сигналов ЭЭГ рабочую нагрузку по 3 категориям, и, следовательно, выходной слой состоял из 3 нейронов.

На рисунке ниже показано, как визуально выглядела искусственная нейронная сеть.

14 входных нейронов представляют 14 каналов ЭЭГ — AF3, F7, F3, FC5, T7, P7, O1, O2, P8, T8, FC6, F4, F8 и AF4. 3 выходных нейрона представляют собой BL (базовая линия), то есть отсутствие рабочей нагрузки, LWL (низкая рабочая нагрузка) и HWL (высокая рабочая нагрузка). Мы использовали программирование R для выполнения всей исследовательской работы, и показанная выше нейронная сеть также была закодирована в R. Мы использовали метод устойчивого обратного распространения (+Rprop) для обучения глубокой нейронной сети.

Чтобы обучить глубокую нейронную сеть, нам сначала нужно было нормализовать весь набор входных данных. Мы использовали функцию нормализации, доступную в пакете RSNNS на сервере CRAN для программирования R. Данные тестирования также были нормализованы перед передачей в сеть для тестирования. Полученный результат классификации, таким образом, был в нормализованной форме, и нам пришлось денормализовать вывод, используя функцию денормализации, доступную в том же пакете, упомянутом выше. Полученные таким образом денормализованные значения были фактическими значениями, которые представляли, является ли рабочая нагрузка базовой, низкой или высокой. Данные, которые у нас были, касались 10 студентов, которых мы далее разделили в соотношении 8:2, которые затем использовались для обучения: тестирования. Мы обучили нейронную сеть данными ЭЭГ 8 студентов, а затем протестировали глубокую сеть на данных 2 студентов.

Входные/обучающие данные, которые мы ввели в нейронную сеть, были такими, как показано ниже.

Выходной набор 14-канальных сигналов ЭЭГ был преобразован в формат двоичной матрицы, где 3 столбца имеют формат (1,0,0), что означает, что для каждой пары сигналов может быть только один из 3 случаев. Следовательно, когда выходные данные нейронной сети были денормализованы с использованием функции денормализации, выходные данные 3 нейронов были в том же формате (0,1,0), который удовлетворял набору входных данных.

ПОДДЕРЖКА ВЕКТОРНЫХ МАШИН

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

В дополнение к выполнению линейной классификации SVM могут эффективно выполнять нелинейную классификацию, используя так называемый трюк ядра, неявно отображая свои входные данные в многомерные пространства признаков.

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

Машины опорных векторов основаны на концепции плоскостей решений, которые определяют границы решений. Плоскость принятия решений — это плоскость, разделяющая набор объектов, принадлежащих к разным классам. Схематический пример показан на иллюстрации ниже. В этом примере объекты принадлежат либо к классу ЗЕЛЕНЫЙ, либо к КРАСНОМУ. Разделительная линия определяет границу, справа от которой все объекты ЗЕЛЕНЫЕ, а слева все объекты КРАСНЫЕ. Любой новый объект (белый кружок), падающий вправо, помечается, т. е. классифицируется как ЗЕЛЕНЫЙ (или классифицируется как КРАСНЫЙ, если он падает слева от разделительной линии).

Выше приведен классический пример линейного классификатора, т. е. классификатора, который разделяет набор объектов на соответствующие группы (ЗЕЛЕНЫЙ и КРАСНЫЙ в данном случае) с помощью линии. Однако большинство задач классификации не так просты, и часто требуются более сложные структуры, чтобы сделать оптимальное разделение, т. е. правильно классифицировать новые объекты (тестовые случаи) на основе имеющихся примеров (поездных случаев). Эта ситуация изображена на иллюстрации ниже. По сравнению с предыдущей схемой ясно, что для полного разделения ЗЕЛЕНЫХ и КРАСНЫХ объектов потребуется кривая (которая сложнее, чем линия). Задачи классификации, основанные на рисовании разделительных линий для различения объектов, принадлежащих к разным классам, известны как классификаторы гиперплоскостей. Машины опорных векторов особенно подходят для решения таких задач.

На приведенном ниже рисунке показана основная идея машин опорных векторов. Здесь мы видим исходные объекты (левая часть схемы), нанесенные на карту, т. е. переупорядоченные, с использованием набора математических функций, известных как ядра. Процесс перестановки объектов известен как отображение (трансформация). Обратите внимание, что в этой новой настройке отображаемые объекты (правая часть схемы) линейно разделимы, и, таким образом, вместо построения сложной кривой (левая схема) все, что нам нужно сделать, это найти оптимальную линию, которая может разделить ЗЕЛЕНЫЕ и КРАСНЫЕ объекты.

СЛОЖНЫЙ АВТОКОДЕР

Жадный послойный подход для предварительной подготовки глубокой сети работает путем обучения каждого слоя по очереди. На этой странице вы узнаете, как автоэнкодеры могут быть «сложены» жадным послойным способом для предварительной подготовки (инициализации) весов глубокой сети.

Стекированный автоэнкодер — это нейронная сеть, состоящая из нескольких слоев разреженных автоэнкодеров, в которых выходы каждого слоя подключены к входам последующего слоя. Формально рассмотрим многоуровневый автоэнкодер с n слоями. Используя обозначения из

раздел автоэнкодера, пусть W(k,1),W(k,2),b (k,1),b(k,2)обозначим параметры W(1 ),W(2),b(1),b(2) для k-го автоэнкодера. Затем шаг кодирования для стекового автоэнкодера задается путем запуска шага кодирования каждого слоя в порядке пересылки:

Шаг декодирования задается запуском стека декодирования каждого автоэнкодера в обратном порядке:

Интересующая информация содержится в a(n), что является активацией самого глубокого слоя скрытых единиц. Этот вектор дает нам представление входных данных с точки зрения признаков более высокого порядка.

Функции многоуровневого автоэнкодера можно использовать для задач классификации, передав a(n) классификатору softmax.

Обучение

Хороший способ получить хорошие параметры для многоуровневого автоэнкодера — использовать жадное послойное обучение. Для этого сначала обучите первый слой необработанным входным данным, чтобы получить параметры W(1,1),W(1,2),b(1,1),b(1,2). Используйте первый слой для преобразования необработанных входных данных в вектор, состоящий из активации скрытых единиц, A. Обучите второй слой на этом векторе, чтобы получить параметры W(2,1),W (2,2),b(2,1),b(2,2). Повторите для последующих слоев, используя выходные данные каждого слоя в качестве входных данных для последующего слоя.

Этот метод обучает параметры каждого слоя по отдельности, в то время как параметры оставшейся части модели замораживаются. Чтобы получить лучшие результаты, после завершения этого этапа обучения можно использовать тонкую настройку с использованием обратного распространения ошибки для улучшения результатов путем одновременной настройки параметров всех слоев.

ЛИНЕЙНЫЙ ДИСКРИМИНАНТНЫЙ АНАЛИЗ

Линейный дискриминантный анализ (LDA) чаще всего используется в качестве метода уменьшения размерности на этапе предварительной обработки для приложений классификации образов и машинного обучения. Цель состоит в том, чтобы спроецировать набор данных на низкоразмерное пространство с хорошей разделимостью классов, чтобы избежать переобучения («проклятие размерности»), а также снизить вычислительные затраты.

Итак, в двух словах, часто цель LDA состоит в том, чтобы спроецировать пространство признаков (набор данных n-мерных выборок) на меньшее подпространство kk (где k≤n−1k≤n−1), сохраняя при этом дискриминирующую информацию о классах. .
В общем, уменьшение размерности не только помогает снизить вычислительные затраты для данной задачи классификации, но также может помочь избежать переобучения, сводя к минимуму ошибку в оценке параметров («проклятие размерности»).

ЗАКЛЮЧЕНИЕ:

Таким образом, мы использовали 14 каналов ЭЭГ для расчета нагрузки на любого человека с использованием 4 методов глубокого обучения и в конце использовали различные статистические методы, чтобы сделать выводы из полученных результатов.

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

В нашем случае мы использовали 14-канальный ЭЭГ-аппарат Emotiv. Однако разработанная машина может использоваться для всех пар каналов — 14, 128, 256. Пользовательский интерфейс, разработанный в R Shiny, устроен таким образом, что раскрывающееся меню можно использовать для выбора типа данных, которые пользователь пытается использовать. тренировать машину.

Ниже приведен скриншот полного приложения, разработанного в R Shiny.

Использованная литература :

  1. Википедия
  2. https://www.worldscientific.com/doi/abs/10.1142/S0129065706000482
  3. https://ieeexplore.ieee.org/abstract/document/4808252/