программ1_____
для автомати с при
-диагностика» электрокардиограмм энного обучения
математики1
v В.А. Москаленко, магистран
А.В. Никольский, к.м.н., сердечно-сосудистый хирург2;
Н.Ю. Золотых, д.ф.-м.н., доцент, профессор кафедры алгебры, геометрии и дискретной i А.А. Козлов, анестезиолог-реаниматолог3; К.А. Косоногов, к.м.н., сердечно-сосудистый хирург2;
A.И. Калякулина, аспирант1; И.И. Юсипов, аспирант1;
B.М. Леванов, д.м.н., доцент, профессор кафедры социальной медицины и организации здравоохранения4
Национальный исследовательский Нижегородский государственный университет им. Н.И. Лобачевского, пр. Гагарина, 23, Н. Новгород, 603950;
2Городская клиническая больница №5, ул. Нестерова, 34, Н. Новгород, 603005;
Нижегородская областная клиническая больница им. Н.А. Семашко, ул. Родионова, 190, Н. Новгород, 603126; "Приволжский исследовательский медицинский университет, пл. Минина и Пожарского, 10/1, Н. Новгород, 603005
Целью работы стало создание в составе программно-аппаратного комплекса «Киберсердце» системы автоматического анализа электрокардиограмм — программного модуля «Киберсердце-Диагностика» — и выбор методов машинного обучения для ее тестирования на основе сравнительного анализа их возможностей.
Материалы и методы. При разработке программного комплекса использовали известные методы машинного обучения, работа которых строится на большой выборке размеченных данных, т.е. на базе ЭКГ с известными заключениями: метод опорных векторов, дерево решений, искусственные нейронные сети, методы квадратичного и линейного дискриминантного анализа, метод случайных подпространств, AdaBoost, случайный лес, логистическая регрессия (модель нейрона Мак-Каллока-Питтса). Для сравнительного анализа и оценки точности полученных результатов программа «Киберсердце-Диагностика» была протестирована на открытых международных базах данных ЭКГ: Arrhythmia Data Set, PhysioNet PTBDB, PhysioNet Competition 2017, а также на материалах собственной базы данных, включающей 1652 записи стандартной 12-канальной ЭКГ покоя. Все ЭКГ были описаны врачами-экспертами с формированием структурированного врачебного заключения, которое принималось как эталонное.
Результаты. В различных классах признаков точность диагностики программы «Киберсердце-Диагностика» составила 83,894,5%, при сравнении с заключениями врачей-экспертов — 66,3-95,1%. Таким образом, разработанная программа по качеству анализа электрокардиограмм сравнима с мировыми аналогами.
Ключевые слова: электрокардиограмма; автоматический анализ; база данных ЭКГ; методы машинного обучения.
Как цитировать: Moskalenko V.A., Nikolskiy A.V., Zolotykh N.Yu., Kozlov A.A., Kosonogov K.A., Kalyakulina A.I., Yusipov I.I., Levanov V.M. Cyberheart-Diagnostics software package for automated electrocardiogram analysis based on machine learning techniques. Sovremennye tehnologii v medicine 2019; 11(2): 86-91, https://doi.org/10.17691/stm2019.11.2.12
English
Cyberheart-Diagnostics Software Package for Automated Electrocardiogram Analysis Based on Machine Learning Techniques
V.A. Moskalenko, Graduate Student1;
A.V. Nikolskiy, MD, PhD, Cardiovascular Surgeon2;
N.Yu. Zolotykh, DSc, Associate Professor, Professor, Department of Algebra, Geometry and Discrete Mathematics1;
Для контактов: Леванов Владимир Михайлович, e-mail: [email protected]
//////////////////////^^^^
86 СТМ J 2019 J том 11 J №2 В.А. Москаленко, А.В. Никольский, Н.Ю. Золотых, А.А. Козлов, К.А. Косоногов.....В.М. Леванов
A.A. Kozlov, Anesthesiologist, Resuscitator3;
K.A. Kosonogov, MD, PhD, Cardiovascular Surgeon2;
A.I. Kalyakulina, PhD Student1;
I.I. Yusipov, PhD Student1;
V.M. Levanov, MD, DSc, Associate Professor, Professor, Department of Social Medicine and Health Care4
1National Research Lobachevsky State University of Nizhny Novgorod, 23 Prospekt Gagarina, Nizhny Novgorod,
603950, Russia;
2City Clinical Hospital No.5, 34 Nesterova St., Nizhny Novgorod, 603005, Russia;
3Nizhny Novgorod Regional Clinical Hospital named after N.A. Semashko, 190 Rodionova St., Nizhny Novgorod,
603126, Russia;
4Privolzhsky Research Medical University, 10/1 Minin and Pozharsky Square, Nizhny Novgorod, 603005, Russia
The aim of the study was to develop the Cyberheart-Diagnostics software module, an automated electrocardiogram analysis system being part of the Cyberheart software and hardware complex, and to select machine learning techniques for testing the system based on the comparative analysis of their capabilities.
Materials and Methods. The software package was developed using various machine learning techniques working on a large sample of labeled data, i.e. ECG database with known diagnostic conclusions: support-vector machines, decision tree, artificial neural networks, linear and quadratic discriminant analysis, the random subspace method, AdaBoost, random forest, logistic regression (McCulloch-Pitts neuron model). For comparative analysis and evaluation of the obtained results, the Cyberheart-Diagnostics software was tested using open international ECG databases: Arrhythmia Data Set, PhysioNet PTBDB, PhysioNet Competition 2017 as well as our own database comprising 1652 records of a standard 12-lead resting ECG. The ECG records were interpreted by expert physicians who then formed structured medical conclusions considered as reference.
Results. In different classes of attributes, the diagnostic accuracy of the Cyberheart-Diagnostics software appeared to be 83.8 to 94.5% as compared to the conclusions of expert doctors — 66.3 to 95.1%. Thus, the developed software is comparable with the world analogues in quality of electrocardiogram analysis.
Key words: electrocardiogram; automated analysis; ECG database; machine learning techniques.
Введение
Развитие методов автоматизированной обработки данных в сочетании с прогрессом в области телемедицинских технологий и использованием портативной медицинской аппаратуры открывает новые возможности для совершенствования методов ранней диагностики болезней системы кровообращения и дистанционного контроля состояния здоровья пациентов [1, 2]. Наиболее распространенным методом инструментальной диагностики остается электрокардиография (ЭКГ) [3]. Одним из ее перспективных направлений является создание интеллектуального электрокардиографа, т.е. автоматизированной системы расшифровки сигналов электрокардиограммы с выдачей заключения, максимально приближенного к врачебному [2, 4]. Для достижения этой цели используются алгоритмы машинного обучения на основе репрезентативной выборки ЭКГ
В настоящее время в разных странах появляются программные продукты для современных мобильных устройств, в которых используются автоматические методы анализа ЭКГ. В то же время степень доверия к автоматической диагностике ЭКГ без участия человека остается спорным вопросом на протяжении нескольких десятилетий. Поэтому именно алгоритм, обеспечивающий необходимую точность заключения, является определяющим фактором при выборе той или иной системы.
Сотрудниками Национального исследовательско-
го Нижегородского государственного университета им. Н.И. Лобачевского создан программно-аппаратный комплекс (ПАК) «Киберсердце» для сбора, хранения и автоматического анализа разнородных медицинских данных. ПАК состоит из медицинских приборов-датчиков, контролирующих показатели сердечно-сосудистой системы, и программного обеспечения — модуля «Киберсердце-Диагностика». Задача данного модуля — автоматический анализ ЭКГ различной продолжительности с формированием доврачебного диагностического заключения.
В целях повышения точности диагностики авторами был разработан и апробирован алгоритм, включающий обучение и тестирование модуля на открытых международных базах и на структурированных врачебных заключениях.
Целью исследования стало создание в составе программно-аппаратного комплекса «Киберсердце» системы автоматического анализа электрокардиограмм — программного модуля «Киберсердце-Диагностика» — и выбор методов машинного обучения для ее тестирования на основе сравнительного анализа их возможностей.
Материалы и методы
Разработан базовый вариант программы анализа ЭКГ «Киберсердце-Диагностика», позволяющий далее проводить ее обучение. Интерфейсная часть
программы написана на языке C#, математические методы — на языке Python с использованием библиотеки матричных вычислений NumPy (www.numpy.org), библиотеки вейвлет-анализа PyWavelets (github.com/ PyWavelets) и библиотеки методов машинного обучения Scikit-learn (scikit-learn.org/stable).
Создана собственная база данных («Кардиобаза»), включающая 1652 записи стандартной 12-канальной
Рис. 1. Сегментация комплекса PQRST
Рис. 2. ЭКГ (12 отведений) пациентки У., 69 лет:
а — исходная; б — с сегментацией
ЭКГ покоя в цифровом формате EDF. ЭКГ были получены от взрослых пациентов в возрасте 17-80 лет, среди которых было 743 мужчины (45%) и 909 женщин (55%). ЭКГ регистрировали у пациентов, обращавшихся в поликлиники Н. Новгорода за амбулаторной помощью к врачам-кардиологам, аритмологам, кардиохирургам, а также находившихся на стационарном лечении в кардиологических отделениях и сосудистых центрах.
Все 1652 записи ЭКГ были независимо описаны врачами-экспертами (кардиологами и врачами функциональной диагностики) с формированием структурированного врачебного заключения. Далее все записи ЭКГ были подвергнуты автоматическому анализу с использованием метода детектирования ключевых точек (ДКТ), сегментированы и автоматически описаны в том же формате доврачебного заключения разработанной авторами программой по классическим критериям анализа ЭКГ [5].
Алгоритм применения метода ДКТ включал следующие этапы:
предварительную обработку сигнала ЭКГ: фильтрация (подавление шума), выделение изолинии [1, 3];
ДКТ сигнала: детектирование начала, пика и конца комплекса QRS, P- и T-волн и определение их морфологии (рис. 1); автоматическую генерацию заключения. На основе этих данных рассчитывались общепринятые характеристики сигнала (см., например, [3]). Использовались стандартные функции для вычисления числовых характеристик (средняя продолжительность и высота комплексов сигнала ЭКГ, их стандартные отклонения и т.д.). В итоге для описания каждого отведения ЭКГ было получено 38 признаков.
С использованием 1242 из 1652 ЭКГ, имеющихся в «Кардиобазе», с формализованными заключениями врачей было проведено обучение программы «Киберсердце-Диагностика». Для этого использовали наиболее часто применяемые методы машинного обучения: метод опорных векторов (SVM), дерево решений, методы квадратичного и линейного дискриминантного анализа [6], метод случайных подпространств [7], AdaBoost [8], случайный лес [9], логистическая регрессия (модель нейрона Мак-Каллока-Питтса) с предварительной предобработкой признаков с помощью слоя Batch Normalization [10].
В этих методах алгоритмы автоматически строятся по большой выборке размеченных данных, т.е. по базе ЭКГ с известными заключениями. При этом алгоритм постановки диагноза (решающая функция)
Л) Киберсердце
D HalHiiS® j
.¡О Киберсердце
D НаП"0» -'
а
///////////////////////^^^^
88 СТМ I 2019 I TOM 11 I №2 В.А. Москаленко, А.В. Никольский, Н.Ю. Золотых, А.А. Козлов, К.А. Косоногов.....В.М. Леванов
Таблица 1
Структура «Кардиобазы» по классам заключений
Номер класса Диагноз Количество записей
абс. число %
1 Абсолютная норма 340 21,2
2 Синусовая аритмия 287 17,9
3 Блокада правой ножки пучка Гиса 89 5,5
4 Двухпучковая блокада 48 3,0
5 Фибрилляция предсердий 170 10,6
6 Ишемические изменения 272 16,9
7 Гипертрофия левых отделов сердца 315 19,6
8 Имплантированный электрокардиостимулятор 65 4,0
9 Другое 21 1,3
Всего 1607* 100,0
* Часть ЭКГ от 1242 пациентов вошли в два и более классов.
не закладывается явным образом. Происходит «настройка» модели по данным обучающей выборки — набору характеристик и атрибутов ЭКГ пациента с известным заключением.
Программа автоматического анализа ЭКГ обучалась с применением методов машинного обучения на признаках, полученных с помощью ДКТ (рис. 2). Подробнее об алгоритме ДКТ см. в работе [5].
Для тестирования программы «Киберсердце-Диагностика» с помощью названных методов машинного обучения была проведена апробация анализа ЭКГ, которую выполняли с использованием наиболее крупных и обработанных с участием медицинских экспертов открытых баз данных ЭКГ: Arrhythmia Data Set (http://archive.ics.uci.edu/ml/datasets/arrhythmia), PhysioNet PTBDB (https://www.physionet.org/physiobank/ database/ptbdb), PhysioNet Competition 2017 (https:// physionet.org/challenge/2017). При анализе результатов учитывалась точность диагностики относительно основных признаков и классов ЭКГ
База Arrhythmia Data Set представлена 410 записями 12-канальных ЭКГ. Каждая ЭКГ описывается 279 признаками и относится к одному из 16 классов признаков ЭКГ
База PhysioNet PTBDB состоит из 549 записей ЭКГ от 290 пациентов. Каждый пациент относится к одному из девяти классов.
База PhysioNet Competition 2017 состоит из 8528 одноканальных пятиминутных записей ЭКГ, отнесенных к одному из четырех классов.
При разработке программного комплекса «Кибер-сердце-Диагностика» была создана собственная база данных («Кардиобаза»), которая представлена 1652 записями ЭКГ, разделенными на 9 классов, при этом для обучения были использованы ЭКГ, полученные от 1242 пациентов (табл. 1).
Параметры Значения л
Регулярный ритм +
Синусовый ритм +
Угол электрической оси 5
ЧСС (среднее) 76 V
Инструменты
Амплитуда
Скорость
10.0мм/мВ 25.0 мм/сек
Отступ между 2ППР отведениями (мкВ) ^^ И
Все
0 Отображать размежу: ® Врачебная О Автоматическая
0 Фильтрованный сигнал
1 I ИЯ интервалы
I I Отображать межи
Прямые методы Машинные методы Комментарии
Ритм синусовый, предсердная экстрасистолия. Нормальное положение ЭОС. Полная блокада правой ножки п.Гиса.
Гипертрофия левого предсердия.
Изменения миокарда в области передне-боковой стенки(Т1у2-
Регулярный синусовый ритм с ЧСС = 76 уд/мин. Длительность интервала РО = 138мс. норма. ЭОС горизонтальная. Средняя длительность Р в отведении II = 104 мс. средняя высота = 55 мкВ. Неполная блокада правой ножки пучка Гиса.
Статус: | Сегментация и расшифровка
Ч I I
Сохранить ЭКГ Обновить список
Идентификатор Дата ФИО Возраст Тип А
50448540 09.10.2017 66 Ш 0
50448599 09.10.2017 53 Ш 0
50448710 09.10.2017 55 Ш 0
50448859 09.10.2017 69 Ш 0
1102530830 09.10.2017 63 Ш 0 V
Рис. 3. Пример интерфейса заключения по ЭКГ
Классы «Кардиобазы» были разработаны исходя из классических клинико-электрофизиологических подходов к заключениям по ЭКГ (см. табл. 1). Наиболее часто представлены следующие группы заключений: нормальная ЭКГ, синусовая аритмия, гипертрофия левых отделов сердца, фибрилляция предсердий, ише-мические изменения.
Данные автоматического анализа 410 ЭКГ из «Кардиобазы» были сравнены с результатами заключений врачей-экспертов, которые условно рассматривались как эталонные. Интерфейс заключения по ЭКГ представлен на рис. 3.
Проведена комплексная оценка полученных результатов по классам признаков. Оценка качества диагностики происходила с помощью пятикратного перекрестного контроля по метрике ROC-AUC [11, 12].
Результаты и обсуждение
В соответствии с задачами исследования проведено последовательное тестирование разработанной программы с помощью методов (алгоритмов) машинного обучения на доступных международных базах данных.
База Arrhythmia. Эксперименты по тестированию были проведены с выборкой, состоящей из объектов (наблюдений), относящихся к наиболее представительным классам: 1-му («Норма»), 2-му («Ишемические изменения») и 10-му («Блокада правой ножки пучка Гиса») (всего 339 записей). Было проведено тестирование программы с использованием методов опорных векторов, случайных подпространств, ближайших соседей, дерева решений, нейронных сетей, дискриминантного анализа. Оценка качества происходила с помощью пятикратного перекрестного контроля по метрике ROC-AUC. В табл. 2 представлены параметры алгоритмов, при которых получены наилучшие результаты.
Был также проведен эксперимент по трехклассовой классификации (классы 1, 2 и 10) без этапа предвари-
Таблица 2 Результаты эксперимента с предварительным отбором признаков, %
Метод ROC-AUC (ROC-AUC (для класса (длся класса «Ишемические «Блокада изменения») право™и ' пучка Гиса»)
Метод опорных векторов 94,1 89,0
Метод случайных подпространств 94,5 87,2
Дискриминантный анализ 93,6 83,8
тельного отбора признаков. Использовались следующие методы машинного обучения: метод опорных векторов, логистическая регрессия, AdaBoost, случайный лес. Данные случайным образом разбивались на обучающую (70%) и тестовую (30%) выборки. Такое разделение проводилось 100 раз. Достигнутая точность алгоритмов отражена в табл. 3.
Тестирование на базе PhysioNet PTBDB. Рассматривалась задача бинарной классификации
Таблица 3
Точность трехклассовой классификации на обучающей выборке
Метод Точность, %
Метод опорных векторов 86,1
Градиентный бустинг 85,3
Случайный лес 85,2
Логистическая регрессия 82,7
Таблица 4
Результаты экспериментов
на базе PhysioNet Competition 2017
Классы базы PhysioNet Competition 2017 Точность,
Первый Второй %
N, A, O ~ 94,7
N A 87,2
N A, O 79,5
O A 78,0
N O 77,4
Здесь: N — нормальный ритм; А — мерцательная аритмия; О — другой ритм;--шум.
Таблица 5
Результаты тестирования программы «Киберсердце-диагностика» на собранной «Кардиобазе» (n=410)
Число ЭКГ Число Число
Класс ЭКГ Название класса по данным экспертных заключений истинно положительных заключений Чувствительность истинно отрицательных заключений Специфичность Точность
P TP TPR=TP/Px100% TN TNR=TN/(n-P)x100% A=(TP+TN)/n, %
1 Абсолютная норма 156 120 76,9 234 92,1 86,3
2 Синусовая аритмия 105 74 70,5 302 99,0 91,7
3 Блокада правой ножки пучка Гиса 22 20 90,9 252 64,9 66,3
4 Двухпучковая блокада 6 4 66,7 307 76,0 75,9
5 Фибрилляция предсердий 33 31 93,9 271 71,9 73,7
6 Ишемические изменения 70 63 90,0 248 72,9 75,9
7 Гипертрофия левых отделов сердца 11 10 90,9 323 80,9 81,2
8 Имплантированный электрокардиостимулятор 5 5 100,0 385 95,1 95,1
9 Другое 3 2 66,7 256 62,9 62,9
//////////////////////^^^^
90 СТМ J 2019 J том 11 J №2 В.А. Москаленко, А.В. Никольский, Н.Ю. Золотых, А.А. Козлов, К.А. Косоногов.....В.М. Леванов
между классами 1 («Инфаркт миокарда») и 9 («Здоровые»). Остальные классы малопредставительны, и поэтому в них было сложно выделить какие-либо закономерности, полезные для правильной диагностики. Лучший результат дала логистическая регрессия (модель нейрона Мак-Каллока-Питтса) с предварительной предобработкой признаков с помощью слоя Batch Normalization. На сбалансированной выборке достигнута точность 86,1%.
Тестирование на базе PhysioNet Competition 2017. Ставилась серия задач бинарной классификации, результаты экспериментов описаны ниже (табл. 4).
Значение Р1-меры (среднего гармонического между чувствительностью и специфичностью) составило 0,81. Заметим, что лучшие показатели Р1-меры в международном исследовании, по данным PhysioNet Competition 2017, были равны 0,83. Таким образом, результаты реализованных нами алгоритмов сравнимы по качеству диагностики с мировыми аналогами.
Тестирование на созданной «Кардиобазе». В результате тестирования программы на созданной «Кардиобазе» были получены результаты, представленные в табл. 5.
Чувствительность заключений, выполненных программой «Киберсердце-Диагностика», оказалась равной 66,7-100,0% по различным классам в сравнении с заключениями врачей-диагностов. Специфичность метода составила 62,9-99,0%, точность — 62,9-95,1%.
Заключение
Результаты использования основных методов машинного обучения для тестирования разработанной программы «Киберсердце-Диагностика» показали достаточно высокую точность заключений, достигаемую этой программой, в сравнении с условно «идеальными» заключениями врачей-диагностов.
Полученные авторами данные автоматической расшифровки ЭКГ с помощью представленной программы, выполненные на собственном материале «Кардиобазы», сравнивались с данными трех крупных баз ЭКГ, находящихся в открытом доступе. Несмотря на то, что эти базы данных имели отличия по продолжительности записи кардиосигнала, количеству отведений, набору классов и другим критериям, точность диагностики по разработанному авторами алгоритму в соответствующих классах признаков составила 62,9-95,1%.
Финансирование исследования. Работа выполнена при поддержке Министерства образования Российской Федерации (контракт №02.G25.31.0157 от 01.12.2015).
Конфликт интересов. Авторы заявляют об отсутствии конфликта интересов.
Литература/References
1. Юровский А.Ю., Сухов С.С. Дистанционный анализ ЭКГ и компьютерная электрокардиография — современные альтернативы классическому «бумажному» решению. Практическая медицина 2017; 2: 14-17. Yurovskiy A.Yu., Sukhov S.S. Distant analysis of ECG and computerized electrocardiography — modern alternatives to classic "paper" solutions. Prakticheskaya meditsina 2017; 2: 14-17.
2. Струтынский А.В. Электрокардиограмма: анализ и интерпретация. М: МЕДпресс-информ; 2017; 224 с. Strutynskiy A.V. Elektrokardiogramma: analiz i interpretatsiya [Electrocardiogram: analysis and interpretation]. Moscow: MEDpress-inform; 2017; 224 p.
3. Воробьев Л.В. ЭКГ анализ сердечной деятельности здорового человека. Международный журнал прикладных и фундаментальных исследований 2016; 10: 549553. Vorobiov L.V. ECG analysis of cardiac activity of a healthy person. Mezhdunarodnyy zhurnal prikladnykh i fundamental'nykh issledovaniy 2016; 10: 549-553.
4. Дроздов Д.В., Леванов В.М. Автоматический анализ ЭКГ: проблемы и перспективы. Здравоохранение и медицинская техника 2004; 1: 10. Drozdov D.V., Levanov V.M. Automatic ECG analysis: problems and prospects. Zdravookhranenie i meditsinskaya tekhnika 2004; 1: 10.
5. Калякулина А.И., Юсипов И.И., Москаленко В.А., Никольский А.В., Козлов А.А., Золотых Н.Ю., Иванченко М.В. Вейвлет-анализ для нахождения точек морфологий волн электрокардиографического сигнала. Известия Вузов. Радиофизика 2018; 61(8): 773-789. Kalyakulina A.I., Yusipov I.I., Moskalenko V.A., Nikolskiy A.V., Kozlov A.A., Zolotykh N.Yu., Ivanchenko M.V. Finding morphology points of electrocardiographic signal waves using wavelet analysis. Izvestiya Vuzov. Radiofizika 2018; 61(8): 773-789.
6. Duda R.O., Hart P.E., Stork D.G. Pattern classification. Wiley-Interscience; 2000.
7. Tin Kam Ho. The random subspace method for constructing decision forests. IEEE Trans Pattern Anal Mach Intell 1998; 20(8): 832-844, https://doi.org/10.1109/34.709601.
8. Freund Y., Schapire R.E. A decision-theoretic generalization of on-line learning and an application to boosting. J Comput Syst Sci 1997; 55(1): 119-139, https://doi. org/10.1006/jcss.1997.1504.
9. Breiman L. Random forests. Machine Learning 2001; 45(1): 5-32.
10. loffe S., Szegedy C. Batch normalization: accelerating deep network training by reducing internal covariate shift. 2015. URL: https://arxiv.org/pdf/1502.03167.pdf.
11. Brown C.D., Davis H.T. Receiver operating characteristics curves and related decision measures: a tutorial. Chemometr Intell Lab Syst 2006; 80(1): 24-38, https:// doi.org/10.1016/j.chemolab.2005.05.004.
12. Petrov V., Lebedev S., Pirova A., Vasilyev E., Nikolskiy A., Turlapov V., Meyerov I., Osipov G. CardioModel — new software for cardiac electrophysiology simulation. In: Voevodin V., Sobolev S. (editors). Supercomputing. RuSCDays 2018. Communications in computer and information science. Vol. 965. Springer, Cham; 2018; p. 195-207, https://doi.
■4 17.