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

建设部注册师网站2024年新冠会消失吗

建设部注册师网站,2024年新冠会消失吗,wordpress 多站点 主题,轻量应用服务器做网站用VAE生成图像自编码器AE#xff0c;auto-encoderVAE讲讲为什么是log_var为什么要用重参数化技巧用VAE生成图像变分自编码器是自编码器的改进版本#xff0c;自编码器AE是一种无监督学习#xff0c;但它无法产生新的内容#xff0c;变分自编码器对其潜在空间进行拓展#… 用VAE生成图像自编码器AEauto-encoderVAE讲讲为什么是log_var为什么要用重参数化技巧用VAE生成图像变分自编码器是自编码器的改进版本自编码器AE是一种无监督学习但它无法产生新的内容变分自编码器对其潜在空间进行拓展使其满足正态分布情况就大不一样了。自编码器AEauto-encoder 自编码器是通过对输入X进行编码后得到一个低维的向量z然后根据这个向量还原出输入X。通过对比X与X∼\overset{\sim}{X}X∼的误差再利用神经网络去训练使得误差逐渐减小从而达到非监督学习的目的。 下图为AE的架构图: 自编码器不能随意产生合理的潜在变量从而导致它无法产生新的内容。因为潜在变量Z都是编码器从原始图片中产生的。为了解决这一问题研究人员对潜在空间Z(潜在变量对应的空间) 增加一些约束使 Z 满足正态分布由此就出现了VAE模型 VAE对编码器添加约束就是强迫它产生服从单位正态分布的潜在变量。正是这种约束把VAE和 AE 区分开来。 VAE 变分自编码器关键一点就是增加一个对潜在空间Z的正态分布约束如何确定这个正态分布就成为主要目标我们知道要确定正态分布只要确定其两个参数: 均值μ\muμ和标准差σ\sigmaσ。那如何确定 μ,σ\mu, \sigmaμ,σ呢用一般的方法或估计比较麻烦效果也不好研究人员发现**用神经网络去拟合简单效果也不错。**下图为VAE的架构图 上图中模块①的功能把输入样本X通过编码器输出两个m维向量(μ,log_var\mu, \mathrm{log\_var}μ,log_var), 这两个向量是潜在空间(假设满足正态分布)的两个参数(相当于均值和方差)。那么如何从这个潜在空间采样一个点 Z ? 这里假设潜在正态分布能生成输入图像从标准正态分布 N(0, 1)中采样一个 ϵ\epsilonϵ(模块②的功能) 然后使 Zμelog_var∗ϵZ\mu e^{log\_var}*\epsilonZμelog_var∗ϵ 这也是模块③的主要功能。 Z是从潜在空间抽取的一个向量Z通过解码器生成一个样本X∼\overset{\sim}{X}X∼, 这是模块④的功能。这里的 ϵ\epsilonϵ 是随机采样的这就可以保证潜在空间的连续性良好的结构性。而这些特性使得潜在空间的每个方向都表示数据中有意义的变化方向。 以上的这些步骤构成整个网络的前向传播过程那反向传播应如何进行要确定反向传播就会设计损失函数损失函数是衡量模型优劣的主要指标。这里我们需要从以下两个方面进行衡量。 1)生成的新图像与原图像的相似度; 2)隐含空间的分布与正态分布的相似度。 度量图像的相似度一般采用交叉熵(如nn.BCELoss) , 度量两个分布的相似度一般采用KL散度(Kullback-Leibler divergence)。这两个度量的和构成了整个模型的损失函数。 以下是损失函数的具体代码VAE损失函数的推导过程可以参考原论文 # 定义重构损失函数及KL散度 reconst_loss F.binary_cross_entropy(x_reconst, x, size_averageFalse) kl_div -0.5*torch.sum(1log_var-mu.pow(2)-log_var.exp()) # 两者相加得总损失 loss reconst_loss kl_div讲讲为什么是log_var 这里可以看成 log_var log⁡σ\log \sigmalogσ所以Zμelog_var∗ϵZ\mu e^{log\_var}*\epsilonZμelog_var∗ϵ也就是Zμσ∗ϵZ\mu \sigma*\epsilonZμσ∗ϵ 其中ϵ∼N(0,1)\epsilon\sim N(0,1)ϵ∼N(0,1), 这里涉及到重参数化reparameterization。 为什么要用重参数化技巧 如果想从高斯分布N(μ,σ2)N(\mu,\sigma^{2})N(μ,σ2)中采样可以先从标准分布N(0,1)N(0,1)N(0,1)采样出 ϵ\epsilonϵ , 再得到 Zσ∗ϵμZ \sigma*\epsilon\muZσ∗ϵμ. 这样做的好处是 如果直接对N(μ,σ2)N(\mu,\sigma^{2})N(μ,σ2)进行采样得到Z则Z无法对μ,σ\mu,\sigmaμ,σ进行求偏导 将随机性转移到了 ϵ\epsilonϵ 这个常量上而 σ\sigmaσ和μ\muμ则当做仿射变换网络的一部分,这样得到的Zσ∗ϵμZ \sigma*\epsilon\muZσ∗ϵμ则Z就可以对μ,σ\mu,\sigmaμ,σ进行求偏导来计算损失函数进行求梯度进行BP。 用VAE生成图像 下面将结合代码用pytorch实现为便于说明起见数据集采用MNIST整个网络架构如下图所示。 # 1. 导入必要的包 import os import torch import torch.nn as nn import torch.nn.functional as F import torchvision from torchvision import transforms from torchvision.utils import save_image# 2. 定义一些超参数 image_size 784 # 28*28 h_dim 400 z_dim 20 num_epochs 30 batch_size 128 learning_rate 0.001 # 如果没有文件夹就创建一个文件夹 sample_dir samples if not os.path.exists(sample_dir):os.makedirs(sample_dir) 对数据集进行预处理如转换为Tensor, 把数据集转换为循环可批量加载的数据集 # 只下载训练数据集即可 # 下载MNIST训练集 dataset torchvision.datasets.MNIST(root./data, trainTrue, transformtransforms.ToTensor(),downloadTrue)# 数据加载 data_loader torch.utils.data.DataLoader(datasetdataset,batch_sizebatch_size,shuffleTrue)构建VAE模型主要由Encoder和Decoder两部分组成 # 定义AVE模型 class VAE(nn.Module):def __init__(self, image_size784, h_dim400, z_dim20):super(VAE, self).__init__()self.fc1 nn.Linear(image_size, h_dim)self.fc2 nn.Linear(h_dim, z_dim)self.fc3 nn.Linear(h_dim, z_dim)self.fc4 nn.Linear(z_dim, h_dim)self.fc5 nn.Linear(h_dim, image_size)def encoder(self, x):h F.relu(self.fc1(x))return self.fc2(h), self.fc3(h)# 用mu, log_var生成一个潜在空间点z, mu, log_var为两个统计参数我们假设# 这个假设分布能生成图像def reparameterize(self, mu, log_var):std torch.exp(log_var/2)eps torch.randn_like(std)return mu eps * std def decoder(self, z):h F.relu(self.fc4(z))return F.sigmoid(self.fc5(h))def forward(self, x):mu, log_var self.encoder(x)z self.reparameterize(mu, log_var)x_reconst self.decoder(z)return x_reconst, mu, log_var 选择GPU和优化器 # 选择GPU和优化器 torch.cuda.set_device(1) device torch.device(cuda if torch.cuda.is_available() else cpu) model VAE().to(device) optimizer torch.optim.Adam(model.parameters(), lrlearning_rate)训练模型同时保存原图像与随机生成的图像 # 训练模型同时保存原图像与随机生成的图像 for epoch in range(num_epochs):for i, (x, _) in enumerate(data_loader):# 获取样本并前向传播x x.to(device).view(-1, image_size)x_reconst, mu, log_var model(x)# 计算重构损失和KL散度(KL散度用于衡量两种分布的相似程度)# KL散度的计算可以参考https://shenxiaohai.me/2018/10/20/pytorch-tutorial-advanced-02/reconst_loss F.binary_cross_entropy(x_reconst, x, size_averageFalse)kl_div -0.5 * torch.sum(1 log_var - mu.pow(2) - log_var.exp())# 反向传播和优化loss reconst_loss kl_div optimizer.zero_grad()loss.backward()optimizer.step()if (i1)%100 0:print(Epoch [{}/{}], Step [{}/{}], Reconst Loss: {:.4f}, KL Div:{:.4f}.format(epoch1, num_epochs, i1, len(data_loader), reconst_loss.item(), kl_div.item()))# 利用训练的模型进行测试with torch.no_grad():# 保存采样图像即潜在向量z通过解码器生成的新图像# 随机生成的图像z torch.randn(batch_size, z_dim).to(device)out model.decoder(z).view(-1, 1, 28, 28)save_image(out, os.path.join(sample_dir, sampled-{}.png.format(epoch1)))# 保存重构图像即原图像通过解码器生成的图像out, _, _ model(x)x_concat torch.cat([x.view(-1, 1, 28, 28), out.view(-1, 1, 28, 28)], dim3)save_image(x_concat, os.path.join(sample_dir, reconst-{}.png.format(epoch1))) 展示原图像及重构图像 #显示图片 import matplotlib.pyplot as plt import matplotlib.image as mpimg import numpy as np recons_path ./samples/reconst-30.png Image mpimg.imread(recons_path) plt.imshow(Image) plt.axis(off) plt.show() # reconst # 奇数列为原图像欧数列为原图像重构的图像可以看出重构效果还不错。 8. 由潜在空间通过解码器生成的新图像这个图像效果也不错 # sampled # 为由潜在空间通过解码器生成的新图像这个图像效果也不错 genPath ./samples/sampled-30.png Image mpimg.imread(genPath) plt.imshow(Image) plt.axis(off) plt.show()总结这里构建网络主要用全连接层有兴趣的读者可以把卷积层如果编码层使用卷积层(如nn.Conv2d), 则解码器就需要使用反卷积层(如nn.ConvTranspose2d)。
文章转载自:
http://www.morning.okiner.com.gov.cn.okiner.com
http://www.morning.yptwn.cn.gov.cn.yptwn.cn
http://www.morning.rgnp.cn.gov.cn.rgnp.cn
http://www.morning.tlnkz.cn.gov.cn.tlnkz.cn
http://www.morning.zlhzd.cn.gov.cn.zlhzd.cn
http://www.morning.china-cj.com.gov.cn.china-cj.com
http://www.morning.cnwpb.cn.gov.cn.cnwpb.cn
http://www.morning.yqhdy.cn.gov.cn.yqhdy.cn
http://www.morning.pqypt.cn.gov.cn.pqypt.cn
http://www.morning.fldk.cn.gov.cn.fldk.cn
http://www.morning.neletea.com.gov.cn.neletea.com
http://www.morning.cgbgc.cn.gov.cn.cgbgc.cn
http://www.morning.shangwenchao4.cn.gov.cn.shangwenchao4.cn
http://www.morning.gcbhh.cn.gov.cn.gcbhh.cn
http://www.morning.fkyqm.cn.gov.cn.fkyqm.cn
http://www.morning.jczjf.cn.gov.cn.jczjf.cn
http://www.morning.crfjj.cn.gov.cn.crfjj.cn
http://www.morning.xjnw.cn.gov.cn.xjnw.cn
http://www.morning.qnywy.cn.gov.cn.qnywy.cn
http://www.morning.bztzm.cn.gov.cn.bztzm.cn
http://www.morning.rgdcf.cn.gov.cn.rgdcf.cn
http://www.morning.dqbpf.cn.gov.cn.dqbpf.cn
http://www.morning.zzhqs.cn.gov.cn.zzhqs.cn
http://www.morning.bnzjx.cn.gov.cn.bnzjx.cn
http://www.morning.ccpnz.cn.gov.cn.ccpnz.cn
http://www.morning.dgfpp.cn.gov.cn.dgfpp.cn
http://www.morning.yjknk.cn.gov.cn.yjknk.cn
http://www.morning.yldgw.cn.gov.cn.yldgw.cn
http://www.morning.ysgnb.cn.gov.cn.ysgnb.cn
http://www.morning.wdply.cn.gov.cn.wdply.cn
http://www.morning.lrylj.cn.gov.cn.lrylj.cn
http://www.morning.nxcgp.cn.gov.cn.nxcgp.cn
http://www.morning.dydqh.cn.gov.cn.dydqh.cn
http://www.morning.qtkfp.cn.gov.cn.qtkfp.cn
http://www.morning.jrrqs.cn.gov.cn.jrrqs.cn
http://www.morning.cnkrd.cn.gov.cn.cnkrd.cn
http://www.morning.ytfr.cn.gov.cn.ytfr.cn
http://www.morning.gfqj.cn.gov.cn.gfqj.cn
http://www.morning.leboju.com.gov.cn.leboju.com
http://www.morning.lsjtq.cn.gov.cn.lsjtq.cn
http://www.morning.bzlgb.cn.gov.cn.bzlgb.cn
http://www.morning.rgxll.cn.gov.cn.rgxll.cn
http://www.morning.fbqr.cn.gov.cn.fbqr.cn
http://www.morning.ktlxk.cn.gov.cn.ktlxk.cn
http://www.morning.dwkfx.cn.gov.cn.dwkfx.cn
http://www.morning.xfxnq.cn.gov.cn.xfxnq.cn
http://www.morning.nyzmm.cn.gov.cn.nyzmm.cn
http://www.morning.pdghl.cn.gov.cn.pdghl.cn
http://www.morning.rqsr.cn.gov.cn.rqsr.cn
http://www.morning.qwmpn.cn.gov.cn.qwmpn.cn
http://www.morning.yjknk.cn.gov.cn.yjknk.cn
http://www.morning.mknxd.cn.gov.cn.mknxd.cn
http://www.morning.xyyplp.cn.gov.cn.xyyplp.cn
http://www.morning.gctgc.cn.gov.cn.gctgc.cn
http://www.morning.crxdn.cn.gov.cn.crxdn.cn
http://www.morning.dkslm.cn.gov.cn.dkslm.cn
http://www.morning.btqqh.cn.gov.cn.btqqh.cn
http://www.morning.xfxnq.cn.gov.cn.xfxnq.cn
http://www.morning.hous-e.com.gov.cn.hous-e.com
http://www.morning.wgxtz.cn.gov.cn.wgxtz.cn
http://www.morning.dmlsk.cn.gov.cn.dmlsk.cn
http://www.morning.ctsjq.cn.gov.cn.ctsjq.cn
http://www.morning.rsdm.cn.gov.cn.rsdm.cn
http://www.morning.rdkt.cn.gov.cn.rdkt.cn
http://www.morning.rnxw.cn.gov.cn.rnxw.cn
http://www.morning.snmth.cn.gov.cn.snmth.cn
http://www.morning.smpmn.cn.gov.cn.smpmn.cn
http://www.morning.kzslk.cn.gov.cn.kzslk.cn
http://www.morning.tscsd.cn.gov.cn.tscsd.cn
http://www.morning.xrqkm.cn.gov.cn.xrqkm.cn
http://www.morning.hqykb.cn.gov.cn.hqykb.cn
http://www.morning.dqrpz.cn.gov.cn.dqrpz.cn
http://www.morning.jynzb.cn.gov.cn.jynzb.cn
http://www.morning.wgzgr.cn.gov.cn.wgzgr.cn
http://www.morning.kfmnf.cn.gov.cn.kfmnf.cn
http://www.morning.juju8.cn.gov.cn.juju8.cn
http://www.morning.rjljb.cn.gov.cn.rjljb.cn
http://www.morning.pxdgy.cn.gov.cn.pxdgy.cn
http://www.morning.nfccq.cn.gov.cn.nfccq.cn
http://www.morning.jxwhr.cn.gov.cn.jxwhr.cn
http://www.tj-hxxt.cn/news/276402.html

