NNLM、RNNLM、LSTM-RNNLM、Bi-lstm、GPT-1…你都掌握了吗?一文总结语音识别必备经典模型(2)

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,5000CU*H 3个月
模型训练 PAI-DLC,5000CU*H 3个月
简介: NNLM、RNNLM、LSTM-RNNLM、Bi-lstm、GPT-1…你都掌握了吗?一文总结语音识别必备经典模型(1)



2、 RNNLM

RNNLM模型的设计思想比较简单,主要是对NNLM中的前馈神经网络进行改进,其主要的结构图如下图2所示:

图2. RNNLM结构

NNLM的一个主要缺陷是,前馈网络必须使用固定长度的上下文,而这个长度需要在训练前临时指定。通常情况下,这意味着神经网络在预测下一个词时只能看到五到十个前面的词。众所周知,人类可以利用更长的上下文,而且非常成功。另外,缓存模型为神经网络模型提供了补充信息,因此很自然地想到是否可以设计一个模型,它可以为任意长度的上下文隐含地编码时间信息。

项目 SOTA!平台项目详情页
RNNLM 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/rnnlm-2


3、  LSTM-RNNLM

前馈网络仅利用固定的上下文长度来预测下一个序列词,且训练难度大。LSTM-RNNLM引入长期短期记忆神经网络架构解决了这些问题:修改了网络结构,以避免梯度消失问题,而令训练算法保持不变。具体的,重新设计了神经网络的单元,使其相应的缩放系数固定为1。从这个设计目标中得到的新单元类型在学习能力上相当有限。进一步,引入门控单元以提升其学习能力。最终得到的神经单元如图3所示。

图3. 带有门控单元的LSTM记忆单元

一个标准的神经网络单元i只由输入激活a_i和输出激活b_i组成,当使用tanh激活函数时,它们之间的关系为:

门控单元将先前隐藏层、前一时间步长的当前层以及LSTM单元的内部激活,再利用logistic函数压缩处理激活后得到的值,然后分别将其设置为b_1、b_φ、b_ω。

图4. 神经网络LM架构

最终的神经网络语言模型架构如图4所示,将LSTM单元插入第二个递归层,并将其与标准神经网络单元的不同投影层相结合。对于大词汇量的语言建模,训练在很大程度上是由softmax输出层的输入激活a_i的计算主导的,与输入层相比,输出层不是稀疏的:

为了减少计算的工作量,将单词分成一组不相干的单词类别。然后,将概率p(w_m|(w_1)^(m-1))分解如下:

项目 SOTA!平台项目详情页

LSTM-RNNLM

前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/lstm-rnnlm


4、 Bi-LSTM

给定一个输入序列x = (x_1, ... , x_T),一个标准的RNN通过从t = 1到T迭代以下方程来计算隐藏向量序列h = (h_1, ... , h_T)和输出向量序列y =(y_1, ... , y_T):

通常,H是一个sigmoid函数的element-wise应用。LSTM架构使用专门的记忆单元来存储信息,在寻找和利用长距离背景方面更有优势。图5展示了一个单一的LSTM存储单元。H由以下复合函数实现:

图5. LSTM存储单元

传统的RNNs的一个缺点是,它们只能利用以前的上下文。在语音识别中,整个语料被一次性转录,因此,需要考虑利用未来的上下文信息。双向RNN(BRNN)通过用两个独立的隐藏层来处理两个方向的数据来做到这一点,然后再将这些数据反馈给同一个输出层。如图6所示,BRNN通过迭代后向层从t=T到1,前向层从t=1到T,然后更新输出层来计算前向隐藏序列→h,后向隐藏序列←h和输出序列y:

将BRNN与LSTM结合起来就得到了双向LSTM,它可以在两个输入方向上获取长距离的上下文,如图6所示。

图6. 双向RNN

可以通过将多个RNN隐藏层相互堆叠来创建深度RNN,一个层的输出序列形成下一个层的输入序列,如图7所示。假设堆栈中的所有N层都使用相同的隐层函数,那么隐层向量序列h^n从n=1到N、t=1到T,都是反复计算的:

网络输出y_t为:

深度双向RNN可以通过用前向和后向序列→h^n和←h^n替换每个隐藏序列h^n来实现,并确保每个隐藏层都能收到来自下面一层的前向和后向层的输入。如果隐藏层使用LSTM,我们就可以得到深度双向LSTM( Deep Bidirectional Long Short-Term Memory Network,DBLSTM),如图8所示。

