CNN and Bidirectional GRU-Based Heartbeat Sound Classification Architecture for Elderly People是发布在2023 MDPI Mathematics上的论文,提出了基于卷积神经网络和双向门控循环单元(CNN + BiGRU)注意力的心跳声分类,论文不仅显示了模型还构建了完整的系统。
以前的研究
论文总结了以前的研究
数据集和预处理
应用层显示了应用区域,包括医院、政府办公室、救护车、养老院和体育馆。
数据层,处理实时数据采集,如数字或模拟听诊器,机电薄膜(EMFi)传感器,智能手机。
智能层是包含深度学习模型的层。
CirCor数据集
使用CirCor数据集,总共从942名患者中获得3007个录音,包含499个杂音和2508个正常录音。为了解决这个类不平衡问题,论文进行了欠采样。对于欠采样,杂音类使用489个录音,正常类使用489个随机选择的录音。然后将该数据集按70:30的比例分为训练数据和测试数据。
数据增强
时间拉伸:音高移动和音频移动使得总的训练数据变成了原来684个片段大小的3倍。
调高音高:在不改变节奏的情况下,调高或调低音高。半音在-4到+4的范围内随机选择。应用此转换的概率设为0.5。
音频移位:用于向前或向后移动音频样本,有或没有任何翻转。
预处理
数据预处理包括对给定音频信号进行滤波、归一化和下采样。
对给定的音频数据集进行滤波,可以去除录制过程中由于各种环境条件而产生的噪声。
归一化是通过归一化+1到-1范围内的每一类心跳声音来改进训练过程。
信号的下采样率为22050,频率范围为30至1200 Hz。
CNN + BiGRU
作者试图直接在原始时间序列数据上进行训练,但是这导致梯度消失问题和非常长的训练时间。另一种选择是使用色谱图[56],这也是一种与MFCC类似的特征提取方法,但会导致训练不稳定。所以作者最终决定使用MFCC。
CNN + BiGRU模型
由CNN + BiGRU组成的深度学习模型,并使用注意力模型对音频样本进行推理。
在通过GRU单元对时间序列数据进行处理之前,对二维卷积层进行批处理归一化和概率为0.3的Dropout,防止过拟合和泄漏
CNN层期望提取关键的MFCC系数,并以时间序列数据的形式提供给BiGRU层。
BiGRU学习重要的特征,并通过Dropout(防止过拟合)将它们传递给另一个BiGRU层,以提供从mfc中提取的最终特征给前馈神经网络(FFNN)进行预测。FFNN的第一层使用tanh激活,而第二层使用sigmoid激活,因为它是一个二元分类问题。
结果
方法性能对比
采用注意模型的CNN+BiGRU整体验证精度优于其他模型。
与其他模型相比,所提出的体系结构具有更少的训练计算时间复杂度。
消融研究
Adam优化器产生最佳结果。
用MFCC训练非常稳定,收敛速度很快。
数据增强在很大程度上提高了验证的准确性,并有助于对抗过拟合。
论文地址:https://avoid.overfit.cn/post/91ab2a0758e24fe98158f47cabff2468