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

门户网站后台管理系统网站被提示危险网站

门户网站后台管理系统,网站被提示危险网站,织梦网站登录,wordpress igoogle图像生成#xff1a;Pytorch实现一个简单的对抗生成网络模型 前言相关介绍具体步骤准备并读取数据集定义生成器定义判别器定义损失函数定义优化器开始训练完整代码 训练生成的图片 前言 由于本人水平有限#xff0c;难免出现错漏#xff0c;敬请批评改正。更多精彩内容… 图像生成Pytorch实现一个简单的对抗生成网络模型 前言相关介绍具体步骤准备并读取数据集定义生成器定义判别器定义损失函数定义优化器开始训练完整代码 训练生成的图片 前言 由于本人水平有限难免出现错漏敬请批评改正。更多精彩内容可点击进入人工智能知识点专栏、Python日常小操作专栏、OpenCV-Python小应用专栏、YOLO系列专栏、自然语言处理专栏或我的个人主页查看基于DETR的人脸伪装检测YOLOv7训练自己的数据集口罩检测YOLOv8训练自己的数据集足球检测YOLOv5TensorRT加速YOLOv5模型推理YOLOv5IoU、GIoU、DIoU、CIoU、EIoU玩转Jetson Nano五TensorRT加速YOLOv5目标检测YOLOv5添加SE、CBAM、CoordAtt、ECA注意力机制YOLOv5yolov5s.yaml配置文件解读、增加小目标检测层Python将COCO格式实例分割数据集转换为YOLO格式实例分割数据集YOLOv5使用7.0版本训练自己的实例分割模型车辆、行人、路标、车道线等实例分割使用Kaggle GPU资源免费体验Stable Diffusion开源项目 相关介绍 对抗生成网络Adversarial Generative Networks简称GANs是由伊恩·古德费洛Ian Goodfellow等人在2014年提出的深度学习框架主要用于无监督学习中的数据生成任务。GAN的设计灵感来源于博弈论中的极小极大游戏在机器学习领域开辟了一种全新的生成模型方法。 GAN包含两个主要组成部分 生成器Generator, G 生成器G是一个神经网络它的功能是从随机噪声向量通常来自高斯分布或其他先验分布出发通过一系列变换来生成新的数据样本这些样本应该尽可能接近于训练数据的真实分布。G的目标是尽可能地“欺骗”判别器使其无法区分生成的数据和真实数据。 判别器Discriminator, D 判别器D也是一个神经网络它的作用是接收输入的样本并将其分类为“真”来自真实数据分布或“假”来自生成器产生的分布。D的目标是准确地区分真实数据和伪造数据从而提高自身鉴别能力。 训练过程中GAN采用了极小极大博弈策略具体步骤如下 先固定判别器参数更新生成器参数以使得生成的数据更有可能被判别器误认为真实数据再固定生成器参数更新判别器参数以更好地区分真实数据和生成器生成的伪数据。 这种交替优化的方式促使两个网络性能不断提升直到达到纳什均衡此时生成器能够生成非常逼真的新样本而判别器再也无法有效区分真实数据和生成数据。 GAN在图像生成、图像到图像转换、视频生成、音频合成等多个领域都取得了显著成果并且随着研究的深入衍生出了许多改进版本和变体比如条件GANConditional GANs、 Wasserstein GANWGAN、CycleGAN等进一步提高了生成效果并拓展了应用范围。 具体步骤 准备并读取数据集 以mnist数据集为例。 # Configure data loader os.makedirs(./data/mnist, exist_okTrue) dataloader torch.utils.data.DataLoader(datasets.MNIST(./data/mnist,trainTrue,downloadTrue,transformtransforms.Compose([transforms.Resize(opt.img_size), transforms.ToTensor(), transforms.Normalize([0.5], [0.5])]),),batch_sizeopt.batch_size,shuffleTrue, )定义生成器 class Generator(nn.Module):def __init__(self):super(Generator, self).__init__()def block(in_feat, out_feat, normalizeTrue):layers [nn.Linear(in_feat, out_feat)]if normalize:layers.append(nn.BatchNorm1d(out_feat, 0.8))layers.append(nn.LeakyReLU(0.2, inplaceTrue))return layersself.model nn.Sequential(*block(opt.latent_dim, 128, normalizeFalse),*block(128, 256),*block(256, 512),*block(512, 1024),nn.Linear(1024, int(np.prod(img_shape))),nn.Tanh())def forward(self, z):img self.model(z)img img.view(img.size(0), *img_shape)return img 定义判别器 class Discriminator(nn.Module):def __init__(self):super(Discriminator, self).__init__()self.model nn.Sequential(nn.Linear(int(np.prod(img_shape)), 512),nn.LeakyReLU(0.2, inplaceTrue),nn.Linear(512, 256),nn.LeakyReLU(0.2, inplaceTrue),nn.Linear(256, 1),nn.Sigmoid(),)def forward(self, img):img_flat img.view(img.size(0), -1)validity self.model(img_flat)return validity定义损失函数 # Loss function adversarial_loss torch.nn.BCELoss()定义优化器 # Optimizers optimizer_G torch.optim.Adam(generator.parameters(), lropt.lr, betas(opt.b1, opt.b2)) optimizer_D torch.optim.Adam(discriminator.parameters(), lropt.lr, betas(opt.b1, opt.b2))开始训练 # ---------- # Training # ----------for epoch in range(opt.n_epochs):for i, (imgs, _) in enumerate(dataloader):# Adversarial ground truthsvalid Variable(Tensor(imgs.size(0), 1).fill_(1.0), requires_gradFalse)fake Variable(Tensor(imgs.size(0), 1).fill_(0.0), requires_gradFalse)# Configure inputreal_imgs Variable(imgs.type(Tensor))# -----------------# Train Generator# -----------------optimizer_G.zero_grad()# Sample noise as generator inputz Variable(Tensor(np.random.normal(0, 1, (imgs.shape[0], opt.latent_dim))))# Generate a batch of imagesgen_imgs generator(z)# Loss measures generators ability to fool the discriminator# 生成器损失目的是生成的图像逼近真是图像是判别器认为是真g_loss adversarial_loss(discriminator(gen_imgs), valid)g_loss.backward()optimizer_G.step()# ---------------------# Train Discriminator# ---------------------optimizer_D.zero_grad()# Measure discriminators ability to classify real from generated samples# 真实图像在判别器的目标函数损失即判别器应该判为真real_loss adversarial_loss(discriminator(real_imgs), valid)# 生成器生成出来的图像在判别器的目标函数损失即判别器应该判为假fake_loss adversarial_loss(discriminator(gen_imgs.detach()), fake)# 判别器损失目的是判别生成的图像是假d_loss (real_loss fake_loss) / 2d_loss.backward()optimizer_D.step()print([Epoch %d/%d] [Batch %d/%d] [D loss: %f] [G loss: %f]% (epoch, opt.n_epochs, i, len(dataloader), d_loss.item(), g_loss.item()))完整代码 import argparse import os import numpy as np import mathimport torchvision.transforms as transforms from torchvision.utils import save_imagefrom torch.utils.data import DataLoader from torchvision import datasets from torch.autograd import Variableimport torch.nn as nn import torch.nn.functional as F import torchos.makedirs(images, exist_okTrue)parser argparse.ArgumentParser() parser.add_argument(--n_epochs, typeint, default100, helpnumber of epochs of training) parser.add_argument(--batch_size, typeint, default128, helpsize of the batches) parser.add_argument(--lr, typefloat, default0.0002, helpadam: learning rate) parser.add_argument(--b1, typefloat, default0.5, helpadam: decay of first order momentum of gradient) parser.add_argument(--b2, typefloat, default0.999, helpadam: decay of first order momentum of gradient) parser.add_argument(--n_cpu, typeint, default8, helpnumber of cpu threads to use during batch generation) parser.add_argument(--latent_dim, typeint, default100, helpdimensionality of the latent space) parser.add_argument(--img_size, typeint, default28, helpsize of each image dimension) parser.add_argument(--channels, typeint, default1, helpnumber of image channels) parser.add_argument(--sample_interval, typeint, default400, helpinterval betwen image samples) opt parser.parse_args() print(opt)img_shape (opt.channels, opt.img_size, opt.img_size)cuda True if torch.cuda.is_available() else Falseclass Generator(nn.Module):def __init__(self):super(Generator, self).__init__()def block(in_feat, out_feat, normalizeTrue):layers [nn.Linear(in_feat, out_feat)]if normalize:layers.append(nn.BatchNorm1d(out_feat, 0.8))layers.append(nn.LeakyReLU(0.2, inplaceTrue))return layersself.model nn.Sequential(*block(opt.latent_dim, 128, normalizeFalse),*block(128, 256),*block(256, 512),*block(512, 1024),nn.Linear(1024, int(np.prod(img_shape))),nn.Tanh())def forward(self, z):img self.model(z)img img.view(img.size(0), *img_shape)return imgclass Discriminator(nn.Module):def __init__(self):super(Discriminator, self).__init__()self.model nn.Sequential(nn.Linear(int(np.prod(img_shape)), 512),nn.LeakyReLU(0.2, inplaceTrue),nn.Linear(512, 256),nn.LeakyReLU(0.2, inplaceTrue),nn.Linear(256, 1),nn.Sigmoid(),)def forward(self, img):img_flat img.view(img.size(0), -1)validity self.model(img_flat)return validity# Loss function adversarial_loss torch.nn.BCELoss()# Initialize generator and discriminator generator Generator() discriminator Discriminator()if cuda:generator.cuda()discriminator.cuda()adversarial_loss.cuda()# Configure data loader os.makedirs(./data/mnist, exist_okTrue) dataloader torch.utils.data.DataLoader(datasets.MNIST(./data/mnist,trainTrue,downloadTrue,transformtransforms.Compose([transforms.Resize(opt.img_size), transforms.ToTensor(), transforms.Normalize([0.5], [0.5])]),),batch_sizeopt.batch_size,shuffleTrue, )# Optimizers optimizer_G torch.optim.Adam(generator.parameters(), lropt.lr, betas(opt.b1, opt.b2)) optimizer_D torch.optim.Adam(discriminator.parameters(), lropt.lr, betas(opt.b1, opt.b2))Tensor torch.cuda.FloatTensor if cuda else torch.FloatTensor# ---------- # Training # ----------for epoch in range(opt.n_epochs):for i, (imgs, _) in enumerate(dataloader):# Adversarial ground truthsvalid Variable(Tensor(imgs.size(0), 1).fill_(1.0), requires_gradFalse)fake Variable(Tensor(imgs.size(0), 1).fill_(0.0), requires_gradFalse)# Configure inputreal_imgs Variable(imgs.type(Tensor))# -----------------# Train Generator# -----------------optimizer_G.zero_grad()# Sample noise as generator inputz Variable(Tensor(np.random.normal(0, 1, (imgs.shape[0], opt.latent_dim))))# Generate a batch of imagesgen_imgs generator(z)# Loss measures generators ability to fool the discriminatorg_loss adversarial_loss(discriminator(gen_imgs), valid)g_loss.backward()optimizer_G.step()# ---------------------# Train Discriminator# ---------------------optimizer_D.zero_grad()# Measure discriminators ability to classify real from generated samplesreal_loss adversarial_loss(discriminator(real_imgs), valid)fake_loss adversarial_loss(discriminator(gen_imgs.detach()), fake)d_loss (real_loss fake_loss) / 2d_loss.backward()optimizer_D.step()print([Epoch %d/%d] [Batch %d/%d] [D loss: %f] [G loss: %f]% (epoch, opt.n_epochs, i, len(dataloader), d_loss.item(), g_loss.item()))batches_done epoch * len(dataloader) iif batches_done % opt.sample_interval 0:save_image(gen_imgs.data[:25], images/%d.png % batches_done, nrow5, normalizeTrue)训练生成的图片 由于本人水平有限难免出现错漏敬请批评改正。更多精彩内容可点击进入人工智能知识点专栏、Python日常小操作专栏、OpenCV-Python小应用专栏、YOLO系列专栏、自然语言处理专栏或我的个人主页查看基于DETR的人脸伪装检测YOLOv7训练自己的数据集口罩检测YOLOv8训练自己的数据集足球检测YOLOv5TensorRT加速YOLOv5模型推理YOLOv5IoU、GIoU、DIoU、CIoU、EIoU玩转Jetson Nano五TensorRT加速YOLOv5目标检测YOLOv5添加SE、CBAM、CoordAtt、ECA注意力机制YOLOv5yolov5s.yaml配置文件解读、增加小目标检测层Python将COCO格式实例分割数据集转换为YOLO格式实例分割数据集YOLOv5使用7.0版本训练自己的实例分割模型车辆、行人、路标、车道线等实例分割使用Kaggle GPU资源免费体验Stable Diffusion开源项目
http://www.zqtcl.cn/news/622524/

