![在这里插入图片描述](https://img-blog.csdnimg.cn/a4680e86300543e28338bf6b0a15bd2c.png)
review : self-supervised learning for text
![在这里插入图片描述](https://img-blog.csdnimg.cn/9d384d72cdd842c499c2d2f4630ec7f8.png)
1. Self-supervised learning for speech
![在这里插入图片描述](https://img-blog.csdnimg.cn/a139337824eb4280a3337e504d29ff6c.png)
使用Speech版本的bert能比较好的作用于语音任务上,如果没有self-supervised的话,别的模型可能需要上万小时的数据。
Superb
![在这里插入图片描述](https://img-blog.csdnimg.cn/194041ac7f1446c88bbd4a6230e097b9.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/7fb9a64c8e5b46df8bca1c03c51ce4e7.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/762a0eb3dc3c493ea805dae1c81932ca.png)
2. Self-supervised Learning for Image
![在这里插入图片描述](https://img-blog.csdnimg.cn/43d454aaa63347c3806713fab0ea7fd4.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/10d8b356d1bf464284b3e1ab57732a16.png)
3. Generative Approaches
![在这里插入图片描述](https://img-blog.csdnimg.cn/978fc841ec724b1f9a07ab13215a3cab.png)
Speech
应用于语音上
- Bert系列
把声音信号的某些部分盖起来,让模型还原回来
![在这里插入图片描述](https://img-blog.csdnimg.cn/10b6dc44936a4b33ba2b825448aea6cb.png)
- GPT系列
给定一个文字,预测下一个文字是什么;给定一段声音信号,预测接下来的语音什么:
![在这里插入图片描述](https://img-blog.csdnimg.cn/653fb87d251b42e4a3ed4f65dde1a22b.png)
文本是一个词,声音要大于三个词。
Image
应用于图像上,拉直成一维向量
![在这里插入图片描述](https://img-blog.csdnimg.cn/049bd881e7824dc8b223f8a5ca8a4c4a.png)
然后盖住某些像素,预测下一个像素;或者给定一段像素,预测后面的像素是什么,之后接下游任务,比如分类。
4. Predictive Approach
![在这里插入图片描述](https://img-blog.csdnimg.cn/54b823c8a0784c2ba6df546b88da51ab.png)
语音和图像相较于文本来说包含了非常多的细节,往往更加困难一些。
Image——预测图片是否被旋转过
![在这里插入图片描述](https://img-blog.csdnimg.cn/5a3cb31a1cde4cdfafc678b1f2f2315f.png)
Image——内容预测
预测两个块 第二个小块在第一个小块的哪个方向。
![在这里插入图片描述](https://img-blog.csdnimg.cn/2f12aa612b0b4439a1601dac6dce26de.png)
不做生成就能自监督学习。
![在这里插入图片描述](https://img-blog.csdnimg.cn/1c30133749274529be43cc80688e1249.png)
让机器预测产生cluster的结果。
5. Contrastive Learning——对比学习
![在这里插入图片描述](https://img-blog.csdnimg.cn/6da799f763494262b115bd945bc1a501.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/ffc9de02c1324e528f51a9ce46a1d48a.png)
让相同的向量越近越好,让不相同的向量越远越好。
但是不知道类别,怎么做呢?
SimCLR
对图像做data augmentation的图片是positive pair,如果是另外一张图片的data augmentation的图片是negative pair。
![在这里插入图片描述](https://img-blog.csdnimg.cn/d3a28c171c504621b540bfc64ff7e5ff.png)
data augmentation:
- random crop
- color distortions
- gaussian blur
语音版本的speech simclr
MoCo
![在这里插入图片描述](https://img-blog.csdnimg.cn/24e9badb541e4d179dd50121fc33a2c7.png)
语音版本的对比学习
![在这里插入图片描述](https://img-blog.csdnimg.cn/db0b2c3bce9a4061815e3c652f26807b.png)
可以将encoder用在下游任务里面或者将encoder和predicter一起用在下游任务里面。
![在这里插入图片描述](https://img-blog.csdnimg.cn/05f4d0f4544d4bfeaa08affe5fd3b88c.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/08e27db0800b44d9b66196effd3648fb.png)
将token盖起来,让bert学会做填空:
![在这里插入图片描述](https://img-blog.csdnimg.cn/dd050a1492864fdeb8f5828088cd45d4.png)
wav2vec 2.0版本将encoder和bert encode一起联合起来训练,将输入的某些部分mask,用输出的向量来预测mask的tokek是哪一个,越mask的3越近越好,与旁边的越远越好。
![在这里插入图片描述](https://img-blog.csdnimg.cn/7cd753f0f75e4b2e895195ee46c43870.png)
bert其实也是一种对比学习,也是让正确的答案越近越好
![在这里插入图片描述](https://img-blog.csdnimg.cn/de4f07cb19f748c899a821c1a169d6bd.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/4f08ee8a4efe463dade22bff8feb66b8.png)
分类任务:分数越大越好
对比学习任务:分数越小越好
分类任务如果类别很多的话,random pair不可能穷举所有的其他组合,可以采用contrasive方式学习,让正确的embedding与last layer output的乘积越小越好,随机选取部分不正确的embedding与last layer output的乘积越大越好。
![在这里插入图片描述](https://img-blog.csdnimg.cn/2b815ab98be44abe91d443bc83071388.png)
比较难穷举所有的负样本,只是想让embedding最能代表它本身,可以将bert当做对比学习的思想。
![在这里插入图片描述](https://img-blog.csdnimg.cn/927cf1cf0c2541ec82add52772fa4891.png)
难点
选择负样本:
- 选择够难的负样本,但不要太难的负样本(比如同类两张猫,将猫的向量也拉远了)
![在这里插入图片描述](https://img-blog.csdnimg.cn/64e254547aa145e5bed8cff6e7b0670d.png)
下面介绍避开挑选负样本的方法
6. Bootstrapping Approaches
![在这里插入图片描述](https://img-blog.csdnimg.cn/8c52dd7d73654be3857544d9c78d7776.png)
没有负样本的话,只要给两个图片就给出两个非常接近的向量,这不是我们想要的结果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/7a8259715ac14753bc399d4f3b65e010.png)
只用正样本的话,一条通道接一个predictor,让两台通道产生embedding越相近越好,但只更新右边的通道,训练好了后将右边的通道参数同步到左边的通道:
![在这里插入图片描述](https://img-blog.csdnimg.cn/1ce5409ac40a4b25a80182139102e8c6.png)
- 左右两边的架构要有点不同
- 只训练某一边的encoder,再把训练好的参数复制到另外一边
两条通道不一样,让两个无法一起作弊,也可以以知识蒸馏的方式理解上面架构:
![在这里插入图片描述](https://img-blog.csdnimg.cn/d369be3e874c40e58a799ad05e87f51d.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/617fb178528c43bd95b49ab5a6d83b25.png)
相关的算法:
7.Simply Extra Regularization
![在这里插入图片描述](https://img-blog.csdnimg.cn/dfb47c409d824593911dcefb9144ff68.png)
给的是一个batch,要求每个维度的差别要大于一个阈值:
![在这里插入图片描述](https://img-blog.csdnimg.cn/de698f30b5cf4487b5156a6b44df8004.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/aa510d3c88c041b2bcfbb3dbbad40fc2.png)
最关键的是variance,后续可以加点优化Covariance, 语音方向有类似DeloRes
总结
![在这里插入图片描述](https://img-blog.csdnimg.cn/ac852265fc94474d95627d017020fb10.png)