自动编码器(Autoencoders)

img

在“深度学习”系列中,我们不会看到如何使用深度学习来解决端到端的复杂问题,就像我们在《A.I. Odyssey》中所做的那样。我们更愿意看看不同的技术,以及一些示例和应用程序。

1、引言
① 什么是自动编码器(AutoEncoder,AE)?

神经网络以各种形状和大小存在,并且通常以其输入和输出数据类型为特征。例如,图像分类器是用卷积神经网络构建的。它们将图像作为输入,并输出类的概率分布。

自动编码器是一类输入与输出相同的神经网络。它们的工作原理是将输入压缩到潜在空间表示中,然后从该表示中重建输出。

我们将看到如何使用修改版本的输入会更有趣。

img

简单的自动编码器架构 —— 输入被压缩,然后重建。

② 卷积自动编码器(Convolutional AutoEncoders,CAE)

自动编码器的一个非常流行的用途是将它们应用于图像。**诀窍是用卷积层代替完全连接的层。**这样,连同池化层,将输入从宽和细(假设100×100像素,3通道RGB)转换为窄和厚。这有助于网络从图像中提取视觉特征,从而获得更准确的潜在空间表示。重建过程使用上采样(upsampling)和卷积(convolution)。

由此产生的网络被称为卷积自动编码器。

img

卷积自动编码器架构 —— 它将宽而细的输入空间映射到窄而厚的潜在空间。

③ 重建质量

输入图像的重建往往是模糊的,质量较低。这是我们在压缩过程中丢失一些信息的结果。

img

训练CAE重建其输入。

img

重建的图像很模糊。

2、CAE的使用
案例1:超基础图像重建(Ultra-basic image reconstruction)

卷积自动编码器可以用于重建。例如,它们可以学习去除图像中的噪声,或者重建缺失的部分。

为此,我们不使用相同的图像作为输入和输出,而是使用有噪声的版本作为输入,干净的版本作为输出。在这个过程中,神经网络学会填补图像中的空白。

让我们看看CAE可以做些什么来替换眼睛的部分图像。假设有一个十字准星,我们想把它移开。我们可以手动创建数据集,这非常方便。

img

CAE接受过移除准星的训练。

img

即使它是模糊的,重建的输入没有留下十字准星。

现在我们的自动编码器已经训练好了,我们可以用它来去除我们从未见过的眼睛图片上的十字准星。

案例2:超基础图像上色(Ultra-basic image colorization)

在这个例子中,CAE将学习从圆形和正方形的图像映射到相同的图像,但是圆形是红色的,正方形是蓝色的。

img

训练CAE为图像上色。

img

虽然重建的图像很模糊,但颜色基本正确。

CAE为图像的正确部分上色方面做得很好。它知道圆形是红色的,正方形是蓝色的。紫色来自蓝色和红色的混合,网络在圆形和正方形之间徘徊。

现在我们的自动编码器已经训练好了,我们可以用它来给我们以前从未见过的图片上色。

3、先进的应用

上面的例子只是概念证明,展示了卷积自动编码器可以做什么。

更令人兴奋的应用包括全图像着色、潜在空间聚类或生成更高分辨率的图像。后者是用低分辨率作为输入,高分辨率作为输出得到的。

img

img

4、总结

在这篇文章中,我们已经看到了如何使用自动编码器神经网络来压缩、重建和清理数据。获得图像作为输出是一件非常令人兴奋和有趣的事情。

注意:有一个修改版本的AEs称为变分自动编码器(Variational Autoencoders),用于图像生成。

你可以试试那边的代码:

  • Convolutional Autoencoder:https://github.com/despoisj/ConvolutionalAutoencoder?ref=hackernoon.com

5、自动编码器(AE)vs. 卷积自动编码器(CAE)vs. 变分自动编码器(VAE)

自动编码器(AE)、卷积自动编码器(CAE)和变分自动编码器(VAE)是深度学习中常见的无监督学习模型,它们在结构和应用上存在一些区别和联系。

① 自动编码器(AE)

AE由编码器和解码器组成,用于将高维数据压缩成低维数据,再从这个低维表示重构原始数据。AE主要用于数据压缩和去噪,但由于其潜在空间的不连续性,不适用于数据生成任务。

AE的训练目标是最小化输入和重构之间的差异,通常使用均方误差作为损失函数。

② 卷积自动编码器(CAE)

CAE是AE的一个变体,它使用卷积层代替了传统的全连接层,特别适合处理图像数据。CAE能够很好地保留图像的空间结构信息,常用于去噪和特征提取。

CAE的编码器和解码器部分通常由卷积层、激活函数和池化层组成,能够处理任意尺寸的输入图像。

