【DL】深度学习之语音识别

目录

1 核心概念

2 安装依赖库

3 实践


语音信号处理(Speech Signal Processing)简称语音处理

语音识别(ASR)自然语言处理(NLP)语音识别就是将语音信号转化成文字文本,简单实现了两种信号的转换。ASR又可以理解为,让机器听见。NLP可以理解为通过某种算法让计算机理解所输入的内容,NLP又可以理解成,让机器听懂。 语音识别(Speech Recognition)是NLP的一个重要子领域,旨在将语音信号转换为文本。

1 核心概念

① 语音特征

语音特征是用于描述语音信号的数值特征。

特征提取的方法有:线性预测系数(LPC)、LPC倒谱系数(LPCC)、线谱对参数(LSP)、共振峰率、短时谱、Mel频率倒谱系数(MFCC)和感知线性预测(PLP)等等。

其中,梅尔倒谱系数MFCC的提取过程包括:声道转换、预加重、分帧、加窗、快速傅里叶变换、通过三角带通滤波器得到Mel频谱、倒谱分析(取对数,做逆变换)。

预处理一般包括预加重、加窗和分帧等。

⒈ 预加重:语音信号低频段能量大,高频段信号能量小。预加重的目的是提升高频部分,使得信号的频谱变得平坦。

⒉ 加窗:减少语音帧的截断效应。矩形窗和汉明窗。

⒊ 分帧:将信号分段,每一段为一帧,一般10-30ms。分帧虽然可以采用连续分段的方法,但一般要采用交叠分段的方法,这是为了使帧与帧之间平滑过渡,保持其连续性。前一帧和后一帧的交叠部分称为帧移。

常见的语音特征包括MFCC、SPC、PFCC等,可以根据任务需求选择合适的特征。

② 语音数据集

语音数据集是用于训练和测试语音识别和语音合成模型的数据集,包括LibriSpeech、Common Voice、VCTK等。

③ SR和TTS

语音识别(Speech Recognition,SR)是将人类语音信号转换为文本的过程,主要包括语音前处理、语音特征提取、语音模型训练和文本生成等步骤。

Token可以是Phoneme(a unit of sound)、Grapheme(字母或字)、Word(词汇)、Morpheme(>Grapheme, <Word)、Bytes。

语音合成(Text-To-Speech, TTS, 又称文语转换)是将文本转换为人类可理解的语音信号的过程,主要包括文本前处理、语音模型训练和语音信号生成等步骤。 

④ 语音识别系统的构建

语音识别和语音合成主要基于深度学习技术,包括卷积神经网络(CNN)、循环神经网络(RNN)、长短期记忆网络(LSTM)、Transformer等等。

卷积神经网络(CNN): CNN可以自动学习特征并进行分类。CNN通常由多个卷积层、池化层和全连接层组成。卷积层用于提取语音信号的特征,池化层用于减少参数数量和防止过拟合,全连接层用于输出预测结果。

循环神经网络(RNN): RNN可以处理序列数据。在语音识别任务中,RNN可以处理语音信号的时间序列特征。RNN通常由多个隐藏层和输出层组成,每个隐藏层都有自己的权重和偏置。

LSTM: LSTM是一种特殊的RNN,它可以处理长距离依赖关系。LSTM通过使用门机制来控制信息的流动,从而避免梯度消失问题。

Transformer: Transformer是一种基于自注意力机制的神经网络,它可以处理长距离依赖关系并并行化计算。

构建步骤包括:预处理、数据集划分、模型构建、训练、模型评估、模型优化。

2 安装依赖库

① cpu版本的paddlepaddle安装

​pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple
​

② 安装PaddleSpeech

pip install paddlespeech# 或者pip --default-timeout=100 install paddlespeech -i Simple Index --trusted-host pypi.douban.com
​

3 实践

实践① 语音识别

  • 命令行
paddlespeech asr --lang zh --input zh.wav 
  • 代码
from paddlespeech.cli.asr.infer import ASRExecutor 
asr = ASRExecutor() 
result = asr(audio_file="zh.wav") 
print(result) 
pass 
  • 效果

