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

网站开发过程文档兰溪做网站哪家好

网站开发过程文档,兰溪做网站哪家好,数据服务网站开发,网站开发方法简答题接续上一天的学习任务,我们要继续进行下一步的操作 构造网络 当处理完数据后,就可以来进行网络的搭建了。按照DCGAN论文中的描述,所有模型权重均应从mean为0,sigma为0.02的正态分布中随机初始化。 接下来了解一下其他内容 生成…

接续上一天的学习任务,我们要继续进行下一步的操作

构造网络

当处理完数据后,就可以来进行网络的搭建了。按照DCGAN论文中的描述,所有模型权重均应从mean为0,sigma为0.02的正态分布中随机初始化。

接下来了解一下其他内容

生成器

生成器G的功能是将隐向量z映射到数据空间。实践场景中,该功能是通过一系列Conv2dTranspose转置卷积层来完成的,每个层都与BatchNorm2d层和ReLu激活层配对,输出数据会经过tanh函数,使其返回[-1,1]的数据范围内。

DCGAN论文生成图像如下所示:

通过输入部分中设置的nzngfnc来影响代码中的生成器结构。nz是隐向量z的长度,ngf与通过生成器传播的特征图的大小有关,nc是输出图像中的通道数。

代码实现

import mindspore as ms
from mindspore import nn, ops
from mindspore.common.initializer import Normalweight_init = Normal(mean=0, sigma=0.02)
gamma_init = Normal(mean=1, sigma=0.02)class Generator(nn.Cell):"""DCGAN网络生成器"""def __init__(self):super(Generator, self).__init__()self.generator = nn.SequentialCell(nn.Conv2dTranspose(nz, ngf * 8, 4, 1, 'valid', weight_init=weight_init),nn.BatchNorm2d(ngf * 8, gamma_init=gamma_init),nn.ReLU(),nn.Conv2dTranspose(ngf * 8, ngf * 4, 4, 2, 'pad', 1, weight_init=weight_init),nn.BatchNorm2d(ngf * 4, gamma_init=gamma_init),nn.ReLU(),nn.Conv2dTranspose(ngf * 4, ngf * 2, 4, 2, 'pad', 1, weight_init=weight_init),nn.BatchNorm2d(ngf * 2, gamma_init=gamma_init),nn.ReLU(),nn.Conv2dTranspose(ngf * 2, ngf, 4, 2, 'pad', 1, weight_init=weight_init),nn.BatchNorm2d(ngf, gamma_init=gamma_init),nn.ReLU(),nn.Conv2dTranspose(ngf, nc, 4, 2, 'pad', 1, weight_init=weight_init),nn.Tanh())def construct(self, x):return self.generator(x)generator = Generator()

判别器

判别器D是一个二分类网络模型,输出判定该图像为真实图的概率。

代码实现

class Discriminator(nn.Cell):"""DCGAN网络判别器"""def __init__(self):super(Discriminator, self).__init__()self.discriminator = nn.SequentialCell(nn.Conv2d(nc, ndf, 4, 2, 'pad', 1, weight_init=weight_init),nn.LeakyReLU(0.2),nn.Conv2d(ndf, ndf * 2, 4, 2, 'pad', 1, weight_init=weight_init),nn.BatchNorm2d(ngf * 2, gamma_init=gamma_init),nn.LeakyReLU(0.2),nn.Conv2d(ndf * 2, ndf * 4, 4, 2, 'pad', 1, weight_init=weight_init),nn.BatchNorm2d(ngf * 4, gamma_init=gamma_init),nn.LeakyReLU(0.2),nn.Conv2d(ndf * 4, ndf * 8, 4, 2, 'pad', 1, weight_init=weight_init),nn.BatchNorm2d(ngf * 8, gamma_init=gamma_init),nn.LeakyReLU(0.2),nn.Conv2d(ndf * 8, 1, 4, 1, 'valid', weight_init=weight_init),)self.adv_layer = nn.Sigmoid()def construct(self, x):out = self.discriminator(x)out = out.reshape(out.shape[0], -1)return self.adv_layer(out)discriminator = Discriminator()

