帕金森病(PD)诊断:三种基于语音的深度学习方法

        帕金森病(Parkinson’s disease, PD)是世界上第二大流行的神经退行性疾病,全球影响着超过1000万人,仅次于阿尔茨海默症。人们通常在65岁左右被诊断出患有此病。PD的一些症状包括震颤、肌肉僵硬和运动迟缓。这些症状往往出现在较晚的阶段,使得仅基于这些症状的早期诊断变得困难。PD可以影响语音产生的各个方面,包括发音、声音的音调和响度、韵律以及声音的质量,导致语音障碍特征表现为声音嘶哑(dysphonia)和言语障碍(dysarthria)。声音嘶哑意味着产生声音的能力降低,而言语障碍指的是产生单词的困难。这些语音障碍可能在其他症状出现前长达五年就已发生,表明早期PD诊断实际上是可能的。

       在前面已经有2篇文章针对帕金森病(PD)诊断进行了阐述,有兴趣的朋友可以直接翻阅以下链接:

首次使用回声状态网络 (ESN) 和语音特征进行帕金森病 (PD) 预测

PPINtonus (深度学习音调分析)帕金森病早期检测系统

     本文研究分析了三种基于语音的深度学习方法(端到端学习 (E2E) 、迁移学习 (Transfer Learning, TL) 、深度声学特征 (Deep Acoustic Features, DAF)),讲述各学习方法的性能、挑战及应用情况。

1 端到端学习(E2E)

在E2E方法中,原始语音信号可以直接映射到最终输出,与传统的基于高斯混合模型(GMMs)和隐马尔可夫模型(HMMs)的语音识别流程不同。在传统方法中,必须提取手工设计的特征(如梅尔频率倒谱系数MFCCs),然后使用语言模型将这些特征映射到文本符号,最后进行分类。E2E方法避免了手动特征提取,允许模型学习从输入到输出的直接映射。

1.1 E2E 学习的优势

  • 自动特征提取:E2E 学习可以自动从语音信号中提取具有区分性的特征,无需手动设计特征工程,节省了时间和精力。
  • 减少错误累积:E2E 学习避免了手动特征提取过程中可能出现的错误,例如特征选择不当或特征提取方法不适用等,从而提高了分类的准确率。
  • 模型优化:E2E 学习可以端到端地优化模型参数,使得模型能够更好地学习数据中的规律,并提高分类性能。

1.2 E2E 学习的挑战

  • 数据需求量大:E2E 学习需要大量的训练数据来训练模型,而 PD 语音数据集相对较小,这限制了模型的训练效果和泛化能力。
  • 模型复杂度高:E2E 模型通常比较复杂,需要大量的计算资源进行训练和推理,这增加了模型的部署难度。
  • 可解释性差:E2E 模型的决策过程难以解释,难以理解模型是如何进行分类的,这限制了模型的实际应用。

1.3 E2E 学习在 PD 语音分类中的应用

  • CNN 架构:卷积神经网络 (CNN) 是 E2E 学习中最常用的模型架构之一,它可以有效地学习语音信号中的局部特征,例如声谱图中的频谱特征。
  • LSTM 架构:长短期记忆网络 (LSTM) 可以有效地学习语音信号中的长期依赖关系,例如音节的时序特征。
  • Transformer 架构:Transformer 架构在自然语言处理领域取得了突破性的成果,近年来也被应用于语音信号处理领域,并展现出强大的潜力。

2 迁移学习 (Transfer Learning, TL)

TL方法通过利用在一个大型数据库上预训练的深度神经网络(DNN),然后将这些网络应用到另一个通常数据量较小的任务上。这种方法可以解决数据可用性问题,因为它允许模型利用在源领域学到的知识来提高在目标领域的性能。特别是跨语言的TL方法,已被证明可以增强诊断系统的稳健性,并在不同语言之间提高适用性。