相关文章:

  • 网站开发要用cms教育网站制作价格
  • 深圳华鑫峰网站建设wordpress 关闭新闻
  • 韩国网站加速器南宁做网站seo
  • 义乌网站建设公司书生商友小程序自己制作流程
  • 株洲企业网站建设费用python mysql开发网站开发
  • 东航集团客户网站是哪家公司建设网站开发软件开发
  • 淮安企业网站制作科技公司办公室设计
  • 东莞企石网站设计手机能制作网站吗
  • 大连网站建设选高合科技广州开发区人才工作集团有限公司
  • 四川建设招标网站首页价格低廉怎么换个说法
  • 南昌企业制作网站龙华区深圳北站
  • 北京网站设计案例郑州网站设计培训
  • wordpress在lnmp部署百度搜索引擎优化案例
  • asp网站建设 文献综述评价一个网站设计的好坏
  • 做网站虚拟主机配置网站是怎样制作的
  • 网站建设方案 文库新乡网站seo优化
  • 网站优化需要什么软件有没有帮别人做网站
  • 做国外网站选择vps汉中公司做网站
  • ipad网站开发百度推广送的公司网站有什么用
  • 网站被收录wordpress模板游戏推广
  • 做个网站成功案例深圳网络推广工资
  • 河南省城乡与住房建设厅网站做网站的都是什么专业毕业的
  • 做网站月薪10万微信网页开发教程
  • 网站开发组岗位上海著名企业
  • 阿里云网站建设方案网站源码分享
  • 设计感很强的中文网站公司专业网页制作
  • 自己制作网站做外贸赚钱吗什么是网站html静态化
  • 网站中的搜索功能怎么做的网站空间价格
  • 网站内容收费WordPress之类的
  • 好网站推荐一下网站建设客户评价