Applicazioni pratiche di deep learning/Analisi elettrocardiogramma (ECG)
Il modello gianlab/swin-tiny-patch4-window7-224-finetuned-ecg-classification che si trova su Hugging Face qui : https://huggingface.co/gianlab/swin-tiny-patch4-window7-224-finetuned-ecg-classification è stato ottenuto addestrandolo su Google Colab dopo avere importato le immagini degli elettrocardiogrammi ECG da qui : https://www.kaggle.com/datasets/erhmrai/ecg-image-data/data . Il modello consente di individuare l'esito dell'ECG con un'accuratezza del 100% . Le possibili classificazioni ottenute sono:
N: Normal beat - Battito normale S: Supraventricular premature beat - Battito prematuro sopraventricolare V: Premature ventricular contraction - Contrazione ventricolare prematura F: Fusion of ventricular and normal beat - Fusione del ventricolare e battito normale Q: Unclassifiable beat - Battito inclassificabile M: myocardial infarction - Infarto miocardico
Ci sono 3 possibilità per utilizzarlo :
1) Collegarsi con la pagina del modello https://huggingface.co/gianlab/swin-tiny-patch4-window7-224-finetuned-ecg-classification, cliccare su "Drag image here or click to browse from your device" e caricare l'immagine dell'ECG . Si otterrà una classificazione dell'ECG con la relativa accuratezza che va dall'1% al 100% .
2) Creare su Colab un nuovo file e incollare il seguente codice :
!pip install -q transformers
from transformers import pipeline
pipe = pipeline("image-classification", "gianlab/swin-tiny-patch4-window7-224-finetuned-ecg-classification")
Caricare l'immagine dell'ECG sul server tramite il seguente codice:
from google.colab import files
files.upload()
Per visualizzare l'immagine dell'ECG si può utilizzare il seguente codice :
from pathlib import Path
from PIL import Image
path_im = Path('ECG.jpg')
image = Image.open(path_im)
image
Per ottenere la classificazione dell'ECG digitare :
pipe(image)
con il seguente risultato :
[{'score': 1.0, 'label': 'N'}, {'score': 1.9628176417541e-08, 'label': 'S'}, {'score': 1.3693452594054634e-08, 'label': 'M'}, {'score': 7.3142287781990944e-09, 'label': 'F'}, {'score': 1.8336371310212485e-09, 'label': 'Q'}]
Quindi nel caso specifico si tratta di un normale ECG con un'accuratezza del 100% .
3) Invece di caricare la foto sul server di Colab si può importarla direttamente dal web con :
from PIL import Image
import requests
url = 'https://www.mio_sito.it/ECG.jpg'
image = Image.open(requests.get(url, stream=True).raw)
image
Link esterni
[modifica | modifica sorgente]