Auto-Encoder学习笔记

news2024/11/20 9:19:04

写在前面

  • 本篇博客是本人在学习李宏毅老师的《机器学习》课程中的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.coloradmin.cn/o/1195858.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

火山引擎公共云·城市分享会:共享云经验,一起向未来

数智化时代的来临,不仅激发了行业对云计算的资源需求,也重构了云计算的技术架构及产品布局,给业务场景带来更多可能性,让云计算成为企业走向高效治理的一剂“良方”。随着业务的多样化、复杂化,企业应该如何借助云计算…

省钱攻略:三大运营商保号套餐办理攻略,不再当冤大头!

现在的朋友都是相当的聪明,都不想直接在营业厅办理套餐,而是选择保号套餐流量卡。 今天,小编主要介绍的就是三大运营商的保号套餐,以及如何办理! 如图所示: ​  电信最低可改5元套餐,移动、联…

软件之禅(七)面向对象(Object Oriented)

黄国强 2023/11/11 前文提到面向对象构建的模块控制器,根据第一性原理,从图灵机的角度,面向对象不是最基本的元素。那么面向对象是不是不重要呢? 答案是否定的,面向对象非常非常重要。当我们面对一个具体的领域…

【CASS精品教程】cass3d基于DOM和DEM生成倾斜三维模型

和EPS一样,cass3d也可以生成三维模型。本文讲解 cass3d基于pix4d生成的正射影像DOM和DSM生成倾斜三维模型,并进行三维测图。 一、三维倾斜模型打开 打开cass11.0软件,打开三维窗口,点击打开模型,选择基于dom和dsm生成…

Leetcode 剑指 Offer II 052. 递增顺序搜索树

题目难度: 简单 原题链接 今天继续更新 Leetcode 的剑指 Offer(专项突击版)系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 给你一棵二叉搜索树,请 按中序遍历 将其重新排列为一…

CMakeCache.txt有什么用

2023年11月11日,周六上午 CMakeCache.txt 是由 CMake 自动生成的一个缓存文件,用于记录在配置过程中生成的各种变量和选项的值。 在使用 CMake 构建项目时,CMake 会根据 CMakeLists.txt 文件中的配置和命令,解析项目的源代码并生…

AD教程 (十二)原理图的编译设置和检查

AD教程 (十二)原理图的编译设置和检查 通过肉眼初步排查,观察一下原理图上有什么错误 工程编译排查错误 选中工程,右键,选择Compile PCB Project对工程进行编译,根据编译报错,定位错误&#…

【服务配置文件详解】补充rsyslog服务的配置文件翻译解读

学习rsyslog日志管理服务的配置文件 # rsyslog configuration file 关于rsyslog软件的配置文件# For more information see /usr/share/doc/rsyslog-*/rsyslog_conf.html 想看到更多相关信息,可以去查看这个文件,rsyslog-*的*表示软件版本,我…

StartUML的基本使用

文章目录 简介和安装创建包创建类视图时序图 简介和安装 最近在学习一个项目的时候用到了StartUML来构造项目的类图和时序图 虽然vs2019有类视图,但是也不是很清晰,并没有生成uml图,但是宇宙最智能的IDE IDEA有生成uml图的功能 下面就简单介…

Windows10+vs2015源码编译subversion

Windows源码安装subversion 一、运行环境 windows10 64位系统 VS2015完整安装 Subversion1.6.3 二、源码编译环境配置 1、python环境安装 python-2.4.msi2、perl环境安装 ActivePerl-5.8.8.822-MSWin32-x86-280952.msi3、openssl编译 C:>cd openssl-0.9.7f C:>p…

1236. 递增三元组

题目: 1236. 递增三元组 - AcWing题库 思路:枚举 1.由给定数据估计时间复杂度。 数据范围为1~1e5---->时间复杂度只能为O(n)或者O(nlogn)。 2.先暴力枚举找到思路,再设法优化。 只枚举中间的数组B。对于枚举的每一个bi&#xff0…

【Java】智慧工地云平台源码支持多端展示(PC端、手机端、平板端)

智慧工地系统实现工地的数字化、精细化、智慧化生产和管理。 一、智慧工地发展趋势 1.更加智能 未来的智慧工地系统将逐步植入人工智能和虚拟现实等高科技技术以更为智慧的方式,来实现岗位人员与工地现场的交互与配合。智慧工地系统能够在工程全生命周期管理的过程…

内网如何使用Python第三方库包(举例JustinScorecardPy)

内网如何使用Python第三方库包 一、下载python whl文件(官网有的) 1、第一种方法 要直接下载whl文件,你可以按照以下步骤操作: 首先,访问 https://pypi.org/ 或 https://www.lfd.uci.edu/~gohlke/pythonlibs/ 网站。这两个都是Python的官方…

golang工程组件——redigo使用(redis协议,基本命令,管道,事务,发布订阅,stream)

redisgo redis 与 client 之间采用请求回应模式,一个请求包对应一个回应包;但是也有例外,pub/sub 模 式下,client 发送 subscribe 命令并收到回应包后,之后被动接收 redis 的发布包;所以若需要使 用 pub/s…

ROS 学习应用篇(三)话题Topic学习之自定义话题消息的类型的定义与调用

自定义消息类型的定义 Person.msg文件的定义(数据接口文件的定义) 创建msg文件 首先在功能包下新建msg文件夹,接着在该文件夹下创建文件。 定义msg文件内容 一个消息最重要的就是数据结构类型。这就需要引入一个msg文件,用于…

FM9918R系列-副边同步整流芯片

产品描述: FM9918R 系列是集成了 MOSFET 的同步整流二极管,用于替换反激式转换器的整流二极管,能够显著减少发热,提升系统的转换效率。IC 通过检测集成 MOSFET 的源漏电压来决定其开关状态。 FM9918R 系列能够兼容连续模式、非连续…

积分上限函数

定积分的形式 a:积分下限 b:积分上限 定积分的值与积分变量无关 积分上限函数的形式 x:自变量 t:积分变量 积分上限是变量,积分下限是常数 定积分的几何意义 x轴所围成面积 x轴以上面积为正 x轴以下面积为负 积分…

【华为数据通信】BFD是什么?

一、概述 BFD提供了一个通用的、标准化的、介质无关的、协议无关的快速故障检测机制,有以下两大优点: 对相邻转发引擎之间的通道提供轻负荷、快速故障检测。用单一的机制对任何介质、任何协议层进行实时检测。 BFD是一个简单的“Hello”协议。两个系统…

k8s系列-kuboard 该操作平台的使用操作

文章目录 一、相关平台,以及账号和密码镜像打包服务器仓库地址K8s平台数据库mysql 二、平台概述1.集群导入2.集群管理3.名称空间4.访问控制授权5.集群用户操作审计 三、kuboard平台操作手册一、部署服务操作1.名称空间部署2.工作负载部署 一、相关平台,以…

【中国知名企业高管团队】系列64:燕京啤酒

昨天,华研荟介绍了中国可能是最大的啤酒企业:青岛啤酒。接下来介绍总部位于北京的另一家啤酒企业——燕京啤酒。 当我想寻找官方的信息时发现坏了——燕京啤酒的官方PC网站竟然无法打开!倒是设立了一系列的微信公众号,看第一个官…