如何使用预训练的通用音频表示进行心脏杂音检测

心脏杂音检测是心血管疾病诊断中的一个重要方面,通过听诊器进行检查是常见方法,但对临床医生的经验依赖很大。为了减少心脏声音解释中对熟练临床医生的需求,探索自动化心脏听诊的深度学习方法很有必要。然而,尽管深度学习模型通常需要大量数据进行训练,心脏声音数据集的大小却很有限,并且没有预训练模型可用。与此相反,已经有许多预训练模型被提出作为通用音频表示,它们是在大规模数据集上预训练的,并且在包括环境声音、语音和音乐在内的多样化任务上显示出了有效性。

如何使用预训练的通用音频表示进行心脏杂音检测呢?我们使用George B. Moody PhysioNet Challenge 2022 [3]中的心脏杂音检测任务和CirCor DigiScope心脏声音数据集,这是一个三类分类:存在、不存在和未知(无法确定)。

1、实验设置

1.1 通用音频表示方法

通用音频表示我们选用PANNs CNN14、BYOL-A、AST、M2D,PANNs,在AudioSet 上进行预训练,但它们在学习方法和网络架构上有所不同。PANNs通过监督学习(SL)预训练CNN,BYOL-A通过自监督学习(SSL)预训练CNN,AST通过SL预训练变换器,M2D通过SSL预训练变换器。如PANNs CNN14使用了1,934,187个样本,而M2D使用了2,005,132个样本。对于预训练,SL模型(CNN14和AST)使用了音频波形和标签,而SSL模型(BYOL-A和M2D)仅使用了音频波形。

1.2 网络架构

使用预训练模型作为特征提取器,并在其上添加了批量归一化层和线性层。

预训练模型作为特征提取器:文档选择了多种预训练的通用音频表示模型作为特征提取器。

批量归一化层:在预训练模型的输出上添加了批量归一化层(BatchNorm),以提高训练的稳定性。

线性层:在批量归一化层之上,进一步添加了线性层,其输出直接用于最终的分类预测。

权重初始化:预训练模型的权重参数用于初始化,随后进行微调,同时训练整个网络的参数。

微调:整个网络,包括预训练模型,都进行了微调训练。

1.3 评估指标

使用加权准确率(W.acc)和未加权平均召回率(UAR)作为评估指标。

加权准确率(W.acc):W.acc是一种加权指标,特别针对心杂音检测任务中的类别"存在"和"不存在"。

无加权平均召回率(UAR):UAR反映了模型在不同类别上的召回率平衡情况。

2、结论

最新模型M2D在W.acc和UAR指标上均取得了较高的分数,分别为0.832和0.713,这表明其在心杂音检测任务上表现良好。通过集成多个模型,可以进一步提高性能。

3、相关名词

3.1 2022 PhysioNet挑战赛

由George B. Moody PhysioNet举办挑战赛的任务之一是检测心音杂音和异常心脏功能。CirCor DigiScope数据集被用作该挑战赛的公开数据集,包含3163个心音样本,其中179个心音杂音阳性样本,695个心音杂音阴性样本,68个心音杂音未知样本。挑战赛设置了加权准确率和无加权平均召回率作为评价指标。(可以通过访问CirCor DigiScope数据集的官方网站下载该数据集,并用于相关的心音研究任务)

3.2 通用音频表示

从音频信号中提取有用的特征,以便于进行分类、识别或其他下游任务。

M2D(Music-to-Description)模型是一种将音乐转换为描述性文本的深度学习模型。这种模型在通用音频表示中的应用是相当广泛的,因为它能够将复杂的音乐信号转换为人类可理解的文本描述。

3.3 AudioSet

一个大规模的音频事件识别和数据集,由Google Research在2017年发布。它包含了超过2百万个YouTube视频片段,覆盖了527个音频事件类别,如婴儿哭声、狗吠、音乐演奏等。

相关推荐
幻风_huanfeng13 分钟前
线性代数中的核心数学知识
人工智能·机器学习
volcanical21 分钟前
LangGPT结构化提示词编写实践
人工智能
weyson1 小时前
CSharp OpenAI
人工智能·语言模型·chatgpt·openai
RestCloud1 小时前
ETLCloud异常问题分析ai功能
人工智能·ai·数据分析·etl·数据集成工具·数据异常
IT古董1 小时前
【机器学习】决定系数(R²:Coefficient of Determination)
人工智能·python·机器学习
鲜枣课堂1 小时前
5G-A如何与AI融合发展?华为MBBF2024给出解答
人工智能·5g·华为
武子康2 小时前
大数据-213 数据挖掘 机器学习理论 - KMeans Python 实现 距离计算函数 质心函数 聚类函数
大数据·人工智能·python·机器学习·数据挖掘·scikit-learn·kmeans
武子康3 小时前
大数据-214 数据挖掘 机器学习理论 - KMeans Python 实现 算法验证 sklearn n_clusters labels
大数据·人工智能·python·深度学习·算法·机器学习·数据挖掘
封步宇AIGC3 小时前
量化交易系统开发-实时行情自动化交易-Okex K线数据
人工智能·python·机器学习·数据挖掘
封步宇AIGC4 小时前
量化交易系统开发-实时行情自动化交易-Okex交易数据
人工智能·python·机器学习·数据挖掘