Method Article

Modello di trasformatore di rete neurale convoluzionale per prevedere e classificare l'aritmia precoce utilizzando il segnale dell'elettrocardiogramma

DOI:

10.3791/68227

July 3rd, 2025

In This Article

Summary

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Il modello sviluppato mira a classificare le aritmie precoci nelle classi N, L, R, V e A. In questo caso, tutti i set di dati vengono combinati per creare un set di dati principale, che il modello utilizza come input per produrre diverse classi di aritmia come output.

Abstract

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Essendo una delle principali cause di morte in tutto il mondo, le malattie cardiovascolari, in particolare le aritmie, richiedono la creazione di tecnologie precise e automatizzate per la diagnosi e il rilevamento precoce. Per identificare le aritmie dai segnali dell'elettrocardiogramma (ECG), questo articolo introduce un modello di classificazione basato sul deep learning che si concentra su cinque tipi principali di battito cardiaco: normale (N), blocco di branca sinistra (L), blocco di branca destra (R), battito prematuro atriale (A) e contrazione ventricolare prematura (V). Sfruttiamo i segnali di derivazione I provenienti da diverse fonti, come i database INCART a 12 derivazioni, Holter per morte cardiaca improvvisa, Aritmia sopraventricolare e MIT-BIH, producendo oltre 3,9 milioni di segmenti di formazione e 112.575 test.

Esempi di preparazione dei dati includono 180 campioni, segmentazione a finestra fissa, normalizzazione Min-Max e bilanciamento delle classi con la tecnica di sovracampionamento delle minoranze sintetiche (SMOTE). L'architettura ibrida utilizza i livelli Transformer per modellare le dipendenze temporali e le reti neurali convoluzionali (CNN) 1D per estrarre le caratteristiche spaziali. L'ottimizzatore Adam con dropout e normalizzazione batch per la regolarizzazione addestra il modello.

Il sistema proposto supera il modello TN4 e altri benchmark all'avanguardia, raggiungendo il 99,99% di accuratezza, precisione e punteggio F1 in tutte le classi. La robustezza delle funzionalità è ulteriormente migliorata applicando architetture ibride profonde e reti neurali convoluzionali, che sono state motivate da studi precedenti. Il paradigma suggerito fa progredire l'assistenza sanitaria digitale individualizzata e basata sull'intelligenza artificiale ed è molto promettente per l'identificazione scalabile e in tempo reale delle aritmie.

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Secondo l'Organizzazione Mondiale della Sanità (OMS)1, le malattie cardiovascolari rimangono uno dei principali problemi di salute a livello globale, responsabili di quasi il 31% dei decessi in tutto il mondo ogni anno. Un sottoinsieme significativo di questi casi riguarda aritmie-irregolarità nel ritmo cardiaco che possono variare da benigne a pericolose per la vita. Le aritmie sono spesso caratterizzate da tempi irregolari. Queste interruzioni contribuiscono in modo sostanziale alla morbilità e alla mortalità dei pazienti, aumentando il rischio di gravi problemi di salute come ictus, insufficienza cardiaca e arresto cardiaco improvviso. L'identificazione precoce e la classificazione accurata delle aritmie sono quindi fondamentali per migliorare gli esiti dei pazienti, gestire i costi sanitari e migliorare la qualità delle cure cardiache2.

L'elettrocardiogramma (ECG) rimane uno strumento diagnostico non invasivo fondamentale per rilevare le aritmie. Catturando l'attività elettrica del cuore sotto forma di forme d'onda visive, l'ECG consente ai medici di identificare sottili variazioni che possono indicare specifici modelli aritmici3. Tuttavia, l'interpretazione manuale dei segnali ECG richiede molto tempo ed è soggetta a variabilità a causa delle differenze individuali tra i professionisti, il che introduce un margine di errore umano. Queste sfide sono amplificate quando si gestiscono set di dati estesi o si riconoscono aritmie sfumate. Con il passaggio globale all'assistenza sanitaria digitale, la necessità di sistemi diagnostici affidabili e automatizzati in grado di fornire analisi ECG coerenti e in tempo reale è sempre più evidente4.

