当前位置: 首页 > news >正文

北京网站建设兴田德润官网多少上海网络营销seo

北京网站建设兴田德润官网多少,上海网络营销seo,淘宝网首页官网,北海网站建设摩西西珀博士 一、说明 我最近发现自己需要一种方法将图像编码到潜在嵌入中,调整嵌入,然后生成新图像。有一些强大的方法可以创建嵌入或从嵌入生成。如果你想同时做到这两点,一种自然且相当简单的方法是使用变分自动编码器。 这样的深度网络不…
摩西·西珀博士

一、说明

        我最近发现自己需要一种方法将图像编码到潜在嵌入中,调整嵌入,然后生成新图像。有一些强大的方法可以创建嵌入从嵌入生成。如果你想同时做到这两点,一种自然且相当简单的方法是使用变分自动编码器。

        这样的深度网络不仅可以进行编码和解码,而且相当简单,我可以在以后的研究中使用它,而不必过多担心编码解码阶段的各种隐藏复杂性。我也更喜欢对软件内部有尽可能多的控制。

        因此,考虑到所有这些规范,我从 GitHub 收集了一些零碎的东西,施展了一些我自己的魔法,最终得到了一个漂亮、简单的变分自动编码器。我将在下面描述主要部分,完整的包可在以下位置找到:

vae-torch-celeba,PyTorch 中 CelebA 数据集的变分自动编码器,下载vae-torch-celeba的源码_GitHub_帮酷

PyTorch 中用于 CelebA 数据集的变分自动编码器 - GitHub - moshesipper/vae-torch-celeba:变分...

它相当小并且完全独立——这就是我的意图!

二、自动编码器

        为了使本文简短易懂,我将避免提供变分自动编码器的冗长概述。此外,您还可以在 Medium 上找到有关基础知识的优秀文章。我只提供三张快速图片。

        这是基本自动编码器的样子:

来源: https: //commons.wikimedia.org/wiki/File :Autoencoder_schema.png

        简而言之,网络将输入数据压缩为潜在向量(也称为嵌入),然后将其解压缩回来。这两个阶段称为编码解码

        变分自动编码器(VAE)看起来非常相似,除了中间的嵌入部分。对于每个输入,VAE 的编码器输出潜在空间中预定义分布的参数,而不是潜在空间中的向量:

来源:https ://commons.wikimedia.org/wiki/File:Reparameterized_Variational_Autoencoder.png

        最后一张图片:如果我们处理的是图像输入,我们需要一个卷积VAE,如下所示:

来源:https://github.com/arthurmeyer/Saliency_Detection_Convolutional_Autoencoder

        注意#1:观察编码器部分如何在每一层中添加越来越多的滤波器,图像变得越来越小;解码器则相反。

        注意#2:注意符号。如果只有一个通道,则术语“过滤器”和“内核”基本相同。对于多个通道,每个过滤器都是一组内核。查看这篇很棒的 Medium 文章:“直观地理解深度学习的卷积”。

三、CelebA数据集

我将使用的数据集是 CelebA,其中包含 202,599 张名人面孔图像。

CelebA 数据集

CelebFaces Attributes Dataset (CelebA) 是一个大规模人脸属性数据集,包含超过 20 万张名人图像……

可以通过以下方式访问它torchvision:

from torchvision.datasets import CelebAtrain_dataset = CelebA(path, split='train')
test_dataset = CelebA(path, split='valid') # or 'test'

四、VAE类

        我的 VAE 基于此PyTorch 示例和存储库的普通 VAE模型(将我使用的普通 VAE 替换为中的任何其他模型PyTorch-VAE应该不会太难)。PyTorch-VAE

        该文件vae.py包含VAE类以及图像大小的定义、两个潜在向量的维度(均值和方差)以及数据集的路径:

CELEB_PATH = './data/'
IMAGE_SIZE = 150
LATENT_DIM = 128
image_dim = 3 * IMAGE_SIZE * IMAGE_SIZE

在课堂上VAE,我使用了以下隐藏过滤器维度:

hidden_dims = [32, 64, 128, 256, 512]

编码器看起来像这样:

in_channels = 3
modules = []
for h_dim in hidden_dims:modules.append(nn.Sequential(nn.Conv2d(in_channels, out_channels=h_dim,kernel_size=3, stride=2, padding=1),nn.BatchNorm2d(h_dim),nn.LeakyReLU()))in_channels = h_dim
self.encoder = nn.Sequential(*modules)

然后是潜在向量:

self.fc_mu = nn.Linear(hidden_dims[-1] * self.size * self.size, LATENT_DIM)
self.fc_var = nn.Linear(hidden_dims[-1] * self.size * self.size, LATENT_DIM)

        最后我们用解码器“倒退”:

hidden_dims.reverse()for i in range(len(hidden_dims) - 1):modules.append(nn.Sequential(nn.ConvTranspose2d(hidden_dims[i],hidden_dims[i + 1],kernel_size=3,stride=2,padding=1,output_padding=1),nn.BatchNorm2d(hidden_dims[i + 1]),nn.LeakyReLU()))self.decoder = nn.Sequential(*modules)

这就是它的要点——还有一些零碎的内容vae.py可以完成这VAE门课。

五、训练

        该文件trainvae.py包含训练我们刚刚编码的 VAE 的代码。老实说,没什么花哨的......有 3 个主要函数:(train随着训练的进行,它也输出损失值),test(它还构建一个重建图像的小样本)和loss_function。训练和测试相当普通,损失函数是标准 VAE,带有重建组件 (MSE) 和 KL 散度组件。

        epoch 上的主循环执行 4 个操作:1) train、2) test、3) 生成随机潜在向量并调用decode以输出相应的输出图像,以及 4) 将 epoch 的模型保存到文件中pth

        以下是示例运行的输出。通过 20 个训练周期,您最终会得到 20 个重建图像文件、20 个潜在采样文件和 20 个 python 模型文件:

        这里reconstruction_20.png,顶行显示 8 张原始图片,底行显示经过训练的 VAE 的相应重建。

        在 epoch 20 时从模型重建(输出)图像。

        这里的sample_20.png,显示了从随机潜在向量生成的 64 张图像:

        只是为了好玩,我添加了一小段代码 — genpics.py— 从数据集中挑选一个随机图像并生成 7 个重建。以下是一些示例(最左边的图像是原始图像):

        最后,我再次放置 GitHub 链接。享受!

http://www.ds6.com.cn/news/29672.html

相关文章:

  • 台式电脑做网站服务器页面优化
  • 爱范儿 wordpress 主题惠州seo管理
  • 北京朝阳区优化seo任务
  • 招商网站如何做推广武汉百度推广开户
  • 免费在线网站建设广告接单有什么平台
  • 昆明的房产网站建设网络推广平台排名
  • 做私人网站沈阳seo代理计费
  • 基于jsp的b2b网站建设西安网络推广
  • 手机上如何制作自己的网址重庆seo代理
  • 自己做网站要固定ip凌云seo博客
  • 阿里巴巴网站装修怎么做全屏大图seo广告优化多少钱
  • 鞍山建一个网站大概要多少钱关键词点击排名系统
  • 建设网站有何要求聊城seo整站优化报价
  • 做吃的网站直播营销策略有哪些
  • node.js企业网站开发百度蜘蛛池自动收录seo
  • 哈尔滨住房和城乡建设厅官方网站网络宣传的好处
  • 世界服装鞋帽网免费做网站网站首页关键词如何优化
  • 做网站怎么给图片加连接ios微信上的pdf乱码
  • 租用服务器网站百度地图打车客服人工电话
  • 网站建设企业排行榜如何网站优化排名
  • 蓝顿长沙网站制作公司湖南专业关键词优化服务水平
  • 建立网站内容需要做的事新乡百度关键词优化外包
  • 联享品牌网站建设公司三亚百度推广开户
  • 网站建设 讲话整合网络营销外包
  • 网站开发 足球球队信息找平台推广
  • 蓟县做网站抖音搜索关键词推广
  • 重庆建设教育培训管理系统网站网站流量统计分析的维度包括
  • python做网站好用吗信息流优化师没经验可以做吗
  • 咸阳网站制作建设徐州网站优化
  • 摄影学校网站模板东莞seo培训