Telegram-бот для распознавания COVID-19 по голосу будет размещен в облаке Serverspace

bl5ysvgzc1je7pe1zwbnivsvjla.png

Студент 3 курса Университета ИТМО, Владимир Шилоносов, учащийся по направлению Нейротехнологии и программная инженерия, разрабатывает новую систему распознавания COVID-19 на основе анализа звуковых данных. Программа использует такие признаки, как уровень громкости или диапазон высоты звука, чтобы обнаружить COVID-19. Точность предсказания 91,7%.

О проекте


Идея проекта системы распознавания COVID по голосу основана на применении методов классического машинного обучения и выборе лучшего из них. Для определения подходящего подхода использовались такие методы классического ML, как метод k-ближайших соседей, логистическая регрессия, метод случайного леса, а также дерево принятия решений. С помощью k-fold cross-validation было проведено обучение всех моделей с разными параметрами и проверена их точность на валидационных данных. Это позволило выбрать модель с лучшими параметрами — дерево принятия решений, который в итоге дал наилучшую точность.

«Подход заключается в том, что я брал dataset с аудиоданными и вычленял оттуда признаки. Потом использовал только наиболее значимые и некоррелирующие из них. Затем модель обучалась на этих признаках», — говорит Владимир Шилоносов, автор проекта, студент Университета ИТМО.

На основе анализа данных, Владимир определил важные признаки для своего проекта, которые описывают аспекты звуковых колебаний, включая высоту звука, уровень громкости, наклон и спектральные характеристики. Используя их, модель обучается предсказывать вероятность наличия COVID-19 у человека на основе звукового сигнала.

Признаки


Модель системы берет различные признаки и задает ряд вопросов, чтобы классифицировать голосовые данные пользователя как здоровые или инфицированные COVID-19. Вот несколько признаков, которые используются в системе:

  • F0semitoneFrom27.5Hz_sma3nz_pctlrange0–2: Описывает диапазон высоты звука в полутонах в диапазоне 0–2% от общего диапазона.
  • loudness_sma3_meanFallingSlope: Описывает средний уровень громкости звука и его падение со временем.
  • mfcc1V_sma3nz_stddevNorm: Описывает изменение первого коэффициента мел-частотных кепстральных коэффициентов (MFCC) со временем.
  • F0semitoneFrom27.5Hz_sma3nz_percentile80.0: Описывает 80-й процентиль диапазона высоты звука в полутонах.
  • slopeV0–500_sma3nz_amean: Описывает среднее значение наклона звука в диапазоне частот от 0 до 500 Гц.


frjig9rvm0phcimgjyegjfo274i.png

Дальнейшие планы


В настоящее время тестирование системы проводится на основе тренировочных и тестовых данных. Однако в планах Владимира — провести дополнительные исследования и тестирование на реальных людях совместно с медицинскими учреждениями.

Владимир продолжает работать над развитием своего проекта и стремится сделать его доступным для общества. В рамках практического применения разработанной технологии, Владимир планирует запустить Telegram-бота, который будет хоститься на облачных серверах провайдера Serverspace. Пользователи смогут отправлять голосовые аудиофайлы боту и получать предсказания в формате 0 или 1, где 0 означает, что человек здоров, а 1 — указывает на возможное заболевание COVID-19.

Подробнее о том, как работает проект, какие признаки используются и чем вдохновлялся автор при создании системы, Владимир рассказал в статье «Система распознавания COVID-19 по голосовым признакам».

yum0upvqpmb1rcchboht0xncbsw.png

© Habrahabr.ru