I modelli tradizionali di apprendimento automatico sono stati applicati all'analisi ECG con moderato successo; Tuttavia, la loro dipendenza dalle funzionalità artigianali e dall'esperienza specifica del dominio pone notevoli limitazioni. Per risolvere questa limitazione, il modello utilizza la tecnica SMOTE (Synthetic Minority Over-sampling Technique), che genera punti dati sintetici per le classi sottorappresentate, bilanciando così il set di dati e migliorando la capacità del modello di generalizzare su tutti i tipi di battito cardiaco. L'integrazione di SMOTE con il nostro modello di deep learning migliora le prestazioni di classificazione, in particolare per le aritmie rare, e supporta uno strumento diagnostico più equo5. Gli obiettivi primari di questa ricerca sono triplici. In primo luogo, l'obiettivo è quello di sviluppare un modello accurato e scalabile in grado di rilevare le aritmie in tempo reale, contribuendo al passaggio globale verso l'assistenza sanitaria digitale e personalizzata. In secondo luogo, dimostrare l'efficacia di un'architettura ibrida CNN-Transformer nell'analisi ECG, evidenziando il suo potenziale di superare i metodi tradizionali sia in termini di accuratezza che di robustezza6.

Infine, l'obiettivo è quello di sviluppare un modello con applicazioni significative nella diagnostica clinica, migliorando la diagnosi precoce delle anomalie cardiache. Questo studio cerca di colmare il divario tra i progressi del deep learning e le applicazioni mediche pratiche, posizionando il nostro approccio come uno strumento prezioso per perseguire una migliore cura cardiaca e risultati per i pazienti6.

Access restricted. Please log in or start a trial to view this content.

Protocol

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

1. Acquisizione di set di dati

  1. Acquisisci set di dati di elettrocardiogramma (ECG) disponibili al pubblico per sviluppare e convalidare il modello di deep learning per la classificazione delle aritmie7.
  2. Combina i set di dati Lead-I dal database delle aritmie MIT-BIH, dal database delle aritmie sopraventricolari MIT-BIH, dal database delle aritmie a 12 derivazioni INCART di San Pietroburgo e dal database Holter della morte cardiaca improvvisa.
    NOTA: I set di dati vengono scelti per la loro diversità nei dati demografici dei pazienti e nei tipi di aritmia, garantendo che il modello possa generalizzare su vari casi. Ogni set di dati fornisce registrazioni ECG annotate di alta qualità, che coprono una gamma di classi di battito cardiaco. Solo i dati Lead I sono stati estratti e utilizzati in tutti i set di dati per standardizzare l'input, mantenendo la coerenza e concentrandosi sul segnale più rilevante dal punto di vista diagnostico. Come mostrato nella Figura 1, la derivazione I misura la differenza di potenziale tra il braccio destro (elettrodo negativo) e il braccio sinistro (elettrodo positivo), mentre la derivazione II misura la differenza di potenziale tra il braccio destro (elettrodo negativo) e la gamba sinistra (elettrodo positivo). La tabella 1 illustra che il set di dati principale viene creato combinando quattro set di dati ed eliminando i valori nulli e il file viene denominato Alldata.CSV.

2. Pre-elaborazione dei dati

  1. Dividi i dati da Alldata.CSV in due parti: training e test. Nella pre-elaborazione 2, filtrare le classi N, L, R, A, V da Alldata.CSV e quindi dividerle in due parti: parti di training e parti di test (Figura 2).
  2. Suddividere il segnale ECG di ciascun paziente in finestre fisse di 180 ms, ciascuna annotata in base alle corrispondenti classi di aritmia come le classi N, L, R, A e V (Figura 3).
    NOTA: questa segmentazione ha consentito una lunghezza di input coerente tra i campioni e ha catturato le caratteristiche temporali all'interno di ciascun segmento di heartbeat.
  3. Leggi i file ECG grezzi in formato (.dat, .hea e .atr) utilizzando la libreria di Python.

