Auto-Encoder学习笔记

写在前面

  • 本篇博客是本人在学习李宏毅老师的《机器学习》课程中的Auto-Encoder时,记录的相关笔记,由于只记录了我认为相对重要的部分,所以可能有未记录的部分。博客中的图片来自于教学视频中的截图,视频资源地址为:传送门,感兴趣的读者可以前去学习,李宏毅老师讲解的非常透彻,让人醍醐灌顶。

Auto-Encoder

Auto-Encoder可以看出是自监督的一种,在训练的时候不需要数据集提供标签,也可以说是预训练。

在这里插入图片描述

Auto-Encoder的结构

  • Auto-Encoder由编码器和解码器组成,都是网络,数据集可以是一些无标注的图片。

  • 编码器读入一张图片,输出一个向量,解码器读入这个向量,最后产生一张图片。Auto-Encoder的目标就是要让产生的图片和输入的图片越接近越好。

  • Encoder训练是为了捕获输入数据的关键特征,是对输入数据的另一种表示形式,一般比原始数据更简单。而Decoder是将这种表示重构回原始输入。将Encoder的输出用于下游任务,相当于是迁移学习或特征提取,在不依赖具体任务的情况下,提取输入数据的通用特征

  • Auto-Encoder可以做什么?

    • 比如一张图片组成的向量非常长,在经过Encoder之后,得到一个更低维的向量,然后用这个低维的向量去做下游任务。相当于将复杂的东西用简单的形式表示了,这样在做下游任务的时候,就不需要过多的训练资料。

在这里插入图片描述

  • De-noising Auto-Encoder

    • 在Encoder读入图片前,先对图片加噪声。这种结构目标是要让生成的图片和加噪声前的图片越相似越好。

在这里插入图片描述

  • Bert可以看成是De-noising Auto-Encoder
    在这里插入图片描述

Auto-Decoder的应用

特征解耦(Feature Disentangle)

  • decoder输出的向量表示中,包含了不同方面的信息,比如一段声音中的内容、声音特征,这个向量的前50维代表内容,后50维代表声音特征。

在这里插入图片描述

在这里插入图片描述

  • 这种方法可以用来做语者转换:同一段内容由不同人的声音读出来。比如下图所示,此时有两段不同内容且声音不同的语音序列,通过Encoder后,可以得到相应的向量表示,这个向量包含了序列的内容和声音特征,抽取出两个向量中的内容和声音特征,将男生的内容向量和女生的声音向量组合在一起形成一个新的向量,输入给Decoder将得到新的语音序列。
    在这里插入图片描述

文章总结

  • 我们可以训练Auto-encoder来做文章总结。具体的,Encoder读入一篇文章,输出一段文字序列,这段文字是Encoder从文章中提取的关键内容,Decoder会读入这段文字还原这篇文章,注意到Encoder和Decoder都是输入一段序列,输出一段序列,所以Encoder和Decoder都是Seq2seq模型。

  • 所以只要有大量的文章资料,就可以以无监督的学习的方式训练模型。

在这里插入图片描述

  • 但是这种方式训练会存在一个问题,就是Encoder和Decoder之间可能存在自己的暗号,导致Encoder总结出来的东西人看不懂,但是Decoder能看懂并还原,所以我们需要一个判别器来增强机器生成的总结的真实性,也就是将文字输入给Discriminator。这部分属于GAN的知识。

在这里插入图片描述

图片压缩

  • 我们知道Encoder可以提取高维图片的特征信息用低维的向量表示,所以Auto-encoder又可以用来做图片压缩。具体的,Encoder做的事情是压缩图片,得到的低维向量可以看作是压缩后的结果的向量表示,Decoder做的事情是解压缩,重建图像,得到与原始图像在结构上和外观上相似的图像,所以最终Decoder产生了压缩后失帧的图片

在这里插入图片描述

异常检测(Anomaly Detection)

  • 异常检测:给定一个训练资料集,异常检测系统需要检测一个新的输入是否和训练资料中的某个或某些资料相似。

在这里插入图片描述

  • 通过定义异常的标准可能不同,取决于你的数据集是什么

在这里插入图片描述

  • 异常检测的方法有很多中,使用Auto-Anomaly来做异常检测是一种可行的方法。

    • 在训练时,和标准的训练Auto-encoder的方式一样,目的就是要让生成的图片和原始图片越相似越好。
    • 在测试时,输入图片给Auto-encoder,计算Auto-encoder输出的图片和原始输入的图片的差异,如果差异较小,说明这张图片是正常图片,如果差异较大,说明这张图片可能是异常图片。这是因为在训练Auto-encoder的时候,Auto-encoder学习到了还原类似训练集中的图片的能力,如果新的图片和训练资料中的图片相似,那么Auto-encoder是可以较好的还原图片的,否则的话,还原出来的图片和原始输入图片差异较大。
      在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【面试经典150 | 位运算】位1的个数

文章目录 写在前面Tag题目来源题目解读解题思路方法一:循环检查二进制位方法二:位运算优化方法三:__builtin_popcount() 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…

基于SSM的汽车租赁系统业务管理子系统设计实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

SQL必知会(二)-SQL查询篇(7)-使用函数处理数据

第8课、使用函数处理数据 表8-1 DBMS 函数的差异 函数语法提取字符串的组成DB2、Oracle、PostgreSQL 和 SQLite 使用 SUBSTR();MariaDB、Mysql 和 SQL Server 使用 SUBSTRING()数据类型转换Oracle 使用多个函数,每种类型的转换有一个函数;D…

在ubuntu sudo apt-get update 更新报错

