def __init__(self, in_channels, out_channels, ksize, stride=1, pad=0,
wscale=1, bias=0, nobias=False, outsize=None, use_cudnn=True,
initialV=None, dtype=np.float32):
kh, kw = _pair(ksize)
self.stride = _pair(stride)
self.pad = _pair(pad)
self.outsize = (None, None) if outsize is None else outsize
self.use_cudnn = use_cudnn
self.dtype = dtype
self.nobias = nobias
self.out_channels = out_channels
self.in_channels = in_channels
V_shape = (in_channels, out_channels, kh, kw)
super(Deconvolution2D, self).__init__(V=V_shape)
if isinstance(initialV, (np.ndarray, cuda.ndarray)):
assert initialV.shape == (in_channels, out_channels, kh, kw)
initializers.init_weight(self.V.data, initialV, scale=math.sqrt(wscale))
if nobias:
self.b = None
else:
self.add_uninitialized_param("b")
self.add_uninitialized_param("g")
评论列表
文章目录