Сегодня: 27.12.2024
RU / EN
Последнее обновление: 30.10.2024

Программный комплекс «киберсердце–диагностика» для автоматического анализа электрокардиограмм с применением методов машинного обучения

В.А. Москаленко, А.В. Никольский, Н.Ю. Золотых, А.А. Козлов, К.А. Косоногов, А.И. Калякулина, И.И. Юсипов, В.М. Леванов

Ключевые слова: электрокардиограмма; автоматический анализ; база данных ЭКГ; методы машинного обучения.

Целью работы стало создание в составе программно-аппаратного комплекса «Кибер­серд­це» системы автоматического анализа электро­кардио­грамм — программного модуля «Киберсердце–Диагностика» — и выбор методов машинного обучения для ее тестирования на основе сравнительного анализа их возможностей.

Материалы и методы. При разработке программного комплекса использовали известные методы машинного обучения, работа которых строится на большой выборке размеченных данных, т.е. на базе ЭКГ с известными заключениями: метод опорных векторов, дерево решений, искусственные нейронные сети, методы квадратичного и линейного дискриминантного анализа, метод случайных подпространств, AdaBoost, случайный лес, логистическая регрессия (модель нейрона Мак-Каллока–Питтса). Для сравнительного анализа и оценки точности полученных результатов программа «Киберсердце–Диагностика» была протестирована на открытых международных базах данных ЭКГ: Arrhythmia Data Set, PhysioNet PTBDB, PhysioNet Competition 2017, а также на материалах собственной базы данных, включающей 1652 записи стандартной 12-канальной ЭКГ покоя. Все ЭКГ были описаны врачами-экспертами с формированием структурированного врачебного заключения, которое принималось как эталонное.

Результаты. В различных классах признаков точность диагностики программы «Киберсердце–Диагностика» составила 83,8–94,5%, при сравнении с заключениями врачей-экспертов — 66,3–95,1%. Таким образом, разработанная программа по качеству анализа электрокардиограмм сравнима с мировыми аналогами.


Введение

Развитие методов автоматизированной обработки данных в сочетании с прогрессом в области телемедицинских технологий и использованием портативной медицинской аппаратуры открывает новые возможности для совершенствования методов ранней диагностики болезней системы кровообращения и дистанционного контроля состояния здоровья пациентов [1, 2]. Наиболее распространенным методом инструментальной диагностики остается электрокардиография (ЭКГ) [3]. Одним из ее перспективных направлений является создание интеллектуального электрокардиографа, т.е. автоматизированной системы расшифровки сигналов электрокардиограммы с выдачей заключения, максимально приближенного к врачебному [2, 4]. Для достижения этой цели используются алгоритмы машинного обучения на основе репрезентативной выборки ЭКГ.

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

Сотрудниками Национального исследовательского Нижегородского государственного университета им. Н.И. Ло­бачевского создан программно-аппаратный комплекс (ПАК) «Киберсердце» для сбора, хранения и автоматического анализа разнородных медицинских данных. ПАК состоит из медицинских приборов-датчиков, контролирующих показатели сердечно-сосудистой системы, и программного обеспечения — модуля «Киберсердце–Диагностика». Задача данного модуля — автоматический анализ ЭКГ различной продолжительности с формированием доврачебного диагностического заключения.

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

Целью исследования стало создание в составе программно-аппаратного комплекса «Кибер­серд­це» системы автоматического анализа электро­кардио­грамм — программного модуля «Киберсердце–Диагностика» — и выбор методов машинного обучения для ее тестирования на основе сравнительного анализа их возможностей.

Материалы и методы

Разработан базовый вариант программы анализа ЭКГ «Киберсердце–Диагностика», позволяющий далее проводить ее обучение. Интерфейсная часть программы написана на языке C#, математические методы — на языке Python с использованием библио­теки матричных вычислений NumPy (www.numpy.org), библиотеки вейвлет-анализа PyWavelets (github.com/PyWavelets) и библиотеки методов машинного обучения Scikit-learn (scikit-learn.org/stable).

Создана собственная база данных («Кардиобаза»), включающая 1652 записи стандартной 12-канальной ЭКГ покоя в цифровом формате EDF. ЭКГ были получены от взрослых пациентов в возрасте 17–80 лет, среди которых было 743 мужчины (45%) и 909 женщин (55%). ЭКГ регистрировали у пациентов, обращавшихся в поликлиники Н. Новгорода за амбулаторной помощью к врачам-кардиологам, аритмологам, кардиохирургам, а также находившихся на стационарном лечении в кардиологи­ческих отделениях и сосудистых центрах.

