Brief Review — A Lightweight Robust Approach for Automatic Heart Murmurs and Clinical Outcomes Classification from Phonocardiogram Recordings
HearHeart, Winner of Heart Murmur Detection in George B. Moody PhysioNet Challenge 2022
A Lightweight Robust Approach for Automatic Heart Murmurs and Clinical Outcomes Classification from Phonocardiogram Recordings
HearHeart, by Brandenburg University of Technology, Universitätsklinikum Erlangen, Hamburg University of Technology, Friedrich-Alexander-Universität Erlangen-Nürnberg
2022 CinC, Over 20 Citations (Sik-Ho Tsang @ Medium)Phonocardiogram (PCG) / Heart Sound Classification
2016 … 2024 [MWRS-BFSC + CNN2D] [ML & DL Model Study on HSS] [Audio Data Analysis Tool]
Summary: My Healthcare and Medical Related Paper Readings and Tutorials
==== My Other Paper Readings Are Also Over Here ====
- The participation team, HearHeart, proposed a lightweight convolutional neural network (CNN) to detect murmurs and a random forest model to classify clinical outcomes.
Outline
- Dataset, Preprocessing, Feature Extraction & Data Augmentation
- Murmur Model Structure & Clinical Outcome Model
- Results
1. Dataset, Preprocessing, Feature Extraction & Data Augmentation
1.1. Dataset
The challenge used 60% of the CirCor DigiScope Dataset.
- The dataset contains 5,282 recordings of 1,568 patients under 21 years old, which are recorded from 4 main auscultations locations. Additionally, the socio-demographic data of each patient is provided.
- The absent class contains more samples compared to the present and unknown classes.
- As shown above, both tasks of murmur and clinical outcome classification seems to be not correlated.
1.2. Preprocessing
The recordings vary in duration from 4.8 to 80.4 seconds. A fixed duration of 15s is selected for each recording.
During training, recordings that exceeded the defined length are randomly cropped. The shorter ones were zero-padded.
- For validation, the longer recordings were segmented into patches with an overlap of 7.5 seconds to increase the number of validation samples. The shorter ones were zero-padded.
1.3. Feature Extraction
A Mel-spectrogram is extracted, with 128 Mel bands within the range of 25-2,000Hz, followed by a Hamming window with a window size of 50ms and a frameshift of 25ms.
Wide features are extracted. One part of the wide features is composed of age, gender, and pregnancy status and are embedded using one-hot vectors. While the other part of the wide features includes statistical features such as zero-crossing rate, spectral centers, and spectral bandwidth.
1.4. Data Augmentation
- Two data augmentation approaches are applied.
At first, noise injection is used, where zero mean 15 dB Gaussian noise is added to the recording with the possibility of 0.5 during training.
Then spectrogram augmentation on frequency and time domain is conducted, where randomly selected multiply blocks of frequency channels and blocks of time steps are masked.
2. Murmur Model Structure & Clinical Outcome Model
2.1. Murmur Model Structure
- A lightweight CNN model is proposed, which composed of two branches to classify heart murmurs.
The CNN uses the Mel-spectrogram as input in the main branch, where it is consecutively fed into convolutional blocks, while the second branch feds the wide features into a fully connected layer (FC).
The outputs of the main and secondary branches are concatenated and fed to another FC layer for the final murmur classification.
- A weighted cross-entropy loss function is used for murmur classification, where we attribute the weights 5, 3, and 1 to the present, unknown, and absent classes, respectively.
- A batch size of 24 is used.
2.2. Clinical Outcome Model
Random forest is used. A grid search is used to optimize hyperparameters in a 5-fold cross-validation.
- 100 trees are used, where each tree could have the maximum number of leaves in each node of 36.
- Weights 5 and 1 are applied to the abnormal and normal classes, respectively, due to the higher cost of misclassification of the abnormal class.
3. Results
3.1. 5-Fold
For the murmur classification task, the proposed method achieved an average murmur score of 0.793.
- The method only achieved an average F1 score of 0.119 for the unknown class, due to insufficient samples for this class.
For the clinical outcome classification, the method achieved an average score of 11731.64 and an average accuracy of 0.914 for the abnormal class. The approach had only an average accuracy of 0.195 for the normal class.
3.2. Hidden Test Set
- An ensemble of the trained models from cross-validation is submitted to the challenge server.
The murmur and outcome scores on the hidden test set are 0.751 and 10459, respectively. The evaluation of the hidden test set demonstrated that the method can generalize and perform well even in presence of new data.