关于BERT和embedding

news2024/10/5 11:11:50

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

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

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

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

相关文章

FL Studio21.2.9最新中文永久激活码注册码

FL Studio21中文版本激活码注册码,这个好东西我真的要给大家种草一下!🌱 让我来给大家介绍一下这款神奇的软件吧!FL Studio21是一款非常专业的音乐制作软件,功能强大到让人惊叹!😍 它可以帮助音…

AI预测福彩3D采取888=3策略+和值012路或胆码测试6月15日新模型预测第5弹

今天咱们继续验证新模型的8码定位3,目前新模型新算法8码定位经过4次测试,已命中3次,9码定位连续命中4次。咱们重点是预测8码定位3+和值012胆码。有些朋友看到我最近几篇文章没有给大家提供缩水后的预测详情,在这里解释…

使用docker构建自己的镜像并推送到远程镜像仓库

这里镜像仓库使用阿里云仓库,其他仓库可能类似,可以参考,个人实例可以免费使用。 背景 遇到的问题:需要定制一个自己的镜像,在上面安装一些环境,然后将镜像托管到公共镜像仓库,在其他地方使用…

什么是快乐?

什么是快乐? What is Happiness? 1. 快乐不是追求外在的物质,而是内心的平静与满足。当我们学会感恩,懂得珍惜眼前的一切,心中自然会充满喜悦。快乐并非来自拥有更多,而是感受到已经拥有的足够。每一天都怀抱感激之情…

04.VisionMaster 机器视觉找圆工具

VisionMaster 机器视觉找圆工具 定义 先检测出多个边缘点然后拟合成圆形,可用于圆的定位与测量 注意:找圆工具 最好和【位置修正】模块一起使用。具体可以看下面的示例。 参数说明: 扇环半径:圆环ROI的内外圆半径 边缘类型&a…

手把手教学部署前端项目到nginx

1.下载nginx 说明:下载11.20.2版本的nginx。 2.配置nginx 说明:找到conf目录下的nginx.conf文件。 2.1代理静态资源 说明:服务器块监听的端口为8089,意味着Nginx将在8089端口上接收和处理HTTP请求。root后面的值相当于html文…

socket收发数据的处理

1. TCP 协议是一种基于数据流的协议 Socket的Receive方法只是把接收缓冲区的数据提取出来,当系统的接收缓冲区为空,Receive方法会被阻塞,直到里面有数据。 Socket的Send方法只是把数据写入到发送缓冲区里,具体的发送过程由操作系统负责。当操作系统的发送缓冲区满了,Send方法会…

Android中的消息异步处理机制及实现方案

基本介绍 当我们需要执行复杂的计算逻辑,网络请求等耗时操作时,服务器可能不会立即响应请求,如果不将这类操作放在子线程中运行,就会导致主线程被阻塞住,从而影响用户的使用体验如果想要更新应用程序中的UI控件&#…

idea远程调试docker容器内正在运行的线上项目

1.重新编写Dockerfile文件 在原本的Dockerfile上新增参数 就是 运行jar包增加调试参数 增加调试暴漏的端口号 -agentlib:jdwptransportdt_socket,servery,suspendn,address*:50052.在运行docker容器的时候增加暴漏端口5005 3.打开idea就是正在运行的项目 4.选择远程配置 5.配…

解决MyBatis获取刚插入数据的ID值

解决MyBatis获取刚插入数据的ID值 Mybatis获取刚插入数据的ID值有很多解决方法,目前采用以下方式进行获取。 添加完数据后直接返回刚添加数据的id // UserDao.java public static void addUser() throws Exception{InputStream resourceAsStream Resources.getR…

idea的java代码引用proto文件报错

尝试了四种办法,感觉第一个和第二个比较有效。 前提是要先安装了 proto 的idea插件。 1.修改idea配置文件编译大文件的限制 proto生成的源文件有数万行,源文件过大导致 idea 拒绝编译过大的源文件。 解决方案: 如果 protoc 生成的 class 文…

程序优化 --- arthas trace命令使用

最近在做优化,通过arthas的trace命令去观察方法内的耗时情况以便对程序进行修改. 1.启动arthas之后选择需要监测的程序 2.找到需要监测的接口,一般都是直接找service例子如下: trace 类地址.类名 方法名 (中间有空格)

智能计算系统-概述

1、人工智能技术分层 2、人工智能方向人才培养 3、课程体系的建议 4、智能系统课程对学生的价值 5、智能计算系统对老师的价值 6、什么是智能计算系统 7、智能计算系统的形态 8、智能计算系统具有重大价值 9、智能计算系统的三大困难 10、开创深度学习处理器方向 11、寒武纪的国…

MOS开关电路应用于降低静态功耗

本文主要讲述MOS开关电路的应用,过了好久突然想整理一下,有错误的地方请多多指出,在做电池类产品,需要控制产品的静态功耗,即使让芯片进入休眠状态,依旧功率很大,所以在电路中加一组软开关,防止…

嵌入式软件工程师入何突破瓶颈?

各位关注嵌入式软件工程师发展的朋友们,下面来探讨一下嵌入式软件工程师该如何突破瓶颈。首先要强调的是,不要仅仅将自己局限在嵌入式软件工程师这一角色定位上。 事实上,嵌入式软件工程师已经掌握了诸多业务层面的内容,完全有能力…

【C++】编译原理

三、C编译 前面给大家演示了如何从写C代码到编译代码再到执行代码的全过程。这个过程中非常重要的编译环节,被我们一个按钮或者一个ctrlF7快捷键就给带过了。其实这个环节非常重要,如果你非常了解这个环节,你开发源代码就会更加自信和清醒&a…

pytest + yaml 框架 -61.jenkins+allure+钉钉通知添加测试结果

前言 上一篇pytest + yaml 框架 -60.git+jenkins+allure+钉钉通知反馈 已经实现测试结果用钉钉通知。 本篇继续在钉钉通知里添加测试的汇总结果,此功能在pytest-yaml-yoyo v1.5.2版本上实现。 Environment Injector 插件 在运行完用例后会生成一个summary.json 文件,汇总…

【系统架构】REST风格

系列文章目录 第一章 系统架构的演进 第二章 REST风格架构 文章目录 系列文章目录前言一、进程间的通信普通管道(Pipe)或者具名管道(Named Pipe)信号(Signal)信号量(Semaphore)消息…

项目实战中学透Spring-业务场景驱动-Spring01(IOCDI)

软件环境 JDK1.8 Maven3.6 IDEA2022.3(Ultimate Edition) Spring5.3.29 主要知识点大纲 1.Spring简介 2.Spring整体架构 3.业务场景中理解Spring IOC(控制反转)和DI(依赖注入) 4.业务场景中理解IOC容器,实例化容器,实例化Bean的几种方式 5.业务…

在C#中对 JSON进行序列化和反序列化处理

概述:在现代软件开发领域,不同系统和平台之间的数据交换是不可或缺的方面。JSON(JavaScript 对象表示法)因其轻量级、人类可读和易于解析的特性而成为一种无处不在的数据格式。使用 C# 🚀编程的 JSON 序列化和反序列化…