Diagnostic algorithms for detecting heartbeat abnormalities using machine learning methods
- Authors: Lyalikova V.G.1, Безрядин M.M.1, Markina M.S.2
-
Affiliations:
- Voronezh State University
- Voronezh Institute of the Ministry of Internal Affairs of the Russian Federation
- Issue: Vol 26, No 3 (2025): Опубликован 29.09.2025
- Pages: 91-99
- Section: Пульмонология
- URL: https://new.vestnik-surgery.com/index.php/1990-472X/article/view/11016
- DOI: https://doi.org/10.18499/1990-472X-2025-26-3-91-99
Cite item
Full Text
Abstract
Heart diseases consistently rank as the leading cause of death in developed countries, second only to COVID-19 in recent rankings. The development of diagnostic methods and risk assessment based on heart rate data plays an important role in research at the intersection of mathematics, data analysis, and medicine. The results of such research are being applied, including in the development of applications for mobile smartphones and wearable devices, as there is increasing focus on self-diagnosing heart conditions. The article analyzes heart tones collected by a stethoscope for diagnosing diseases caused by heart malfunction. The methods discussed in the study allow anyone to record heartbeats using a mobile device and use them for further analysis with various applications. The main task is to classify heart tones into 4 categories. The work was done in Python using libraries like tensorflow, librosa, pandas, and scipy. The results show that with the use of deep neural networks, a classification accuracy of 95% can be achieved on the test dataset. Additionally, this work can serve as a basis for further research, such as integrating the model with other layers of deep learning networks to reduce training time, which is important for using the results in mobile and wearable devices.
Full Text
Актуальность. Ритмичность сердечных сокращений, чистота тонов работы трикуспидального, митрального аортального и пульмонального клапанов сердца являют важными диагностическим характеристиками состояния здоровья человека. Нарушение частоты и силы сердечных сокращений может быть признаком развития серьезных заболеваний [1].
В настоящее время растущее число заболеваний сердечно-сосудистой системы, сопряженный с высоким уровнем смертности требуют быстрой и качественной диагностики, в том числе и в период скрининговых обследований населения. Согласно данным современных исследований заболевания сердца являются второй, после COVID-19, причиной смерти в России. Обнаружение аномалий в звуках сердечного ритма играет важную роль в диагностике и прогнозировании сердечно-сосудистых заболеваний [18].
Использование цифрового стетоскопа и гарнитуры для записи сердечных звуков на мобильное устройство обеспечивает удобство и доступность методов диагностики сердечных заболеваний, могут послужить хорошим вспомогательным методом диагностики для врача.
В современной медицине широко используются методы анализа и мониторинга сердечного ритма с целью выявления аномалий и улучшения диагностики заболеваний сердца.
При этом в настоящее время технологии машинного обучения позволяют автоматизировать анализ сердечных аудиозаписей, что помогает в выявлении отклонений, повышает эффективность работы врачей-кардиологов, обеспечивая более раннюю диагностику заболеваний и снижая вероятность осложнений у пациентов. Внедрение цифровых технологий позволяет уменьшить нагрузку на врачей, способствуют корректному выбору схем терапии и улучшению результатов лечения.
Популярные методы классификации звуковых сигналов сердца можно разделить на 2 категории: методы, основанные на машинном обучении, и, методы, основанные на глубоком обучении. Наиболее популярными являются исследования, где используется классификация тонов сердца по двум классам – нормальным и аномальным. Также есть исследования, где используется классификация по 3 классам.
Рассмотренные методы показывают, что по сравнению с традиционными методами, подходы глубокого обучения с использованием одномерных сверхточных нейронных сетей и рекуррентных нейронных сетей более эффективны и точны [2, 7, 15]. Также были разработаны некоторые гибридные сети глубокого обучения. Наиболее типичные интегрированные методы основаны на моделях, которые сочетают сети CNN и RNN.
В [3, 4, 5] говорится, что автоматическая классификация сердечных звуков по-прежнему является сложной проблемой, которая отражается в сегментации тонов сердца и извлечении признаков из соответствующих результатов сегментации. В рассматриваемых работах использовались классические модели машинного обучения для классификации звуков сердца, такие как метод опорных векторов, дерево решений, k-ближайших соседей.
В [6] классифицировали звуки работы сердца на нормальные и два типа аномальных на основании третьего и четвертого тонов сердца. Предложенная методология позволила получить точность 87,5% и 95% для много классовых данных (3 класса) и 98% для задач бинарной классификации (нормальные и ненормальные). Были рассмотрены алгоритмы метода опорных векторов, градиентного бустинга и алгоритм случайный лес.
В работах авторов [7, 9] попытки повысить точность диагностики привели к разработке модель сверточной нейронной сети (CNN) и модель LSTM, которая классифицирует тоны сердца на 3 группы (класса), а именно: нормальные, шумы и артефакты. Характеристики извлекаются с использованием Mel-Frequency Cepstral Coefficients (MFCC). Класс шумов указывает на наличие серьезной проблемы. Показано, что рассматриваемая модель способна достичь точности 96,5% для тестового набора данных. Указывается, что работу можно улучшить, добавив в модель нейронной сети другие слои. Также предлагается развернуть такую систему для использования в больницах, где своевременное обнаружение может спасти человеческую жизнь.
В [8] рассмотрена классификация звукового сигнала сердца по нескольким признакам: нормальная категория и 4 патологических. Для извлечения признаков использовался частотный коэффициент кепстрала (MFCCs) и дискретное вейвлет-преобразование. Для классификации использовался алгоритм метода опорных векторов (SVM), глубокая нейронная сеть (СNN). Авторами было получено, что с помощью пятикратной проверки была достигнута максимальная точность в 96% c использованием комбинации признаков дискретного вейвлет-преобразования и MFCC и их обучения с помощью SVM – классификатора.
В исследованиях [10-14] представлен автоматический анализ ЭКГ, базирующийся на цифровой обработке сигналов, включающей фильтрацию, преобразования Фурье и анализ частотно-временных рядов. Авторы подчеркивают, что эти методы позволяют существенно ускорить процесс диагностики и поэтому все чаще применяются в клинических условиях.
Можно сделать вывод, что методы глубокого обучения стали хорошим подходом для классификации сердечных аномалий, соответствующих различным патологиям сердца. Но все равно имеются проблемы, заключающиеся в недостаточности данных, неэффективности обучения и недостаточно мощных моделях, поэтому задача обнаружения аномалий сердцебиения методами машинного обучения остается актуальной по сей день.
Целью работы является разработка методики на основе алгоритмов машинного обучения для выявления сердечно-сосудистых заболеваний путем классификации акустических сигналов, генерируемых при работе сердца.
Материал и методы исследования. Для исследования был выбран набор данных Classifying Heart Sounds [17], содержащий 813 аудиофрагментов сердечных ритмов длительностью от 1 до 30 секунд. В наборе представлены записи как здоровых пациентов, так и лиц с аномалиями сердцебиения, распределенные по четырем категориям.
Категория Normal описывает нормальное сердечное сердцебиение
Категория Murmur описывает записи звуков сердца с характерными шумами (свист, рев, урчание), которые могут указывать на патологию.
Категория Extrasystole содержит записи с дополнительными сокращениями сердца, отличительной чертой которых является отсутствие обычного сердечного тона и наличие дополнительных или пропущенных ударов.
Категория Artefact характеризуется наличием посторонних звуков, не связанных с сердечной деятельностью, таких как визги, эхо, речь, музыка, шум.
Крайне важно, что данные были собраны в реальных ситуациях и могут содержать фоновые шумы различных типов, что значительно расширяет применимость подхода. Различия между звуками сердца, соответствующими различным сердечным симптомам, также могут быть крайне тонкими и сложными для разделения. Успех в классификации этой формы данных требует чрезвычайно надежных классификаторов. Несмотря на свою медицинскую значимость, на сегодняшний день это относительно неизученное применение для машинного обучения.
Звуковые волны различных видов работы сердцапредставлены на рисунке 1.
Рис. 1. Звуковые сигналы работы сердца
Анализ графика нормального сокращения сердца показывает, что он характеризуется равномерным распределением амплитуд и постоянством временных интервалов между звуковыми волнами. Напротив, график шумов сердца выглядит менее упорядоченным, с множеством дополнительных звуковых волн, возникающих между основными ударами. Экстрасистолические звуки выделяются более высокой амплитудой и неравномерностью интервалов, что может свидетельствовать о пропусках сердцебиения. График артефактов наглядно демонстрирует зашумленные данные, которые могут возникнуть при неправильной записи.
Спектрограммы аудиосигналов представлены на рисунке 2.
Рис. 2. Спектрограммы звуковых сигналов
Спектрограммы аудиосигналов, в которых амплитуда представлена желтым цветом, позволяют визуализировать частотные характеристики звуковых волн.
Объединенные записи сердечных ритмов представлены на рисунке 3.
Рис. 3. Объединенные записи сердечных ритмов
Комбинированные записи сердцебиений (Рис. 3) показывают, что экстрасистолы характеризуются более высокой амплитудой по сравнению с нормальными звуками, а все исследуемые типы сердцебиений имеют нерегулярный ритм.
В связи с полученным набором данных полученная задача рассматривается как задача много классовой классификации аудиофайлов.
Общая система классификации звуков представлена на ринке 4 и состоит из трех различных этапов: предварительная обработка сигнала, метод извлечения признаков и выбор метода классификации.
Рис. 4. Общая схема классификации аудиофайлов
Предварительная обработка включает очищение сигнала сердцебиения, методы сокращения сигнала. Метод извлечения признаков состоит из задачи дискретизации сигнала, а затем извлечения из полученного сигнала различных его характеристик.
Для оценки точности в процессе контроля качества разрабатываемой модели, использовались следующие метрики: точность (precision), полнота (recall) и F1-мера – среднее гармоническое точности и полноты.
Для обучения моделей использовался 563 размеченный аудиофайл.
Предварительная обработка аудиофайлов, содержащих записи сердечных тонов, может включать различные методы, но в данном исследовании включала следующие этапы. Первый – преобразование аудиофайлов в файлы с одинаковой длительностью, чтобы получить оптимальное решение. Второй - расширение набора данных за счет генерации синтетических данных. Растяжение и сужение звукового сигнала во времени с коэффициентами 1.2 и 0.8.
Данные шаги помогли сделать классификатор более устойчивым и правильно классифицировать сердечные ритмы.
Процесс извлечения признаков из аудиофайла был выполнен с использованием коэффициентов MFCC, где использовалось 20 коэффициентов. Для извлечения признаков сигнал сначала необходимо оцифровать. Оцифровка сигнала и извлечение признаков осуществлялось с помощью библиотеки librosa.
Для классификации аудиодорожек использовались следующие классификаторы: алгоритм “случайный лес”, алгоритм градиентного бустинга XGBoost, сверточная нейронная сеть и сеть LSTM.
Алгоритм “случайный лес” (RandomForest) имеет много параметров, настройка которых может существенно повлиять на конечный результат. В связи с этим с помощью метода GridSearchCV() были рассмотрены различные комбинации параметров и выбран один набор с лучшей оценкой. Для алгоритма градиентного бустинга XGBoost также были найдены лучшие параметры.
Для классификации записей средечного ритма использовалась гибридная нейронная сеть,
Модель классификации сердечных ритмов была построена на основе нейронной сети с архитектурой CNN-LSTM. Входные данные, представленные мел-кепстральными коэффициентами аудиосигнала, проходили последовательно через: три блока сверточных слоев Conv1D, слои максимального объединения MaxPooling1D, слои BatchNormalization для нормализации данных. Далее данные обрабатывались двумя полносвязными слоями Dense с Dropout для регуляризации. На выходе модель предоставляла классификацию в четыре класса: normal, murmur, extrasystole, artefact. Несбалансированность данных была устранена с помощью взвешивания классов. Подробная послойная архитектура, используемая для реализации классификации сердечных звуков по трем классам, показана в Таблице 1.
Таблица 1 – Схема нейронной сети
Слой | Вид слоя | Входные данные | Размер ядра | Активациолнная функция | Количество фильтров/размерность входа | Padding function |
0 | Input Layer | (52,1) |
|
|
| same |
1 | Conv1D | (52,1) | 5*5 | ReLU | 1024 | same |
2 | MaxPooling |
| 2 |
|
| same |
3 | BatchNormalization |
|
|
|
|
|
5 | Conv1D | (52,1) | 5*5 | ReLU | 512 | same |
6 | MaxPooling |
| 2 |
|
| same |
7 | BatchNormalization |
|
|
|
|
|
5 | Conv1D | (52,1) | 5*5 | ReLU | 256 | same |
6 | MaxPooling |
| 2 |
|
| same |
7 | BatchNormalization |
|
|
|
|
|
8 | LSTM |
|
|
| 128 |
|
9 | Dense |
|
| ReLU | 64 |
|
10 | Dropout |
|
|
|
|
|
11 | Dense |
|
| ReLU | 32 |
|
12 | Dropout |
|
|
|
|
|
13 | Dense |
|
| Softmax | 4 |
|
Для данной задачи была выбрана функция softmax. Данная функция преобразует вектор чисел в вектор вероятностей, где вероятности каждого значения пропорциональны относительном масштабу каждого значения в векторе. Во всех сверхточных слоях используется активационная функция relu.
Использовался оптимизатор Адама. Данный алгоритм используется для обучения сети, основная функция которого – изменение весов сети для уменьшения ошибки сети в процессе обучения. Также для нейронной сети указана точка для ранней остановки контролем точности модели на валидационном наборе данных.
Полученные результаты и их обсуждение. Разработка моделей осуществлялась на языке Python с применением библиотек TensorFlow, Librosa, Pandas и SciPy. После предварительной обработки аудиосигналов, процесс моделирования включал следующие этапы: разделение данных на обучающую и тестовую выборки, выбор архитектуры модели, настройку параметров модели на обучающих данных, применение обученной модели для классификации тонов сердца на тестовом наборе и последующую оценку качества с использованием метрик точности, полноты (recall) и F1-меры. Построение и работа с нейросетевой моделью представлена на рисунке.5.
Рис. 5. Построение модели нейронной сети
Результаты работы алгоритмов приведены в таблицах 2-4.
Таблица 2 – Classification report по классам для алгоритма Случайный лес
| Precision | Recall | F1-score |
Artifact | 0.59 | 1.0 | 0.74 |
Murmur | 0.98 | 0.81 | 0.89 |
Extrastole | 1.00 | 0.28 | 0.43 |
normal | 0.93 | 1.0 | 0.96 |
Accuracy |
|
| 0.89 |
Анализ производительности алгоритма “случайный лес” выявил его неэффективность в отношении классов artifact и extrasystole. Низкий показатель recall для класса extrasystole говорит о трудностях в его обнаружении, а также имеется проблема с классификацией класса artifact из-за его плохой различимости.
Таблица 3 – Classification report по классам для алгоритма градиентный бустинг
| Precision | Recall | F1-score |
Artifact | 0.53 | 1.0 | 0.7 |
Murmur | 0.93 | 0.75 | 0.83 |
Extrastole | 1.00 | 0.21 | 0.34 |
normal | 0.9 | 0.97 | 0.94 |
Accuracy |
|
| 0.85 |
Алгоритм градиентного бустинга показывает схожие с алгоритмом “случайный лес” проблемы с классами artifact и extrasystole. Несмотря на то, что оба алгоритма способны обнаруживать наличие или отсутствие заболевания, им сложно различать эти заболевания между собой.
Таблица 4 – Classification report по классам для нейронной сети
| Precision | Recall | F1-score |
Artifact | 1.0 | 1.0 | 1.0 |
Murmur | 0.90 | 0.81 | 0.79 |
Extrastole | 0.88 | 0.85 | 0.83 |
normal | 0.93 | 0.97 | 0.95 |
Accuracy |
|
| 0.95 |
Нейронная сеть, разработанная в рамках исследования, продемонстрировала высокую эффективность в классификации записей сердечного ритма, особенно в отношении классов artifact и extrasystole. Модель хорошо справляется с задачей обнаружения и различения различных классов сердцебиений.
Выводы. Применение различных алгоритмов машинного обучения, включая случайный лес, градиентный бустинг, глубокие нейронные сети, в частности архитектура CNN-LSTM, позволило предложить архитектуру глубокой нейронной сети, показавшей наилучшие результаты, а именно 95% точности классификации на тестовом наборе данных.
Модель можно улучшить путем интегрировав ации ее с другими слоями сети глубокого обучения, а для противодействия переобучению, можно снизить скорость обучения. Предполагается, что проведение экспериментов с выборкой, со спектрограммой, расширение набор данных, работа с методами для устранения дисбаланса классов, также поможет в получении более точных показателей алгоритма классификации.
About the authors
Victoria Gennadevna Lyalikova
Voronezh State University
Author for correspondence.
Email: vikalg@yandex.ru
Candidate of Physical and Mathematical Sciences, Associate Professor of the Department of Cybersecurity of Information Systems at the Faculty of PMM
Russian Federation, 394006, Russia, Voronezh, Universitetskaya Square, 1.Michael Mikhailovich Безрядин
Voronezh State University
Email: maickel@yandex.ru
Candidate of Physical and Mathematical Sciences, Associate Professor at the Department of Mathematical Software of the Faculty of Applied Mathematics and Mechanics
Russian Federation, 394006, Russia, Voronezh, Universitetskaya Square, 1.Maria Sergeevna Markina
Voronezh Institute of the Ministry of Internal Affairsof the Russian Federation
Email: maria.markina.03@mail.ru
student of the Faculty of Law
Russian Federation, 394065, Russia, Voronezh, 53 Patriotov Avenue.References
- Глобальные оценки здоровья: Основные причины смерти. Смертность по конкретным причинам, 2000–2021 гг. –Режим доступа: https://www.who.int/data/gho/data/themes/mortality-and-global-health-estimates/ghe-leading-causes-of-death - (дата обращения 15.11.2024).
- Chen W. Deep Learning Methods for Heart Sounds Classification: A Systematic Review// W. Chen, Q. Sun, X. Chen, G. Xie, H. Wu / Entropy - Basel, 2021, vol. 23(6) – pp.667-685. doi: 10.3390/e23060667.
- Zhang, W., Han J., Deng S. Heart sound classification based on scaled spectrogram and tensor decomposition // W. Zhang, J.Han, S.Deng / Expert Systems with Applications – Pergamon, 2017, Vol. 84, pp - 220-231. doi: 10.1016/j.eswa.2017.05.014.
- J.Chen, X. Dang, and M.Li. Heart sound classification method based on ensemble learning // J.Chen, X. Dang, and M.Li. / Proc. ICSP -IEEE, China, 2022, pp 8-13/ doi: 10.1109/ICSP54964.2022.9778383.
- T. Tuncer. Application of Petersen graph pattern technique for automated detection of heart valve diseases with PCG signals // T. Tuncer, S. Dogan, R.-S. Tan, and U. R. Acharya / Information Sciences - United Kingdom, 2021, vol. 565, pp. 91–104. doi: 10.1016/j.ins.2021.01.088.
- Zeinali, Yasser & Niaki, Seyed. Heart sound classification using signal processing and machine learning algorithms // Zeinali, Yasser & Niaki, Seyed / Machine Learning with Applications - 2022, №7 (12), pp 100206. doi: 10.1016/j.mlwa.2021.100206.
- P. M. Aparna, G. N. Jayalaxmi, Vishwanath P. Baligar. Heart Sound Classification System Using Deep-Learning Neural Networks // Proceedings of 4th International Conference on Frontiers in Computing and Systems, 2024, pp 647-658. doi: 10.1007/978-981-97-2614-1_46.
- Yaseen, Son G-Y, Kwon S. Classification of heart sound signal using multiple features // Yaseen, Son G-Y, Kwon S. / Applied Science – Seoul, Korea, 2018, №8(12), pp 2344-2358. doi: 10.3390/app8122344.
- Ali Raza. Heartbeat Sound Signal Classification Using Deep Learning // Ali Raza, A. Mehmood, S. Ullah, Maqsood Ahmad, G.Choi, Byung-Won On / Sensors - Basel, Switzerland, vol 19(21), November 2019, pp . doi: 10.3390/s19214819.
- Prakash A.J., Ari S. A system for automatic cardiac arrhythmia recognition using electrocardiogram signal // Prakash A.J., Ari S. / In book: Bioelectronics and.
- Medical Devices. San Francisco: Elsevier, 2019 - pp. 891–911. doi: 10.1016/B978-0-08-102420-1.00042-X.
- Huang J. ECG Arrhythmia Classification Using STFT-Based Spectrogram and Convolutional Neural Network // Huang J., Chen B., Yao B., He W/ IEEE Access, 2019, V. 7. pp. 92871–92880.
- Alfaras M., Soriano M.C., Ortín S. A fast machine learning model for ECG-based heartbeat classification and arrhythmia detection // Alfaras M., Soriano M.C., Ortín S. / Frontiers in Physics. 2019., vol. 7 – pp . doi: 10.3389/fphy.2019.00109.
- О.В. Непомнящий. Использование сверточной нейронной сети при анализе электрокардиограмм // О.В. Непомнящий, А.Г. Хантимиров, М.М.И. Аль-сагир, С. Шабир / Нейрокомпьютеры: разработка и применение, т.25, №2, 2023- с.58-65.
- Омаров Б.С. Электронный стетоскоп для выявления сердечных аномалий // Омаров Б.С. Айдаров К.А., Султан Д.Р., Байкувеков М.Б. / Вопросы технических и физико-математических наук в свете современных исследований, Т.9-10 (47), Новосибирск, 2022, стр. 5-16
- Бейненсон Л.Б. Определение сердечно-сосудистых заболеваний по аудиозаписи биения сердца с помощью нейронной сети // Л.Б. Бейненсон / Тенденции развития науки и образования. №70-1, 2021, стр. 9-12, МИРЭА – Российский технологический университет.
- Classifying Heart Sounds Challenge. Режим доступа- https://istethoscope.peterjbentley.com/ heartchallenge/index.html (дата обращения 7.08.2024)
- Колесникова, Е.В. Роль свободно циркулирующей днк и свободных нуклеотидов в диагностике, оценке степени тяжести и динамическом контроле пациентов с хронической сердечной недостаточностью: автореф. дисс… к.м.н., 3.1.18. Внутренние болезни. Воронеж, 2024. 22 с.


