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

上传空间站的注意事项我们为什么选择做电子商务网站

上传空间站的注意事项,我们为什么选择做电子商务网站,吉林市网页设计,东莞it外包前言 生成对抗网络#xff08;Generative Adversarial Networks#xff0c;简称GANs#xff09;是一种用于生成新样本的机器学习模型。它由两个主要组件组成#xff1a;生成器#xff08;Generator#xff09;和判别器#xff08;Discriminator#xff09;。生成器尝试…前言 生成对抗网络Generative Adversarial Networks简称GANs是一种用于生成新样本的机器学习模型。它由两个主要组件组成生成器Generator和判别器Discriminator。生成器尝试生成与训练数据相似的新样本而判别器则试图区分生成器生成的样本和真实训练数据。 下面是一个简单的对抗生成网络的入门例子用于生成手写数字图像 实现过程 1、导入必要的库和模块 import numpy as np import matplotlib.pyplot as plt from tensorflow.keras.datasets import mnist from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, Flatten, Reshape from tensorflow.keras.layers import Conv2D, Conv2DTranspose from tensorflow.keras.optimizers import Adam2、加载MNIST数据集 (x_train, _), (_, _) mnist.load_data() x_train x_train / 255.0 x_train np.expand_dims(x_train, axis3)3、定义生成器模型 generator Sequential() generator.add(Dense(7*7*128, input_shape(100,), activationrelu)) generator.add(Reshape((7, 7, 128))) generator.add(Conv2DTranspose(64, (3, 3), strides(2, 2), paddingsame, activationrelu)) generator.add(Conv2DTranspose(1, (3, 3), strides(2, 2), paddingsame, activationsigmoid))4、定义判别器模型 discriminator Sequential() discriminator.add(Conv2D(64, (3, 3), strides(2, 2), paddingsame, input_shape(28, 28, 1), activationrelu)) discriminator.add(Conv2D(128, (3, 3), strides(2, 2), paddingsame, activationrelu)) discriminator.add(Flatten()) discriminator.add(Dense(1, activationsigmoid)) 5、编译判别器模型 discriminator.compile(lossbinary_crossentropy, optimizerAdam(learning_rate0.0002, beta_10.5), metrics[accuracy]) 6、冻结判别器模型的权重 discriminator.trainable False 7、定义GAN模型 gan Sequential() gan.add(generator) gan.add(discriminator) 8、编译GAN模型 gan.compile(lossbinary_crossentropy, optimizerAdam(learning_rate0.0002, beta_10.5)) 9、定义训练函数 def train_gan(epochs, batch_size, sample_interval):for epoch in range(epochs):# 生成随机噪声作为输入noise np.random.normal(0, 1, (batch_size, 100))# 生成假样本generated_images generator.predict(noise)# 从真实样本中随机选择一批样本real_images x_train[np.random.randint(0, x_train.shape[0], batch_size)]# 训练判别器discriminator_loss_real discriminator.train_on_batch(real_images, np.ones((batch_size, 1)))discriminator_loss_fake discriminator.train_on_batch(generated_images, np.zeros((batch_size, 1)))discriminator_loss 0.5 * np.add(discriminator_loss_real, discriminator_loss_fake)# 训练生成器noise np.random.normal(0, 1, (batch_size, 100))generator_loss gan.train_on_batch(noise, np.ones((batch_size, 1)))# 打印损失if epoch % sample_interval 0:print(fEpoch {epoch}/{epochs}, Discriminator Loss: {discriminator_loss[0]}, Generator Loss: {generator_loss})# 保存生成的图像save_images(epoch) 10、保存生成的图像 def save_images(epoch):rows, cols 5, 5noise np.random.normal(0, 1, (rows * cols, 100))generated_images generator.predict(noise)generated_images 0.5 * generated_images 0.5fig, axs plt.subplots(rows, cols)idx 0for i in range(rows):for j in range(cols):axs[i, j].imshow(generated_images[idx, :, :, 0], cmapgray)axs[i, j].axis(off)idx 1fig.savefig(fgan_images/mnist_{epoch}.png)plt.close() 11、训练GAN模型 epochs 10000 batch_size 128 sample_interval 1000 完整代码 import numpy as np import matplotlib.pyplot as plt from tensorflow.keras.datasets import mnist from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, Flatten, Reshape from tensorflow.keras.layers import Conv2D, Conv2DTranspose from tensorflow.keras.optimizers import Adam# 加载MNIST数据集 (x_train, _), (_, _) mnist.load_data() x_train x_train / 255.0 x_train np.expand_dims(x_train, axis3)# 定义生成器模型 generator Sequential() generator.add(Dense(7*7*128, input_shape(100,), activationrelu)) generator.add(Reshape((7, 7, 128))) generator.add(Conv2DTranspose(64, (3, 3), strides(2, 2), paddingsame, activationrelu)) generator.add(Conv2DTranspose(1, (3, 3), strides(2, 2), paddingsame, activationsigmoid))# 定义判别器模型 discriminator Sequential() discriminator.add(Conv2D(64, (3, 3), strides(2, 2), paddingsame, input_shape(28, 28, 1), activationrelu)) discriminator.add(Conv2D(128, (3, 3), strides(2, 2), paddingsame, activationrelu)) discriminator.add(Flatten()) discriminator.add(Dense(1, activationsigmoid))# 编译判别器模型 discriminator.compile(lossbinary_crossentropy, optimizerAdam(learning_rate0.0002, beta_10.5), metrics[accuracy])# 冻结判别器模型的权重 discriminator.trainable False# 定义GAN模型 gan Sequential() gan.add(generator) gan.add(discriminator)# 编译GAN模型 gan.compile(lossbinary_crossentropy, optimizerAdam(learning_rate0.0002, beta_10.5))# 定义训练函数 def train_gan(epochs, batch_size, sample_interval):for epoch in range(epochs):# 生成随机噪声作为输入noise np.random.normal(0, 1, (batch_size, 100))# 生成假样本generated_images generator.predict(noise)# 从真实样本中随机选择一批样本real_images x_train[np.random.randint(0, x_train.shape[0], batch_size)]# 训练判别器discriminator_loss_real discriminator.train_on_batch(real_images, np.ones((batch_size, 1)))discriminator_loss_fake discriminator.train_on_batch(generated_images, np.zeros((batch_size, 1)))discriminator_loss 0.5 * np.add(discriminator_loss_real, discriminator_loss_fake)# 训练生成器noise np.random.normal(0, 1, (batch_size, 100))generator_loss gan.train_on_batch(noise, np.ones((batch_size, 1)))# 打印损失if epoch % sample_interval 0:print(fEpoch {epoch}/{epochs}, Discriminator Loss: {discriminator_loss[0]}, Generator Loss: {generator_loss})# 保存生成的图像save_images(epoch)# 保存生成的图像 def save_images(epoch):rows, cols 5, 5noise np.random.normal(0, 1, (rows * cols, 100))generated_images generator.predict(noise)generated_images 0.5 * generated_images 0.5fig, axs plt.subplots(rows, cols)idx 0for i in range(rows):for j in range(cols):axs[i, j].imshow(generated_images[idx, :, :, 0], cmapgray)axs[i, j].axis(off)idx 1fig.savefig(fgan_images/mnist_{epoch}.png)plt.close()# 训练GAN模型 epochs 10000 batch_size 128 sample_interval 1000train_gan(epochs, batch_size, sample_interval)训练结果 这个例子使用了MNIST数据集生成手写数字图像。生成器和判别器模型使用了卷积神经网络的结构。在训练过程中生成器试图生成逼真的手写数字图像而判别器则试图区分真实图像和生成图像。通过反复迭代训练生成器和判别器GAN模型能够逐渐生成更逼真的手写数字图像。生成的图像会保存在gan_images文件夹中。
http://www.hkea.cn/news/14549050/

