利用深度学习模型进行语音障碍自动评估
语音的产生涉及器官的复杂协调,因此,语音包含了有关身体各个方面的信息,从认知状态和心理状态到呼吸条件。近十年来,研究者致力于发现和利用语音生物标志物——即与特定疾病相关的语音特征,用于诊断。随着人工智能(AI)的进步,这些生物标志物的学习关联和临床预测变得更加可行。自动语音评估利用语音生物标志物、AI和移动技术进行远程患者健康评估,预期将为早期识别和远程监测带来许多好处。
研究人员对将深度学习应用于自动语音评估,主要有两种方法:
- 端到端训练: 模型直接从音频中做出临床预测,但需要大量手动标注数据。
- 预训练模型微调: 使用在大型语音语料库上预训练的深度学习模型作为特征提取器,并用少量标注数据进行微调。这种模型学习了一组特征,即表示,以捕获语音的属性,并可用于各种语音识别任务。
语音表示捕获了人类感知理解,并在语音中保持了一致的属性,如说话者、语言、情感和年龄。由于语音包含了有关几个重要器官状况的丰富信息,随着这些模型的兴起,已有几项工作探索并评估了它们在识别疾病方面的潜力。然而,深度学习模型缺乏可解释性,这限制了它们在医疗领域的应用。为了解决这个问题,研究人员开发了工具来理解模型的工作原理,这些工具通常分为两大类:白盒方法和黑盒方法。
- 白盒方法:这类方法通过分析数学关系来提供模型如何在特定情况下从输入推断输出的局部解释。通常需要特定的模型架构和属性,例如激活函数的存在。在神经网络中,有基于梯度的方法,如Grad-CAM和Integrated Gradient以及基于注意力的方法,如注意力流和注意力展开。
- 黑盒方法:这些方法系统地使用各种任务和数据探测模型,以估计其在一般情况中的行为,这被称为全局解释。虽然黑盒方法与模型无关,但也有一些方法如LIME和SHAP允许提供局部解释。
1 方法论
1.1 数据选择
本研究使用Saarbrücken语音数据库,该数据库包含来自1002名说话者的录音,其中454名男性,548名女性,以及851名对照组(423名男性,428名女性)。
- 说话者的年龄从6岁到94岁不等(病理组),以及9岁到84岁(对照组)。
- 每个录音会话包含/i/、/a/和/u/元音的中性、高、低、上升和下降音调的录音,以及简短短语“Guten Morgen, wie geht es Ihnen?”的录音。
- 音频以16位50kHz的采样率使用专业录音设备录制。
- 将参与者按性别和病理状态分组,病理状态分为三类:有机、无机和健康。
- 仅选择简短短语的录音,并将所有样本下采样到16kHz供模型使用。
1.2 模型训练
使用Audio Spectrogram Transformer (AST),一种无卷积、纯基于注意力机制的音频分类模型。它通过将音频转换为频谱图来处理音频数据,并使用视觉变换器(Vision Transformer,ViT)的架构来进行音频分类任务。
- 模型输入是t秒的音频波形,将其填充到模型的最大尺寸T秒,并转换为128维的log Mel滤波器组(fbank)特征序列,然后将其分割成16x16的块,并使用线性投影层将其展平,生成768维的嵌入序列。
- 每个嵌入都添加了可训练的位置嵌入(大小为768),以提供语谱图的空间结构,并在序列的开头添加了类别标记[CLS]嵌入(大小为768),并将其输入到Transformer编码器中。
- 编码器在类别标记[CLS]处的输出被提取为语音表示。
- 使用的模型在AudioSet上进行预训练,并在HuggingFace Transformers中实现和提供。
- 训练模型进行二元分类:病理(有机和无机)或健康受试者。
- 数据集按分层方式划分为训练集、开发集和测试集,比例为80%、10%和10%。
- 本研究比较了两种模型配置:
ast_freeze: AST模型设置为不可训练,并在模型顶部添加一个线性层,将嵌入投影到分类输出。
ast_finetuned: 与ast_freeze的构建相同,但AST模型设置为可训练,并对整个模型进行微调。
1.3 模型决策解释
本研究使用注意力回放方法可视化模型的决策过程。
- 该方法使用模型的注意力层生成相关图,以可视化语谱图区域的相关性分数。
- 通过将相关图与语谱图拼接成一个图像,并用色调表示相关性分数,用亮度表示频谱功率,从而可视化模型的注意力分布。
- 为了更好地理解语谱图区域,本研究使用Montreal Force Aligner生成与音频对应的语音音素标注,并将其添加到图像中。
- 根据两个模型的预测结果手动选择样本,分为四种情况:
O:ast_freeze和ast_finetuned都预测正确。
X:ast_freeze和ast_finetuned都预测错误。
A:ast_finetuned预测错误,ast_freeze预测正确。
B:ast_finetuned预测正确,ast_freeze预测错误。
2 结果
2.1 模型性能
下表显示了模型的性能指标,包括:

