Hi,
I'm trying to write an interface/wrapper around your example convolutional autoencoder code, so that it's a little easier for someone who may to want to point this to other datasets (folder of images on disk), color images, or change some parameters of the network structure.
In the "Unpool2DLayer" class, I'm noticing that the "get_output_for()" function is using the "get_output_shape_for()" function properly to use "ds" in order to compute the new unpooled shape. However, the returned value seems to used fixed values of "2" rather than "ds"?
Existing code:
def get_output_for(self, input, **kwargs):
ds = self.ds
input_shape = input.shape
output_shape = self.get_output_shape_for(input_shape)
return input.repeat(2, axis=2).repeat(2, axis=3)
Shouldn't that last line be:
return input.repeat(self.ds[0], axis=2).repeat(self.ds[1], axis=3)
Am I correct, or am I not properly understanding the code?
Thanks.
Hi,
I'm trying to write an interface/wrapper around your example convolutional autoencoder code, so that it's a little easier for someone who may to want to point this to other datasets (folder of images on disk), color images, or change some parameters of the network structure.
In the "Unpool2DLayer" class, I'm noticing that the "get_output_for()" function is using the "get_output_shape_for()" function properly to use "ds" in order to compute the new unpooled shape. However, the returned value seems to used fixed values of "2" rather than "ds"?
Existing code:
def get_output_for(self, input, **kwargs):
ds = self.ds
input_shape = input.shape
output_shape = self.get_output_shape_for(input_shape)
return input.repeat(2, axis=2).repeat(2, axis=3)
Shouldn't that last line be:
return input.repeat(self.ds[0], axis=2).repeat(self.ds[1], axis=3)
Am I correct, or am I not properly understanding the code?
Thanks.