Software Services
Delivered

Multiparameter Patient Monitor

Не так давно в блоге Auriga была опубликована моя статья про распознавание ритмов ЭКГ сверточной нейронной сетью, где было показано, что для надежного распознавания некоторых патологий сердечного ритма может быть достаточно записей с данной патологией даже от 2-3 пациентов. Новая статья показывает на том же материале, что улучшить распознавание можно не только изменением структуры нейронной сети, но и работой со входными данными.

В статье описан опыт применения трёх способов улучшения качества распознавания: 

  1. изменение интервала нарезки данных,
  2. метод «переноса обучения» (“transfer learning”),
  3. балансировка мощности классов. 

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

Была использована та же 16-слойная свёрточная нейронная сеть и те же свободно доступные данные ЭКГ с одного отведения (mitdb), которые использовались в предыдущей статье. Дополнительно были использованы размеченные данные соревнования 2017 года с сайта physionet.org, где проводилось обучение для 4 классов на реализациях ЭКГ длительностью от 9 до 60 секунд. Для возможности совместного применения первичные данные (360 отсчётов в секунду) были ресэмплированы в частоту поступления дополнительных данных (300 отсчётов в секунду). 

Далее описано применение методов в двух вариантах постановки задачи классификации, как это было в предыдущей статье (с разделением и без разделения данных на обучающие и тестовые). Для варианта без разделения использованы методы (1) и (2). Для варианта с разделением использованы методы (1), (2) и (3). 

Вариант без разделения обучающих и тестовых данных по персонам (15 классов ритмов) 

Нарезка данных на 5-секундные интервалы вместо 10-секундных (метод 1), как и ожидалось, привела к относительному снижению качества распознавания фибрилляции предсердий (AFIB), однако, добавились ранее не распознававшиеся ритмы NOD и IVR. Это можно объяснить уменьшением обрезков данных, что особенно важно для классов с малым количеством данных. Общий показатель “ranking-based average precision” (RBAP) вырос с 0.968 до 0.975.  

Уменьшение интервала нарезки и частоты отсчётов укоротили порцию данных на входе нейросети, что привело к её неработоспособности. Это было скомпенсировано изменением параметров первого слоя (1D-свёртка): размер ядра свёртки уменьшен вдвое, шаг – с 3 до 2. 

Для улучшения результата был также использован «перенос обучения» (метод 2) c различным количеством стираемых слоёв. Показатель RBAP вырос до 0.984. Оказалось, что в данном случае оптимально стирание весов не одного-двух слоёв, а 10 или 13 слоёв из 16 (Рисунок 1).  

RBAP

Рисунок 1. RBAP

Вариант с разделением обучающих и тестовых данных по персонам (9 классов ритмов) 

Для практического использования ценен именно этот “честный” вариант. При нарезке на 5-секундные интервалы (метод 1) добавилось распознавание ритма IVR, а RBAP вырос с 0.804 до 0.826. Метод «переноса обучения» (метод 2) с оптимальным для данного варианта стиранием весов 10-ти слоёв, добавил распознавание ритма AFL, а RBAP вырос до 0.885. 

Значимые результаты были получены только для 6 распознаваемых классов ритмов с применением «переноса обучения». Результаты показаны в Таблице 1: 

Отчет по классам    Матрица ошибок 
Точность  Полнота  f1-score  support  rhythm  AFIB  AFL  IVR 
0.98  0.98  0.98  342  334  8  0  0  0  0 
0.90  0.83  0.86  260  AFIB  4  215  0  1  40  0 
1.00  0.99  1.00  638  0  1  632  0  0  5 
0.96  0.83  0.89  58  0  0  0  48  0  1 
0.76  0.95  0.84  132  AFL  0  0  0  1  125  0 
0.87  0.95  0.91  42  IVR  2  0  0  0  0  40 
 
0.95  1472  Метрика Accuracy 
0.91  0.92  0.91  1472  Метрика Macro Average 
0.95  0.95  0.95  1472  Средневзвешенное значение 
0.973        Ranking-based average precision (RBAP) 

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

Итак, наилучшим стал описанный выше вариант с 5-секундной нарезкой, выравниванием количества экземпляров в классах при обучении, и с использованием «переноса обучения» (Табл.1).

Пройти опрос

Помогите нам улучшить наш сайт

×

Что было самым полезным на этой странице?

0/100

Что бы вы поменяли на этой странице в первую очередь?

0/100

Вы нашли информацию, которую искали?