机器学习--Transformer 1

Transformer 是一个基于自注意力的序列到序列模型,与基于循环神经网络的序列到序列模型不同,其可以能够并行计算。

一、序列到序列模型

序列到序列模型输入和输出都是一个序列,输入与输出序列长度之间的关系有两种情况。第一种情况下,输入跟输出的长度一样;第二种情况下,机器决定输出的长度。

1.一些常见的例子

在这里插入图片描述

语音识别:输入是声音信号,输出是语音识别的结果,即输入的这段声音信号所对应的文字。我们用圆圈来代表文字,输入跟输出的长度有一些关系,但没有绝对的关系,输入的声音信号的长度是 T,并无法根据 T 得到输出的长度 N。其实可以由机器自己决定输出的长度,由机器去听这段声音信号的内容,决定输出的语音识别结果。
机器翻译:机器输入一个语言的句子,输出另外一个语言的句子。输入句子的长度是N,输出句子的长度是 N′。输入“机器学习”四个字,输出是两个英语的词汇:“machine learning”。N 跟 N′之间的关系由机器决定。
语音翻译: 对机器说一句话,比如“machine learning”,机器直接把听到的英语的声音信号翻译成中文。
语音合成
输入文字、输出声音信号就是语音合成(Text-To-Speech,TTS)。现在还没有真的做端到端(end-to-end)的模型,以闽南语的语音合成为例,其使用的模型还是分成两阶,首先模型会先把白话文的文字转成闽南语的拼音,再把闽南语的拼音转成声音信号。从闽南语的拼音转成声音信号这一段是通过序列到序列模型实现的。
多标签分类
多标签分类(multi-label classification)任务也可以用序列到序列模型。多类的分类跟多
标签的分类是不一样的。如下图所示,在做文章分类的时候,同一篇文章可能属于多个类,
文章 1 属于类 1 和类 3,文章 3 属于类 3、9、17。
在这里插入图片描述

二、 Transformer结构

一般的序列到序列模型会分成编码器和解码器。编码器负责处理输入的序列,再把处理好的结果“丢”给解码器,由解码器决定要输出的序列。
在这里插入图片描述
序列到序列典型的模型就是 Transformer,其有一个编码器架构和一个解码器架构。
在这里插入图片描述
接下来分别介绍一下编码器和解码器。

1.编码器

在这里插入图片描述

如上图所示,编码器输入一排向量,输出另外一排向量。自注意力、循环神经网络、卷积神经网络都能输入一排向量,输出一排向量。Transformer的编码器使用的是自注意力,输入一排向量,输出另外一个同样长度的向量。
在这里插入图片描述

如上图所示,编码器里面会分成很多的(block),每一个块都是输入一排向量,输出一排向量。输入一排向量到第一个块,输出另外一排向量作为下一个块的输入,以此类推,最后一个块会输出最终的向量序列。
Transformer 的编码器的每个块并不是神经网络的一层,每个块的结构如下图所示
在这里插入图片描述

在每个块里面,输入一排向量后做自注意力,考虑整个序列的信息,输出另外一排向量。接下来这排向量会“丢”到全连接网络网络里面,输出另外一排向量,这一排向量就是块的输出,事实上在原来的 Transformer 里面做的事情是更复杂的。
Transformer 里面加入了残差连接(residual connection)的设计,如下图所示,
在这里插入图片描述

最左边的向量 b 输入到自注意力层后得到向量 a,输出向量 a 加上其输入向量 b 得到新的输出。
得到残差的结果以后,再做层归一化(layer normalization)。层归一化输入一个向量,输出另外一个向量。层归一化会计算输入向量的平均值和标准差。(与批量归一化的区别:批量归一化是对不同样本不同特征的同一个维度去计算均值跟标准差,但层归一化是对同一个特征、同一个样本里面不同的维度去计算均值跟标准差,接着做个归一化。)
输入向量x,里面每一个维度减掉均值 m,再除以标准差 σ 以后得到 x′ 就是层归一化的输出
在这里插入图片描述

得到层归一化的输出以后,该输出才是全连接网络的输入。
输入到全连接网络,还有一个残差连接,把全连接网络的输入跟它的输出加起来得到新的输出。接着把残差的结果再做一次层归一化得到的输出才是 Transformer 编码器里面一个块的输出。

在这里插入图片描述
上图给出了 Transformer 的编码器结构,其中 N× 表示重复 N 次。首先,在输入的地方需要加上位置编码。如果只用自注意力,没有未知的信息,所以需要加上位置信息。多头自注意力就是自注意力的块。经过自注意力后,还要加上残差连接和层归一化。接下来还要经过全连接的前馈神经网络,接着再做一次残差连接和层归一化,这才是一个块的输出,这个块会重复 N 次。当然Transformer 的编码器其实不一定要这样设计,永远可以思考看看有没有更好的设计方式。

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

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

