AutoEncoder和 Denoising AutoEncoder学习笔记

news2024/11/16 0:44:52

参考:
【1】 https://lilianweng.github.io/posts/2018-08-12-vae/

写在前面:
只是直觉上的认识,并没有数学推导。后面会写一篇(抄)大一统文章(概率角度理解为什么AE要选择MSE Loss)

TOC

  • 1 AutoEncoder
  • 2 Denoising AutoEncoder

1 AutoEncoder

在这里插入图片描述
AE实际上是一个压缩模型,它通过将输入 x x x传进encoder将图像压缩到隐式特征(latant representation),然后再通过decoder输出 x ′ x' x,试图重建出 x x x。既重建公式为该两个变量的均方差损失:
L = ∣ ∣ x − x ′ ∣ ∣ 2 = 1 N ∑ i = 1 N ( x i − x ′ i ) 2 L=||x-x'||^2=\frac{1}{N}\sum_{i=1}^N(x^i -x'^i)^2 L=∣∣xx2=N1i=1N(xixi)2

如果成功训练好一个AE,那么encoder就可以说能正确提取出输入 x x x的重要特征,而decoder也可以根据这些重要特征还原出与输入 x x x相近的 x ′ x' x

但AE仅仅是在学习等式函数 x = x ′ x=x' x=x,所以很容易就过拟合了(神经网络有强大的拟合函数的能力),过拟合之后那么其仅对训练集数据表现很好,对未知数据的表现就一塌糊涂了。

2 Denoising AutoEncoder

在这里插入图片描述
DAE相当于该模型上了强度,与其给你看完整的东西,不如我遮盖一部分,让你猜这部分是什么,然后将这个东西还原出来(人类视觉方面,如果遮盖了某个东西的一部分,大概率我们还是能想象出来的)

输入到encoder的数据就由 x x x,变为 x ~ i ∼ M D ( x ~ i ∣ x i ) \tilde x^i \sim M_D(\tilde x^i|x^i) x~iMD(x~ixi),其中 x ~ \tilde x x~表示被破坏的,或者被噪声污染过后的 x x x M D M_D MD表示噪声的随即映射分布,或者被随机破坏(置0)的每个像素上的概率。总之就是这么一回事。

我们可以理解为,当一部分像素被破坏之后,对于图像这种高维输入且高度冗余的数据,模型就要根据其他的维度去预测损失的维度的数据,就不再是去过拟合一个维度,这就构建了一个很好的学习到鲁棒隐式特征的基础。
【一个不恰当的例子:比如看到1、2、3,AE就记住了1、2、3的特征,那么给数据1、3、4,那么它可能就还原不出4。但是看到1、2、_,GT为1、2、3,那么模型可能就会根据1、2去推理出3(比如1+2=3),那么给出数据1、3、4,对于4,模型也有能力根据1、3去推出,学习到了某些加法操作的特征】

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

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

相关文章

Java进阶-IO(1)

进入java IO部分的学习,首先学习IO基础,内容如下。需要了解流的概念、分类还有其他一些如集合与文件的转换,字符编码问题等,这次先学到字节流的读写数据,剩余下次学完。 一、IO基础 1、背景 1.1 数据存储问题 变量…

Day21-磁盘管理之raid及分区

Day21-磁盘管理之raid及分区 1 Raid技术1.1 什么是Raid?1.2 为什么服务器需要Raid?1.3 什么是Raid级别?1.4 Raid有哪些实现方式?1.5 什么是RAID0?(图)1.6 什么是RAID1?(图)1.7 什么是RAID5&a…

Python爬虫Cookies 池的搭建

Cookies 池的搭建 很多时候,在爬取没有登录的情况下,我们也可以访问一部分页面或请求一些接口,因为毕竟网站本身需要做 SEO,不会对所有页面都设置登录限制。 但是,不登录直接爬取会有一些弊端,弊端主要有…

[HackMyVM] 靶场 Wave

kali:192.168.56.104 主机发现 arp-scan -l # arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:0c:29:d2:e0:49, IPv4: 192.168.56.104 Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 192.168.56.1 0a:00:27:00:00:05 (Un…

学习助手:借助AI大模型,学习更高效!

在当今的数字时代,人工智能(AI)的崛起已经彻底改变了我们获取信息、处理数据以及学习新知识的方式。AI大模型,特别是如OpenAI开发的GPT-4这类先进的技术,已成为学习和教育领域的一大助力。本文旨在探索如何借助AI大模型…

tritonserver学习之八:redis_caches实践

tritonserver学习之一:triton使用流程 tritonserver学习之二:tritonserver编译 tritonserver学习之三:tritonserver运行流程 tritonserver学习之四:命令行解析 tritonserver学习之五:backend实现机制 tritonserv…

javaWebssh票据管理系统myeclipse开发mysql数据库MVC模式java编程计算机网页设计

