【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 
  • 效果

输出结果如下:

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

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

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

相关文章

Redis 服务集群、哨兵、缓存及持久化的实现原理和应用场景

Redis 是一种高性能的键值存储系统&#xff0c;已经成为了许多企业和互联网公司的核心技术之一。本文将介绍 Redis 的服务集群、哨兵以及缓存实现原理和应用场景&#xff0c;以帮助读者更好地理解和使用 Redis。 引言&#xff1a; 随着互联网应用规模不断扩大&#xff0c;Redi…

Laravel04 eloquent

eloquent 1. eloquent2. 创建eloquent model 以及 取数据 1. eloquent 文档地址&#xff1a; https://learnku.com/docs/laravel/8.x/eloquent/9406 下面是我们&#xff0c;通过laravel的DB类从数据库中获取了post记录&#xff0c;那么有没有可能我们直接获取一个post对象&am…

[算法沉淀记录]排序算法 —— 快速排序

排序算法 —— 快速排序介绍 基本概念 快速排序&#xff08;Quicksort&#xff09;是一种排序算法&#xff0c;最早由东尼霍尔提出。在平均状况下&#xff0c;排序 n 个项目要 Ο(n log n) 次比较。在最坏状况下则需要 Ο(n2) 次比较&#xff0c;但这种状况并不常见。事实上&…

Arduino单片机基础介绍

&#xff08;本文为简单介绍&#xff0c;内容源于网络和AI&#xff09; Arduino单片机&#xff0c;自2005年诞生以来&#xff0c;已经成为全球爱好者和专业工程师们快速实现创意原型的重要工具。Arduino的普及不仅因其强大的功能和简易的操作&#xff0c;还在于其背后强大的社…

【数据结构】队列OJ题《用队列实现栈》(题库+解析+代码)

1.前言 通过前面队列的实现和详解大家对队列应该有一定熟悉了&#xff0c;现在上强度开始做题吧 队列详解&#xff1a;http://t.csdnimg.cn/dvTsW 2.OJ题目训练225. 用队列实现栈 题目分析 请你仅使用两个队列实现一个后入先出&#xff08;LIFO&#xff09;的栈&#xff0…

亿道丨三防平板丨手持平板丨加固平板丨助力地震救援

自土耳其发生7.8级大地震以来&#xff0c;一直都牵动着世人的心。2023年2月10日&#xff0c;据法新社最新消息&#xff0c;强震已造成土耳其和叙利亚两国超2万人遇难。报道称&#xff0c;相关官员和医护人员表示&#xff0c;地震造成土耳其17674人死亡&#xff0c;叙利亚则有33…

洛谷C++简单题小练习day22—小鱼记忆小程序!一题五解,高效学习

day22--小鱼记忆--2.26 习题概述 题目描述 小鱼最近被要求参加一个数字游戏&#xff0c;要求它把看到的一串数字 ai​&#xff08;长度不一定&#xff0c;以 0 结束&#xff09;&#xff0c;记住了然后反着念出来&#xff08;表示结束的数字 0 就不要念出来了&#xff09;。…

iOS App 上架指南及关键

引言 上架App Store是将iOS应用提交申请并上线的过程&#xff0c;旨在让应用在App Store上展示&#xff0c;吸引用户并获取流量。本文将介绍iOS上架的整体流程&#xff0c;并提供一些建议和注意事项。 一、iOS上架的整体流程 1. 申请开发者账号 首先&#xff0c;需要申请苹…

08_css

文章目录 CSS概念在HTML中引入CSS的三种方式CSS的选择器标签选择器类选择器id选择器后代选择器子类选择器并集选择器伪类选择器伪元素选择器属性选择器选择器的优先顺序 盒子模型边框的写法内外边距的写法外边距合并 标签的分类块级元素行级元素行内块 浮动 CSS 概念 css是层…

共同学习|Spring Cloud Alibaba一一服务网关Gateway

目录 服务网关-Gateway 环境搭建 负载均衡 Gateway Predicates Path After Before Cookie Header Weight GatewayFilter Factories StripPrefix AddResponseHeader 自定义全局Filter 网关(Gateway)又称网间连接器、协议转换器。网关在传输层上以实现网络互连&…