Все 1652 записи ЭКГ были независимо описаны врачами-экспертами (кардиологами и врачами функциональной диагностики) с формированием структурированного врачебного заключения. Далее все записи ЭКГ были подвергнуты автоматическому анализу с использованием метода детектирования ключевых точек (ДКТ), сегментированы и автоматически описаны в том же формате доврачебного заключения разработанной авторами программой по классическим критериям анализа ЭКГ [5].

Алгоритм применения метода ДКТ включал следующие этапы:

предварительную обработку сигнала ЭКГ: фильтрация (подавление шума), вы­деление изолинии [1, 3];

ДКТ сигнала: детектирование начала, пика и конца комплекса QRS, P- и T-волн и определение их морфологии (рис. 1);

автоматическую генерацию заключения.


moskalenko-ris-1.jpg Рис. 1. Сегментация комплекса PQRST

На основе этих данных рассчитывались общепринятые характеристики сигнала (см., например, [3]). Использовались стандартные функции для вычисления числовых характеристик (средняя продолжительность и высота комплексов сигнала ЭКГ, их стандартные отклонения и т.д.). В итоге для описания каждого отведения ЭКГ было получено 38 признаков.

С использованием 1242 из 1652 ЭКГ, имеющихся в «Кардиобазе», с формализованными заключениями врачей было проведено обучение программы «Киберсердце–Диагностика». Для этого ис­пользовали наиболее часто применяемые методы машинного обучения: метод опорных векторов (SVM), дерево решений, методы квадратичного и линейного дискриминантного анализа [6], метод случайных подпространств [7], AdaBoost [8], случайный лес [9], логистическая регрессия (модель нейрона Мак-Каллока–Питтса) с предварительной предобработкой признаков с помощью слоя Batch Normalization [10].

В этих методах алгоритмы автоматически строятся по большой выборке размеченных данных, т.е. по базе ЭКГ с известными заключениями. При этом алгоритм постановки диагноза (решающая функция) не закладывается явным образом. Происходит «настройка» модели по данным обучающей выборки — набору характеристик и атрибутов ЭКГ пациента с известным заключением.

Программа автоматического анализа ЭКГ обучалась с применением методов машинного обучения на признаках, полученных с помощью ДКТ (рис. 2). Подробнее об алгоритме ДКТ см. в работе [5].


moskalenko-ris-2.jpg

Рис. 2. ЭКГ (12 отведений) пациентки У., 69 лет:

а — исходная; б — с сегментацией

Для тестирования программы «Киберсердце–Диагностика» с помощью названных методов машинного обучения была проведена апробация анализа ЭКГ, которую выполняли с использованием наиболее крупных и обработанных с участием медицинских экспертов открытых баз данных ЭКГ: 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).


moskalenko-tablitsa-1.jpg Таблица 1. Структура «Кардиобазы» по классам заключений

Классы «Кардиобазы» были разработаны исходя из классических клинико-электрофизиологических подходов к заключениям по ЭКГ (см. табл. 1). Наиболее часто представлены следующие группы заключений: нормальная ЭКГ, синусовая аритмия, гипертрофия левых отделов сердца, фибрилляция предсердий, ишемические изменения.

Данные автоматического анализа 410 ЭКГ из «Кардиобазы» были сравнены с результатами заключений врачей-экспертов, которые условно рассматривались как эталонные. Интерфейс заключения по ЭКГ представлен на рис. 3.


moskalenko-ris-3.jpg Рис. 3. Пример интерфейса заключения по ЭКГ

Проведена комплексная оценка полученных результатов по классам признаков. Оценка качества диагностики происходила с помощью пятикратного перекрестного контроля по метрике ROC-AUC [11, 12].

Результаты и обсуждение

В соответствии с задачами исследования проведено последовательное тестирование разработанной программы с помощью методов (алгоритмов) машинного обучения на доступных международных базах данных.

База Arrhythmia. Эксперименты по тестированию были проведены с выборкой, состоящей из объектов (наблюдений), относящихся к наиболее представительным классам: 1-му («Норма»), 2-му («Ишемические изменения») и 10-му («Блокада правой ножки пучка Гиса») (всего 339 записей). Было проведено тестирование программы с использованием методов опорных векторов, случайных подпространств, ближайших соседей, дерева решений, нейронных сетей, дискриминантного анализа. Оценка качества происходила с помощью пятикратного перекрестного контроля по метрике ROC-AUC. В табл. 2 представлены параметры алгоритмов, при которых получены наилучшие результаты.


moskalenko-tablitsa-2.jpg Таблица 2. Результаты эксперимента с предварительным отбором признаков, %

