Распознавание респираторных заболеваний по звуку дыхания
Друзья, с момента основания проекта прошло уже 20 лет и мы рады сообщать вам, что сайт, наконец, переехали на новую платформу.
Какое-то время продолжим трудится на общее благо по адресу
На новой платформе мы уделили особое внимание удобству поиска материалов.
Особенно рекомендуем познакомиться с работой рубрикатора.
Спасибо, ждём вас на N-N-N.ru
Блог компании OTUS. Сегодня рассмотрим задачу диагностирования респираторных заболеваний, то есть заболеваний дыхательной системы, но решать её будем не ушами, а алгоритмами. И решать её будем два раза, сначала методами классического машинного обучения, а затем методами глубокого обучения, то есть нейронной сетью.
Для медицинских опытов возьмем датасет “Respiratory Sound Database”, он доступен на Kaggle. В состав датасета входят 920 аудиофайлов с записями дыхания пациентов, как здоровых, так и страдающих различными респираторными заболеваниями. Ещё есть сводный файл с информацией о пациентах: рост, вес, возраст, пол и так далее, и отдельный файл с диагнозами.
Авторы предлагают для него решать разные задачи. Помимо распознавания заболеваний по звуку, можно еще аннотировать записи дыхания, то есть детектировать момент времени, когда происходит вдох, когда – выдох и есть ли в этом дыхательном цикле, например, хрипы. Но мы будем решать именно задачу распознавания заболевания.
Последнее что нужно учесть – соответствие записей пациентам. Аудиозаписей у нас 920, но пациентов только 126 – одному пациенту соответствует несколько записей, причём количество записей разное для разных пациентов.
Но мы, для упрощения задачи, будем считать записи самостоятельными и будем классифицировать каждую отдельно и независимо от остальных. Группировать записи по пациентам и оценивать их совместно, чтобы принять единое решение, мы не будем. Это увеличивает количество примеров в датасете, но, в теории, может ухудшить результат – возможно, какие-то заболевание по одной записи не диагностировать. Но сейчас, ради увеличения размера датасета, мы пренебрежём риском потерять в точности. Вообще, малое количество данных это известная проблема медицинских датасетов.
EDA
Начнём с общего анализа данных, это позволит лучше понять датасет. Но для начала их прочитаем. Тут есть одна хитрость – единого файла с данными о пациентах у нас нет, информация о диагнозах и о демографии пациентов разложены по разным файлам. Поэтому прочитаем их отдельно и объединим. Загрузив данные, посмотрим, что у нас за колонки.
- Источник(и):
- Войдите на сайт для отправки комментариев