接下来进入模型训练阶段

模型训练

其中分为几个要素:

损失函数

当定义了DG后,接下来将使用MindSpore中定义的二进制交叉熵损失函数BCELoss。

优化器

训练模型:训练判别器和训练生成器。

实现模型训练正向逻辑:

def generator_forward(real_imgs, valid):# 将噪声采样为发生器的输入z = ops.standard_normal((real_imgs.shape[0], nz, 1, 1))# 生成一批图像gen_imgs = generator(z)# 损失衡量发生器绕过判别器的能力g_loss = adversarial_loss(discriminator(gen_imgs), valid)return g_loss, gen_imgsdef discriminator_forward(real_imgs, gen_imgs, valid, fake):# 衡量鉴别器从生成的样本中对真实样本进行分类的能力real_loss = adversarial_loss(discriminator(real_imgs), valid)fake_loss = adversarial_loss(discriminator(gen_imgs), fake)d_loss = (real_loss + fake_loss) / 2return d_lossgrad_generator_fn = ms.value_and_grad(generator_forward, None,optimizer_G.parameters,has_aux=True)
grad_discriminator_fn = ms.value_and_grad(discriminator_forward, None,optimizer_D.parameters)@ms.jit
def train_step(imgs):valid = ops.ones((imgs.shape[0], 1), mindspore.float32)fake = ops.zeros((imgs.shape[0], 1), mindspore.float32)(g_loss, gen_imgs), g_grads = grad_generator_fn(imgs, valid)optimizer_G(g_grads)d_loss, d_grads = grad_discriminator_fn(imgs, gen_imgs, valid, fake)optimizer_D(d_grads)return g_loss, d_loss, gen_imgs

代码训练

结果展示就不多说了看成品

文末附上打卡时间

http://www.yayakq.cn/news/707399/

相关文章:

  • 常熟做网站哪家好怎么制造网站
  • 河源网站建设工作室全国建筑业四库一平台
  • 给公司做网站怎么弄网站主机的类型
  • 肇庆市手机网站建设品牌网站+建设+拖拉+源码+系统
  • 沈阳高端网站定制中山企业做网站
  • 巴南网站建设二级学院网站建设及利用情况
  • 海拉尔做网站多少钱淘客网站怎么做淘口令
  • 微信小店网站建设排名优化公司
  • 优秀的图片设计网站金州网站建设
  • 如何做能上传视频网站品牌网站建设渠道
  • 手表网站上没有价格成都制作网页设计
  • 自己建网站数据怎么做seo优化师培训
  • 餐饮品牌设计网站百度seo关键词排名技术
  • 商城类网站模板建筑网片厂家货源平台
  • 网站搜索框用ps怎么做上海市虹口市容建设公司网站
  • 辽宁鞍山网站建设公司公众号 上传wordpress
  • 内网 做 网站一个公司能备案多个网站吗
  • 建网站需要哪些文件夹做网站需要准备哪些
  • 触摸屏网站如何做做一个手机网站多少钱
  • 淘客cms建站室内装饰网站模板
  • 鄂州网站建设哪家专业网络域名多少钱一年
  • 如何搭建个人博客网站罗湖高端网站设计
  • 网站服务器ipv6网站开发培训费多少钱
  • 网站meta网页描述引流推广什么意思
  • 网站介绍的ppt怎么做服装网站建设任务表
  • 网站编辑软件有哪些一级a做爰片图片免费观看网站
  • 南冒网站建设制作推广公司wordpress 百度主题
  • 用腾讯云做网站wordpress 加分类
  • 住房和城乡建设部网站村镇建设找人建设网站
  • 免费网站建设企业邯郸营销网站建设公司