李宏毅老师-自监督学习(Self-supervised Learning)Part2

慢慢来,会更好!
大家好,我是一个想研究又不会研究的研究生
陪伴大家一起学习成长!

我们先来学习Bert这个model
什么是Self-supervised Learning呢?

supervised:比如说现在输入一篇文章,判断它是正面还是负面文章
我们就需要文章和label(它是正面还是负面)才能够进行train

self-supervised:在没有label的情况下,自己想办法做supervised
假设现在只有一堆文章,没有标注
想办法让一部分文章作为model的输入,另一部分作为label
让y与x11越接近越好

在这里插入图片描述

接下来,我们拿BERT这个model详细说一下self-supervised到底是怎么做的呢?

BERT一般用在自然语言、文字上,输入一排向量,输出一排向量
用的是Transformer Encoder架构

随机的遮住一些tokens,盖住哪些,随机决定。
1.把句子里面的某一字换成特殊的符号(可以想像成新的中文的字,在字典里从来没有出现过)
2.随机把某一个字换成另一个字(随便换成某一个字)

被遮盖的单位输出的向量经过linear(乘上一个矩阵),再经过softmax输出一个向量,
去和所有的字体做对比,通过计算minimize cross entropy,来找出被遮盖的字最可能是什么字。

在这里插入图片描述

Next sentence Prediction (观察两个数据是相连还是不相连)

input:两个句子  output:YES/NO
SEP:分隔符号,代表两个不同的句子
CLS:输出Yes/No:这两个句子是不是相接的,如果是输出YES,反之NO

但是这个Next sentence Prediction对于接下来BERT想做的事情是不太有用的
原因可能是对于BERT来说,要分辨两个句子是不是相接可能是容易的
没有借由Next sentence Prediction这个任务学到太多的东西

而另一招和Next sentence Prediction相像的SOP是有用的
SOP(让BERT分辨哪一句在前面,这两句是相接的,让判断顺序)

在这里插入图片描述

那BERT怎么用呢?

BERT除了做填空题(Masked),还能用在解各式各样的任务呢
BERT真正的任务就是DownStream Tasks

1.产生BERT的过程叫做Pre-train,
该过程一般需要进行masking input 和next sentence prediction这两个操作。
2.产生出来的BERT只会做填空题,BERT做过fine-tune(微调)之后才能做各式各样的任务。
3.pre-train过程是unsupervised learning,fine-tune过程是supervised learning,
所以整个过程是semi-supervised。

在这里插入图片描述

在学习BERT是怎样Fine-tune之前,我们先来看看它的能力

在这里插入图片描述

GLUE(用来测试BERT的能力)

GLUE是自然语言处理任务,总共有九个任务。
BERT分别微调之后做这9个任务,将9个测试分数做平均后代表BERT的能力高低。

在这里插入图片描述

那么,BERT到底是怎么被使用的呢?我们会举四个BERT的case来说明。

这四个案例的BERT都是经过pre-train的BERT,会做填空题了,同时这个BERT的初始化参数来自学会做填空题的BERT。
Case1
输入:句子
输出:类别
我们仍然需要下游任务的标注资料,提供给大量的句子和label
才能去训练这个model

linear的参数是随机初始化的。训练就是更新BERT和linear这两个模型里的参数。

在这里插入图片描述

会做填空题BERT的初始化参数比随机初始化要好

在这里插入图片描述

Case2
输入:sequence
输出:长度和输出一样

在这里插入图片描述

输入:两个句子
输出:一个类别

注意:虽然Bert举的例子都是文字上的,但是也可以把它用在语音方面

在这里插入图片描述
在这里插入图片描述

Case4 问答系统
针对回答能在文中找到的问答。输入问题和文章,输出两个正整数s,e,表示第s个字到第e个字之间的字就是答案。

在这里插入图片描述

经过内积之后通过softmax,分数最高的位置就是起始或终止位置。
橙色向量代表答案的起始位置,蓝色向量代表答案的结束位置。

在这里插入图片描述

在一个transformer的模型中,输入的序列损坏,输出的是还原损坏的输入。
如何损坏输入数据呢?

可以采用mass或BART手段
1.mass是盖住某些数据(类似于masking)
2.BART是下图右边所有的方法(盖住数据、删除数据、打乱数据顺序、旋转数据等等)

可见,BART要比mass好

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值