sudo apt-get update 更新报错 解决办法: 用你自己的key 根据上图自己找 sudo gpg --keyserver keyserver.ubuntu.com --recv-keys **********运行完成有一个ok 见下图 运行命令,中间的还是上面的key复制下来即可 sudo gpg --export --armor **********…

开源跨平台绘图软件draw.io Mac/Win免费下载:让创意无限飞

你是否曾经遇到过在创作时,因为缺乏合适的绘图工具而无法充分表达你的想法?或者在团队项目中,因为沟通障碍而无法有效地进行视觉呈现?现在,让我们一起探索一个全新的开源跨平台绘图软件 - draw.io。 draw.io是一款完全…

logistic回归 目的、方程、损失函数

logistic回归多用于二分类问题。 文章目录 目的:给出x,当x满足条件时,y1的概率是多少。方程: y ^ σ ( ω T x b ) \hat y \sigma(\omega^Txb) y^​σ(ωTxb)损失函数: J ( ω , b ) 1 m ∑ i 1 m L ( y ^ ( i ) …

本地编译安装 Minkowski Engine 报错 Cuda 版本 与 Pytorch 版本不匹配

编译 Cuda 版本 C 插件 Cuda 版本 与 Pytorch 版本不匹配解决方案 报错详情环境报错分析 报错详情 RuntimeError: The detected CUDA version (12.2) mismatches the version that was used to compile PyTorch (11.8). Please make sure to use the same CUDA versions.环境 …

环境变量小节

这是写的第二篇环境变量博客,写了一年多了,第一次出现把自己博客删了的情况,不知道为什么明明发表了,然后就把草稿箱和回收站的删了,结果晚上发现没发表,回收站删除是无法找回的,以后还是要慎重…

git基础知识

1.git的必要配置 所有的配置文件,其实都保存在本地! 查看所有配置 git config -l 即把 系统配置(system)和当前用户(global)配置都 列出来 以直接编辑配置文件,通过命令设置后会响应到这里。 注意: 如果…

传统测试将被取代?AI测试现状及发展之思

近年来,我一直关注AI相关的测试,并积极参与多个全国性测试社区和社群。在这些社区中,我与不同公司和领域的测试专家交流探讨AI测试相关话题,包括业界顶尖公司的专家和国内知名测试学者。我也参加了多个大会,聆听了许多…

B087-人力资源项目-文件上传课程分类

目录 背景控制台操作开通OSS服务创建存储空间 项目工程准备概述新建文件管理模块把文件上传到OSS的三种方案 通过官方文档完成demo上传官方文档找JavaSDK文件上传思路代码 背景 为什么要交给第三方文件管理服务管理? 最传统的的文件管理方案是把文件存储到项目中本…

半小时拥有自己的ChatGPT4,高效低成本,无脑跟即可

文章目录 一、获取Key二、获取服务器三、设置端口三、安装Docker环境 一、获取Key 最简单的获取方法,去某宝搜 “open账号ai” 购入一个key,几块钱,有3.5、4.0,买3.5就行了,4.0太贵了。注意是购入key,不是…

Elasticsearch 和 Go 中使用向量搜索寻找地鼠

作者:CARLY RICHMOND,LAURENT SAINT-FLIX 就像动物和编程语言一样,搜索也经历了不同实践的演变,很难在其中做出选择。 加入我们的第二部分,通过 Elasticsearch 中的矢量搜索在 Go 中狩猎地鼠(gophers&…

Install Docker in Linux

Docker官网链接: https://docs.docker.com/ 1.确定Linux版本 新版本的Docker对Linux系统版本有一定的要求。如果Linux的发行版系统是centOS,安装最新版的docker需要centOS 7以上的系统。 在Docker安装帮助页面查看支持的系统版本。 Docker帮助页面:https://docs…

13 套接字Socket

1、Socket 编程 socket编程基于 TCP 和 UDP 协议的tcp和udp是区分客户端和服务端的,所以我们的socket编程也是区分的。 2、socket是端到端的通信 1.Socket 这个名字很有意思,可以作插口或者插槽讲 2.一头插在客户端,一头插在服务端&#x…

拉晶工艺设备——切片机

单晶炉拉出硅棒后,经硅棒切断、外园整形,便用切片机切成薄片,供后续工艺使用。切片机也用于玻璃、陶瓷、 大理石、花岗岩等硬脆材料的切割。 半导体行业使用的切片机按结构形式可分为立式切片机、卧式切片机,按刀片形式可分内圆切…

魔众文库系统 v5.5.0 批量快捷上传,文档图标优化,档转换逻辑优化

魔众文库系统基于文档系统知识,建立平台与领域,打造流量、用户、付费和变现的闭环,帮助您更好的搭建文库系统。 魔众文库系统发布v5.5.0版本,新功能和Bug修复累计14项,批量快捷上传,文档图标优化&#xff…

酷柚易汛ERP - 套餐管理操作指南

1、应用场景 套餐管理应用于商品打包销售,如临期食品,促销商品等 2、主要操作 2.1 新增套餐 打开【资料】-【套餐管理】点击新增 套餐是一个组合新商品出现,价格需要重新设定,也可以设定不同等级客户对应价格

SAP ABAP基础语法-Excel上传(十)

EXCEL BDS模板上传及赋值 上传模板事务代码:OAER l 功能代码:向EXCEL模板中写入数据示例代码如下 REPORT ZEXCEL_DOI. “doi type pools TYPE-POOLS: soi. *SAP Desktop Office Integration Interfaces DATA: container TYPE REF TO cl_gui_custom_c…

arduino 简易智能花盆

编辑器:arduino IDE 主板:arduino uno 传感器: 0.96寸的OLED屏(四脚) 声音模块 土壤温湿度模块 DS18B20温度模块(这里用到防水的) 光敏电阻模块(买成三脚的了只能显示高低&#x…