北斗卫星赋能,宠物定位新篇章—追踪宠物,不再是难题

北斗卫星赋能&#xff0c;宠物定位新篇章—追踪宠物&#xff0c;不再是难题 随着社会的快速发展与科技的不断进步&#xff0c;人们的生活方式也在不断改变。宠物已经成为越来越多家庭的重要成员&#xff0c;在这个宠爱宠物的时代&#xff0c;如何确保宠物的安全&#xff0c;特…

js之继承

js之继承 1、原型 prototype 和 __proto__2、原型链3、继承4、hasOwnProperty 1、原型 prototype 和 proto 每个对象都有一个__proto__属性&#xff0c;并且指向它的prototype原型对象每个构造函数都有一个prototype原型对象prototype原型对象里的constructor指向构造函数本身…

淘金优化算法GRO求解不闭合SD-MTSP,可以修改旅行商个数及起点(提供MATLAB代码)

一、淘金优化算法GRO 淘金优化算法&#xff08;Gold rush optimizer&#xff0c;GRO&#xff09;由Kamran Zolf于2023年提出&#xff0c;其灵感来自淘金热&#xff0c;模拟淘金者进行黄金勘探行为。淘金优化算法&#xff08;Gold rush optimizer&#xff0c;GRO&#xff09;提…

vscode与vue/react环境配置

一、下载并安装VScode 安装VScode 官网下载 二、配置node.js环境 安装node.js 官网下载 会自动配置环境变量和安装npm包(npm的作用就是对Node.js依赖的包进行管理)&#xff0c;此时可以执行 node -v 和 npm -v 分别查看node和npm的版本号&#xff1a; 配置系统变量 因为在执…

Cloudera虚拟机配置(虚拟机环境自带Hadoop、Impala等大数据处理应用)

上学期的大数据处理课程&#xff0c;笔者被分配到Impala的汇报主题。然而汇报内容如果单纯只介绍Impala的理论知识&#xff0c;实在是有些太过肤浅&#xff0c;最起码得有一些实际操作来展示一下Impala的功能。但是Impala的配置实在是有些困难与繁琐&#xff0c;于是笔者通过各…

VSCode设置成中文语言环境

1&#xff0c;打开VSCode软件&#xff0c;按快捷键【CtrlShiftP】 2&#xff0c;在弹出的搜索框中输入configure language&#xff0c;然后选择Configure Display Language 3&#xff0c;在选择框中选择zh-cn 4&#xff0c;确认重启VSCode就可以了

【基础知识】MPP架构和hadoop架构比对

架构比对 简单一句描述。 mpp架构&#xff0c;就是找一群和自己能力差不多的任一起做事&#xff0c;每个人做的事情是一致的。 hadoop架构&#xff0c;就是找一群能力差一些的人&#xff0c;但只需要他们每个人只做一部分工作。 举例说明 一个特色小饭店如何成为连锁餐饮巨…

基于JAVA springboot+mybatis智慧生活分享平台设计和实现

基于JAVA springbootmybatis智慧生活分享平台设计和实现 博主介绍&#xff1a;5年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 可定制系统 欢迎点赞 收藏 …

代码随想录算法训练营第二十二天| 235. 二叉搜索树的最近公共祖先、701.二叉搜索树中的插入操作、450.删除二叉搜索树中的节点

文章目录 1.二叉搜索树的最近公共祖先2.二叉搜索树中的插入操作3.删除二叉搜索树中的节点 1.二叉搜索树的最近公共祖先 因为是有序树&#xff0c;所以中间节点如果是p、q的公共祖先&#xff0c;那么一定存在p<公共祖先<q 或 q<公共祖先<p 代码如下&#xff1a; /**…

树的基本概念和结构

目录 树的概念和结构 树的相关概念 树的特点 树的表示 树的基本应用 树的概念和结构 树是一种非线性的数据结构&#xff0c;它是由n&#xff08;n>0&#xff09;个有限结点组成一个具有层次关系的集合 &#x1f4cc; 把它叫做树是因为它看起来像一棵倒挂的树&#x…