2.1 迁移学习的优势

  • 解决数据稀缺问题:PD 语音数据集通常规模较小,难以训练大型深度学习模型。
  • TL 允许我们利用在其他大规模语音数据集(如 ImageNet)上预训练的模型,并将其迁移到 PD 语音数据集上进行微调。这样可以显著减少对大量标注数据的依赖,并提高模型的泛化能力。
  • 跨语言应用:不同语言之间存在差异,例如发音、语调等。TL 可以帮助我们将在一个语言上训练好的模型迁移到另一个语言上,从而实现跨语言 PD 分类。
  • 这对于开发通用的 PD 诊断系统具有重要意义,可以方便不同语言人群使用。
  • 提高模型性能:通过迁移学习,模型可以学习到更通用的特征,从而提高在目标语言或任务上的性能。一些研究表明,使用 TL 的模型在 PD 分类任务中取得了比仅使用目标语言数据训练的模型更好的性能。

2.2 迁移学习的挑战

  • 如何选择合适的基础模型和微调策略。
  • 如何处理不同语言之间的差异。
  • 如何评估 TL 模型的性能。

3 深度声学特征 (Deep Acoustic Features, DAF)

DAF方法旨在通过使用深度学习模型从音频信号中自动提取特征,来提高结果的可解释性和解释性。这些特征可以在深度学习模型的最后层中使用,也可以用作更传统机器学习方法的输入。尽管DAF方法可能在性能上不如E2E和TL方法,但它们通过检查深度特征对PD分类的影响,提供了对模型决策过程的更多洞察。

3.1 DAF 的提取方式

  • 从端到端 (E2E) 模型中学习: 将原始语音信号输入 E2E 模型,例如卷积神经网络 (CNN) 或 Transformer,模型会自动学习并提取特征,并在最终层进行分类。
  • 使用预训练模型: 使用已经在大规模数据集上预训练的模型,例如 Wav2Vec2.0、VGGish 或 SoundNet,生成 DAF。
  • 使用自编码器: 使用自编码器学习并提取音频信号的低维表示,作为 DAF。

3.2 DAF 的优势

  • 无需手动特征工程: DAF 的提取过程完全自动化,无需手动设计特征,节省了时间和精力。
  • 更鲁棒: DAF 能够更好地捕捉音频信号中的细微变化,对噪声和说话人差异更鲁棒。
  • 更抽象: DAF 能够捕捉到更高层次的特征,例如说话人的语音风格、语调等,这些特征对 PD 诊断更有价值。

3.3 DAF 的挑战

  • 解释性差: 由于 DAF 是自动学习的,其背后的原理和特征含义难以解释,这限制了 DAF 在临床应用中的推广。
  • 性能不如 E2E 和 TL: 目前 DAF 的性能通常不如 E2E 和迁移学习 (TL) 方法,这可能是因为 DAF 缺乏对特定任务的针对性。

4 实际应用情况

  • E2E 学习: CNN 架构通常可以达到 90% 以上的准确率,Transformer 架构也展现出与 CNN 相当的性能。
  • TL: TL 方法通常可以达到 60% 到 90% 的准确率,跨语言 TL 可以进一步提高准确率。
  • DAF: DAF 方法可以达到 87% 以上的准确率,并且比传统特征(如 MFCC)表现更好。

5 数据集

数据集名称(年份)

来源 #参与者

语言

总语音时长

数据质量

语音任务

备注

Saarbruecken Voice Database (2006)

1002参与者

德语

±300分钟

麦克风录音

1. 正常、高和低音的元音(i, a, u)。2. 音高变化的元音(i, a, u)。3. "Guten Morgen, wie geht es Ihnen?"句子。

851名健康对照组(HC),平均年龄9-84岁。

PC-GITA (2014)

100

西班牙语

±900分钟

麦克风录音

1. 持续元音。2. 快速重复单词和音节(DDK)。3. 单词和句子的重复。4. 对话阅读。5. 强调特定单词的句子阅读。

50名PD患者,平均年龄33-77岁。

Parkinson Speech Dataset with Multiple Types of Recordings (2014)

68 (40训练,28测试)

土耳其语

未提供

麦克风录音

1. 持续元音(/a/, /o/, /u/)。2. 数字(1到10)。3. 单词。4. 短句。

20名PD患者,平均年龄43-79岁。

Italian Parkinson’s Voice and Speech (2017)

65

意大利语

±116分钟

麦克风录音

1. 阅读语音平衡文本。2. 发音/pa/和/ta/音节。3. 元音/a/, /e/, /i/, /o/和/u/的音调。4. 阅读语音平衡单词。5. 阅读语音平衡句子。