输出结果如下:

我认为跑步最重要的就是给我带来了身体健康

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

解决启动服务报./nginx -s reload nginx: [emerg] unknown directive “错误

重启服务报错 bug: ./nginx -s reload nginx: [emerg] unknown directive "? 原因&#xff1a; 一、可能打开没有关闭 二、刚刚编辑的没成功&#xff0c;乱码了&#xff0c;格式问题&#xff0c;重新配置

汇标网系统搭建,让知识产权保护更智能、更便捷!

据国家商标局统计发布&#xff0c;2023年四季度我国商标申请量达到了6,988,704件&#xff0c;有效商标注册量为44,047,071件&#xff01; 商标作为企业的重要资产&#xff0c;现在不仅企业、个体户、个人等等&#xff0c;都想在商标市场分得一杯羹。 目前&#xff0c;国家和社会…

多模态表征中的里程碑—CLIP及中文版Chinese-CLIP:理论揭秘、代码微调与论文阅读 (视觉与语义的奇妙共舞~)

我之前一直在使用CLIP/Chinese-CLIP&#xff0c;但并未进行过系统的疏导。这次正好可以详细解释一下。相比于CLIP模型&#xff0c;Chinese-CLIP更适合我们的应用和微调&#xff0c;因为原始的CLIP模型只支持英文&#xff0c;对于我们的中文应用来说不够友好。Chinese-CLIP很好地…

【深度学习笔记】深度学习训练技巧

深度学习训练技巧 1 优化器 随机梯度下降及动量 随机梯度下降算法对每批数据 ( X ( i ) , t ( i ) ) (X^{(i)},t^{(i)}) (X(i),t(i)) 进行优化 g ∇ θ J ( θ ; x ( i ) , t ( i ) ) θ θ − η g g\nabla_\theta J(\theta;x^{(i)},t^{(i)})\\ \theta \theta -\eta g g…

leetcode:491.递增子序列

1.误区&#xff1a;不能直接对数组排序再求解子集&#xff0c;因为那样就改变了原有数组的顺序 2.树形结构&#xff1a;一个一个取数&#xff0c;然后保证是递增序列&#xff0c;且不能重复。&#xff08;数层上不可以重复取&#xff0c;树枝上可以重复取&#xff09;收集的结…

[蜥蜴书Chapter2] -- 下载和加载数据

目录 一、下载和加载数据的函数代码 二、代码说明 1、urllib.request.urlretrieve 2、extractall 三、如何调用函数 四、查看数据的结构 1、head函数&#xff1a; 2、info函数&#xff1a; 3、describe函数&#xff1a; 4、绘制柱状图&#xff1a; 一、下载和加载数据…

迁移学习帮大忙!成都理工大学搭建 SCDUNet++ 模型进行滑坡测绘

滑坡是最常见的自然灾害之一&#xff0c;通常由地震和降雨引发&#xff0c;会造成严重的财产损失和人员伤亡。由地震触发的山体滑坡所造成的破坏&#xff0c;有时会比地震本身造成的破坏更为严重。大型地震发生之后&#xff0c;快速、准确地开展滑坡测绘工作 (landslide mappin…

ABAP - Function ALV 05 添加选择框列、全选、取消全选

很多用户不习惯原生GRID的选择模式&#xff0c;所以业务需要用到自定义的选择框来进行数据的操作&#xff0c;显示效果如图所示&#xff0c;增加一条选择列&#xff0c;且配置全选和全选全选的按钮功能&#xff0c;如下图所示。 实现这种功能需要用到Fieldcat的参数控制以及GUI…

18 SpringMVC实战

18 SpringMVC实战 1. 课程介绍2. Spring与Spring MVC环境配置 1. 课程介绍 2. Spring与Spring MVC环境配置

Vue 卸载eslint

卸载依赖 npm uninstall eslint --save 然后 进入package.json中&#xff0c;删除残留信息。 否则在执行卸载后&#xff0c;运行会报错。 之后再起项目。

git之分支管理