- 加权平均召回率 (UAR):不考虑类别样本大小的情况下,所有类别的平均召回率。
- ROC曲线下面积 (AUC):曲线衡量模型在不同分类阈值下的真正例率和假正例率。
与基础AST模型相比,ast_finetuned模型具有更好的性能,表明微调对模型预测的改善作用。
2.2 分析

当基础AST模型未完全训练(A, ast_freeze)时,表示显示出性别之间的分离而不是病理状态(病理性与健康),换句话说,语音表示包含更多关于说话者性别而不是潜在声音病理状态的信息。另一方面,当基础AST模型完全训练(B, ast_finetuned)时,显示出相反的趋势。两个模型都无法清晰地分离有机和无机病理。

上图展示了两个女性语音样本的频谱图(左)和ast_freeze(中)与ast_finetuned(右)的相关性图(顶部:健康,底部:病理性):这两个样本的预测结果被标记为B,即ast_finetuned预测正确,而ast_freeze预测错误。
从可用的可视化中,我们可以看到最高相关性分数并不一定分配给最高强度区域,如基频和谐波。在两种模型中都出现的更常见模式是,它们给音素“/ɔ/”和音段“/e/ /s/ /i/ /n/”更高的分数。当模型微调后,我们发现更多的集中度,位置经常改变/移动,然而,没有得出明显一致的模式。
本研究训练和比较了两种Audio Spectrogram Transformer (AST) 配置,用于语音障碍检测,并使用注意力回放方法生成了模型的相关图。
通过分析相关图,发现模型无法完全识别有机和无机语音障碍之间的差异,并且模型对音素“/ɔ/”和片段“/e/ /s/ /i/ /n/”给予更高的分数。
当模型进行微调时,发现注意力范围往往会减少,这表明模型更加关注特定的音素区域。
3 模型配置
3.1 ast_freeze
- 模型类: ASTForAudioClassification
- 模型路径: MIT/ast-finetuned-audioset-10-10-0.4593
- 类别数量: 2
- 冻结: TRUE
- 评估策略: epoch
- 保存策略: epoch
- 学习率: 0.001
- 每个设备训练批次大小: 8
- 梯度累积步骤: 4
- 每个设备评估批次大小: 8
- 训练周期数量: 10
- 预热比率: 0.1
- 日志记录步骤: 50
- 评估步骤: 50
- 推送到Hub: FALSE
- 移除未使用的列: FALSE
- 早停耐心: 5
- 早停阈值: 0
3.2 ast_finetuned
- 模型类: ASTForAudioClassification
- 模型路径: MIT/ast-finetuned-audioset-10-10-0.4593
- 类别数量: 2
- 冻结: FALSE
- 评估策略: epoch
- 保存策略: epoch
- 学习率: 0.00025
- 每个设备训练批次大小: 8
- 梯度累积步骤: 4
- 每个设备评估批次大小: 8
- 训练周期数量: 40
- 预热比率: 0.1
- 日志记录步骤: 50
- 评估步骤: 50
- 推送到Hub: FALSE
- 移除未使用的列: FALSE
- 早停耐心: 8
- 早停阈值: 0
相关文章:
利用深度学习模型进行语音障碍自动评估
语音的产生涉及器官的复杂协调,因此,语音包含了有关身体各个方面的信息,从认知状态和心理状态到呼吸条件。近十年来,研究者致力于发现和利用语音生物标志物——即与特定疾病相关的语音特征,用于诊断。随着人工智能&…...
TP8 JS(html2canvas) 把DIV内容生成二维码并与背景图、文字组合生成分享海报
方法一:前端JS生成(推荐) 注意: 1.这个网页只能截图图片效果代码,其它任何html效果都不能有,不然截图就不准确 2.如果要生成的图片DIV内容中引用了第三个方的图片,就是不使用同一个域名下的图片,需要把后…...
计算机科学中的接口(Interface)介绍
计算机科学中的接口(Interface)介绍 计算机科学中,接口是一个广泛的概念,在不同上下文中有不同含义: 1.任何两电路或设备间的连接电路,用于连接CPU与内存、CPU与外设之间。这是一个重要的硬件层面的接口概…...
大创项目推荐 题目:基于深度学习卷积神经网络的花卉识别 - 深度学习 机器视觉
文章目录 0 前言1 项目背景2 花卉识别的基本原理3 算法实现3.1 预处理3.2 特征提取和选择3.3 分类器设计和决策3.4 卷积神经网络基本原理 4 算法实现4.1 花卉图像数据4.2 模块组成 5 项目执行结果6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 基…...
黑芝麻科技A1000简介
文章目录 1. A1000 简介2. 感知能力评估3. 竞品对比4. 系统软件1. A1000 简介...
详解C语言分支与循环语句
分支语句 if elseswitch 循环语句 whilefordo while goto语句 文章目录 1.什么是语句2.分支语句(选择结构)2.1 if语句2.1.1 悬空else2.1.3 练习 2.2 switch语句2.2.1 在switch语句中的break2.2.2 default子句 3.循环语句3.1 while循环3.1.1 while语句中…...
Python商务数据分析知识专栏(五)——Python数据分析的应用③使用Pandas进行数据预处理
Python商务数据分析知识专栏(五)——Python数据分析的应用③使用Pandas进行数据预处理 使用Pandas进行数据预处理1.合并数据2.清洗数据3.标准化数据4.转换数据 使用Pandas进行数据预处理 1.合并数据 2.清洗数据 3.标准化数据 4.转换数据...
Nosql期末复习
mongodb基本常用命令(只要掌握所有实验内容就没问题) 上机必考,笔试试卷可能考: 1.1 数据库的操作 1.1.1 选择和创建数据库 (1)use dbname 如果数据库不存在则自动创建,例如,以下…...
Pytest+Allure+Yaml+PyMsql+Jenkins+Gitlab接口自动化(四)Jenkins配置
一、背景 Jenkins(本地宿主机搭建) 拉取GitLab(服务器)代码到在Jenkins工作空间本地运行并生成Allure测试报告 二、框架改动点 框架主运行程序需要先注释掉运行代码(可不改,如果运行报allure找不到就直接注释掉) …...
SQL面试题练习 —— 查询前2大和前2小用户并有序拼接
目录 1 题目2 建表语句3 题解 1 题目 有用户账户表,包含年份,用户id和值,请按照年份分组,取出值前两小和前两大对应的用户id,需要保持值最小和最大的用户id排首位。 样例数据 ------------------------- | year | user_id | v…...
Arthas常见使用姿势
文章目录 Arthas常见使用姿势官网基本命令通用参数解释表达式核心变量说明常用命令一些常用特殊案例举例其他技巧关于OGNLOGNL的常见使用OGNL的一些特殊用法与说明OGNL内置的虚拟属性OGNL的个人思考OGNL的杂碎,收集未做验证 Arthas常见使用姿势 官网 https://arth…...
Apache Kylin的入门学习
Apache Kylin的入门学习可以从以下几个方面进行: 1. 了解Kylin的基本概念 定义:Apache Kylin是一个开源的分布式分析引擎,它基于Hadoop和HBase构建,提供Hadoop/Spark之上的SQL查询接口及多维分析(OLAP)能…...
React@16.x(46)路由v5.x(11)源码(3)- 实现 Router
目录 1,Router 的结构2,实现2.1,react-router1,matchPath.js2,Router.js3,RouterContext.jsx4,index.jsx 2.2,react-router-domBrowserRouter.jsxindex.jsx 1,Router 的结…...
openGauss真的比PostgreSQL差了10年?
前不久写了MogDB针对PostgreSQL的兼容性文章,我在文中提到针对PostgreSQL而言,MogDB兼容性还是不错的,其中也给出了其中一个能源客户之前POC的迁移报告数据。 But很快我发现总有人回留言喷我,而且我发现每次喷的这帮人是根本不看文…...
【国产开源可视化引擎Meta2d.js】快速上手
提示 初始化引擎后,会生成一个 meta2d 全局对象,可直接使用。 调用meta2d前,需要确保meta2d所在的父容器element元素位置大小已经渲染完成。如果样式或css(特别是css动画)没有初始化完成,可能会报错&…...
c#与倍福Plc通信
bcdedit /set hypervisorlaunchtype off...
【OceanBase诊断调优】—— 如何通过trace_id找到对应的执行节点IP
1. 前言 OceanBase作为分布式数据库,查问题找对节点很关键。好在OceanBase执行的每一条SQL都能通过trace_id来关联起来,知道trace_id怎么知道是在哪个节点发起的呢,请看本文。 2. trace_id生成规则 ob内部trace_id的生成函数如下࿰…...
鸿蒙开发Ability Kit(程序访问控制):【使用粘贴控件】
使用粘贴控件 粘贴控件是一种特殊的系统安全控件,它允许应用在用户的授权下无提示地读取剪贴板数据。 在应用集成粘贴控件后,用户点击该控件,应用读取剪贴板数据时不会弹窗提示。可以用于任何应用需要读取剪贴板的场景,避免弹窗…...
PL/SQL入门到实践
一、什么是PL/SQL PL/SQL是Procedural Language/Structured Query Language的缩写。PL/SQL是一种过程化编程语言,运行于服务器端的编程语言。PL/SQL是对SQL语言的扩展。PL/SQL结合了SQL语句和过程性编程语言的特性,可以用于编写存储过程、触发器、函数等…...
双非本 985 硕,我马上要入职上海AI实验室大模型算法岗
暑期实习基本结束了,校招即将开启。 不同以往的是,当前职场环境已不再是那个双向奔赴时代了。求职者在变多,HC 在变少,岗位要求还更高了。 最近,我们又陆续整理了很多大厂的面试题,帮助一些球友解惑答疑&…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
C++八股 —— 单例模式
文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全(Thread Safety) 线程安全是指在多线程环境下,某个函数、类或代码片段能够被多个线程同时调用时,仍能保证数据的一致性和逻辑的正确性…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...
MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)
macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 🍺 最新版brew安装慢到怀疑人生?别怕,教你轻松起飞! 最近Homebrew更新至最新版,每次执行 brew 命令时都会自动从官方地址 https://formulae.…...
Vue 模板语句的数据来源
🧩 Vue 模板语句的数据来源:全方位解析 Vue 模板(<template> 部分)中的表达式、指令绑定(如 v-bind, v-on)和插值({{ }})都在一个特定的作用域内求值。这个作用域由当前 组件…...
消息队列系统设计与实践全解析
文章目录 🚀 消息队列系统设计与实践全解析🔍 一、消息队列选型1.1 业务场景匹配矩阵1.2 吞吐量/延迟/可靠性权衡💡 权衡决策框架 1.3 运维复杂度评估🔧 运维成本降低策略 🏗️ 二、典型架构设计2.1 分布式事务最终一致…...