一、源码特点 java ssh票据管理系统是一套完善的web设计系统(系统采用ssh框架进行设计开发),对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模 式开发。开发环境为TOMCAT7.0,My…

Vue+SpringBoot打造高校大学生创业管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 系统公告模块2.2 创业项目模块2.3 创业社团模块2.4 政府政策模块2.5 创业比赛模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 系统公告表3.2.2 创业项目表3.2.3 创业社团表3.2.4 政策表 四、系统展示五、核心代码5.…

MutationObserver是一个可以监听DOM结构变化的接口,请停用DOMContentLoaded

DOMContentLoaded已经要被放弃使用了,所以官方推荐使用MutationObserver来监听页面发生变化。但是如果你想继续使用也是可以的;Document: DOMContentLoaded event - Web APIs | MDN MutationObserver官方文档:MutationObserver - Web APIs |…

Python 自动化给女友发邮件:含新闻、天气、每日一句、图片 最全攻略系列02 如何添加emoji

Python 自动化给女友发邮件:含新闻、天气、每日一句、图片 最全攻略系列 是否想在女友面前展示程序员炫酷的一面? 是否想给她每日问候但是害怕忘记固定时间发送信息? 是否也羡慕别人可以优雅使用Python定时发送邮件? 欢迎来到Python自动化发邮件最全攻略系列,本系列将…

《剑指 Offer》专项突破版 - 面试题 65、66 和 67 : 关于前缀树应用的面试题(C++ 实现)

目录 面试题 65 : 最短的单词编码 面试题 66 : 单词之和 面试题 67 : 最大的异或 面试题 65 : 最短的单词编码 题目: 输入一个包含 n 个单词的数组,可以把它们编码成一个字符串和 n 个下标。例如,单词数组 ["time", "me&…

一、环境配置

一、下载Ubuntu18.04版本镜像 我的电脑配置比较低(08年奥运限定版哦),使用的是虚拟机VMware进行安装Ubuntu18.04版,跟书上使用的一样 Ubuntu 18.04镜像 别下载错了哈 二、VMware下安装Ubuntu18.04操作系统 之前写过相关的博文,详细配置可…

如何选择护眼台灯?2024五大出众品牌护眼台灯推荐

护眼台灯的日常使用非常简便,而且还能提供合适的光照,起到预防近视的效果。但如今市场却有一些劣质护眼台灯,它们的使用体验不佳,还有可能会对眼睛健康造成影响、那么如何选择护眼台灯呢?关于这点今天就将分享几个选购…

用node或者vscode开启一个简单的本地server服务器,加载html网页

使用Live Server 想要加载本地html页面可以快速能让它在你本地浏览器中打开,可以有好多种方式,如果你有使用vscode,可以安装一个插件:Live Server,然后直接在vscode中直接右键就可以开启这个服务: 安装好之…

攻防世界例题wp

1.看到_wakeup()函数第一反应要么触发,要么绕过在这里绕过 2.构造payload实例化一个对象后反序列化 3构造脚本如下: 4.因为它是一个绕过的方法所以我们要使用绕过的方法。 5.继续构造payload将上图的1换成2进行绕过 最终的payload为 O:4:"xctf…

MATLAB_ESP32有限脉冲响应FIR无限脉冲响应IIR滤波器

要点 ESP32闪烁LED,计时LEDESP32基础控制:温控输出串口监控,LCD事件计数器,SD卡读写,扫描WiFi网络,手机控制LED,经典蓝牙、数字麦克风捕捉音频、使用放大器和喇叭、播放SD卡和闪存MP3文件、立体…

【SVN】使用TortoiseGit删除Git分支

使用TortoiseGit删除Git分支 前言 平时我在进行开发的时候,比如需要开发一个新功能,这里以蘑菇博客开发服务网关-gateway功能为例 一般我都会在原来master分支的基础上,然后拉取一个新的分支【gateway】,然后在 gateway分支上进…

社区店选址评估:利用大数据选址的技巧与策略

在当今数字化的时代,利用大数据进行社区店选址评估已成为一种高效、科学的方法。作为一名开鲜奶吧5年的创业者,我将分享一些利用大数据选址的技巧与策略,帮助你找到最适合的店铺位置。 1、确定目标商圈 在选址之前,首先要明确自己…

css实现居中

基础代码&#xff1a; <div class"box"><div class"content"></div> </div> css实现居中的几种方式&#xff1a; 1、flex布局&#xff08;水平垂直&#xff09; .box {width: 200px;height: 200px;background-color: pink;disp…

MySQL入门------数据库与SQL概述

目录 前言 一、数据库相关概念 二、数据模型 1.关系型数据库&#xff08;RDBMS&#xff09; 三、MySQL数据库 1.下载和安装 2.配置环境变量 四、SQL 1.SQL通用语法 2.SQL分类 前言 从本期开始&#xff0c;我们开始学习数据库的相关理论和实践知识&#xff0c;从入门…