一.理解分支 我们看下面这张图片&#xff1a; 在版本回退⾥&#xff0c;你已经知道&#xff0c;每次提交&#xff0c;Git都把它们串成⼀条时间线&#xff0c;这条时间线就可以理解为是⼀个分⽀。截⽌到⽬前&#xff0c;只有⼀条时间线&#xff0c;在Git⾥&#xff0c;这个分⽀…

如何使用Lychee+cpolar搭建本地私人图床并实现远程访问存储图片

文章目录 1.前言2. Lychee网站搭建2.1. Lychee下载和安装2.2 Lychee网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4.公网访问测试5.结语 1.前言 图床作为图片集中存放的服务网站&#xff0c;可以看做是云存储的一部分&#xff0c;既可…

短链接的背后故事:为互联网用户带来的便捷与安全

title: 短链接的背后故事&#xff1a;为互联网用户带来的便捷与安全 date: 2024/2/26 14:58:58 updated: 2024/2/26 14:58:58 tags: 短链接技术起源长URL问题解决链接分享便利性链接跟踪与分析链接管理效率提升链接安全保障应用领域广泛 一、短链接的起源 短链接是一种将长UR…

高效备考2025年AMC8数学竞赛:做熟2000-2024年AMC8真题

这段时间&#xff0c;有小学生的家长朋友问&#xff0c;想给孩子学点数学拓展的知识&#xff0c;不局限于课堂所学。有什么可以推荐的活动或比赛。我个人的建议是可以了解下AMC8美国数学竞赛。主要有以下几个原因&#xff1a; 一是这个竞赛是美国数学协会&#xff08;MAA&…

STM32程序(移植)中头文件的路径

例:#include "./BSP/LCD/lcd.h"为什么有的头文件加了路径? 先看AI的回答: 在C和C编程中&#xff0c;当我们在源文件中包含&#xff08;或称为“引入”或“导入”&#xff09;一个头文件时&#xff0c;编译器需要知道这个头文件的位置。通常&#xff0c;编译器会在…

聚水潭和金蝶云星空接口打通对接实战

聚水潭和金蝶云星空接口打通对接实战 对接系统聚水潭 聚水潭成立于2014年&#xff0c;创始人兼CEO骆海东拥有近三十年传统及电商ERP的研发和实施部署经验。聚水潭创建之初&#xff0c;以电商SaaSERP切入市场&#xff0c;凭借出色的产品和服务&#xff0c;快速获得市场的肯定。随…

C# TesseractOCR识别身份证号

https://github.com/tesseract-ocr/tessdata 新建控制台项目并添加包 Tesseract和Tesseract.Drawing 下载训练的模型 地址 代码实现 using Tesseract;var filePath "F:\\Desktop\\韦小宝.png"; var exePath AppDomain.CurrentDomain.BaseDirectory; var …

如何使用群晖NAS中FTP服务开启与使用固定地址远程上传下载本地文件?

文章目录 1. 群晖安装Cpolar2. 创建FTP公网地址3. 开启群晖FTP服务4. 群晖FTP远程连接5. 固定FTP公网地址6. 固定FTP地址连接 本文主要介绍如何在群晖NAS中开启FTP服务并结合cpolar内网穿透工具&#xff0c;实现使用固定公网地址远程访问群晖FTP服务实现文件上传下载。 Cpolar内…

组态王连接施耐德M580PLC

组态王连接施耐德M580 网络架构 网线连接PLC和装组态王软件的PC组态设置帮助 可先查看帮助&#xff1a;菜单栏点击【帮助】->【驱动帮助】&#xff0c;在弹出窗口中PLC系列选择莫迪康PLC的“modbusRtu\ASSCII\TCP”查看组态配置流程&#xff1a; 相关说明&#xff1a; 1、…

信创龙头|暴雨公司推出2024年兆芯新款台式机

2024年的战鼓已经打响&#xff0c;信创行业已走过三个年头&#xff0c;随着国家对信创产业的扶持&#xff0c;未来信创市场大有可期。 2024年疫情结束的第二个年头&#xff0c;经过一年的缓冲期&#xff0c;各行各业百废待兴&#xff0c;对新的一年充满了期望。 暴雨公司作为…