使用wav2vec 2.0进行音位分类任务的研究总结

使用wav2vec 2.0进行音位分类任务的研究总结

原文名称Using wav2vec 2.0 for phonetic classification tasks: methodological aspects

研究背景

自监督学习在语音中的应用
  • 自监督学习在自动语音识别任务中表现出色,例如说话人识别和验证。
  • 变换器模型(如wav2vec 2.0)在处理几秒钟的语音序列时考虑上下文信息。
  • 研究问题:从单个音素提取的向量表示是否比从较长序列中提取的向量表示在检测鼻音方面表现更好?

研究方法

序列长度对比
  • 方法一:在音素持续时间内提取向量。
  • 方法二:在音素两侧各增加一秒,然后恢复中央部分。

数据资源与实验设置

训练和测试资源

训练数据

  • 使用四个不同的语料库:NCCFr、ESTER、PTSVOX 和 BREF。
  • 提取8个元音和6个鼻音及口音辅音,总计120,000个训练样本。

测试数据 :

  • 测试数据包括声学和生理数据,通过Aeromask面罩同时收集。
  • 六名男性法语母语者参与录音,记录了269个声音样本。
    在这里插入图片描述

实验协议

方法论

wav2vec 2.0 模型
  • 使用预训练的“wav2vec 2.0-FR-3K-large-LeBenchmark”模型。
  • 输入为原始音频信号,通过卷积编码器处理,每25毫秒转换成一个向量序列。
  • Transformer层捕捉整个序列的信息,包含24层,每层产生1,024维的潜在表示。
向量表示生成
  • 方法一:直接从音素边界提取向量,使用最大池化策略。
  • 方法二:添加前后各一秒的上下文信息,再从中提取中央部分的向量。
特征探测
  • 使用逻辑回归模型判断音素是否有鼻音特征。
  • 在训练和验证数据集上训练模型,然后应用于测试数据。

结果

鼻音检测性能

不同Transformer层的表现
  • 长序列在几乎所有层中都包含鼻音信息,而短序列在CNN编码器和前几层中鼻音特征更明显。
  • 第一层Transformer层在长序列中表现最佳,整体准确率为94.05%,短序列为81.04%。
    在这里插入图片描述
音素分类准确性
  • 某些音素如[˜O,E,m,n,d]分类准确率高,而其他音素如[o,a]分类困难。
  • 鼻音元音中,[˜E]最难检测,[˜O]最容易检测。
    在这里插入图片描述

分类器结果与生理数据比较

相关性分析
  • 使用Pearson相关系数分析鼻音概率与鼻气流的关系。
  • 归一化后的鼻气流与鼻音概率的相关性更强,且因音素和说话人不同而异。
  • 对于某些说话人,鼻气流可以解释错误分类的原因。
    在这里插入图片描述

总体而言,鼻音概率与按音素和说话人归一化的值最密切相关。这表明鼻腔气流是音素和说话人特有的。其次,说话人MT04的相关性最强,这一观察结果对两个模型都是常见的。然而,具有最低相关性的说话人根据音频片段长度和鼻腔气流测量而不同。

在这里插入图片描述

讨论与结论

序列长度对鼻音检测的影响

  • 长序列在鼻音检测中表现优于短序列,整体准确率更高。
  • 模型行为因音素和说话人而异,反映了发音器官位置的变化。

生理数据的验证

  • 鼻气流与鼻音概率之间存在显著相关性,验证了模型的有效性。
  • 长序列更好地捕捉了音素相关的鼻音特征和音素间的音系对比。

局限与未来研究

  • 尽管鼻气流减少,某些鼻音仍可感知,需要进一步的感知研究来验证模型结果。
  • 未来研究将关注更多情境下的鼻音检测,并探索感知层面的验证。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

STM32学习(十)

I2C模块内部结构 I2C(Inter-Integrated Circuit)模块是一种由Philips公司开发的二线式串行总线协议,用于短距离通信,允许多个设备共享相同的总线‌。 ‌硬件连接简单‌:I2C通信仅需要两条总线,即SCL&…

深入Android架构(从线程到AIDL)_22 IPC的Proxy-Stub设计模式04

目录 5、 谁来写Proxy及Stub类呢? 如何考虑人的分工 IA接口知识取得的难题 在编程上,有什么技术可以实现这个方法? 范例 5、 谁来写Proxy及Stub类呢? -- 强龙提供AIDL工具,给地头蛇产出Proxy和Stub类 如何考虑人的分工 由框架开发者…

Mysql--运维篇--日志管理(连接层,SQL层,存储引擎层,文件存储层)

MySQL提供了多种日志类型,用于记录不同的活动和事件。这些日志对于数据库的管理、故障排除、性能优化和安全审计非常重要。 一、错误日志 (Error Log) 作用: 记录MySQL服务器启动、运行和停止期间遇到的问题和错误信息。 查看: 默认情况下…

现代谱估计的原理及MATLAB仿真(二)(AR模型法、MVDR法、MUSIC法)

现代谱估计的原理及MATLAB仿真AR参数模型法(参数模型功率谱估计)、MVDR法(最小方差无失真响应法)、MUSIC法(多重信号分类法) 文章目录 前言一、AR参数模型1 原理2 MATLAB仿真 二、MVDR法1 原理2 MATLAB仿真…

搭建docker私有化仓库Harbor

