当前位置: 首页 > news >正文

seq2seq、attention、self-attention、transformer、bert

seq2seq

  • seq2seq:输入序列,输出序列,将输入的语言转为一个向量,最后输出再将向量转为语言
  • shortcoming:The final state is incapable of remembering a long sequence.即太长了记不住

attention

  1. 用attention可以改进seq2seq中的遗忘问题,大幅提高准确率,但是计算特别大
  2. attention会在encoder中的最后阶段s,计算s和之前的每个h计算相关性,告诉模型前面的哪些内容更重要,即计算权重,解决遗忘问题
  3. decoder每次更新状态时,都会与encoder进行对比一次,并且计算权重,下次再更新状态时,又重新对比encoder所有状态,计算权重,这样解决了遗忘问题了

self-attention

  • RNN都存在遗忘问题,self-attention每一轮更新状态时,都会重新看一遍前面的信息,防止遗忘。
  • self-attention相比attention更加广泛使用,不局限与seq2seq模型,可以用于所有rnn

transformer

  • 是seq2seq,不是rnn
  • 只有attention和dense layers
  • 刚开始有人提出过RNN,然后为了改进RNN遗忘问题,提出了ATTENTION用于解决seq2seq的遗忘问题,后来发现SELF-ATTENTION 相比Attetion应用更加广泛,可以用于任何RNN模型,最后有人提出ATTENTION 可以剔除RNN,效果更好
  • 传统的RNN网络,存在不能并行计算的问题,transformer可以并行。self-attention机制来进行并行计算,在输入和输出都相同

bert

bert是为了预训练Transformer中的encoder, bert其实就是只有编码器的transformer。
首先,训练第一个任务是,随机遮挡单词,然后通过梯度下降调参,让predict与被遮挡的单词尽量接近,所以这个训练无需人工标注,训练集自动生成,模型自动训练好参数
然后,训练第二个任务是,判断两个句子是否相连接。
bert想法简单效果好,但是计算量特别大

好处:

  • 使用预训练好的模型来抽词、句子的特征。预训练模型抽取了足够的信息
  • 不用更新预训练好的模型
  • 需要构建新的网络来抓取新任务需要的信息, 新的任务只需要增加一个简单的输出层
  • 相比于word2vec、语言模型来模型说,更加优秀,因为word2vec忽略了时序信息,语言模型只看一个方向
  • 基于微调的NLP模型

本文推荐看看shusenwang在bilibili上的课程。

http://www.lryc.cn/news/96033.html

相关文章:

  • 07.计算机网络——数据链路层
  • 海外服务器推荐:国外高性能服务器免费
  • Python基于PyTorch实现卷积神经网络分类模型(CNN分类算法)项目实战
  • JMeter 配置环境变量步骤
  • Rust vs Go:常用语法对比(六)
  • css元素定位:通过元素的标签或者元素的id、class属性定位
  • java享元模式
  • ESP32(MicroPython) 两轮差速五自由度机械臂小车
  • mysql基本函数(五)
  • liteflow 2.10 配置中心简单记录
  • 【C++】引用、内联函数等
  • RocketMQ教程-(4)-主题(Topic)
  • 睡眠健康数据分析
  • Spring Boot 3.x 系列【47】启动流程 | 启动监听器
  • 【KD】知识蒸馏与迁移学习的不同
  • 计算机内存中的缓存Cache Memories
  • Flask的send file和send_from_directory的区别
  • Java 队列
  • 【算法基础:搜索与图论】3.6 二分图(染色法判定二分图匈牙利算法)
  • SpringMVC 怎么和 AJAX 相互调用的
  • UCDOS和WPS推动计算机领域的汉字化发展,中文编程该谁力扛大旗?
  • golang+layui提升界面美化度--[推荐]
  • 42. 接雨水
  • Python学习阶段路线和内容
  • RocketMQ教程-安装和配置
  • 【LeetCode】55.跳跃游戏
  • Docker学习路线12:开发者体验
  • 后端服务迁移方案及过程记录
  • StAX解析
  • [MCU]AUTOSAR COM STACK - CAN协议栈