相关文章:

  • 云南省城乡与住房建设厅网站合肥设计工作室
  • 返利网网站建设果洛电子商务网站建设哪家快
  • 西安建设网站的公司大雄wordpress
  • 深圳婚纱摄影网站建设大型医院设计网站建设
  • 做网站可以不写代码苏州网站建设的公司
  • 光谷企业网站建设python教程
  • 网站备案注销怎么恢复哈尔滨网站开发电话
  • 网站空间面板专业北京seo公司
  • 网站内容检测个人做营利性质网站会怎么样
  • 注册网站会有哪些风险wordpress站点获利
  • 快速建站公司优质网站建设价格
  • wordpress 子站点函数页面即将自动跳转
  • 做淘宝优惠劵网站服务器配置仓储服务 东莞网站建设 技术支持
  • 兰州网站给公司做网站需要什么信息
  • 招聘 人才招聘免费优化网站
  • 企业网站开发哪个好薇福州seo按天付费
  • 上海平台网站建设哪家有网站开发与管理期末考试
  • 公司网站怎么备案阿里云淘宝客网站建设教程
  • 山东网站建设优化利用git做网站备份
  • 余姚做网站网站开发前端要学什么
  • 校园资源共享网站建设wordpress多站点 用户同步
  • 建设网站基本步骤网站建设 风险说明书
  • 网站备案网站负责人成都的网站建设公司
  • 如何把购物网站做成非经营网站wordpress设置文章字体颜色
  • c 做网站session用法网站制作公司 首推万维科技
  • 2018年做淘宝客网站还能挣钱吗做本地房产网站
  • 嘉兴网站制作星讯网络科技wordpress怎么上传自己的网站吗
  • 网站如何添加百度统计wordpress 自动封面
  • 网站开发 卡片苏州姑苏区网站建设
  • 叶县网站建设网站利用微信拉取用户做登录页