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

南宁企业建站系统模板aaaa景区网站建设标准

南宁企业建站系统模板,aaaa景区网站建设标准,临沂企业网站开发官网,蔺市网站建设自编码说白了就是一个特征提取器#xff0c;也可以看作是一个降维器。下面找了一张很丑的图来说明自编码的过程。 自编码分为压缩和解码两个过程。从图中可以看出来#xff0c;压缩过程就是将一组数据特征进行提取#xff0c; 得到更深层次的特征。解码的过程就是利用之前的…自编码说白了就是一个特征提取器也可以看作是一个降维器。下面找了一张很丑的图来说明自编码的过程。 自编码分为压缩和解码两个过程。从图中可以看出来压缩过程就是将一组数据特征进行提取 得到更深层次的特征。解码的过程就是利用之前的深层次特征再还原成为原来的数据特征。那么如何保证从压缩到解码两部分原数据和解码数据保持一致呢这就是要训练的过程。 如何理解降维如果压缩的过程是卷积维度可以根据核的个数变化特征维度因此而改变。 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_imagedevice torch.device(cuda if torch.cuda.is_available() else cpu)sample_dir samples if not os.path.exists(sample_dir):os.makedirs(sample_dir) image_size 784 h_dim 400 z_dim 20 num_epochs 15 batch_size 128 learning_rate 1e-3dataset torchvision.datasets.MNIST(root../../data,trainTrue,transformtransforms.ToTensor(),downloadTrue)# Data loader data_loader torch.utils.data.DataLoader(datasetdataset,batch_sizebatch_size, shuffleTrue) 模型搭建这里搭建的是一个变分自编码Variational Autoencoder 那么变分自编码是为了解决什么问题呢 ——- 其主要思想还是希望学习隐层变量并将其用来表示原始数据但是它加另一个条件, 即隐层变量能学习原始数据的分布, 并反过来生产一些和原始数据相似的数据这有啥用—-可用于图片修复让图片按训练集的数据分布变化。 变分自编码 (Variational Autoencoder) 为了让隐层抓住输入数据特性, 而不是简单的输出数据输入数据他在隐层中加入随机噪声单位高斯噪声这个过程也叫reparametrize以确保隐层能较好抽象输入数据特点。 代码中怎么做的呢 1、编码过程中我们保存了第二层线性层的输出。其中第二层包含有fc2与fc3两部分他们是并联的。 2、给隐藏层加入随机噪声作为解码的输入 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 encode(self, x):h F.relu(self.fc1(x))return self.fc2(h), self.fc3(h)def reparameterize(self, mu, log_var):std torch.exp(log_var/2)eps torch.randn_like(std)return mu eps * stddef decode(self, z):h F.relu(self.fc4(z))return F.sigmoid(self.fc5(h))def forward(self, x):mu, log_var self.encode(x)z self.reparameterize(mu, log_var)x_reconst self.decode(z)return x_reconst, mu, log_var 训练由于训练中加入了噪声所以损失值的结构也因此改变。一部分来源于解码内容核原内容的相似度另一部分是kl_div具体是什么意义需查看论文。 model VAE().to(device) optimizer torch.optim.Adam(model.parameters(), lrlearning_rate)# Start training for epoch in range(num_epochs):for i, (x, _) in enumerate(data_loader):# Forward passx x.to(device).view(-1, image_size)x_reconst, mu, log_var model(x)# Compute reconstruction loss and kl divergence# For KL divergence, see Appendix B in VAE paper or http://yunjey47.tistory.com/43reconst_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())# Backprop and optimizeloss reconst_loss kl_divoptimizer.zero_grad()loss.backward()optimizer.step()if (i1) % 10 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():# Save the sampled imagesz torch.randn(batch_size, z_dim).to(device)out model.decode(z).view(-1, 1, 28, 28)save_image(out, os.path.join(sample_dir, sampled-{}.png.format(epoch1)))# Save the reconstructed imagesout, _, _ 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))) 模型训练完成了之后该如何使用这个模型呢 model.decode()是一个解码的过程我们给他一个随机的中间特征z就可以输出一个数字图片了。 z torch.randn(1,z_dim).to(device) out model.decode(z) plt.imshow(out.cpu().data.numpy().reshape(28,28),cmapgray) plt.show() 有了随机的一张图片之后我们把他完整的放入模型中生成了和输入相似的一张图片也没看出来是修复了图像...... out,_,_ model(out) plt.imshow(out.cpu().data.numpy().reshape(28,28),cmapgray) plt.show()
http://www.hkea.cn/news/14389865/

相关文章:

  • 网站建设制作报价asp.net 4.0网站开发
  • 青白江做网站的公司淘宝优惠券网站怎么做
  • 设计感十足的网站新网站优化
  • 从网站栏目看网站功能实训网站开发目的
  • 服装图案素材网站wordpress调用页面标题
  • 西宁网站建设报价壹君博贴心凡客优品
  • 安装网站程序的流程东南亚做网站 什么语言
  • 硬件开发工程师工资做网站优化找谁
  • 网站备案一次就可以了吧广东粤建设计院网站
  • 建个人网站能赚钱吗网站配色
  • 本地dedecms网站大连金州区房价
  • 织梦网站主页代码在后台怎么改怎么查网站开发者联系方式
  • 网站备案条件广州户外拓展
  • 网站资源做缓存晋城市住建设局网站
  • 做视频类型的网站wordpress导出数据
  • 做民宿上几家网站好怎么注册公司教程
  • 企业信息化建设网站做网站维护需要什么证书
  • 网站内链规划公司网站备案多少钱
  • 商城网站开发解决方案wordpress html主页
  • 网站移动端生成器个人所得税app下载
  • wix怎么做网站教程网页制作自我介绍模板
  • 医院做网站青岛seo推广公司
  • 商城网站一般用什么做二次开发抖音seo推广
  • 长春网站怎么推广高端产业园开发
  • 建设部特殊工种查询网站怎么做类似美团的网站
  • 网站开发要点域名网址申请流程
  • 江苏中粟建设工程有限公司网站tom企业邮箱官网
  • 江东怎样优化seo廊坊企业网站排名优化
  • wordpress网站怎么打开很慢响应式和非响应式网站
  • 简单网站建设软件有哪些发帖效果好的网站