- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我无法判断这个错误是由于技术错误还是超参数造成的,但我的 DC-GAN 的鉴别器损失一开始很低,然后逐渐攀升,在 8 左右减慢,而我的发电机损失则大幅下降。我在大约 60,000 epoch 时结束了它。有趣的是,鉴别器的准确率似乎在 20-50% 左右浮动。有人有任何建议来解决这个问题吗?如有任何帮助,我们将不胜感激。
重要信息
Adam(0.0002, 0.5)
50,000+ epochs 后生成的图像:(应该是白色背景上的运动鞋)
鉴别器模型:
def build_discriminator(self):
img_shape = (self.img_size[0], self.img_size[1], self.channels)
model = Sequential()
model.add(Conv2D(32, kernel_size=self.kernel_size, strides=2, input_shape=img_shape, padding="same")) # 192x256 -> 96x128
model.add(LeakyReLU(alpha=0.2))
model.add(Dropout(0.25))
model.add(Conv2D(64, kernel_size=self.kernel_size, strides=2, padding="same")) # 96x128 -> 48x64
model.add(ZeroPadding2D(padding=((0, 1), (0, 1))))
model.add(LeakyReLU(alpha=0.2))
model.add(Dropout(0.25))
model.add(BatchNormalization(momentum=0.8))
model.add(Conv2D(128, kernel_size=self.kernel_size, strides=2, padding="same")) # 48x64 -> 24x32
model.add(LeakyReLU(alpha=0.2))
model.add(Dropout(0.25))
model.add(BatchNormalization(momentum=0.8))
model.add(Conv2D(256, kernel_size=self.kernel_size, strides=1, padding="same")) # 24x32 -> 12x16
model.add(LeakyReLU(alpha=0.2))
model.add(Dropout(0.25))
model.add(Conv2D(512, kernel_size=self.kernel_size, strides=1, padding="same")) # 12x16 -> 6x8
model.add(LeakyReLU(alpha=0.2))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(1, activation='sigmoid'))
model.summary()
img = Input(shape=img_shape)
validity = model(img)
return Model(img, validity)
发电机型号:
def build_generator(self):
noise_shape = (100,)
model = Sequential()
model.add(
Dense(self.starting_filters * (self.img_size[0] // (2 ** self.upsample_layers)) * (self.img_size[1] // (2 ** self.upsample_layers)),
activation="relu", input_shape=noise_shape))
model.add(Reshape(((self.img_size[0] // (2 ** self.upsample_layers)),
(self.img_size[1] // (2 ** self.upsample_layers)),
self.starting_filters)))
model.add(BatchNormalization(momentum=0.8))
model.add(UpSampling2D()) # 6x8 -> 12x16
model.add(Conv2D(1024, kernel_size=self.kernel_size, padding="same"))
model.add(Activation("relu"))
model.add(BatchNormalization(momentum=0.8))
model.add(UpSampling2D()) # 12x16 -> 24x32
model.add(Conv2D(512, kernel_size=self.kernel_size, padding="same"))
model.add(Activation("relu"))
model.add(BatchNormalization(momentum=0.8))
model.add(UpSampling2D()) # 24x32 -> 48x64
model.add(Conv2D(256, kernel_size=self.kernel_size, padding="same"))
model.add(Activation("relu"))
model.add(BatchNormalization(momentum=0.8))
model.add(UpSampling2D()) # 48x64 -> 96x128
model.add(Conv2D(128, kernel_size=self.kernel_size, padding="same"))
model.add(Activation("relu"))
model.add(BatchNormalization(momentum=0.8))
model.add(UpSampling2D()) # 96x128 -> 192x256
model.add(Conv2D(64, kernel_size=self.kernel_size, padding="same"))
model.add(Activation("relu"))
model.add(BatchNormalization(momentum=0.8))
model.add(Conv2D(32, kernel_size=self.kernel_size, padding="same"))
model.add(Activation("relu"))
model.add(BatchNormalization(momentum=0.8))
model.add(Conv2D(self.channels, kernel_size=self.kernel_size, padding="same"))
model.add(Activation("tanh"))
model.summary()
noise = Input(shape=noise_shape)
img = model(noise)
return Model(noise, img)
最佳答案
我觉得你遇到这个问题完全可以理解。你的网络没有得到补偿,就神经元数量而言,生成器比鉴别器强大得多。我会尝试使生成器和鉴别器在层数、配置和大小方面彼此对称,这样就可以确保没有一个比另一个强。事实上。
关于python - 直流-GAN : Discriminator loss going up while generator loss goes down,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57513715/
我有以下定义: interface Dog { bark(): void; type: 'dog'; } interface Cat { meow(): void; type: 'ca
我正在研究一些通过EF4.3使用单表继承的代码。 有一个名为“用户”的实体和另一个名为“Admin”的实体。管理员继承自用户。 用户类 public class User { public i
我定义了不同的类型: type TypeNull() = class end type MyType1 = { a:int; b:int } type MyType2 = {
根据用户的 Web 浏览器添加“特殊”但不必要的内容是否可以接受?例如,是否可以显示这个: 在我所有 IE 用户的网页顶部? 最佳答案 谁可以接受?我个人认为这是一个相当蹩脚的网站的标志——它上面有一
如果这个问题很简单,我很抱歉,但我是 C++ 的新手。我正在设计一个使用二次公式计算 2 个根的程序。但是,当我的判别式为负数时,我的程序不起作用。 #define _USE_MATH_DEFINES
在某些程序中运行 addr2line 时,我在行尾收到“鉴别器 N”注释: main at/tmp/nsievebits.c:56(鉴别器 3) 手册页没有提到它,快速的谷歌搜索似乎表明主要是源代码文
我正在使用带有 MySql 数据库的 Visual Studio 2013 Web 表单应用程序来构建 Web 表单应用程序,但我一直无法通过“成员资格和角色管理”。我对成员资格使用了数据库优先方法,
我有一个非常简单的问题,但现在似乎看不出重点。我的目的是读取 VehicleCollector 对象列表,每个对象都有一个整齐的汽车列表和另一个火车列表。车辆来自一个表,并由名为 TYPE 的列区分。
使用这些类,您将如何将“Person”的记录更改为“Employee”。 /** * @Entity * @InheritanceType("SINGLE_TABLE") * @Discrimi
我已经尝试搜索文档和代码,但我无法找到这是什么以及如何更正它。 场景: 我正在使用 Ada SPARK 向量库并且我有以下代码: package MyPackage with SPARK_Mode
鉴于这两个歧视工会,我想得到 DeclaringType从一个案例来看。 type SingleCaseUnion = | One type MultiCaseUnion = | Tw
我正在使用 EF CF 方法创建一个带有 MySQL 的网站。由于某种原因,EF 在我的 Post 表中创建了一个名为“Discriminator”的列,并包含 VARCHAR“Post”。 为什么要
我有以下 json { "status": 1, "msg": "Success", "data": { "getFeeCount": [
我有一个后端 API(实现 ApiController ),我想将其放在 APIM API 后面。 ApiController 允许我们根据传入的查询参数区分两个不同的 GET 操作。当我尝试在 AP
我正在尝试创建一个新的 Set 类型: type MySet = | List of list | Sequence of seq
Mongo 文档 http://mongodb.github.io/mongo-java-driver/3.11/bson/pojos/状态: The easiest way to enable a
我正在尝试使用 swagger-codegen 为模式规范生成 Java API 客户端。该架构使用供应商扩展x-discriminator-value来创建继承模型。 例如,我使用了我发现的模式规范
(我需要一位 Python 3 内部专家) 我有一个类装饰器,它修改了一些函数而不是其他函数。简化示例: import functools import inspect import types de
使用嵌套集合查看我的对象不会抛出错误,但在尝试保存实体时出现错误 [IndexOutOfRangeException: Invalid index 15 for SqlParameterCol
在我的项目中我有: public class BaseEntity { [Key] public int Id {get; set; } } 然后我必须定义 10 多个 POCO 类来
我是一名优秀的程序员,十分优秀!