牛津大学xDeepMind 自然语言处理(4)

牛津大学xDeepMind 自然语言处理 Natural Language Processing

语音识别 Speech Recognition
  1. 语音识别概述

    1. 问题定义:自动语音识别(ASR)、文本到语音合成(TTS)等
    2. 相关任务:说话人识别、语音增强、语音分离等
  2. 语音的表示与构成

    1. 物理实现:空气压力波、经声带、声道等调制

    2. 声学表示:

      1. 采样与量化:不同采样率和位深

      2. 傅里叶分析:短时快速傅里叶变换

      3. 梅尔频率表示:log-mel特征

        梅尔频率表示是对 FFT 结果在梅尔尺度上进行局部加权平均并取对数得到的 log-mel 特征,通常每帧 40 + 维,是神经网络语音建模的默认选择;

      4. MFCCs:梅尔频率倒谱系数

        MFCCs 是梅尔滤波器组能量的离散余弦变换,具有白化和低维特性,类似对数谱的主成分,GMM 语音识别系统可能使用 13 个 MFCCs,还可结合帧堆叠、差分和二阶差分等。

    3. 语音构成:由句子组成,句子由单词组成、最小单位是音素,涉及同音字、韵律等

    4. 数据集:TIMIT、WSJ、Broadcast News等

  3. 语音识别历史

    1960s:动态时间规整

    1970s:隐马尔可夫模型

    1986-1995:多层感知机用于语音识别

    1995-2009:GMMs成为主导

    2022-:神经网络特征(如”瓶颈“或”串联“特征 neck)

    2006-:深度网络用于语音识别,2012年称为主导范式

    1990、2012-:循环网络用于语音识别及新模型出现(注意力、LAS、神经转换器)

  4. 概率性语音识别

    1. 模型:隐马尔可夫模型

    2. 基本方程:选择最可能的单词序列,为声学模型和语言模型分数的乘积

    3. 语言模型:建模单词序列概率

    4. transduction过程:从信号到语言,涉及特征提取、声学模型、词典、语言模型等,利用加权有限状态转换器(WFST)构建图,进行组合、优化等操作。

      在这里插入图片描述

      1. 基础流程:从音频到语义的分层转换
        Audio(音频):语音识别的原始输入,是连续的声波信号(如人说话的声音)。
        Feature Extraction(特征提取):将音频转换为帧(Frame)(短时间片段,如 25ms / 帧),并提取声学特征(如梅尔频谱、MFCC 等),把物理声波转化为机器可处理的数字特征。
        Acoustic Model(声学模型):通过State(状态)和Phoneme(音素) 建模特征与语音单元的映射:
        State(状态):音素的细分状态(因发音受前后语境影响,需更细粒度建模,常通 过决策树聚类生成)。
        Phoneme(音素):语言中最小发音单位(如汉语 “啊”、英语 “/æ/” ),是连接声 学特征与文字的桥梁。
        Lexicon(词典):建立Phoneme(音素) 与Word(词) 的映射,实现 “发音组合 → 文字” 的转换(如音素 “/kæt/” 对应单词 “cat” )。
        Language Model(语言模型):基于Word(词) 序列建模,预测 “哪些词更可能连续出现”(如 “I want to” 比 “I want the” 更符合语法时,语言模型会赋予更高概率 ),提升识别合理性。
        Sentence(句子):通过词序列拼接、语言模型约束,形成完整语句。
        Meaning(含义):结合NLP(自然语言处理) 技术,解析句子语义,实现从语音到理解的最终目标(如把 “Open the door” 转化为执行指令 )。
    5. 语音单位:包括音素(如 “cat” 对应 / K/, /AE/, /T/)、上下文无关和相关的 HMM 状态、双音素、音节、字符、整个单词等,选择取决于语言、数据集大小等。

    6. 上下文相关语音聚类:音素的实现依赖前后语境,需对不同语境实现建模,但多数未被观测到,因此通过聚类(如决策树)分组并训练联合模型,对未观测语境有 “退避” 规则。

    7. 高斯混合模型:1990-2010年主导ASR,建模每个状态的声学特征概率分布,常用对角协方差高斯,通过 EM 算法训练,参数可并行估计,但难以跨状态共享参数 / 数据。

    8. 强制对齐:计算语音特征与语音状态的最大似然对齐,为每个训练话语构建真实转录的语音状态集,用维特比算法找到 ML 单调状态序列,结果为每帧的语音标签,可硬分割或软分割。

    9. 解码:与强制对齐类似,但面对的是图而非直线路径,包含单词间的可选静音、替代发音路径等,通常在对数域使用最大概率,通过 “波束” 保留最佳路径,可能丢失真实最佳路径。

  5. 神经网络语音识别

    1. 两种范式:

      一是用神经网络计算非线性特征表示(如 “瓶颈” 或 “串联” 特征),低维表示用 GMMs 建模;

      二是用神经网络估计语音单位概率。

    2. Hybrid networks 混合神经网络:

      训练网络作为分类器,用 softmax 处理语音单位,y(i)=exp(a(i,θ))/∑j=1Nexp(a(j,θ))y(i)=exp(a(i,θ))/\sum^N_{j=1}exp(a(j,θ))y(i)=exp(a(i,θ))/j=1Nexp(a(j,θ)),收敛到语音状态的后验概率P(ci∣ot)P(c_i|o_t)P(ciot),训练损失为交叉熵。解码时用神经网络替代GMMs建模P(o∣c)P(o|c)P(oc),引入”缩放后验“,经验上”先验平滑“项α≈0.8效果更好。

    3. 输入特征:神经网络可处理高维相关特征,如 26 个堆叠的 40 维梅尔滤波器组输入,第一层可学习到特定滤波器。

    4. 架构:包括全连接、卷积网络(如时间延迟神经网络、扩张卷积、Wavenet)、循环网络(如 RNN、LSTM、GRU、双向 RNN、CLDNN)等。

    5. 训练损失:

      1. 交叉熵

      2. CTC:引入可选空白符号,无需 bootstrap 模型,用软目标,不按后验缩放,结果与传统训练相似

    6. 序列判别训练:传统训练最大化给定数据的真实状态序列概率,而序列判别训练设计更接近词错误率的可微损失,使网络学习后验缩放,相对提升传统训练和 CTC 约 15%,如 bMMI、sMBR。

    7. 新架构:

      • Sequence2Sequence 序列到序列:基本模型对语音效果不佳,结合注意力的模型如 Listen, Attend and Spell(输出字符直到 EOS,整合训练集语言模型,难整合外部训练的语言模型)。
      • Watch Listen, Attend and Spell:同时应用于音频和视频流,用计划采样训练。
      • Neural transducer 神经转换器:解决序列到序列模型需完整序列的问题,一次转录单调块,减少延迟。
      • Raw waveform speech recognition 原始波形语音识别:端到端训练,学习滤波器组,可结合卷积滤波器、WaveNet 风格架构、Clockwork RNN 等。
  6. 其他主题

    1. 噪声中的语音识别:多风格训练(收集噪声数据或训练时添加随机噪声,如通过 “房间模拟器” 添加混响,可选添加干净重建损失)、训练去噪器等。(注意 Lombard 效应(噪声中声音变化)
    • Sequence2Sequence 序列到序列:基本模型对语音效果不佳,结合注意力的模型如 Listen, Attend and Spell(输出字符直到 EOS,整合训练集语言模型,难整合外部训练的语言模型)。
    • Watch Listen, Attend and Spell:同时应用于音频和视频流,用计划采样训练。
    • Neural transducer 神经转换器:解决序列到序列模型需完整序列的问题,一次转录单调块,减少延迟。
    • Raw waveform speech recognition 原始波形语音识别:端到端训练,学习滤波器组,可结合卷积滤波器、WaveNet 风格架构、Clockwork RNN 等。
  7. 其他主题

    1. 噪声中的语音识别:多风格训练(收集噪声数据或训练时添加随机噪声,如通过 “房间模拟器” 添加混响,可选添加干净重建损失)、训练去噪器等。(注意 Lombard 效应(噪声中声音变化)
    2. 多麦克风语音识别:多麦克风提供更丰富表示,“离说话人最近” 的麦克风信噪比更好。波束形成利用麦克风阵列几何和声速计算到达时间差,延迟求和实现信号建设性干涉,噪声破坏性干涉取决于方向 / 频率。神经网络可利用更多特征,需保留相位信息以实现波束形成。

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

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

相关文章

MyBatis处理SQL语句映射

基础MyBatis问题以去看MyBatis基础。 使用log4j设置日志在控制台打印SQL语句及其执行信息 也可以使用MyBatis基础中用的slf4j。 在pom.xml文件中引入log4j坐标依赖 <dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><…

嵌入式硬件篇---麦克纳姆轮轨迹偏移

麦克纳姆轮的轨迹偏移是机械结构、驱动系统、控制逻辑及外部环境等多因素共同作用的结果&#xff0c;其核心是各轮子的驱动力 / 运动状态无法按理论模型实现协同&#xff0c;导致车体实际运动与期望轨迹产生偏差。以下是具体影响因素的详细分析&#xff1a;一、机械结构偏差&am…

C语言安全函数分享

在日常写程序中有一些功能函数是可以重复使用的&#xff0c;在c语言的标准库里面也有对应的功能函数&#xff0c;但是那些功能函数有会有小问题然后我就整理了一下对应功能的安全函数的使用。其中前四个函数可以编译成一个动态库&#xff0c;然后在项目工程中只需要包含对应的头…

汽车之家联合HarmonyOS SDK,深度构建鸿蒙生态体系

汽车之家作为一家领先的汽车互联网公司&#xff0c;致力于打造服务全球的汽车生态科技平台&#xff0c;覆盖"看选买用换"的一站式购车体验。2023年12月底&#xff0c;汽车之家正式启动鸿蒙开发&#xff0c;并于2024年年底成功构建了完整的鸿蒙生态体系&#xff0c;涵…

深度学习驱动的订单簿分析与交易策略优化

订单簿数据特征与预处理方法 高频金融数据中&#xff0c;订单簿&#xff08;Order Book&#xff09;承载着市场参与者的实时交易意图。不同于K线数据的聚合特性&#xff0c;订单簿数据具有独特的时空特征&#xff1a; 多维层级结构&#xff1a;包含不同价格档位的买卖盘深度信息…

Redis--day9--黑马点评--分布式锁(二)

&#xff08;以下所有内容全部来自上述课程&#xff09; 分布式锁 1. Redisson功能介绍 基于setnx实现的分布式锁存在下面的问题&#xff1a; 不可重入&#xff1a;同一个线程无法多次获取同一把锁不可重试&#xff1a;获取锁只尝试一次就返回false&#xff0c;没有重试机…

ES入门教程 (python 版)

ES入门教程 1. 创建ES对象from elasticsearch import Elasticsearch # 实例化一个ip为localhost&#xff0c;端口为9200&#xff0c;允许超时一小时的es对象 es Elasticsearch(hosts"localhost",port9200,timeout3600) # 1. 创建 索引 index_name "test"…

Gateway中Forward配置+源码观赏

系列文章目录 文章目录系列文章目录一、ForwardPathFilter二、RouteToRequestUrlFilter三、ForwardRoutingFilteryaml forward配置gateway:routes:- id: user-route # uri: lb://useruri: forward:///user/indexpredicates:- Path/user/**- YoGET # filt…

BAS16XV2T1G ON安森美半导体 高速开关二极管 电子元器件IC

BAS16XV2T1G ON Semiconductor 高速开关二极管专业解析1. 产品技术档案BAS16XV2T1G是安森美半导体(ON Semiconductor)推出的高速开关二极管&#xff0c;采用SOT-523超微型封装&#xff08;1.60.80.95mm&#xff09;&#xff0c;专为现代高密度电子设备设计&#xff0c;以其超快…

亲测可用 [安卓]《神秘来电》V1.1无需登入无广告离线打开即用手机模拟发起虚假来电免费版

神秘来电是一款可以模拟虚拟电话的应用程序&#xff0c;它能够在用户需要的时候模拟各种来电&#xff0c;以便用户能够在尴尬的场合脱身。用户可以预设多个不同的来电号码和铃声&#xff0c;并可随时触发这些虚拟电话&#xff0c;在特殊情况下帮助用户摆脱尴尬。它为那些社交恐…

8.20 dp

lc73矩阵置零queue队列标记// 整行置零for(int y0; y<n; y) matrix[i][y] 0; // 整列置零for(int x0; x<m; x) matrix[x][j] 0; class Solution { public:void setZeroes(vector<vector<int>>& matrix) {int m matrix.size(), n matrix[0].size();//…

STL库——string(类模拟实现)

ʕ • ᴥ • ʔ づ♡ど &#x1f389; 欢迎点赞支持&#x1f389; 个人主页&#xff1a;励志不掉头发的内向程序员&#xff1b; 专栏主页&#xff1a;C语言&#xff1b; 文章目录 前言 一、基本框架 二、构造函数 三、析构函数 四、拷贝构造 五、运算符重载 5.1、赋值重载 5.2…

Linux I/O 多路复用实战:深入剖析 Select 与 Poll

## 引言:从“阻塞”的餐厅到“事件驱动”的盛宴 想象一下,你是一家小餐馆的服务员。餐厅只有5张桌子。你的工作流程是这样的:走到1号桌,问他们是否要点菜,然后站在那里等他们决定;等他们点完,再去2号桌,同样站在那里等... 如果1号桌的客人看菜单看了半个小时,那么其他…

【clion】cmake脚本1:调试脚本并构建Fargo项目win32版本

调试脚本并构建 【clion】visual studio的sln转cmakelist并使用clion构建32位 报错 "D:\Program Files\JetBrains\CLion 2022.3.1\bin\cmake\win\x64\bin\cmake.exe" --debugger --debugger-pipe=\\<

VS2005里的快捷键

VS2005是微软在2005发布的一款支持C、C#、.net开发语言的集成开发工具&#xff0c;它支持的C版本为C03&#xff0c;但不支持C11&#xff0c;到VS2013才支持大部分的C11(简称C11)&#xff0c;到VS2015 update3才完全支持C11。既然VS2005不支持C11&#xff0c;而智能指针是C11才引…

前后端联合实现文件下载,实现 SQL Server image 类型文件下载

1、前端 Vue3QualityFile.vue<script setup lang"ts" name"QualityFile"> ...... // 下载&#xff0c;实现 SQL Server image 类型文件下载 const onDownloadClick async (fileNo: string) > {// const result await qualityFileDownloadFileWi…

【OneAI】使用Rust构建的轻量AI网关

LLM网关 统一大模型API入口&#xff0c;使用一个令牌调用多家模型&#xff0c;无需切换API Key兼容OpenAI输入输出规范内置10提供商和50模型&#xff0c;开箱即用支持自动负载、限流、IP限制、Token用量限制等功能支持钉钉、飞书、企微消息预警支持对不同提供商设置代理支持主…

Jenkins服务器配置SSH

1. 创建Jenkins用户的SSH配置ssh-keygen -t rsa -b 4096 -f /tmp/jenkins_ssh_key -N ""2. 在Jenkins服务器上执行以下命令# 切换到root用户 sudo su -# 创建Jenkins用户的SSH目录 mkdir -p /var/lib/jenkins/.ssh chown jenkins:jenkins /var/lib/jenkins/.ssh chmo…

nginx-下载功能-状态统计-访问控制

nginx-下载功能-状态统计-访问控制一、利用nginx做网站提供下载功能1. 进入nginx存放配置文件目录2. 编辑nginx.conf文件&#xff0c;开启下载功能3. 检查nginx.conf主配置文件是否正确4. 重启nginx服务5. 修改首页文件index.html6. 访问首页7. 去网页根目录下新建download目录…

GitLab CI/CD、Jenkins与GitHub Actions在Kubernetes环境中的方案对比分析

GitLab CI/CD、Jenkins与GitHub Actions在Kubernetes环境中的方案对比分析 随着容器化和微服务的普及&#xff0c;基于Kubernetes的部署已经成为主流。在实际的生产环境中&#xff0c;如何选择合适的CI/CD流水线方案以实现自动化构建、测试、部署和发布&#xff0c;直接关系到团…