相关文章:

  • 做企业网站前期需要准备什么十大互联网公司排名
  • 网站营销策略怎么写宁德网站推广
  • 太原做网站找谁搜外网友情链接
  • 阿里网站建设方案书教育培训机构管理系统
  • 公司展示类网站模板免费下载网站建设桔子科技
  • 建设 网站优秀高端网站建设公司
  • 镇江网站关键字优化机构微网站开发用什么软件
  • 黄冈网站推广软件视频下载青海省西宁市住房城乡建设厅网站
  • 西安煤炭建设监理中心网站阿里云购买网站登录
  • 山东网站建设培训网页制作 软件
  • 建设网站的网站有哪些学网站开发顺序
  • 宁津网站设计家装公司排名前十强
  • 示范校建设平台网站番禺门户网站建设
  • 有奖竞猜网站建设做网站企业 金坛
  • 做一个网站价格安装wordpress插件目录
  • 高端模板建站报价wordpress打开文章很慢
  • 临翔区城乡建设局网站关于优化培训
  • 网站建设赚钱么网站建设费用请示
  • 做网站法律条文广州网站建设 粤icp
  • 儿童摄影网站怎么做做网站每年都要费用的吗
  • 站群网站和做seo那个号企业差旅服务平台
  • 晋城网站设计wordpress怎么找模板
  • 个人网站备案后内容可以改么wordpress页面回收站
  • 网站维护工单阿里云网站搭建
  • 2个淘宝可以做情侣网站么电商网站建设方式
  • 在线制作图片渐变色郑州seo优化公司
  • 网站建设宣传册网络服务列表中选择iphone
  • 泉州建行 网站杭州萧山网站建设
  • 仿牌网站空间网站上传的图片怎么做的清晰度
  • 珠海建站软件世界杯直播观看网站