自监督学习在言语障碍及老年语音识别中的应用

          近几十年来针对正常言语的自动语音识别(ASR)技术取得了快速进展,但准确识别障碍(dysarthric)和老年仍然是一项极具挑战性的任务。障碍是一种由多种运动控制疾病引起的常见言语障碍类型,包括脑瘫、肌萎缩侧索硬化、中风和脑损伤。此外,诸如阿尔茨海默病(Alzheimer's disease, AD)之类的神经认知障碍也常常出现在有言语和语言障碍的老年人中

        针对言语障碍和老年用户需求定制的ASR技术不仅可以改善他们的生活质量,还可以实现大规模的神经认知障碍(例如AD)的自动早期诊断。

      本文通过探索一系列技术,将最新的单语言和多语言SSL预训练语音基础模型及其特征整合到混合TDNN和Conformer ASR系统中,以提高对言语障碍和老年语音的识别能力。这些技术旨在利用这些模型的多样性和互补性,提高对未见和覆盖不足单词的泛化性能,以及对非常低可懂度的最具挑战性的言语障碍语音数据的性能。

1 相关背景

1.1 失语症和老年语音识别的挑战

  • 与正常语音的差异性: 失语症和老年语音由于运动控制和衰老的原因,与正常语音存在较大差异,例如发音不精确、语音量和清晰度下降、流利度增加等。
  • 数据稀缺: 由于难以从有身体残疾和行动不便的说话者中收集数据,导致失语症和老年语音数据稀缺。
  • 说话者多样性: 失语症和老年说话者之间存在着巨大的差异,这使得 ASR 系统难以泛化到不同的说话者。

1.2 基于传统 ASR 技术的解决方案

  • 数据增强: 为了解决数据稀缺问题,研究人员开发了一系列数据增强技术,例如速度扰动和时间扰动等。
  • 领域自适应: 研究人员还研究了如何将通用的 ASR 系统进行领域自适应,以更好地处理失语症和老年语音。
  • 说话者自适应: 为了解决说话者多样性问题,研究人员研究了各种说话者自适应技术,例如直接参数微调和基于 LHUC 的说话者自适应等。
  • 多模态融合: 研究人员还探索了将视觉和语音运动特征等融入 ASR 系统的方法。

2 SSL模型在ASR中应用

自监督学习是一种无监督学习方法,它尝试从未标记的数据中学习表示,通过预测数据本身的某些属性或结构来作为监督信号。在语音识别的上下文中,SSL模型试图从原始语音信号中学习有用的特征表示,而不依赖于人工标注的转录文本。

2.1 SSL 预训练模型的选择

  • Wav2vec2.0: 一种基于对比学习的 SSL 预训练模型,可以学习语音表示和离散语音单元。
  • HuBERT: 一种基于聚类和预测的 SSL 预训练模型,可以学习语音表示和离散语音单元。
  • WavLM: 与 HuBERT 类似,但使用了门控相对位置偏置和混合语音输入。
  • Data2vec: 与 Wav2vec2.0 类似,但学习预测完整输入音频序列的潜在语音表示。
  • XLSR: 一种多语 SSL 预训练模型,可以学习跨语言的语音表示。

2.2 基于自监督学习 (SSL) 的 ASR 技术的优势

  • 自监督学习: SSL 技术可以训练出强大的语音表示,并且对领域不匹配具有鲁棒性。
  • 数据利用: SSL 模型可以有效地利用大量的未标记数据,这有助于解决数据稀缺问题。
  • 泛化能力: SSL 模型在处理未见过的或覆盖不足的词汇时具有更好的泛化能力。

3 ASR系统构建和组合

   本文将自监督学习 (SSL) 预训练的语音模型及其特征与传统的 ASR 系统进行组合和构建的方法,以应对失语症和老年语音识别的挑战。

3.1 ASR 系统组合

  • 帧级联合解码: 将使用不同特征训练的 TDNN 系统进行帧级联合解码,将每个系统的输出概率进行加权平均,以提高模型的鲁棒性。例如,可以将仅使用标准语音特征的 TDNN 系统与使用 SSL 特征的 TDNN 系统进行联合解码,利用两者在特征表示方面的互补性。
  • 跨系统多遍解码: 使用域内微调的 SSL 模型对 TDNN 或 Conformer 系统的 N-best 输出进行重新评分,进一步提高模型的准确率。例如,可以将 TDNN 系统的 N-best 输出使用域内微调的 HuBERT 模型进行重新评分,利用 HuBERT 模型在语言建模方面的优势。

3.2 ASR 系统构建

微调后的Wav2vec2.0/HuBERT模型及其特征整合到TDNN/Conformer ASR系统

3.2.1 TDNN 系统

  • 使用 TDNN 架构构建 ASR 系统,该架构由多个时间延迟层组成,可以有效地处理长时程依赖关系。
  • 使用 LHUC 技术进行说话者自适应,根据不同说话者的特征进行参数调整,以提高模型的泛化能力。
  • 使用标准语音特征(例如滤波器组)作为输入,并使用外部语言模型进行解码。

3.2.2 Conformer 系统

  • 使用 Conformer 架构构建 ASR 系统,该架构结合了卷积神经网络和 Transformer 模型,可以有效地提取语音特征并进行序列建模。
  • 使用标准语音特征(例如梅尔频率倒谱系数)作为输入,并使用外部语言模型进行解码。

3.2.3 多模态融合

  • 将 SSL 特征与 A2A 反转生成的语音运动特征进行融合,以构建多模态 ASR 系统。例如,可以使用 HuBERT 模型生成的语音表示作为 A2A 反转的输入,生成更通用的语音运动特征,并将其与标准语音特征进行融合。

4 实验

4.1 实验设置

4.1.1 数据集

  • UASpeech 数据集: 是一个公开可用的失语症语音数据集,包含 29 名说话者的 148,912 个句子,词汇量为 455 个。数据集被分为三个块,每个块包含一组常见的单词和一组不常见的单词。
  • TORGO 数据集: 是另一个公开可用的失语症语音数据集,包含 8 名失语症说话者和 7 名健康说话者的 13.5 小时语音数据。
  • DementiaBank Pitt 数据集: 是一个公开可用的老年语音数据集,包含 292 名老年参与者与临床调查员之间的 33 小时语音数据。数据集被分为训练集、开发集和评估集。
  • JCCOCC MoCA 数据集: 是一个公开可用的老年语音数据集,包含 256 名老年参与者与临床调查员之间的 32.4 小时语音数据。数据集被分为训练集、开发集和评估集。

4.1.2 基线模型

  • TDNN 系统: 使用 Kaldi 工具箱进行训练,包含 7 个上下文切片层,使用 40 维 Mel 频率倒谱系数作为输入,并使用外部语言模型进行解码。
  • Conformer 系统: 使用 ESPNet 工具箱进行训练,包含 12 个 Transformer 块,使用 40 维 Mel 频率倒谱系数作为输入,并使用外部语言模型进行解码。

4.1.3 SSL 模型微调

  • 单阶段微调: 仅使用域外正常语音数据或域内失语症或老年语音数据对 SSL 模型进行微调。
  • 双阶段微调: 首先使用域外正常语音数据对 SSL 模型进行微调,然后使用域内失语症或老年语音数据再次微调。
  • 多任务学习: 将 CTC 损失和注意力损失结合起来进行微调,以提高模型性能。

4.1.4  特征融合

  • 瓶颈模块: 将 SSL 模型的输出通过瓶颈模块进行压缩,以生成更紧凑的语音表示。
  • 特征融合: 将 SSL 特征与标准语音特征(例如滤波器组)进行融合,以利用两者的优势。

4.1.5 A2A 反转

使用基于 MDN 的 A2A 反转模型,将 SSL 特征转换为语音运动特征。

4.2 评估指标

4.2.1 词错误率 (Word Error Rate, WER)

  • WER 是衡量 ASR 系统识别准确率的指标。
  • WER 越低,说明 ASR 系统的识别准确率越高。

4.2.2 字符错误率 (Character Error Rate, CER)

  • CER 是衡量 ASR 系统识别准确率的另一个指标。
  • CER 越低,说明 ASR 系统的识别准确率越高。

4.2.3 隐蔽语言模型 (Masked Language Model, MLM)

  • MLM 是一种评估语言模型性能的指标。
  • MLM 越高,说明语言模型的预测能力越强。

4.2.4 下一句预测 (Next Sentence Prediction, NSP)

  • NSP 是一种评估语言模型理解能力的指标。
  • NSP 越高,说明语言模型对句子之间关系的理解能力越强。

4.2.5 AD 诊断准确率

  • 使用 BERT 或 Roberta 模型进行 AD 诊断,评估 ASR 系统对 AD 诊断的支持。
  •  准确率 (Accuracy)、灵敏度 (Sensitivity) 和特异性 (Specificity)。

4.3 实验结论

4.3.1 失语症语音识别

4.3.1.1 UASpeech 数据集

  • 基于域内微调的 HuBERT 模型,使用输入特征融合、帧级联合解码和多遍解码的方法,取得了 20.56% 的 WER,优于其他基线系统,包括单独微调的 HuBERT 模型和 Conformer 系统。
  • 将 HuBERT 特征与 A2A 反转生成的语音运动特征进行融合,进一步提高性能。

4.3.1.2 TORGO 数据集

  • 与 UASpeech 数据集的结果类似,域内微调的 HuBERT 模型结合了多种技术,取得了 18.07% 的 WER,优于其他基线系统。
  • 将 HuBERT 特征与 A2A 反转生成的语音运动特征进行融合,进一步提高性能。

4.3.2 老年语音识别

4.3.2.1 DementiaBank Pitt 数据集

  • 基于域内微调的 wav2vec2-conformer 模型,使用输入特征融合、帧级联合解码和多遍解码的方法,取得了 18.07% 的 WER,优于其他基线系统,包括单独微调的 wav2vec2-conformer 模型和 Conformer 系统。
  • 将 wav2vec2-conformer 特征与 A2A 反转生成的语音运动特征进行融合,进一步提高性能。

4.3.2.2 JCCOCC MoCA 数据集

  • 基于域内微调的 XLSR-128 模型,使用输入特征融合、帧级联合解码和多遍解码的方法,取得了 7.97% 的 CER,优于其他基线系统,包括单独微调的 XLSR-128 模型和 Conformer 系统。
  • 将 XLSR-128 特征与 A2A 反转生成的语音运动特征进行融合,进一步提高性能。

4.3.3  AD 诊断

  • 使用 ASR 系统输出的语音转录,提取文本特征,并使用 BERT 或 Roberta 模型进行 AD 诊断。
  • 基于 TDNN 系统的 ASR 模型,包括域内微调的 wav2vec2-conformer 或 XLSR-128 模型,取得了 83.94% 的 AD 诊断准确率,优于其他基线系统。

主要内容参考:Shujie.H et al., "Self-supervised ASR Models and Features For Dysarthric and Elderly Speech Recognition"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/47831.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

175道Docker面试题(上)

目录 1、什么是docker? 2、Docker与普通虚拟机的对比: 3、Docker常用命令: 4、Docker镜像是什么? 5、Docker容器是什么? 6、Docker容器有几种状态? 7、Dockerfile中最常见的指令是什么? …

DP学习——状态模式

学而时习之,温故而知新。 状态模式 角色 2个角色,引用类,状态行为类。 和策略模式很相似 状态行为封装成很多独立的状态行为类——就是把不同的状态及其要执行的方法单独封装起来。 而策略模式类似,是不同的算法封装成一个个…

php 根据位置的经纬度计算距离

在开发中,我们要经常和位置打交道,要计算附近的位置、距离什么的。如下: 一.sql语句 SELECT houseID,title,location,chamber,room,toward,area,rent,is_verify,look_type,look_time, traffic,block_name,images,tag,create_time,update_time, location->&g…

RKNN执行bash ./build-linux_RK3566_RK3568.sh 报错

目录 错误信息: 原因:如题提示/3rdparty/mpp/Linux/aarch64/librockchip_mpp.so: file format not recognized; treating as linker script是因为librockchip_mpp.so这个文件夹指向了一个空文件夹 解决方法: 错误信息: /usr/lib/gcc-cross/aarch64-linux-gnu/11/../../..…

【人工智能】使用Python的dlib库实现人脸识别技术

🔥 个人主页:空白诗 文章目录 一、引言二、传统人脸识别技术1. 基于几何特征的方法2. 基于模板匹配的方法3. 基于统计学习的方法 三、深度学习在脸识别中的应用1. 卷积神经网络(CNN)2. FaceNet和ArcFace 四、使用Python和dlib库实…

Python @staticmethod、super().__init__()和self

最近在看代码,由于之前没有系统学习过Python,就有些知识点不是很清楚,这里整理一下,方便以后查阅。 Python中的staticmethod\super.init和self Python 装饰器staticmethod和classmethod的作用与区别作用区别代码演示 super() 函数…

【STM32 HAL库】DMA+串口

DMA 直接存储器访问 DMA传输,将数据从一个地址空间复制到另一个地址空间。-----“数据搬运工”。 DMA传输无需CPU直接控制传输,也没有中断处理方式那样保留现场和恢复现场,它是通过硬件为RAM和IO设备开辟一条直接传输数据的通道&#xff0c…

opencv 优势

OpenCV(开源计算机视觉库)是一个广泛使用的计算机视觉和机器学习软件框架。它最初由Intel开发,后来由Itseez公司维护,最终于2015年成为非营利组织OpenCV.org的一部分。OpenCV的目的是实现一个易于使用且高效的计算机视觉框架,支持实时视觉应用。 以下是关于OpenCV的一些关…

浅谈断言之XML断言

浅谈断言之XML断言 XML断言是JMeter的一个组件,用于验证请求的响应数据是否符合XML结构。这对于测试返回XML格式数据的Web服务特别有用。 如何添加XML断言? 要在JMeter测试计划中添加XML断言,遵循以下步骤: 打开测试计划&…

CentOS 6.8 中部署 Spring Boot 应用程序

在CentOS 6.8的系统中本来想通过docker或者宝塔免费来快速部署,结果发现CentOS6.8版本比较老,装docker或宝塔面板都非常费劲,算了就用传统的方式来安装吧。 在 CentOS 6.8 中通过传统的方式部署 Spring Boot 应用程序主要涉及以下几个步骤&a…

Flutter 插件之 easy_refresh(下拉刷新、上拉加载)

今天给大家较少一下日常开发中最常见的一个功能,就是 下拉刷新、上拉加载,这个在我们使用分页功能是最常见的。 此前我我也写了一篇关于 下拉刷新、上拉加载。 Flutter 下拉刷新、上拉加载flutter_easyrefresh的使用https://blog.csdn.net/WangQingLei0307/article/details/…

Logback 配置文件加载步骤

Logback的初始化过程有多个步骤,确保在不同情况下都能找到并加载适当的配置文件。以下是详细的步骤描述: Logback 配置文件加载步骤 检查系统属性 logback.configurationFile Logback 首先检查系统属性 logback.configurationFile 是否设置。如果设置了…

学习记录--Bert、Albert、RoBerta

目录 Bert 1:输入 2:Bert结构 3:模型预训练 Albert 1:SOP任务 2:embedding因式分解 3:参数共享 RoBerta 参考: BERT原理和结构详解_bert结构-CSDN博客 [LLM] 自然语言处理 --- ALBER…

实现一个自己的OpenFeign 远程调用验证协议--Springboot 自定义拦截器验证请求合法性--xunznux

Springboot 如何实现一个自定义的拦截器处理系统发出的请求以及接收到的请求(实现一个用于feign远程调用验证的简单协议) 文章目录 Springboot 如何实现一个自定义的拦截器处理系统发出的请求以及接收到的请求(实现一个用于feign远程调用验证…

某企业网络及服务器规划与设计

目录 1. 项目需求与设计... 5 1.1 项目需求... 5 1.2 组建企业网络内部网的流程... 5 1) 构思阶段... 5 2) 方案设计阶段... 6 3) 工程实施阶段... 6 4) 测试验收... 6 5) 管理维护... 7 1.3 技术可行性分析... 7 1.4 网络组网规则... 8 1.5 网络拓扑... 8 2. 项目所…