相关文章

专业140+总400+重庆邮电大学801信号与系统考研经验重邮电子信息与通信工程,真题,大纲,参考书。

今年报考重庆邮电大学研究生,初试专业课801信号与系统140总分400,总结一下自己去年的复习经验,希望对大家复习有帮助。 专业课: 重邮专业801信号与系统难度中等,今年140算是正常发挥,没有达到Jenny老师要求…

【诚信3·15】广州流辰信息|诚信至上,始终如一!

每一个承诺,广州流辰信息皆倾心对待;每一份期待,广州流辰信息亦用心守护。近十年用专业缔造好品质,用服务追求好口碑。在为客户服务的路上,流辰信息始终无惧考验,保持初心。在3.15国际消费者权益日&#xf…

绝地求生投掷物小知识

hi,我是闲游盒!本期给大家带来的是详细投掷物的小技巧,投掷物道具主要有手雷、闪光弹、烟雾弹、燃烧瓶,C4和汽油桶为特殊不详细说明。 手雷 破片手雷是一种很占背包的投掷物,但能够造成大范围的伤害,如果没记错的话&a…

【探索Linux】—— 强大的命令行工具 P.27(网络编程套接字 —— UDP协议介绍 | TCP协议介绍 | UDP 和 TCP 的异同)

阅读导航 引言一、UDP协议1. UDP简介2. UDP的特点3. UDP的使用场景4. UDP的局限性 二、TCP协议1. TCP简介2. TCP的特点3. TCP的应用场景 三、UDP 和 TCP 的异同温馨提示 引言 在上一篇文章中,我们深入探讨了Linux网络编程的基石——套接字(Socket&#…

蓝桥杯深度优先搜索|剪枝|N皇后问题|路径之谜(C++)

搜索:暴力法算法思想的具体实现 搜索:通用的方法,一个问题如果比较难,那么先尝试一下搜索,或许能启发出更好的算法 技巧:竞赛时遇到不会的难题,用搜索提交一下,说不定部分判题数据很…

基于java+springboot+vue实现的高校社团管理系统(文末源码+Lw+ppt)23-419

摘 要 系统根据现有的管理模块进行开发和扩展,采用面向对象的开发的思想和结构化的开发方法对高校社团的现状进行系统调查。采用结构化的分析设计,该方法要求结合一定的图表,在模块化的基础上进行系统的开发工作。在设计中采用“自下而上”…

pycharm中连接远程服务器

文章目录 概要文件进行映射将本地的project和远程的project进行映射,一定要使用sftp本地文件和远程的位置配置不想将远程的文件同步时候,可以进行下面设置 配置远程服务器的python解释器需要setting-->python interpreter-->add---> on ssh选择…

2024年AI辅助研发:技术革新引领研发新纪元

文章目录 📑前言一、AI辅助研发的技术进展二、行业应用案例三、面临的挑战与机遇四、未来趋势预测全篇总结 📑前言 随着科技的飞速发展,人工智能(AI)已逐渐成为推动社会进步的重要力量。特别是在研发领域,A…

数据赋能:构建数据治理与AI的协同闭环_光点科技

在数字化浪潮中,数据已成为企业的新型燃料,而AI则是提炼这种燃料的精炼厂。数据治理与AI的协同作用,正在引领企业迈向更智能、更高效的未来。本文将展示企业如何通过将数据治理与AI技术相结合,实现数据价值的最大化并推动企业的持…

2月大家电线上市场分析:综合电商(京东淘宝天猫)排行榜出炉

今年2月,大家电在传统电商平台的表现不敌去年。 根据鲸参谋数据显示,2月大家电综合电商(京东天猫淘宝)累计销量约440万件,同比去年下滑33%;销售额约96亿元,同比去年下滑27%。其中,京…

B/S基于云计算的云HIS智慧医院管理系统源码带电子病历编辑器

目录 一、系统概述 二、开发环境 三、系统功能 1、门诊部分 2、住院部分 3、电子病历 4、药物管理 5、统计报表 6、综合维护 7、运营运维 云HIS系统:病案首页 云his系统源码 SaaS应用 功能易扩 统一对外接口管理 现如今,大数据、云计算、移动…

如何保证Redis和数据库数据一致性

缓存可以提升性能,减轻数据库压力,在获取这部分好处的同时,它却带来了一些新的问题,缓存和数据库之间的数据一致性问题。 想必大家在工作中只要用了咱们缓存势必就会遇到过此类问题 首先我们来看看一致性: 强一致性…