③ 变分自动编码器(VAE)

VAE在AE的基础上引入了概率分布的概念,其编码器输出潜在变量的参数(均值和标准差),然后从这个参数化的分布中采样得到潜在变量,再输入到解码器进行重构。

VAE的训练不仅考虑重构损失,还包括一个正则项——KL散度,用于衡量潜在变量分布与先验分布之间的差异,这使得VAE的潜在空间更加规则化,适合于数据生成任务。

VAE通过重参数化技巧解决了在潜在空间中采样的梯度问题,允许模型在训练过程中进行有效的反向传播。

AE、CAE和VAE都适用于学习数据表示的无监督模型,但它们在结构和应用上各有侧重。AE主要用于数据压缩和去噪,CAE适用于图像数据的处理,而VAE则因其潜在空间的连续性和规则化,适合于数据生成和样本的多样性生成。VAE可以看作AE的升级版,它通过引入概率分布和KL散度,解决了AE在数据生成上的局限性。

6、参考资料
  • Autoencoders - Deep Learning bits #1:https://hackernoon.com/autoencoders-deep-learning-bits-1-11731e200694?ref=hackernoon.com
  • Convolutional Autoencoder:https://github.com/despoisj/ConvolutionalAutoencoder?ref=hackernoon.com
  • kimi:https://kimi.moonshot.cn/

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

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

相关文章

本地部署,Colorizer: 让黑白图像重现色彩的奇迹

目录 引言 什么是 Colorizer ​编辑​编辑 Colorizer 的特点 工作原理 应用场景 本地部署 本地运行 实验与结果 结语 Tip: 引言 自摄影术发明以来,黑白图像一直是记录历史和艺术创作的重要手段。然而,黑白图像虽然具备其独特的美…

Git常见命令和用法

Git 文件状态 Git 文件 2 种状态: 未跟踪:新文件,从未被 Git 管理过已跟踪:Git 已经知道和管理的文件 常用命令 命令作用注意git -v查看 git 版本git init初始化 git 仓库初始化之后有工作区、暂存区(本地库)、版本库git add 文件标识暂存某个文件文件标识以终…

ts实现将相同类型的数据通过排序放在一起

看下效果&#xff0c;可以将相同表名称的字段放在一起 排序适用于中英文、数字 // 排序 function sortByType(items: any) {// 先按照类型进行排序items.sort((a: any, b: any) > {if (a.label < b.label) return -1;if (a.label > b.label) return 1;return 0;});r…

基于Python/MATLAB长时间序列遥感数据处理及在全球变化、植被物候提取、植被变绿与生态系统固碳分析、生物量估算与趋势分析应用

植被是陆地生态系统中最重要的组分之一&#xff0c;也是对气候变化最敏感的组分&#xff0c;其在全球变化过程中起着重要作用&#xff0c;能够指示自然环境中的大气、水、土壤等成分的变化&#xff0c;其年际和季节性变化可以作为地球气候变化的重要指标。此外&#xff0c;由于…

el-tree 获取当前勾选节点的选中状态以及选中值对象 触发check-change多次事件问题原因

1.需求 现在需要一个树状结构的资产树 但是现在需求是 获取当前选中的值的状态是选中还是取消选中 然后再用当前选中 or 取消选中的值 进行 选中 or 取消选中的操作 一开始使用的是 check-change 方法 接收参数如图 但是我勾选父节点 或者 子节点后 他会打印一堆数据 是因…

华为HCIP Datacom H12-821 卷36

1.单选题 在PIM- SM中&#xff0c;以下关于RP 的描述&#xff0c;错误的是哪一选项? A、在PIM-SM中&#xff0c;组播数据流量不一定必须经过RP的转发。 B、对于一个组播组来说&#xff0c;可以同时有多个RP地址&#xff0c;提升网络可靠性。 C、组播网络中&#xff0c;可以…

Hutool发送Http请求

提示&#xff1a;今天主要学习了使用Hutool的方式来发送Http请求 文章目录 目录 文章目录 一、导库 二、使用 三、调用 四、结果 一、导库 <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.26&…

Python基础教学之一:入门篇——迈入编程世界的第一步

Python基础教学之一&#xff1a;入门篇——迈入编程世界的第一步 一、Python简介&#xff1a;历史与现状 Python&#xff0c;一种解释型、高级和通用的编程语言&#xff0c;由Guido van Rossum在1989年圣诞节期间创造&#xff0c;并于1991年首次发布。设计哲学强调代码的可读性…

测试与开发高效协作 6大注意事项