图7. 深度RNN

图8. 深度双向长短期记忆网络(DBLSTM)


当前 SOTA!平台收录 Bi-lstm 共 3 个模型实现资源,支持的主流框架包含 PyTorch、TensorFlow 。

项目 SOTA!平台项目详情页
Bi-lstm 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/bi-lstm-7


5、 BiRNN+Attention

BiRNN+Attention使用了典型的编码器-解码器结构,编码器部分使用BiRNN,解码器部分使用Attention机制。对于普通的RNN模型,输入(x_1,x_2,...,x_T) 在经过 T 个时刻之后,可以得到 T 个正向隐藏层状态(h→,...,h→T) ;之后将输入序列单词的顺序颠倒之后得到(x_T,...,x_2,x_1) ,然后再次经过RNN,就可以得到反向的隐藏层状态(h←1,...,h←T) 。最后,我们要得到单词x_j 的向量表示,只需要将正向的隐藏状态h→j 跟反向的隐藏状态h←j 进行连接即可,例如:hj=[h→j;h←j] 。

解码器
在解码器中,作者引入注意力机制。解码器通过如下方式输出目标序列:

对于RNN模型,每一个条件概率通过下式进行建模:

该模型使用的条件概率如下:


需要注意的是,对于每一个目标单词y_i,用来计算其条件概率的上下文向量c_i都是不一样的。这跟传统的编码器-解码器模型是不一样的。c_i 指的就是中间语义变量,作者在论文中称为上下文变量。首先,c_i 依赖于编码器所有的隐藏状态(h_1,...,h_T) ,其次,在双向循环神经网络中,h_i 是包含整个输入序列的信息的,但是其包含的信息更集中在输入序列第 i 个单词位置附近。最后,在翻译输出单词的时候,不同的隐藏状态h_i 对输出序列的贡献是不一样的。

图9. 模型图示,在源句(x_1, x_2, ..., x_T)的基础上生成第t个目标词y_t

