Question: Can someone explain each output size calculation for this generator? class Generator ( nn . Module ) : def _ _ init _ _ (
Can someone explain each output size calculation for this generator?
class GeneratornnModule:
def initself zdim imchan hiddendim:
superGenerator selfinit
self.zdim zdim
# Build the neural network
self.gen nnSequential
self.makegenblockzdim, hiddendim
self.makegenblockhiddendim hiddendim kernelsize stride
self.makegenblockhiddendim hiddendim
self.makegenblockhiddendim, imchan, kernelsize stride padding finallayerTrue
def makegenblockself inputchannels, outputchannels, kernelsize stride paddingfinallayerFalse:
layers
layers.appendnnConvTransposedinputchannels, outputchannels, kernelsize, stride, padding, outputpaddingpadding
if not finallayer:
layers.appendnnBatchNormdoutputchannels
layers.appendnnReLUTrue
else:
layers.appendnnTanh
return nnSequentiallayers
def unsqueezenoiseself noise:
return noise.viewlennoise self.zdim,
def forwardself noise:
x self.unsqueezenoisenoise
return self.genx
def getnoisensamples, zdim, device'cpu':
return torch.randnnsamples, zdim, devicedevice
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