测试与开发的高效协作显著提升软件质量&#xff0c;加速问题的检测与修复&#xff0c;节省成本与时间&#xff0c;加强风险管理&#xff0c;确保项目按时按质完成&#xff0c;增强产品市场竞争力。如果测试与开发间协作不顺畅&#xff0c;往往导致团队效率下降&#xff0c;责任…

dify-api的Dockerfile分析

一.dify-api的Dockerfile文件 dify-api的Dockerfile文件如下所示&#xff1a; # base image FROM python:3.10-slim-bookworm AS baseLABEL maintainer"takatostgmail.com"# install packages FROM base as packagesRUN apt-get update \&& apt-get install…

腾讯HR的多维世界:从校招到文化塑造的全面探索

目录 Lyra&#xff1a;海外招聘的沟通桥梁 Moth&#xff1a;文化与活动的创意推手 Yaron&#xff1a;数据与分析的驱动者 腾讯HR的多元价值与成长路径 成就他人&#xff0c;实现自我 多元化团队的协同效应 长期主义与持续成长 企业文化与社会责任的践行者 结语&#x…

电焰灶:烹饪性能的深度剖析

在如今众多的厨房炉灶选择中&#xff0c;华火电焰灶以其独特的技术和性能吸引了不少消费者的目光。那么&#xff0c;华火电焰灶的综合烹饪性能究竟如何呢&#xff1f;让我们一起来深入探究。 首先&#xff0c;从火力方面来看&#xff0c;华火电焰灶展现出了强大的优势。其火焰强…

吹田电气绿色能源 未来可期

在2024年7月的上海慕尼黑电子展上&#xff0c;吹田电气功率分析仪成为了备受瞩目的明星产品。作为电子测试与测量领域的重要工具&#xff0c;功率分析仪在展会上展示了其在绿色能源和高效能量管理方面的最新应用&#xff0c;引发了广泛关注和热议。 领先技术&#xff0c;精准测…

模拟生成高斯随机数序列

模拟和生成高斯随机数序列&#xff08;服从标准正态分布的随机变量&#xff09; Box-Muller 法 & Marsaglia 极坐标法 Box-Muller&#xff1a;使两个独立的均匀分布生成一个高斯分布。 Box-Muller方法的基本思想是利用两个独立的均匀分布随机变量的关系来生成高斯分布的…

宋仕强谈金航标kinghelm

金航标kinghelm宋仕强在介绍自己公司时说&#xff0c;金航标成立于2007年&#xff0c;成立地点在华强北雷圳大厦803室&#xff0c;后搬到华强北广业大厦24楼CD室&#xff0c;后搬迁到龙华展滔科技大厦C座C809和C817室&#xff0c;现在的办公地址为龙岗区坂田街道百瑞达大厦&…

百度智能云将大模型引入网络故障定位的智能运维实践

物理网络中&#xff0c;某个设备发生故障&#xff0c;可能会引起一系列指标异常的告警。如何在短时间内从这些告警信息中找到真正的故障原因&#xff0c;犹如大海捞针&#xff0c;对于运维团队是一件很有挑战的事情。 在长期的物理网络运维工作建设中&#xff0c;百度智能云通…

Pytorch版本、安装和检验

基于conda包的环境创建、激活、管理与删除 目录 CUDA版本 Pytorch版本 Pytorch安装 检验安装 获取torch版本 获取torchvision版本 检验CUDA是否可用 获取CUDA设备的数量 获取CUDA设备ID 获取CUDA设备名称 CUDA版本 CUDA 是 NVIDIA 专为图形处理单元 (GPU) 上的通用计算…

AI Earth——Sentinel-5P大气污染监测可视化应用APP

数据介绍 Sentinel-5P OFFL L3_CH4简介与Notebook示例 该数据集提供Offline的甲烷(Methane, CH4)聚集度高分辨率影像。 CH4是继二氧化碳 (CO2) 之后人为增强温室效应的最重要贡献者。大约四分之三的甲烷排放是由人为造成,因此继续记录基于卫星的测量结果非常重要。Sentine…

免费分享一套SpringBoot+Vue农产品在线销售(在线商城)管理系统【论文+源码+SQL脚本】,帅呆了~~

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的SpringBootVue农产品在线销售(在线商城)管理系统&#xff0c;分享下哈。 项目介绍 如今社会上各行各业&#xff0c;都喜欢用自己行业的专属软件工作&#xff0c;互联网发展到这个时候&#xff0c;人们已经发…

vue+lodop实现web端打印功能

lodop官网下载地址&#xff1a;http://www.c-lodop.com/download.html 1、下载插件&#xff08;如果只是想实现打印功能&#xff0c;下载红框里的即可&#xff09; 2、解压缩&#xff0c;然后根据自己的操作系统安装控件 32位系统安装&#xff1a;install_lodop32.exe&#x…