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

校园网站建设成本东莞建设网站平台

校园网站建设成本,东莞建设网站平台,长春搜索排名公司,建筑模型网站【深度学习】gan网络原理生成对抗网络 GAN的基本思想源自博弈论你的二人零和博弈#xff0c;由一个生成器和一个判别器构成#xff0c;通过对抗学习的方式训练#xff0c;目的是估测数据样本的潜在分布并生成新的数据样本。 1.下载数据并对数据进行规范 transform tran…【深度学习】gan网络原理生成对抗网络 GAN的基本思想源自博弈论你的二人零和博弈由一个生成器和一个判别器构成通过对抗学习的方式训练目的是估测数据样本的潜在分布并生成新的数据样本。 1.下载数据并对数据进行规范 transform transforms.Compose([transforms.ToTensor(),transforms.Normalize(0.5 , 0.5) ]) train_ds torchvision.datasets.MNIST(data, trainTrue, transformtransform, downloadTrue) dataloader torch.utils.data.DataLoader(train_ds, batch_size64, shuffleTrue)下载MNIST数据集并对数据进行规范化。transforms.Compose 是用于定义一系列数据变换的类ToTensor() 将图像转换为PyTorch张量Normalize(0.5, 0.5) 对张量进行归一化。然后创建一个 DataLoader它将数据集划分成小批次使得在训练时更容易处理。 2.生成器的代码 class Generator(nn.Module):def __init__(self):super(Generator, self).__init__()self.main nn.Sequential(nn.Linear(100, 256),nn.ReLU(),nn.Linear(256, 512),nn.ReLU(),nn.Linear(512, 28*28),nn.Tanh())def forward(self, x):img self.main(x)img img.reshape(-1, 28, 28)return img这一部分定义了生成器的神经网络模型。生成器的输入是一个大小为100的随机向量通过多个线性层和激活函数ReLU最后通过 nn.Tanh() 激活函数生成大小为28x28的图像。forward 方法定义了前向传播的过程。 3.判别器的代码 class Discriminator(nn.Module):def __init__(self):super(Discriminator, self).__init__()self.main nn.Sequential(nn.Linear(28*28, 512),nn.LeakyReLU(),nn.Linear(512, 256),nn.LeakyReLU(),nn.Linear(256, 1),nn.Sigmoid())def forward(self, x):x x.view(-1, 28*28)x self.main(x)return x这一部分定义了判别器的神经网络模型。判别器的输入是28x28大小的图像通过多个线性层和激活函数LeakyReLU最后通过 nn.Sigmoid() 激活函数输出一个0到1之间的值表示输入图像是真实图像的概率。 4. 定义损失函数和优化函数 device cuda if torch.cuda.is_available() else cpu gen Generator().to(device) dis Discriminator().to(device) gen_opt optim.Adam(gen.parameters(), lr0.0001) dis_opt optim.Adam(dis.parameters(), lr0.0001) loss_fn torch.nn.BCELoss()这一部分设置了设备GPU或CPU、初始化了生成器和判别器的实例并定义了优化器Adam优化器和损失函数二分类交叉熵损失。将生成器和判别器移动到设备上进行加速计算。 5.定义绘图函数 def gen_img_plot(model,test_input):prediction np.squeeze(model(test_input).detach().cpu().numpy())fig plt.figure(figsize(4, 4))for i in range(16):plt.subplot(4, 4, i1)plt.imshow((prediction[i]1)/2)plt.axis(off)plt.show()6. 开始训练并显示出生成器所产生的图像 test_input torch.randn(16, 100, devicedevice) D_loss [] G_loss [] for epoch in range(30):d_epoch_loss 0g_epoch_loss 0count len(dataloader)for step, (img, _) in enumerate(dataloader):img img.to(device) # 获得用于训练的mnist图像size img.size(0) # 获得1批次数据量大小# 随机生成size个100维的向量样本值也即是噪声用于输入生成器 生成 和mnist一样的图像数据random_noise torch.randn(size, 100, devicedevice)########################### 先训练判别器 #############################dis_opt.zero_grad()real_output dis(img)d_real_loss loss_fn(real_output, torch.ones_like(real_output)) # 真实值的loss也即是真图片与1标签的损失d_real_loss.backward()gen_img gen(random_noise)fake_output dis(gen_img.detach())d_fake_loss loss_fn(fake_output, torch.zeros_like(fake_output)) # 假的值的loss也即是生成的图像与0标签的损失d_fake_loss.backward()d_loss d_real_loss d_fake_lossdis_opt.step()########################### 下面再训练生成器 #############################gen_opt.zero_grad()fake_output dis(gen_img)g_loss loss_fn(fake_output, torch.ones_like(fake_output))g_loss.backward()gen_opt.step()#########################################################################with torch.no_grad():d_epoch_loss d_lossg_epoch_loss g_loss with torch.no_grad():d_epoch_loss / countg_epoch_loss / countD_loss.append(d_epoch_loss)G_loss.append(g_epoch_loss)print(epoch:, epoch)gen_img_plot(gen, test_input)1.设置 test_input 作为模型的输入并初始化用于存储判别器D和生成器G的损失值的列表。 2.开始 30 轮次的训练循环。在每一轮中 3.对数据集进行遍历。每次迭代加载一批图像数据 (img)。 4.将图像数据移动到设备device上并获取批次大小。 5.生成随机噪声作为输入给生成器。 6.训练判别器D 对真实图像计算判别器的损失 (d_real_loss)并反向传播计算梯度。生成生成器产生的图像并计算判别器的对这些生成图像的损失 (d_fake_loss)再反向传播计算梯度。计算总的判别器损失 d_loss并更新判别器的参数。 7.训练生成器G 生成器生成图像并将其输入到判别器中计算生成器的损失 (g_loss)并反向传播计算梯度。更新生成器的参数。 这个过程是 GAN 中交替训练生成器和判别器的典型过程目的是让生成器生成逼真的图像同时让判别器能够准确区分真假图像。
http://www.pierceye.com/news/20167/

