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

李宏毅bert记录

一、自监督学习(Self-supervised Learning)

监督学习中,模型的输入为x,若期望输出是y,则在训练的时候需要给模型的期望输出y以判断其误差——有输入和输出标签才能训练监督学习的模型。

自监督学习没有标注的训练集中,把训练集分为两部分,一个作为输入,另一个作为模型的标签。自监督学习是一种无监督学习的方法。


二、Contextualized Word Embedding

 从上下文中学习word embedding,同样一个词在不同的上下文中会学到不同的word embedding

三、ELMO

 以双向RNN为基础,最初输入的词汇的token,通过学习得到embedding,中间hidden layer的就是输入词汇的embedding。图中的蓝色块是正向学到的embedding,黄色块是逆向得到的embedding,将二者接起来

如果是deep RNN,每层的embedding都留着,以不同的权重阿尔法1、阿尔法2等将每层的embedding和原始token相加得到最终的embedding

阿尔法1、阿尔法2的大小如何确定:在执行不同的下游任务时,与下游任务的参数一起训练。那么不同的下游任务训练出的阿尔法1、阿尔法2也不同

四、BERT

bert先在未标记的文本语料库上训练pre-training(自监督学习),但 它本身没有什么用,BERT 只能做填空题, 然后在少量的标记数据上做fine-tuning,把它用在其他下游的任务里面

bert pre-training两种方法(在未标记的文本语料库上训练的)

第一种方法masking input:mask掉(换成某种特殊的token [MASK])或替换15%的词 输出对该单词的预测

BERT并不知道我们遮盖住的文字,因此BERT的目标就是最小化输出 y和期望值 y ’的误差,损失函数使用交叉熵。

第二种方法next sentence prediction:同时利用第一种办法的mask 输出这两个句子是否相接

 bert fune-tuning四种例子(在有标记的数据上训练):

该部分bert参数是由 bert pre-training中参数初始化的

fune-tuning过程中linear classifier参数从头学,bert参数微调即可

1:句子分类(情感分析 输入一个句子 输出句子类别 

2. 对每个单词分类(词性标注(POS tagging)) 输入一个句子 输出每个单词类别

3.前提假设(自然语言推理(NLI)) 输入两个句子 输出该前提是否支持假设

4.回答问题(基于信息抽取的问答系统(QA))输入文章和问题 输出答案

其他内容 

What does BERT learn?

分析一下BERT每一层究竟学到了什么。假设BERT有24层,文献上的意思是,第一层是分析词性,第二层是分析语法,第三层是词汇之间的关系,以此类推。文献的做法是将每一层做weight sum,任务不同,比如词性和语法任务,那么每一层的权值也不同,根据权值来判断这一层主要是贡献什么。接近input的层就做简单的任务,而接近output的层就做困难的任务。下图右侧中蓝色的条越长,证明该层对总任务贡献更大

参考: 

李宏毅《深度学习》 - BERT_李宏毅 bert ppt_Beta Lemon的博客-CSDN博客

李宏毅机器学习--self-supervised:BERT、GPT、Auto-encoder-CSDN博客

ELMO,BERT和GPT的原理和应用总结(李宏毅视频课整理和总结)-CSDN博客 

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

相关文章:

  • .Net6.0 Microsoft.AspNetCore.Http.Abstractions 2.20 已弃用
  • c2-C语言--指针
  • kafka入门(四):消费者
  • DFS、BFS求解leetcode图像渲染问题(Java)
  • 0基础学习云计算难吗?
  • 【RabbitMQ高级功能详解以及常用插件实战】
  • 开源的数据流技术,该选择Redpanda还是Apache Kafka?
  • 720度vr虚拟家居展厅提升客户的参观兴致
  • mysql中的DQL查询
  • 【数据结构高阶】红黑树
  • Unity中Batching优化的GPU实例化(1)
  • vue的data
  • Java基础课的中下基础课04
  • 解决vue ssr服务端渲染运行时报错:net::ERR_PROXY_CONNECTION_FAILED
  • APIFox:打造高效便捷的API管理工具
  • 半导体划片机助力氧化铝陶瓷片切割:科技与工艺的完美结合
  • java访问数据库的库和API概述
  • 如何实现远程公共网络下访问Windows Node.js服务端
  • Java架构师系统架构设计服务拆分应用
  • 盛域宏数合伙人张天:AI时代,数字化要以AI重构
  • Vue自定义指令插槽作用域插槽具名插槽
  • WIFI直连(Wi-Fi P2P)
  • 基于Spring+Spring boot的SpringBoot在线电子商城管理系统
  • 【稳定检索|投稿优惠】2024年光电信息与机器人发展国际会议(ICOIRD 2024)
  • 《python每天一小段》-- (11)操作 Excel 详解
  • 一文读懂MySQL基础知识文集(8)
  • 持续集成交付CICD: Sonarqube REST API 查找与新增项目
  • 分层网络模型(OSI、TCP/IP)及对应的网络协议
  • 如何衡量和提高测试覆盖率?
  • AWS Ubuntu设置DNS解析(解决resolve.conf被覆盖问题)