编码器( BIDIRECTIONAL RNN FOR ANNOTATING SEQUENCES
一个BiRNN由前向和后向RNN组成。前向RNN→f按顺序读取输入序列(从x_1到x_Tx),并计算出前向隐藏状态的序列(→h_1,..., →h_Tx)。后向RNN←f以相反的顺序读取序列(从x_Tx到x_1),生成一个后向隐藏状态的序列(←h_1, ...,←h_Tx)。我们通过连接前向隐藏状态→h_j和后向隐藏状态←h_j 得到每个词x_j的注释。这样一来,注释h_j就包含了前面的词和后面的词的摘要。由于RNNs倾向于更好地代表最近的输入,注释h_j将集中在x_j周围的词。这一连串的注释被解码器和对齐模型用来计算上下文向量。完整的模型图示见图9。

项目 SOTA!平台项目详情页
Bi-RNN+Attention 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/project/bi-rnn-attention-2



相关实践学习
达摩院智能语音交互 - 声纹识别技术
声纹识别是基于每个发音人的发音器官构造不同,识别当前发音人的身份。按照任务具体分为两种: 声纹辨认:从说话人集合中判别出测试语音所属的说话人,为多选一的问题 声纹确认:判断测试语音是否由目标说话人所说,是二选一的问题(是或者不是) 按照应用具体分为两种: 文本相关:要求使用者重复指定的话语,通常包含与训练信息相同的文本(精度较高,适合当前应用模式) 文本无关:对使用者发音内容和语言没有要求,受信道环境影响比较大,精度不高 本课程主要介绍声纹识别的原型技术、系统架构及应用案例等。 讲师介绍: 郑斯奇,达摩院算法专家,毕业于美国哈佛大学,研究方向包括声纹识别、性别、年龄、语种识别等。致力于推动端侧声纹与个性化技术的研究和大规模应用。
相关文章
|
25天前
|
机器学习/深度学习 人工智能 自然语言处理
当语言遇见智慧火花:GPT家族历代模型大起底,带你见证从平凡到卓越的AI进化奇迹!
【10月更文挑战第6天】随着自然语言处理技术的进步,GPT系列模型(Generative Pre-trained Transformers)成为该领域的明星。从GPT-1的开创性工作,到GPT-2在规模与性能上的突破,再到拥有1750亿参数的GPT-3及其无需微调即可执行多种NLP任务的能力,以及社区驱动的GPT-NeoX,这些模型不断进化。虽然它们展现出强大的语言理解和生成能力,但也存在如生成错误信息或偏见等问题。本文将对比分析各代GPT模型的特点,并通过示例代码展示其部分功能。
87 2
|
21天前
|
数据采集 API 决策智能
华为诺亚联合中科大发布工具调用模型ToolACE,效果持平GPT-4获开源第一
 【10月更文挑战第10天】华为诺亚方舟实验室与中国科学技术大学合作推出ToolACE,一种自进化合成过程的工具调用模型。ToolACE通过多智能体交互和双重验证系统生成准确、复杂、多样化的工具学习数据,显著提升大型语言模型(LLM)的功能调用能力。实验结果显示,使用ToolACE数据训练的80亿参数模型性能媲美GPT-4,在伯克利功能调用排行榜上获得开源第一。
44 4
|
2月前
|
API 云栖大会
通义千问升级旗舰模型Qwen-Max,性能接近GPT-4o
通义旗舰模型Qwen-Max全方位升级,性能接近GPT-4o
746 10
|
3月前
|
人工智能 自然语言处理
公理训练让LLM学会因果推理:6700万参数模型比肩万亿参数级GPT-4
【8月更文挑战第3天】新论文提出“公理训练”法,使仅有6700万参数的语言模型掌握因果推理,性能媲美万亿级GPT-4。研究通过大量合成数据示例教授模型因果公理,实现有效推理并泛化至复杂图结构。尽管面临合成数据需求大及复杂关系处理限制,此法仍为语言模型的因果理解开辟新途径。[链接: https://arxiv.org/pdf/2407.07612]
68 1
|
1月前
|
存储 数据采集 数据安全/隐私保护
商汤、清华、复旦等开源百亿级多模态数据集,可训练类GPT-4o模型
商汤科技、清华大学和复旦大学等机构联合开源了名为OmniCorpus的多模态数据集,规模达百亿级,旨在支持类似GPT-4级别的大型多模态模型训练。该数据集包含86亿张图像和1696亿个文本标记,远超现有数据集规模并保持高质量,具备广泛来源和灵活性,可轻松转换为纯文本或图像-文本对。经验证,该数据集质量优良,有望促进多模态模型研究,但同时也面临存储管理、数据偏见及隐私保护等挑战。
140 60
|
3月前
|
知识图谱
ARTIST的中文文图生成模型问题之通过GPT生成图像序列的问题如何解决
ARTIST的中文文图生成模型问题之通过GPT生成图像序列的问题如何解决
|
3月前
|
机器学习/深度学习 API 异构计算
7.1.3.2、使用飞桨实现基于LSTM的情感分析模型的网络定义
该文章详细介绍了如何使用飞桨框架实现基于LSTM的情感分析模型,包括网络定义、模型训练、评估和预测的完整流程,并提供了相应的代码实现。
|
3月前
|
机器学习/深度学习 自然语言处理 算法
7.1.3、使用飞桨实现基于LSTM的情感分析模型
该文章介绍了如何使用飞桨(PaddlePaddle)实现基于长短时记忆网络(LSTM)的情感分析模型,包括数据处理、网络定义、模型训练、评估和预测的详细步骤。
|
11天前
|
机器学习/深度学习 PyTorch 语音技术
语音识别模型
Whisper 是 OpenAI 推出的语音处理项目,基于深度学习,具备高度智能化和准确性的语音识别、翻译和生成能力。通过丰富的数据集和先进的注意力机制,Whisper 在多种语言环境下表现出色,支持语音识别、翻译、口语识别和语音活动检测等多种任务。用户可以通过 Python 代码或命令行轻松使用 Whisper,完成高质量的语音处理任务。官网:https://openai.com/research/whisper,GitHub:https://github.com/openai/whisper。
19 2
|
23天前
|
机器学习/深度学习 算法 语音技术
超越传统模型:探讨门控循环单元(GRU)在语音识别领域的最新进展与挑战
【10月更文挑战第7天】随着人工智能技术的不断进步,语音识别已经从一个相对小众的研究领域发展成为日常生活中的常见技术。无论是智能手机上的语音助手,还是智能家居设备,甚至是自动字幕生成系统,都离不开高质量的语音识别技术的支持。在众多用于语音识别的技术中,基于深度学习的方法尤其是递归神经网络(RNNs)及其变体如长短期记忆网络(LSTMs)和门控循环单元(GRUs)已经成为了研究和应用的热点。
19 2

相关产品

  • 智能语音交互