3. Normalizzazione

  1. Per garantire l'uniformità dell'ampiezza del segnale, normalizzare tutti i dati ECG segmentati utilizzando la scala Min-Max, trasformando ogni campione in un intervallo compreso tra 0 e 1.
    NOTA: la tecnica di normalizzazione usata qui è MinmaxScaler8.

4. Bilanciamento delle classi con SMOTE

NOTA: Una sfida comune nella classificazione delle aritmie è il significativo squilibrio di classe, in cui i battiti cardiaci normali superano di gran lunga quelli anormali.

  1. Per affrontare la sfida di cui sopra, applicare la tecnica di sovracampionamento sintetico delle minoranze (SMOTE) al set di addestramento, che genera campioni sintetici per le classi di minoranza interpolando tra le istanze esistenti9.
    NOTA: La capacità del modello di generalizzare in tutti i tipi di aritmia è migliorata da nuovi campioni sintetici, che garantiscono che ogni classe sia equamente rappresentata.

5. Divisione treno-test

  1. Dopo la pre-elaborazione, suddividere i dati in set di training e di test usando una divisione 70-30, con stratificazione per mantenere la distribuzione delle classi tra i set.
    NOTA: Questa suddivisione ha assicurato che ogni classe di aritmia fosse adeguatamente rappresentata sia nella fase di addestramento che in quella di test, consentendo una valutazione affidabile delle prestazioni del modello.

6. Suddivisione dei set di dati e distribuzione delle classi

  1. Suddividi il set di dati finale in set di addestramento e test, con il 70% dei dati utilizzati per il training e il 30% per i test.
  2. Applicare SMOTE per bilanciare la distribuzione delle classi, assicurandosi che ogni tipo di aritmia sia adeguatamente rappresentato sia nei set di allenamento che in quelli di test, come mostrato nella Tabella 2.
    NOTA: In totale, 3.966.620 segmenti ECG vengono utilizzati per l'addestramento e 112.575 segmenti ECG vengono utilizzati per testare il modello. Questo grande volume di dati, insieme alla diversità dei tipi di aritmia, ha contribuito alla robustezza del modello nel rilevare diversi tipi di aritmie nei segnali ECG del mondo reale.

