def __init__(self, ch=512, wscale=0.02):
w = chainer.initializers.Normal(wscale)
self.ch = ch
super(Discriminator, self).__init__()
with self.init_scope():
self.c0 = L.Convolution2D(3, ch // 8, 3, 1, 1, initialW=w)
self.c1 = L.Convolution2D(ch // 8, ch // 4, 4, 2, 1, initialW=w)
self.c2 = L.Convolution2D(ch // 4, ch // 2, 4, 2, 1, initialW=w)
self.c3 = L.Convolution2D(ch // 2, ch // 1, 4, 2, 1, initialW=w)
self.l4 = L.Linear(4*4*ch, 128, initialW=w)
self.l5 = L.Linear(128, 4*4*ch, initialW=w)
self.dc3 = L.Deconvolution2D(ch // 1, ch // 2, 4, 2, 1, initialW=w)
self.dc2 = L.Deconvolution2D(ch // 2, ch // 4, 4, 2, 1, initialW=w)
self.dc1 = L.Deconvolution2D(ch // 4, ch // 8, 4, 2, 1, initialW=w)
self.dc0 = L.Deconvolution2D(ch // 8, 3, 3, 1, 1, initialW=w)
评论列表
文章目录