This work describes a system that classifies phonocardiogram (PCG) recordings as normal or abnormal using handcrafted audio features and classical machine learning. The data comes from the PhysioNet/CinC Challenge 2016 training set, which is imbalanced at roughly four normal recordings for each abnormal one. Each recording is band-pass filtered, split into short overlapping frames, and described by Mel-Frequency Cepstral Coefficients together with a few spectral statistics. The per-frame values are summarized into a fixed vector of 62 numbers per recording. We compare three classifiers of increasing flexibility (logistic regression, a support vector machine with an RBF kernel, and a random forest) and evaluate them with class-aware metrics. With record-level cross-validation the random forest reaches an AUC of 0.95. We also report a leave-one-source-out experiment, where performance drops close to chance, reflecting the differences between recording sites. A short explainability section identifies which features drive the decisions.
Iliano Fasolino (Fri,) studied this question.