Выявление болезни Паркинсона у пациентов с помощью речевых сигналов.

Болезнь Паркинсона — длительное дегенеративное заболевание центральной нервной системы. Это приводит к дрожи, скованности, затруднениям при ходьбе, нарушении равновесия и координации. Симптомы возникают медленно и со временем ухудшаются.

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

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

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

Ссылка на реализацию на cAInvas — здесь.

Набор данных

Источник:

Макс А. Литтл, Патрик Э. МакШарри, Эрик Дж. Хантер, Лоррейн О. Рэмиг (2008 г.), «Пригодность измерений дисфонии для телемониторинга болезни Паркинсона», IEEE Transactions on Biomedical Engineering.

Набор данных был создан Максом Литтлом из Оксфордского университета в сотрудничестве с Национальным центром голоса и речи в Денвере, штат Колорадо, который записал речевые сигналы. В оригинальном исследовании были опубликованы методы извлечения признаков для общих нарушений голоса.

Информация о наборе данных

Этот набор данных состоит из ряда биомедицинских измерений голоса 31 человека, 23 из которых страдают болезнью Паркинсона (БП). Каждый столбец в таблице представляет собой конкретный показатель голоса, а каждая строка соответствует одной из 195 записей голоса этих людей. Основная цель данных — отличить здоровых людей от людей с БП в соответствии со столбцом «статус», в котором установлено значение 0 для здоровых и 1 для БП.

Набор данных необходимо перетасовать, поскольку столбец состояния упорядочен.

Давайте посмотрим на разброс значений между различными классами.

Это несбалансированный набор данных.

Предварительная обработка

Определение входных и выходных столбцов

Модель в этой статье использует категориальную функцию перекрестной энтропийной потери, поэтому есть два выходных столбца — «да» и «нет».

МинМаксСкалер

Давайте посмотрим на диапазон значений различных атрибутов.

Значения атрибутов находятся в разных диапазонах и варьируются от ~10^-6 до ~600. Эти значения должны быть масштабированы перед вводом данных в модель.

Теперь значения лежат в диапазоне [0, 1].

Одна горячая кодировка

В модели используется категориальная кросс-энтропия, поэтому метки кодируются горячим способом.

Пример одной горячей кодировки: целочисленное значение 1 → [0, 1], 0 → [1, 0].

Мы можем сохранить метки как одно целое число (0/1), если используем бинарную кросс-энтропийную потерю. В этом случае последний слой нашей модели должен иметь 1 узел.

Поезд — пробный сплит

Использование разделения 80–10–10 для разделения набора данных на обучающий, проверочный и тестовый наборы.

Модель

Модель имеет 4 плотных слоя (включая входной слой). Последний слой имеет 2 узла и активацию softmax.

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

Обученная модель смогла достичь точности ~95%.

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

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

График показателей

Прогноз

Выполнение прогнозов на случайных тестовых выборках.

глубокий C

Библиотека, компилятор и инфраструктура вывода deepC предназначены для включения и выполнения нейронных сетей глубокого обучения с упором на функции устройств малого форм-фактора, таких как микроконтроллеры, eFPGA, процессоры и другие встроенные устройства, такие как raspberry-pi, odroid, Arduino, SparkFun Edge, RISC-V, мобильные телефоны, x86 и портативные компьютеры.

Компиляция модели с помощью deepC для получения файла .exe —

Зайдите на платформу cAInvas (ссылка на блокнот дана ранее) и проверьте прогнозы по файлу .exe!

Источник: Аиша Д