机器学习李宏毅学习笔记20


前言

Auto-encoder(一)


一、auto-encoder

Auto-encoder可以算作self-supervised learning的一种方法。
Self-supervised learning用大量没有标注的资料。用没有标注的资料训练一个模型,发明一些不需要标注资料的任务,如填空、预测下一个token等,给模型进行学习。BERT只会做填空题,GPT只能补完一句话,但是可以把他们用在下游任务中。
在这里插入图片描述
以影像为例子,在auto-encoder里有两个network,一个叫做encoder,一个叫做decoder。Encoder读入一个图片变为一个向量,decoder读入向量,产生一个图片。训练目标让encoder的输入和decoder输出越接近越好。这个概念和Cycle GAN一样,希望输入的图片经过两次转换后跟原来越接近越好。这个任务不需要标注资料。
在这里插入图片描述
原来的图片可以看做时一个很长的向量,encoder输出的向量,让这个向量变为一个低纬度的向量,低纬度向量做接下来的任务。让低纬度向量应用在下游任务是auto-encoder的常用做法。
Auto-encoder做的事情是把图片压缩再还原,但是还原为什么能还原回来。
在这里插入图片描述
假设图片是33(用9个数值描述一个33的图片),假设encoder输出的是2维的,如何把2个数值还原成9个数值。应为对于影像来说,并不是所有3*3的矩阵都是图片,图片的变化是有限的,可能训练时看到的图片状况只有两种,
在这里插入图片描述
所以可以用两个维度表示。
在这里插入图片描述

二、de-noising auto-encoder

Auto-encoder的一个常见变形是,de-noising auto-encoder。把原来要输给encoder的图片加入一些杂讯,通过encoder和decoder试图还原加入杂讯之前的图片。比之前的auto-encoder多了一个任务:去除杂讯。
在这里插入图片描述
看现在BERT也可以看做一个de-noising的auto-encoder,训练时输入盖上的部分就可以看做noise,bert的模型可以看做时encoder,bert的输出是embedding,一个linear的模型就是decoder,decoder的任务就是还原原来的句子。可以说bert就是一个de-noising的auto-encoder。


总结

学习视频地址:https://www.bilibili.com/video/BV13Z4y1P7D7/?p=22&spm_id_from=333.1007.top_right_bar_window_history.content.click&vd_source=3a369b537e1d34ff9ba8f8ab23afedec

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值