相关文章:

  • 手机文章网站源码一条龙网站建设
  • 湖北省建设工程造价管理协会网站wordpress中文主题框架
  • 做注塑机的网站做自主外贸网站和后台费用多少
  • 深圳网站建设及优化微信公众号关联网站
  • 改动网站标题百度一下百度主页
  • wordpress集成到app岳阳seo公司咨询23火星
  • 做网站技术选择最大的房产网站
  • 广州网站优化专家做汤的网站
  • 网站版权 备案icp南宁网站seo外包
  • 二手车网站源码下载电销系统多少钱一套
  • wordPress如何把菜单加入导航成都seo正规优化
  • 西丽网站的建设哪里网站建设专业
  • 怎么下载建设银行网站网站关键词查询网址
  • 接网站开发外包做网站增加流量
  • 迎泽网站建设移动端是不是手机端
  • wordpress安装报错南平网站建设wzjseo
  • 住房和城乡建设部贰级建造师网站百度合作推广
  • 网站建设质量保证成都网站建设公司有哪些
  • 深圳+服装+网站建设哪个网站做视频收益高
  • 临沂网站建设兼职oa管理系统项目文档
  • 网站建设市场定位网站制作教程及流程
  • 怎么在百度上面做网站微网站页面菜单栏
  • 请人做网站要多少有没有什么好看的网址
  • 一个服务器多个网站好吗校园网络设计方案
  • 网站规划详细设计怎么写怎样在别人网站做加强链接
  • 12306网站是谁做的app界面设计说明
  • 专门做mod的网站江苏省网站建设
  • 上市企业网站设计wordpress付费注册插件
  • wordpress下载资源站主题自助建站模板下载
  • 无锡市住房与城乡建设网站岳池做网站电话