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

关于BERT和embedding

embedding到一个低维向量,但是需要回到onehot高维表示,所以大部分填词游戏最后都需要加上一个MLP接头。

word2vec如此简单的结构,学习到的是embedding

基于计数的统计方法和word2vec融合就形成了glove词嵌入模型

总结:通过各种填词游戏训练最后得到好的embedding

使用负采样代替大矩阵乘法+softmax的大量计算(抽列+sigmoid)

负采样:使用二分类拟合多分类  只计算出一个值即可?接上sigmoid计算二分类loss?什么垃圾

因此,所有的多分类都可以使用二分类简化,因为softmax和sigmoid本质也一样

负采样:对负例样本进行采样:比如一个+,100个-,代替一个+,999999个-

负采样对语料库中的高频词进行,直观上合理,但是数学上为什么合理?

一般word embedding和特定任务的训练是分开的(即迁移学习),但是也可以一起。

woman-queen=man-?这种问题就是来评估embedding效果的,直接vec-vec查看即可

skip-gram比CBOW好,难以直观理解

RNN天然携带position信息,还可以处理无限长的序列;(RNN是语言模型,即计算条件概率P(next|past1, past2, past3),进而计算P(sentence))

transformer由于attention算法没有考虑位置信息,所以需要position embedding

关于RNN的一切:

RNN只是个数据融合器/有限状态机,顾名思义隐含向量叫做状态,保存了前文综合信息,仅此而已。

做预测还需要接上奶嘴MLP。

embedding  RNN  和奶嘴MLP网络是割裂的三个层次,积木拼在一起。

所以RNNLSTM只是一个信息融合机,和预测下一个词等应用完全无关。

没有什么teacher forcing问题。

hidden = hidden.detach()让hidden忘掉了他是从哪里计算得来的,于是再使用hidden进行运算,hidden就会被当作新的独立变量,它的祖先也就得不到梯度更新了。(truncated BPTT)

预测下一个词的模型的评价指标:困惑度=e^Loss(困惑度本质就是loss罢了)

困惑度的物理意义:困惑度表示“概率的倒数”(正确标签对应的概率倒数),也可以解释为分叉度,即有几个分叉选择

RNN为什么不擅长长时记忆?答:BPTT会发生梯度消失/爆炸

RNN通过向过去传递梯度,学习长时依赖关系,但是中间发生了梯度消失/爆炸,于是学不到长期关系。(RNN如何学习长期关系?答:通过向很长时间以前的时刻传递梯度)

梯度消失原因:1.反复经过激活函数(tanh两边都趋于0,所以反向经过一次就会梯度变小)

梯度消失/爆炸的原因:2.反向传播每个时间RNN层中的梯度都乘以相同的权重矩阵,于是爆炸/消失

梯度爆炸的应对策略:梯度裁剪

梯度消失的解决方案:LSTM

原因:化矩阵乘积为哈达玛元素乘积,且每次向量不一样,不会出现累积效应

相关文章:

  • MacBook Air M3的电脑怎么样 新买MacBook Air提示内存不足 苹果电脑内存不够用怎么办
  • Nginx 部署 Vue 打包项目,将dist目录上传至ngnix中的目录中,遇到的问题
  • Git 和 TortoiseGit 安装和配置(图文详解)
  • Java程序之简单求和
  • 第一章 项目简介创建主窗体
  • 【CRASH】freelist异常导致的异常地址访问
  • zip文件上传到linux服务器文件大小发生变化
  • DSP C6000教学实验箱操作教程_数字图像处理:5-3 图像缩放
  • 《人工智能导论》书面作业
  • 帝国cms批量取消文章审核-把已审核的文章改成未审核的方法
  • EasyCVR/EasyDSS无人机直播技术助力野生动物监测
  • Aeron:Multi-Destination-Cast
  • Arduino单片机详解
  • 深入了解Redis的TYPE命令
  • Python启多个线程,运行多个Python文件
  • [PHP内核探索]PHP中的哈希表
  • [译]如何构建服务器端web组件,为何要构建?
  • 【mysql】环境安装、服务启动、密码设置
  • 【跃迁之路】【444天】程序员高效学习方法论探索系列(实验阶段201-2018.04.25)...
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • Java小白进阶笔记(3)-初级面向对象
  • java小心机(3)| 浅析finalize()
  • jquery cookie
  • Js实现点击查看全文(类似今日头条、知乎日报效果)
  • nodejs调试方法
  • Python 基础起步 (十) 什么叫函数?
  • Python实现BT种子转化为磁力链接【实战】
  • use Google search engine
  • 阿里云购买磁盘后挂载
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • ------- 计算机网络基础
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 浅谈web中前端模板引擎的使用
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 如何优雅地使用 Sublime Text
  • 使用putty远程连接linux
  • 鱼骨图 - 如何绘制?
  • 交换综合实验一
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • ​卜东波研究员:高观点下的少儿计算思维
  • # 服务治理中间件详解:Spring Cloud与Dubbo
  • #Js篇:单线程模式同步任务异步任务任务队列事件循环setTimeout() setInterval()
  • #pragma once与条件编译
  • $.ajax,axios,fetch三种ajax请求的区别
  • $.proxy和$.extend
  • (安卓)跳转应用市场APP详情页的方式
  • (二)正点原子I.MX6ULL u-boot移植
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)计算机毕业设计SSM智能化管理的仓库管理
  • (六)DockerCompose安装与配置
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (三)c52学习之旅-点亮LED灯
  • (十二)Flink Table API
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default