28名PD患者,平均年龄40-89岁。

Parkinson’s Disease Classification (2018)

252

土耳其语

未提供

麦克风录音

持续元音/a/。

188名PD患者,平均年龄33-87岁。

Synthetic Vowels of Speakers with Parkinson’s Disease and Parkinsonism (2019)

83

捷克语

±385分钟

麦克风录音

持续元音/a/和/i/。

22名PD患者,21名多系统萎缩(MSA)患者,18名进行性核上性麻痹(PSP)患者,22名健康对照组。

NeuroVoz (2024)

108

西班牙语

±106分钟

麦克风录音

1. 持续元音3秒。2. DDK 10秒。3. 听后重复的语句。4. 自由独白30秒。

53名PD患者,平均年龄71.13岁。55名健康对照组,平均年龄64.04岁。

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

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

相关文章

在线教育数仓项目(数据采集部分1)

文章目录 数据仓库概念项目需求及架构设计项目需求分析系统数据流程设计框架版本选型集群规模估算集群资源规划设计 数据生成模块目标数据页面事件曝光启动播放错误 数据埋点主流埋点方式(了解)埋点数据上报时机埋点数据日志结构 服务器和JDK准备服务器准…

白鲸开源CEO郭炜荣获「2024中国数智化转型升级先锋人物」称号

2024年7月24日,由数据猿主办,IDC协办,新华社中国经济信息社、上海大数据联盟、上海市数商协会、上海超级计算中心作为支持单位,举办“数智新质力拓未来 2024企业数智化转型升级发展论坛——暨AI大模型趋势论坛”数据猿“年中特别策…

探索 Electron:构建用户友好的登录页面流程

Electron是一个开源的桌面应用程序开发框架,它允许开发者使用Web技术(如 HTML、CSS 和 JavaScript)构建跨平台的桌面应用程序,它的出现极大地简化了桌面应用程序的开发流程,让更多的开发者能够利用已有的 Web 开发技能…

指针的面试题

这里写目录标题 判断链表中是否有环描述代码检测链表中是否存在环链表中存在环想检测链表中是否存在环,而不需要找到环的入口 判断链表中是否有环 题目 描述 判断给定的链表中是否有环。如果有环则返回true,否则返回false。 数据范围:链表…

Spring Boot集成canal快速入门demo

1.什么是canal? canal 是阿里开源的一款 MySQL 数据库增量日志解析工具,提供增量数据订阅和消费。 工作原理 MySQL主备复制原理 MySQL master 将数据变更写入二进制日志(binary log), 日志中的记录叫做二进制日志事件&#xff…

二叉树_堆(下卷)

前言 接前面两篇的内容,接着往下讲二叉树_堆相关的内容。 正文 那么,回到冒泡排序与堆排序的比较。 我们知道冒泡排序的时间复杂度为 O ( N 2 ) O(N^2) O(N2),这个效率是不太好的。 那么,我们的堆排序的时间复杂度如何呢&…

017、Vue动态tag标签

文章目录 1、先看效果2、代码 1、先看效果 2、代码 <template><div class "tags"><el-tag size"medium"closable v-for"item,index in tags":key"item.path":effect"item.title$route.name?dark:plain"cl…

数据结构 - AVL树

文章目录 一、AVL树的介绍二、AVL树的实现1、基本框架2、查找3、插入4、删除5、测试6、总代码 三、AVL树的性能 一、AVL树的介绍 1、概念 AVL树&#xff08;Adelson-Velsky and Landis Tree&#xff09;是一种自平衡的二叉搜索树。它得名于其发明者G. M. Adelson-Velsky和E. M…

Vue 状态管理 Vue CLI

Vue 状态管理 & Vue CLI 1、状态管理2、集中状态管理2.1 Vuex2.1.1 Vuex核心概念2.1.2 Vuex Store实例2.1.3 Vuex Getter2.1.4 Vuex Mutation2.1.4 Vuex Actions2.1.4 Vuex Module 2.2 Pinia2.2.1功能增强 3、Vuex 实现原理4、Pinia 实现原理5、CLI5.1 实现 1、状态管理 将…