7. Metodologia

  1. Architettura del modello
    1. Per ottenere una classificazione accurata delle aritmie, implementa un modello ibrido di deep learning che comprende reti neurali convoluzionali (CNN) 1D e livelli Transformer.
      NOTA: L'architettura del modello ibrido è specificamente progettata per sfruttare i punti di forza delle caratteristiche spaziali e temporali dei segnali ECG. Combina le capacità di estrazione delle caratteristiche e di modellazione delle sequenze.
  2. Blocchi di rete neurale convoluzionale 1D (CNN)
    1. Imposta il blocco CNN in modo che sia costituito da due strati convoluzionali 1D, ciascuno seguito da una funzione di attivazione ReLU e da un livello di max-pooling. Questi livelli estraggono le dipendenze spaziali dal segnale ECG in ingresso. Per migliorare l'estrazione delle funzionalità, aggiungere altre funzioni di attivazione ReLU dopo ogni fase di trasformazione nei livelli CNN10.
      NOTA: questa configurazione consente al modello di apprendere in modo efficace le dipendenze spaziali all'interno di ciascun segmento.
    2. Primo livello convoluzionale: utilizzare questo livello per applicare 32 filtri di dimensione 3 al segnale di ingresso. L'operazione si esprime come:
      figure-protocol-1(1)
      Dove yi rappresenta l'uscita, wj sono i pesi, x(i+j) è il segmento ECG in ingresso, b è il termine di polarizzazione e σ è la funzione di attivazione (ReLU, in questo caso)11.
    3. Livello di pooling: dopo ogni convoluzione, impostare un'operazione di pooling massimo per ridurre la dimensione spaziale di un fattore 2, definita come:
      figure-protocol-2(2)
      NOTA: questa operazione mantiene le caratteristiche più salienti riducendo la complessità computazionale.
    4. Secondo livello convoluzionale: utilizzare questo livello per applicare 64 filtri di dimensione 3 alle mappe delle caratteristiche del livello precedente, estraendo le caratteristiche di livello superiore12. Applicare una funzione di attivazione ReLU dopo la convoluzione per introdurre la non linearità:
      figure-protocol-3(3)
      1. Livelli di attivazione aggiuntivi: applicare l'attivazione ReLU in ogni fase intermedia dopo la convoluzione per migliorare la potenza espressiva della rete, assicurando che il modello si concentri sulle attivazioni positive13.
    5. Abbandono: specificare un tasso di abbandono di 0,5 nella sezione14 del layer completamente connesso.
  3. Blocco trasformatore:
    1. Per seguire questo protocollo, impostare il blocco Transformer in modo che includa due livelli di auto-attenzione multi-testa, consentendo al modello di acquisire le dipendenze temporali tra diverse parti del segnale ECG15.
    2. Auto-attenzione multi-testa: questo meccanismo calcola le relazioni tra ogni coppia di elementi della sequenza. Per una sequenza con query Q, chiave K e valore V, calcolare l'attenzione come:
      figure-protocol-4 (4)
      Dove Q, K e V sono rispettivamente le matrici di query, chiave e valore e dk rappresenta la dimensionalità dei vettori chiave.
      NOTA: Consentendo al modello di pesare diversi segmenti in base alla loro rilevanza, questo meccanismo migliora la capacità del modello di distinguere tra aritmie con sottili caratteristiche temporali.
    3. Funzioni di attivazione: utilizzare ReLU in modo esplicito tra i livelli.
  4. Trasformata wavelet continua (CWT):
    1. Prima di inserire i dati nei livelli CNN, applicare trasformazioni wavelet continue per convertire i segnali ECG in rappresentazioni tempo-frequenza16.
      NOTA: Questa trasformazione fornisce un set di funzionalità più completo catturando le variazioni di frequenza nel tempo, che sono fondamentali per distinguere tra diversi tipi di aritmia.
  5. Processo di formazione:
    1. Per addestrare il modello, utilizzare l'ottimizzatore Adam, che regola dinamicamente la velocità di apprendimento in base al primo e al secondo momento del gradiente. Definisci la regola di aggiornamento per Adam come:
      figure-protocol-5 (5)
      Dove mt e vt sono le stime del primo e del secondo momento, α è il tasso di apprendimento e ε è una piccola costante per evitare la divisione per zero17.
    2. Conduci corsi di formazione su oltre 100 epoche, con un lotto di 64, utilizzando l'arresto anticipato per mitigare l'overfitting.
      NOTA: i dati di addestramento sono stati inseriti nel modello tramite l'utilità PyTorch DataLoader e sono stati applicati sia il dropout che la normalizzazione batch per regolarizzare la rete e migliorare la convergenza.
  6. Ottimizzazione degli iperparametri
    1. Esegui l'ottimizzazione manuale utilizzando l'arresto anticipato, l'ottimizzatore Adam, l'abbandono, la normalizzazione batch e una dimensione batch di 1024.
      NOTA: Sebbene la ricerca a griglia o bayesiana non sia esplicitamente menzionata in questo documento, queste scelte riflettono strategie di ottimizzazione pratiche.
  7. Tecniche di validazione
    1. Utilizzare una divisione treno-test stratificata 70-30 dopo aver applicato SMOTE18.
      NOTA: Sebbene non venga utilizzato k-fold, la stratificazione preserva la distribuzione delle classi, che è spesso sufficiente con set di dati di grandi dimensioni.

