Abstract
Heart disease is a leading cause of death for many, and an affordable way to catch it early is by listening to heart sounds with a stethoscope or, better yet, recording them and analyzing with a model. This project is a binary classification task: analyze a short clip of someone's heartbeat and determine if it sounds normal or abnormal. We kept the convolutional neural network (CNN) model constant and only changed how we converted the raw audio into images.
We tried three approaches: a standard log-mel spectrogram, PCEN (which normalizes each frequency bin over time), and a multi-resolution version that stacks different window sizes together. We tested all three on the PhysioNet 2016 heart sound dataset under the same conditions, using the same model, optimizer, and random seed.
Results showed that all three methods performed well at catching abnormal cases (sensitivity around 0.95), but both PCEN and multi-resolution marginally outperformed the standard log-mel in the official PhysioNet accuracy metric (0.915 and 0.916 versus 0.910). Additionally, we ran Grad-CAM to see where the model was focusing, which primarily concentrated on low frequencies where S1 and S2 heart sounds reside, indicating that the model learned some meaningful features.
Blogger's Review: This study highlights the impact of different spectrogram processing methods on heart disease detection, with the superiority of PCEN and multi-resolution methods providing new insights that could play a significant role in clinical applications. The analysis of model interpretability enhances confidence in the application of deep learning in healthcare.