Add __repr__ to Avgpool and maxunpool layers (#2047)
diff --git a/torch/nn/modules/pooling.py b/torch/nn/modules/pooling.py
index f92ff64..fe3470d 100644
--- a/torch/nn/modules/pooling.py
+++ b/torch/nn/modules/pooling.py
@@ -228,6 +228,12 @@
return F.max_unpool1d(input, indices, self.kernel_size, self.stride,
self.padding, output_size)
+ def __repr__(self):
+ return self.__class__.__name__ + ' (' \
+ + 'size=' + str(self.kernel_size) \
+ + ', stride=' + str(self.stride) \
+ + ', padding=' + str(self.padding) + ')'
+
class MaxUnpool2d(Module):
r"""Computes a partial inverse of :class:`MaxPool2d`.
@@ -303,6 +309,12 @@
return F.max_unpool2d(input, indices, self.kernel_size, self.stride,
self.padding, output_size)
+ def __repr__(self):
+ return self.__class__.__name__ + ' (' \
+ + 'size=' + str(self.kernel_size) \
+ + ', stride=' + str(self.stride) \
+ + ', padding=' + str(self.padding) + ')'
+
class MaxUnpool3d(Module):
r"""Computes a partial inverse of :class:`MaxPool3d`.
@@ -358,6 +370,12 @@
return F.max_unpool3d(input, indices, self.kernel_size, self.stride,
self.padding, output_size)
+ def __repr__(self):
+ return self.__class__.__name__ + ' (' \
+ + 'size=' + str(self.kernel_size) \
+ + ', stride=' + str(self.stride) \
+ + ', padding=' + str(self.padding) + ')'
+
class AvgPool1d(Module):
r"""Applies a 1D average pooling over an input signal composed of several
@@ -417,6 +435,14 @@
input, self.kernel_size, self.stride, self.padding, self.ceil_mode,
self.count_include_pad)
+ def __repr__(self):
+ return self.__class__.__name__ + ' (' \
+ + 'size=' + str(self.kernel_size) \
+ + ', stride=' + str(self.stride) \
+ + ', padding=' + str(self.padding) \
+ + ', ceil_mode=' + str(self.ceil_mode) \
+ + ', count_include_pad=' + str(self.count_include_pad) + ')'
+
class AvgPool2d(Module):
r"""Applies a 2D average pooling over an input signal composed of several input
@@ -478,6 +504,14 @@
return F.avg_pool2d(input, self.kernel_size, self.stride,
self.padding, self.ceil_mode, self.count_include_pad)
+ def __repr__(self):
+ return self.__class__.__name__ + ' (' \
+ + 'size=' + str(self.kernel_size) \
+ + ', stride=' + str(self.stride) \
+ + ', padding=' + str(self.padding) \
+ + ', ceil_mode=' + str(self.ceil_mode) \
+ + ', count_include_pad=' + str(self.count_include_pad) + ')'
+
class MaxPool3d(Module):
r"""Applies a 3D max pooling over an input signal composed of several input
@@ -608,6 +642,11 @@
def forward(self, input):
return F.avg_pool3d(input, self.kernel_size, self.stride)
+ def __repr__(self):
+ return self.__class__.__name__ + ' (' \
+ + 'size=' + str(self.kernel_size) \
+ + ', stride=' + str(self.stride) + ')'
+
class FractionalMaxPool2d(Module):
"""Applies a 2D fractional max pooling over an input signal composed of several input planes.