Access restricted. Please log in or start a trial to view this content.

Results

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Metriche di performance del modello proposto
L'accuratezza, la sensibilità, la specificità e il punteggio F1 del modello proposto sono calcolati per ciascuna classe di aritmia. Le prestazioni del modello vengono valutate sul MIT-BIH e su altri database ECG pertinenti. I risultati principali sono riassunti come segue:

Accuratezza: il modello ibrido CNN-Transformer ha raggiunto un'accuratezza del 99,32% sul set di dati MITDB e del 97,15% sui database combinati, dimostrando la...

Access restricted. Please log in or start a trial to view this content.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

I risultati di questo studio indicano che il modello ibrido CNN-Transformer classifica abilmente le aritmie ECG con elevata accuratezza, sensibilità, specificità e punteggio F1, superando notevolmente i modelli convenzionali solo CNN e CNN-LSTM. L'incorporazione di strati Transformer ha migliorato la capacità del modello di catturare le dipendenze temporali, un elemento cruciale dell'analisi ECG. Inoltre, le trasformazioni wavelet continue (CWT) forniscono ampie caratteristiche tempo-fre...

Access restricted. Please log in or start a trial to view this content.

Disclosures

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Gli autori non hanno conflitti di interesse da dichiarare.

Acknowledgements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Desidero ringraziare la dott.ssa Azadeh Amoozegar, Senior Lecturer, INTI International University, per aver fornito risorse online per la formazione sui set di dati.

Access restricted. Please log in or start a trial to view this content.

Materials