Docker私有仓库概述 Docker私有仓库介绍 Docker私有仓库是个人、组织或企业内部用于存储和管理Docker镜像的存储库。Docker默认会有一个公共的仓库Docker Hub,而与Docker Hub不同,私有仓库是受限访问的,只有授权用户才能够上传、下载和管理其中的镜像。这种私有仓库可以部…

HTML5实现好看的中秋节网页源码

HTML5实现好看的中秋节网页源码 前言一、设计来源1.1 网站首页界面1.2 登录注册界面1.3 节日由来界面1.4 节日习俗界面1.5 节日文化界面1.6 节日美食界面1.7 节日故事界面1.8 节日民谣界面1.9 联系我们界面 二、效果和源码2.1 动态效果2.2 源代码 源码下载结束语 HTML5实现好看…

Linux (CentOS) 安装 Docker 和 Docker Compose

🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall ︱vue3-element-admin︱youlai-boot︱vue-uniapp-template 🌺 仓库主页: GitCode︱ Gitee ︱ Github 💖 欢迎点赞 👍 收藏 ⭐评论 …

简单说一下 类

类的定义 类是用来对一个实体(对象)进行描述,类就是用来描述这个对象具有一些什么属性。 类的定义格式 //创建类 class ClassName{ field; //简单概述为字段(属性)或者成员变量 method; //简单概述为行为或者是成员方法 } cl…

Windows11环境下设置MySQL8字符集utf8mb4_unicode_ci

1.关闭MySQL8的服务CTRLshiftESC,找到MySQL关闭服务即可 2.找到配置文件路径(msi版本默认) C:\ProgramData\MySQL\MySQL Server 8.0 3.使用管理员权限编辑my.ini文件并保存 # Other default tuning values # MySQL Server Instance Config…

机器学习实战——K-近邻法(K-Nearest Neighbors,KNN)

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​​​ ​​​ ​​ 在机器学习的广阔领域中,K-近邻法(KNN) 是一种既简单又强大的非参数分类方法。尽管其…

《Opencv》图像的旋转

一、使用numpy库实现 np.rot90(img,-1) 后面的参数为-1时事顺时针旋转,为1时是逆时针旋转。 import cv2 import numpy as np img cv2.imread(./images/kele.png) """方法一""" # 顺时针90度 rot_1 np.rot90(img,-1) # 逆时针90度…

模型 九屏幕分析法

系列文章 分享 模型,了解更多👉 模型_思维模型目录。九屏幕法:全方位分析问题的系统工具。 1 九屏幕分析法的应用 1.1 新产品研发的市场分析 一家科技公司计划开发一款新型智能手机,为了全面评估市场潜力和风险,他们…

_STM32关于CPU超频的参考_HAL

MCU: STM32F407VET6 官方最高稳定频率:168MHz 工具:STM32CubeMX 本篇仅仅只是提供超频(默认指的是主频)的简单方法,并未涉及STM32超频极限等问题。原理很简单,通过设置锁相环的倍频系数达到不同的频率&am…

若依框架--数据字典设计使用和前后端代码分析

RY的数据字典管理: 字典管理是用来维护数据类型的数据,如下拉框、单选按钮、复选框、树选择的数据,方便系统管理员维护。减少对后端的访问,原来的下拉菜单点击一下就需要对后端进行访问,现在通过数据字典减少了对后端的访问。 如…

openEuler 22.04使用yum源最快速度部署k8s 1.20集群

本文目的 openEuler的官方源里有kubernetes 1.20,使用yum源安装是最快部署一个k8s集群的办法 硬件环境 主机名系统架构ipmasteropenEuler release 22.03 (LTS-SP2)arm192.168.3.11edgeopenEuler release 22.03 (LTS-SP2)arm192.168.3.12deviceopenEuler release 22.…

使用宝塔面板,安装 Nginx、MySQL 和 Node.js

使用ssh远程链接服务器 在完成使用ssh远程链接服务器后 可使用宝塔面板,安装 Nginx、MySQL 和 Node.js 宝塔网站 一、远程链接服务器 二、根据服务器系统安装宝塔 wget -O install.sh https://download.bt.cn/install/install_lts.sh && sudo bash inst…

Linux第一课:c语言 学习记录day06

四、数组 冒泡排序 两两比较,第 j 个和 j1 个比较 int a[5] {5, 4, 3, 2, 1}; 第一轮:i 0 n:n个数,比较 n-1-i 次 4 5 3 2 1 // 第一次比较 j 0 4 3 5 2 1 // 第二次比较 j 1 4 3 2 5 1 // 第三次比较 j 2 4 3 2 1 5 // …

油猴支持阿里云自动登陆插件

遇到的以下问题,都已在脚本中解决: 获取到的元素赋值在页面显示,但是底层的value并没有改写,导致请求就是获取不到数据元素的加载时机不定,尤其是弱网情况下,只靠延迟还是有可能获取不到,且登陆…

什么是卷积网络中的平移不变性?平移shft在数据增强中的意义

今天来介绍一下数据增强中的平移shft操作和卷积网络中的平移不变性。 1、什么是平移 Shift 平移是指在数据增强(data augmentation)过程中,通过对输入图像或目标进行位置偏移(平移),让目标在图像中呈现出…

android framework.jar 在应用中使用

在开发APP中&#xff0c;有时会使用系统提供的framework.jar 来替代 android.jar, 在gradle中配置如下&#xff1a; 放置framework.jar 依赖配置 3 优先级配置 gradle.projectsEvaluated {tasks.withType(JavaCompile) {Set<File> fileSet options.bootstrapClasspat…