【UE5】在Widget中显示3D网格体

效果 步骤 1. 新建一个工程并添加第三人称游戏资源包 2. 添加一个控件蓝图,这里命名为“WBP_3DOverlay”,用于显示3D网格体 打开“WBP_3DOverlay”,添加一个画布面板和一个背景模糊控件,这里模糊强度设置为10 3. 打开第三人称角色…

connect的非阻塞模式

本文参考:connect 函数在阻塞和非阻塞模式下的行为 一般情况下,在使用connect连接服务端时,需要等待一会儿才会函数才会返回,导致程序阻塞。为了降低阻塞的影响,我们可能会单独开个线程处理connect请求,例…

Spark-第一周

一、spark是什么 Spark是一种快速、通用、可扩展的大数据分析引擎 2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目。 目前,Spark生态系统已经发展成为一个包含多个…

常见的数据集格式

常见的数据集格式有三种,分别为voc(xml)、coco(json)、yolo(txt)。 1 VOC VOC数据集由五个部分构成:JPEGImages,Annotations,ImageSets,SegmentationClass以及SegmentationObject. . └── VOC #根目…

HAL库源码移植与使用之RTC时钟

实时时钟(Real Time Clock,RTC),本质是一个计数器,计数频率常为秒,专门用来记录时间。 普通定时器无法掉电运行!但RTC可由VBAT备用电源供电,断电不断时 这里讲F1系列的RTC 可以产生三个中断信号&#xff…