【CG】计算机图形学(Computer Graphics)基础(其贰)

0 学习视频 B站GAMES101-现代计算机图形学入门-闫令琪 ※ 接上文【CG】计算机图形学&#xff08;Computer Graphics&#xff09;基础&#xff08;其壹&#xff09; 7 光线追踪 7.1 为什么需要光线追踪&#xff1f; 光栅化无法妥善处理全局效果 &#xff08;软&#xff09;阴…

一天搞定React(5)——ReactRouter(下)【已完结】

Hello&#xff01;大家好&#xff0c;今天带来的是React前端JS库的学习&#xff0c;课程来自黑马的往期课程&#xff0c;具体连接地址我也没有找到&#xff0c;大家可以广搜巡查一下&#xff0c;但是总体来说&#xff0c;这套课程教学质量非常高&#xff0c;每个知识点都有一个…

MATLAB基础:函数与函数控制语句

今天我们继续学习Matlab中函数相关知识。 API的查询和调用 help 命令是最基本的查询方法&#xff0c;可查询所有目录、指定目录、命令、函数。 我们直接点击帮助菜单即可查询所需的API函数。 lookfor 关键字用于搜索相关的命令和函数。 如&#xff0c;我们输入lookfor inpu…

开源物联网网关ThingsBoard IoT Gateway

前几天测试了Neuron&#xff0c;这是一个令人印象深刻的平台&#xff0c;不过它不能算是完全免费的平台&#xff0c;因为它还是有商业许可要求的&#xff0c;挺贵的&#xff0c;大几万的&#xff0c;而且它有走向闭源的趋势。所以也在寻找它的替代方案。 今天看到一个ThingsBo…

Django项目中报错:django.template.exceptions.TemplateDoesNotExist: index.html

访问127.0.0.1&#xff1a;8000访问出错 查看报错原因 到Django项目当中找到settings.py&#xff0c;找到TEMPLATES中的DIRS: 添加如下代码&#xff0c;并导入OS模块&#xff1a; "DIRS": [os.path.join(BASE_DIR,templates)] 再次访问IP地址&#xff1a;

C++(入门1)

C参考文档 Reference - C Reference C 参考手册 - cppreference.com cppreference.com 第一个C程序 #include<stdio.h> int main() {printf("Hello C\n");return 0; }由上述代码可知C是兼容C语言 第一个C标准程序 #include<iostream> using names…

【机器学习】智驭未来:机器学习如何重塑制造业的转型与升级

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀目录 &#x1f50d;1. 引言&#x1f4d2;2. 机器学习重塑制造业生产流程&#x1f338;预测性维护&#xff1a;减少停机时间&#xff0c;提高设…

实现共模噪声电流相互抵消的方法

共模传导路径中噪声电流相互抵消&#xff0c;从而使总的共模电流减小&#xff0c; 终达到降噪的目的。目前为实现共模噪声电流相互抵消&#xff0c;主要是采用动点电容抵消法。 动点电容抵消法原理 动点电容抵消法就是选取合适的动点&#xff0c;添加原副边跨接电容&#xff0c…

黑马头条Day10-定时计算热点文章、xxl-job

一、今日内容 1. 需求分析 目前实现的思路&#xff1a;从数据库直接按照发布时间倒序查询 问题&#xff1a; 如果访问量比较大&#xff0c;直接查询数据库&#xff0c;压力较大新发布的文章会展示在前面&#xff0c;并不是热点文章 2. 实现思路 解决方案&#xff1a;把热点…

CCS(Code Composer Studio 10.4.0)编译软件中文乱码怎么解决

如果是所有文件都出现了中文乱码这时建议直接在窗口首选项中修改&#xff1a;选择"Window" -> "Preferences"&#xff0c;找到"General" -> "Workspace"&#xff0c;将"Text file encoding"选项设置为"Other&quo…

深度解析Linux-C——函数和内存管理

目录 函数指针&#xff1a; 指针函数&#xff1a; 参数为指针的函数&#xff1a; 参数为数组的函数&#xff1a; C语言内存管理 stdlib.h头文件常用函数介绍 1、局部变量 2、全局变量 3、 堆空间变量 4、静态变量 5、常量 函数指针&#xff1a; 指向函数的指针&#…