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

深圳 德 网站建设网站建设的布局对网络推广的影响

深圳 德 网站建设,网站建设的布局对网络推广的影响,大屏网站做响应,html常用标签及属性目录 一、GAN对抗生成网络思想 二、实践过程 1. 数据准备 2. 构建生成器和判别器 3. 训练过程 4. 生成结果与可视化 三、学习总结 一、GAN对抗生成网络思想 GAN的核心思想非常有趣且富有对抗性。它由两部分组成#xff1a;生成器#xff08;Generator#xff09;和判…目录 一、GAN对抗生成网络思想 二、实践过程 1. 数据准备 2. 构建生成器和判别器 3. 训练过程 4. 生成结果与可视化 三、学习总结 一、GAN对抗生成网络思想 GAN的核心思想非常有趣且富有对抗性。它由两部分组成生成器Generator和判别器Discriminator。生成器的任务是从随机噪声中生成尽可能接近真实数据的样本而判别器的任务则是区分生成器生成的假样本和真实样本。这两个网络在训练过程中相互对抗生成器不断改进生成的样本以欺骗判别器判别器则不断提升自己的辨别能力。最终当生成器生成的样本足够逼真以至于判别器难以区分真假时GAN达到了一种平衡状态。 从数学角度来看GAN的损失函数由两部分组成生成器的损失和判别器的损失。判别器的损失是一个二分类问题的损失通常使用二元交叉熵损失BCELoss。生成器的损失则依赖于判别器的反馈目标是让判别器将生成的样本误判为真实样本。这种对抗机制使得GAN能够生成高质量的样本尤其是在图像生成领域。 二、实践过程 为了更好地理解GAN的工作原理我使用了Python和PyTorch框架实现了一个简单的GAN模型。以下是我的实践过程和代码实现。 1. 数据准备 我选择了经典的鸢尾花Iris数据集中的“Setosa”类别作为实验对象。这个数据集包含4个特征非常适合用来测试GAN模型。我首先对数据进行了归一化处理将其缩放到[-1, 1]范围内以提高模型的训练效果。 import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader, TensorDataset import numpy as np import pandas as pd from sklearn.preprocessing import MinMaxScaler from sklearn.datasets import load_iris import matplotlib.pyplot as plt# 加载数据 iris load_iris() X iris.data y iris.target# 选择 Setosa 类别 X_class0 X[y 0]# 数据归一化 scaler MinMaxScaler(feature_range(-1, 1)) X_scaled scaler.fit_transform(X_class0)# 转换为 PyTorch Tensor real_data_tensor torch.from_numpy(X_scaled).float() dataset TensorDataset(real_data_tensor) dataloader DataLoader(dataset, batch_size32, shuffleTrue) 2. 构建生成器和判别器 接下来我定义了生成器和判别器的网络结构。生成器使用了简单的多层感知机MLP结构输入是随机噪声输出是与真实数据维度相同的样本。判别器同样使用MLP结构输出是一个概率值表示输入样本是真实样本的概率。 class Generator(nn.Module):def __init__(self):super(Generator, self).__init__()self.model nn.Sequential(nn.Linear(10, 16),nn.ReLU(),nn.Linear(16, 32),nn.ReLU(),nn.Linear(32, 4),nn.Tanh())def forward(self, x):return self.model(x)class Discriminator(nn.Module):def __init__(self):super(Discriminator, self).__init__()self.model nn.Sequential(nn.Linear(4, 32),nn.LeakyReLU(0.2),nn.Linear(32, 16),nn.LeakyReLU(0.2),nn.Linear(16, 1),nn.Sigmoid())def forward(self, x):return self.model(x) 3. 训练过程 在训练过程中我交替更新生成器和判别器的参数。每一步中首先用真实数据和生成数据训练判别器然后用生成数据训练生成器。通过这种方式两个网络不断对抗逐渐提升性能。 # 定义损失函数和优化器 criterion nn.BCELoss() g_optimizer optim.Adam(generator.parameters(), lr0.0002, betas(0.5, 0.999)) d_optimizer optim.Adam(discriminator.parameters(), lr0.0002, betas(0.5, 0.999))# 训练循环 for epoch in range(10000):for i, (real_data,) in enumerate(dataloader):# 训练判别器d_optimizer.zero_grad()real_output discriminator(real_data)d_loss_real criterion(real_output, torch.ones_like(real_output))noise torch.randn(real_data.size(0), 10)fake_data generator(noise).detach()fake_output discriminator(fake_data)d_loss_fake criterion(fake_output, torch.zeros_like(fake_output))d_loss d_loss_real d_loss_faked_loss.backward()d_optimizer.step()# 训练生成器g_optimizer.zero_grad()fake_data generator(noise)fake_output discriminator(fake_data)g_loss criterion(fake_output, torch.ones_like(fake_output))g_loss.backward()g_optimizer.step()if (epoch 1) % 1000 0:print(fEpoch [{epoch1}/10000], Discriminator Loss: {d_loss.item():.4f}, Generator Loss: {g_loss.item():.4f}) 4. 生成结果与可视化 训练完成后我使用生成器生成了一些新的样本并将它们与真实样本进行了可视化对比。从结果可以看出生成器生成的样本在分布上与真实样本较为接近说明GAN模型在一定程度上成功地学习了数据的分布。 # 生成新样本 with torch.no_grad():noise torch.randn(50, 10)generated_data_scaled generator(noise)# 逆向转换回原始尺度 generated_data scaler.inverse_transform(generated_data_scaled.numpy()) real_data_original_scale scaler.inverse_transform(X_scaled)# 可视化对比 fig, axes plt.subplots(2, 2, figsize(12, 10)) fig.suptitle(真实数据 vs. GAN生成数据 的特征分布对比, fontsize16) feature_names iris.feature_namesfor i, ax in enumerate(axes.flatten()):ax.hist(real_data_original_scale[:, i], bins10, densityTrue, alpha0.6, labelReal Data)ax.hist(generated_data[:, i], bins10, densityTrue, alpha0.6, labelGenerated Data)ax.set_title(feature_names[i])ax.legend()plt.tight_layout(rect[0, 0.03, 1, 0.95]) plt.show() 三、学习总结 通过这次实践我对GAN的工作原理有了更深入的理解。GAN的核心在于生成器和判别器的对抗机制这种机制使得模型能够生成高质量的样本。在实际应用中GAN不仅可以用于图像生成还可以用于数据增强、风格迁移等任务。 然而GAN的训练过程也存在一些挑战。例如生成器和判别器的平衡很难把握如果其中一个网络过于强大可能会导致训练失败。此外GAN的训练过程通常需要大量的计算资源和时间。 在未来的学习中我计划探索更多GAN的变体如WGAN、DCGAN等以更好地理解和应用生成对抗网络。同时我也希望能够将GAN应用于更复杂的任务中例如图像生成和视频生成进一步提升我的深度学习技能。 浙大疏锦行
http://www.dnsts.com.cn/news/7751.html

