diff options
author | Francisco Massa <fvsmassa@gmail.com> | 2016-01-31 17:32:30 +0300 |
---|---|---|
committer | Francisco Massa <fvsmassa@gmail.com> | 2016-02-18 01:20:06 +0300 |
commit | b339dad44739267bd79a0eae0fb158bfcab5991b (patch) | |
tree | 796bf8399aaf47c0a3eb215e56057b490528809b /SpatialBatchNormalization.lua | |
parent | 6f2b4380369aa61a29f1ac2e9f2954cf64ae7172 (diff) |
Add THNN conversion for Spatial* modules
Add THNN conversion of SpatialBatchNormalization, SpatialFractionalMaxPooling and SpatialSubSampling
Add THNN convertion of SpatialConvolutionLocal, SpatialFullConvolution and SpatialUpSamplingNearest
THNN conversion of SpatialMaxUnpooling
Remove unfold from generic
Add functional conversion of SpatialCrossMapLRN
Plus fix in the init.c
Fix
Diffstat (limited to 'SpatialBatchNormalization.lua')
-rw-r--r-- | SpatialBatchNormalization.lua | 39 |
1 files changed, 20 insertions, 19 deletions
diff --git a/SpatialBatchNormalization.lua b/SpatialBatchNormalization.lua index 2fb92b6..5ea9f1b 100644 --- a/SpatialBatchNormalization.lua +++ b/SpatialBatchNormalization.lua @@ -29,6 +29,7 @@ ]]-- local BN,parent = torch.class('nn.SpatialBatchNormalization', 'nn.Module') +local THNN = require 'nn.THNN' BN.__version = 2 @@ -80,18 +81,18 @@ function BN:updateOutput(input) self.save_std = self.save_std or input.new() self.save_std:resizeAs(self.running_var) - input.nn.SpatialBatchNormalization_updateOutput( - input, - self.output, - self.weight, - self.bias, + input.THNN.SpatialBatchNormalization_updateOutput( + input:cdata(), + self.output:cdata(), + THNN.optionalTensor(self.weight), + THNN.optionalTensor(self.bias), + self.running_mean:cdata(), + self.running_var:cdata(), + self.save_mean:cdata(), + self.save_std:cdata(), self.train, - self.eps, self.momentum, - self.running_mean, - self.running_var, - self.save_mean, - self.save_std) + self.eps) return self.output end @@ -107,15 +108,15 @@ local function backward(self, input, gradOutput, scale, gradInput, gradWeight, g gradInput:resizeAs(gradOutput) end - input.nn.SpatialBatchNormalization_backward( - input, - gradOutput, - gradInput, - gradWeight, - gradBias, - self.weight, - self.save_mean, - self.save_std, + input.THNN.SpatialBatchNormalization_backward( + input:cdata(), + gradOutput:cdata(), + THNN.optionalTensor(gradInput), + THNN.optionalTensor(gradWeight), + THNN.optionalTensor(gradBias), + THNN.optionalTensor(self.weight), + self.save_mean:cdata(), + self.save_std:cdata(), scale) return self.gradInput |