Был также проведен эксперимент по трехклассовой классификации (классы 1, 2 и 10) без этапа предварительного отбора признаков. Использовались следующие методы машинного обучения: метод опорных векторов, логистическая регрессия, AdaBoost, случайный лес. Данные случайным образом разбивались на обучающую (70%) и тестовую (30%) выборки. Такое разделение проводилось 100 раз. Достигнутая точность алгоритмов отражена в табл. 3.


moskalenko-tablitsa-3.jpg Таблица 3. Точность трехклассовой классификации на обучающей выборке

Тестирование на базе PhysioNet PTBDB. Рассматривалась задача бинарной классификации между классами 1 («Инфаркт миокарда») и 9 («Здоровые»). Остальные классы малопредставительны, и поэтому в них было сложно выделить какие-либо закономерности, полезные для правильной диагностики. Лучший результат дала логистическая регрессия (модель нейрона Мак-Каллока–Питтса) с предварительной предобработкой признаков с помощью слоя Batch Normalization. На сбалансированной выборке достигнута точность 86,1%.

Тестирование на базе PhysioNet Competition 2017. Ста­вилась серия задач бинарной классификации, результаты экспериментов описаны ниже (табл. 4).


moskalenko-tablitsa-4.jpg

Таблица 4. Результаты экспериментов на базе PhysioNet Competition 2017


Значение F1-меры (среднего гармонического между чувствительностью и специфичностью) составило 0,81. Заметим, что лучшие показатели F1-меры в международном исследовании, по данным PhysioNet Competition 2017, были равны 0,83. Таким образом, результаты реализованных нами алгоритмов сравнимы по качеству диагностики с мировыми аналогами.

Тестирование на созданной «Кардиобазе». В результате тестирования программы на созданной «Кардиобазе» были получены результаты, представленные в табл. 5.


moskalenko-tablitsa-5.jpg Таблица 5. Результаты тестирования программы «Киберсердце–диагностика» на собранной «Кардиобазе» (n=410)

Чувствительность заключений, выполненных программой «Киберсердце–Диагностика», оказалась равной 66,7–100,0% по различным классам в сравнении с заключениями врачей-диагностов. Специфичность метода составила 62,9–99,0%, точность — 62,9–95,1%.

Заключение

Результаты использования основных методов машинного обучения для тестирования разработанной программы «Киберсердце–Диагностика» показали достаточно высокую точность заключений, достигаемую этой программой, в сравнении с условно «идеальными» заключениями врачей-диагностов.

Полученные авторами данные автоматической расшифровки ЭКГ с помощью представленной программы, выполненные на собственном материале «Кар­дио­базы», сравнивались с данными трех крупных баз ЭКГ, находящихся в открытом доступе. Несмотря на то, что эти базы данных имели отличия по продолжительности записи кардиосигнала, количеству отведений, набору классов и другим критериям, точность диагностики по разработанному авторами алгоритму в соответствующих классах признаков составила 62,9–95,1%.

Финансирование исследования. Работа выполнена при поддержке Министерства образования Российской Федерации (контракт №02.G25.31.0157 от 01.12.2015).

Конфликт интересов. Авторы заявляют об отсутствии конфликта интересов.


Литература

  1. Юровский А.Ю., Сухов С.С. Дистанционный ана­лиз ЭКГ и компьютерная электрокардиография ― совре­мен­ные альтернативы классическому «бумажному» решению. Практическая медицина 2017; 2: 14–17.
  2. Струтынский А.В. Электрокардиограмма: анализ и интер­претация. М: МЕДпресс-информ; 2017; 224 с.
  3. Воробьев Л.В. ЭКГ анализ сердечной деятельности здо­рового человека. Международный журнал прикладных и фундаментальных исследований 2016; 10: 549–553.
  4. Дроздов Д.В., Леванов В.М. Автоматический ана­лиз ЭКГ: проблемы и перспективы. Здравоохранение и ме­дицинская техника 2004; 1: 10.
  5. Калякулина А.И., Юсипов И.И., Москаленко В.А., Ни­кольский А.В., Козлов А.А., Золотых Н.Ю., Иван­ченко М.В. Вейвлет-анализ для нахождения точек морфологий волн электрокардиографического сигнала. Известия Вузов. Радиофизика 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. Ioffe 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.org/10.1007/978-3-030-05807-4_17.


Журнал базах данных

pubmed_logo.jpg

web_of_science.jpg

scopus.jpg

crossref.jpg

ebsco.jpg

embase.jpg

ulrich.jpg

cyberleninka.jpg

e-library.jpg

lan.jpg

ajd.jpg

SCImago Journal & Country Rank