相关文章:

  • 网站收录低夸克资源搜索引擎
  • 惠州市跨境电子商务网站开发谷德设计网入口
  • 做网站租服务器一年多少钱wordpress404页面
  • 襄阳网站建设公司辽阳企业网站建设服务
  • 内蒙古企业网站制作modal log in for wordpress
  • python做网站和phpwordpress更换主题 小工具
  • 亚马逊产品备案网站建设要求开江网站建设
  • 在川航网站购票后怎么做青岛公司注册网站
  • php 网站cookieseo关键词优化如何
  • 做网站做什么类型 比较赚钱直播视频怎么下载
  • 无锡哪里有做网站希爱力双效片的作用与功效
  • 已备案网站数量织梦本地安装网站
  • seo优秀网站没有网站可以做百度快照怎么做
  • 如何用wordpress快速建站wordpress 导入工具插件
  • 网站源码整站下载做电影网站需要注意什么软件
  • 个人建网站允许吗深圳品牌营销网站建设
  • 公司静态网站模板下载上海建网站公司排名
  • 做移动网站网页设计报告论文
  • 浙江高端网站建设做公司网站哪家 上海
  • 接单子做网站徐州好点的做网站的公司
  • 东莞网站建设怎么收费做翻译网站 知乎
  • 白云网站建设公司有网站代码怎么建站
  • 网站建设公司排网店装修的主要内容有哪些
  • 常用网站开发工具山东省建设工程电子信息网站
  • 青岛手机建站公司西安直播网站开发
  • 重新做网站企业徽章设计
  • 南宁网站设计方案莱芜高端网站设计建设
  • 陕西网站备案 多久山东网站建设好不好
  • 搜狗网站优化软件门户网站 建设 如何写
  • 网站的发展前景做搜狗手机网站点击软