List of materials used in this article
NameCompanyCatalog NumberComments
Sistema(per l'addestramento) Processore: AMD Ryzen 7 7840HS, CPU RAM: 16 GB, GPU RAM: 6 GBNVIDIA GeForce RTX 3050
pacchetto python di apprendimentoutilizzato per il ricampionamento
pytorchPyTorch è un pacchetto Python che fornisce due funzionalità di alto livello:
- Calcolo tensoriale (come NumPy) con forte accelerazione GPU
- Reti neurali profonde costruite su un Seaborn
Seaborn è una libreria di visualizzazione Python basata su matplotlib.
WFDButilizzato per leggere, scrivere, elaborare e tracciare segnali fisiologici e dati di annotazione
informatico sbilanciato

References

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Jamil, S., Rahman, M. A. Novel deep-learning-based framework for the classification of cardiac arrhythmia. J Imaging. 9 (3), 70(2020).
  2. Reegu, F. A., et al. Blockchain-based framework for interoperable electronic health records for an improved healthcare system. Sustainability. 15 (8), 6337(2023).
  3. Aseeri, A. O. Uncertainty-aware deep learning-based cardiac arrhythmias classification model of electrocardiogram signals. Computers. 11 (6), 82(2021).
  4. Tesfai, H., et al. Lightweight ShuffleNet-based CNN for arrhythmia classification. IEEE Access. 12, 111842-111854 (2022).
  5. Pandey, S. K., Janghel, R. R. Automatic detection of arrhythmia from imbalanced ECG database using CNN model with SMOTE. Australas Phys Eng Sci Med. 42 (4), 1129-1139 (2019).
  6. Hu, R., Chen, J., Zhou, L. Transformer-based deep neural network for arrhythmia detection using continuous ECG signals. Comput Biol Med. 105, 325(2022).
  7. Dang, H., et al. Novel deep arrhythmia-diagnosis network for atrial fibrillation classification using electrocardiogram signals. IEEE Access. 7, 75577-75590 (2019).
  8. Li, J., Zhang, Y., Gao, L., Li, X. Arrhythmia classification using biased dropout and morphology-rhythm feature with incremental broad learning. IEEE Access. 9, 66132-66140 (2021).
  9. Joddoa, A. S. Heart disease prediction system using SMOTE-balanced dataset and decision classifier. AIP Conf. Proc. 2834, 050006(2023).
  10. Li, Y., Qian, R., Li, K. Inter-patient arrhythmia classification with improved deep residual convolutional neural network. Comput Methods Programs Biomed. 214, 106582(2022).
  11. Kiranyaz, S., Ince, T., Gabbouj, M. Real-time patient-specific ECG classification by 1-D convolutional neural networks. IEEE Trans Biomed Eng. 63 (3), 664-675 (2016).
  12. Attention is all you need. Vaswani, A., et al. Proceedings of the 31st International Conference on Neural Information Processing Systems, Long Beach, California, USA, , 6000-6010 (2017).
  13. Rajpurkar, P., et al. Cardiologist-level arrhythmia detection with convolutional neural networks. arXiv. , preprint arXiv:1707.01836 (2017).
  14. Zihlmann, M., Perekrestenko, D., Tschannen, M. Convolutional recurrent neural networks for electrocardiogram classification. arXiv. , preprint arXiv:1710.06122 (2018).
  15. Kim, D., Lee, K. Novel hybrid CNN-transformer model for arrhythmia detection without R-peak identification using Stockwell transform. Sci Rep. 15, 7817(2025).
  16. Diker, A., Aydin, K. Transformer-based attention model for arrhythmia detection using ECG signals. Biomed Signal Process Control. 68, 102679(2021).
  17. Convolutional neural network hyperparameter tuning with Adam optimizer for ECG classification. Sen, S. Y., Ozkurt, N. 2020 Innovations in Intelligent Systems and Applications Conference (ASYU), , 50717(2020).
  18. Smote, N. V. C. Synthetic minority over-sampling technique for handling class imbalance. J Artif Intell Res. 6, 321-357 (2002).
  19. Xia, Y., Wulan, N., Wang, K., Zhang, H. Detecting atrial fibrillation by deep convolutional neural networks. Comput Biol Med. 116, 103345(2020).
  20. Mohonta, S. C., Motin, M. A., Kumar, D. K. Electrocardiogram-based arrhythmia classification using wavelet transform with deep learning model. Sensing Bio-Sensing Res. 37, 100502(2022).
  21. Oh, S. L., Ng, E. Y. K., Tan, R. S., Acharya, U. R. Automated diagnosis of arrhythmia using combination of CNN and LSTM techniques with variable-length heart beats. Comput Biol Med. 102, 278-287 (2018).
  22. Izci, E., Ozdemir, M. A., Degirmenci, M., Akan, A. Cardiac arrhythmia detection from 2D ECG images by using deep learning technique. 2019 Medical Technologies Congress (TIPTEKNO). , 1-4 (2019).
  23. Zheng, Z., Chen, Z., Hu, F., Zhu, J., Tang, Q., Liang, Y. Automatic diagnosis of arrhythmias using a combination of CNN and LSTM technology. Electronics. 9 (1), 121(2020).
  24. Isin, A., Ozdalili, S. Cardiac arrhythmia detection using deep learning. Procedia Comput Sci. 120, 268-275 (2017).
  25. Huang, J., Chen, B., Yao, B., He, W. ECG arrhythmia classification using STFT-based spectrogram and convolutional neural network. IEEE Access. 7, 92871-92880 (2019).
  26. Wang, T., Lu, C., Sun, Y., Yang, M., Liu, C., Ou, C. Automatic ECG classification using continuous wavelet transform and convolutional neural network. Entropy. 23 (1), 119(2021).

Access restricted. Please log in or start a trial to view this content.

Reprints and Permissions

Request permission to reuse the text or figures of this JoVE article

Request Permission

Tags

Arrhythmia ClassificationElectrocardiogram SignalConvolutional Neural NetworkTransformer ModelDeep Learning ModelHeartbeat ClassificationLead I ECGTemporal DependenciesClass BalancingDigital Healthcare
Video Coming Soon

Related Articles