diff options
author | soumith <soumith@fb.com> | 2015-05-28 07:42:59 +0300 |
---|---|---|
committer | soumith <soumith@fb.com> | 2015-05-28 07:42:59 +0300 |
commit | ec6953806d02ea189cc9fb5ba83ada05eca7d28c (patch) | |
tree | 8a51527d9e30802b97aeed5999b9939f3f62b0ee /VolumetricAveragePooling.lua | |
parent | e35f09a1f7ff6a123e841dfae24485999f7ce31d (diff) |
Volumetric Average Pooling + doc + unit test, better performance for Volumetric Max Pooling
Diffstat (limited to 'VolumetricAveragePooling.lua')
-rw-r--r-- | VolumetricAveragePooling.lua | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/VolumetricAveragePooling.lua b/VolumetricAveragePooling.lua new file mode 100644 index 0000000..1fc0ec9 --- /dev/null +++ b/VolumetricAveragePooling.lua @@ -0,0 +1,34 @@ +local VolumetricAveragePooling, parent = torch.class( + 'nn.VolumetricAveragePooling', 'nn.Module') + +function VolumetricAveragePooling:__init(kT, kW, kH, dT, dW, dH) + parent.__init(self) + + dT = dT or kT + dW = dW or kW + dH = dH or kH + + self.kT = kT + self.kH = kH + self.kW = kW + self.dT = dT + self.dW = dW + self.dH = dH +end + +function VolumetricAveragePooling:updateOutput(input) + input.nn.VolumetricAveragePooling_updateOutput(self, input) + return self.output +end + +function VolumetricAveragePooling:updateGradInput(input, gradOutput) + input.nn.VolumetricAveragePooling_updateGradInput(self, input, gradOutput) + return self.gradInput +end + +function VolumetricAveragePooling:empty() + self.gradInput:resize() + self.gradInput:storage():resize(0) + self.output:resize() + self.output:storage():resize(0) +end |