diff options
author | Frederic Besse <fbesse@google.com> | 2016-02-22 13:33:43 +0300 |
---|---|---|
committer | Frederic Besse <fbesse@google.com> | 2016-02-22 13:33:43 +0300 |
commit | 7e8c4bec6517bc7aba8e9fd6ca69e13acb7d2b8c (patch) | |
tree | c74ecd97812276ad054251ce27128d65be7cb18d /THNN.lua | |
parent | bda46dc136d14537e294d2358ce28e766ed4d9d5 (diff) | |
parent | 096bc70ff078b179c0ca43be5efc9469247005a5 (diff) |
Merge branch 'master' of https://github.com/torch/nn
Diffstat (limited to 'THNN.lua')
-rw-r--r-- | THNN.lua | 245 |
1 files changed, 243 insertions, 2 deletions
@@ -151,6 +151,7 @@ TH_API void THNN_(LookupTable_accGradParameters)( THTensor *sorted, THTensor *indices, bool scaleGradByFreq, + int paddingValue, real scale); TH_API void THNN_(MarginCriterion_updateOutput)( @@ -200,14 +201,16 @@ TH_API void THNN_(MultiMarginCriterion_updateOutput)( THTensor *target, THTensor *output, bool sizeAverage, - int p); + int p, + THTensor *weights); TH_API void THNN_(MultiMarginCriterion_updateGradInput)( THNNState *state, THTensor *input, THTensor *target, THTensor *gradInput, bool sizeAverage, - int p); + int p, + THTensor *weights); TH_API void THNN_(PReLU_updateOutput)( THNNState *state, @@ -470,6 +473,64 @@ TH_API void THNN_(TemporalSubSampling_accGradParameters)( int kW, int dW, real scale); +TH_API void THNN_(SpatialBatchNormalization_updateOutput)( + THNNState *state, + THTensor *input, + THTensor *output, + THTensor *weight, + THTensor *bias, + THTensor *running_mean, + THTensor *running_var, + THTensor *save_mean, + THTensor *save_std, + bool train, + double momentum, + double eps); +TH_API void THNN_(SpatialBatchNormalization_backward)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradInput, + THTensor *gradWeight, + THTensor *gradBias, + THTensor *weight, + THTensor *save_mean, + THTensor *save_std, + double scale); + +TH_API void THNN_(SpatialConvolutionMap_updateOutput)( + THNNState *state, // library state + THTensor *input, // input tensor + THTensor *output, // [OUT] convolution output + THTensor *weight, // 3D weight tensor (connTable:size(1) x kH x kW) + THTensor *bias, // 1D bias tensor (nOutputPlane) + THTensor *connTable, // connection table + int nInputPlane, // number of input planes + int nOutputPlane, // number of output planes + int dW, int dH); // stride +TH_API void THNN_(SpatialConvolutionMap_updateGradInput)( + THNNState *state, // library state + THTensor *input, // input tensor + THTensor *gradOutput, // gradient w.r.t. output + THTensor *gradInput, // [OUT] gradient w.r.t. input + THTensor *weight, // 3D weight tensor (connTable:size(1) x kH x kW) + THTensor *bias, // 1D bias tensor (nOutputPlane) + THTensor *connTable, // connection table + int nInputPlane, // number of input planes + int nOutputPlane, // number of output planes + int dW, int dH); // stride +TH_API void THNN_(SpatialConvolutionMap_accGradParameters)( + THNNState *state, // library state + THTensor *input, // input tensor + THTensor *gradOutput, // gradient w.r.t. output + THTensor *gradWeight, // 3D gradWeight tensor (connTable:size(1) x kH x kW) + THTensor *gradBias, // 1D gradBias tensor (nOutputPlane) + THTensor *connTable, // connection table + int nInputPlane, // number of input planes + int nOutputPlane, // number of output planes + int dW, int dH, // stride + real scale); // scaling factor + TH_API void THNN_(SpatialConvolutionMM_updateOutput)( THNNState *state, THTensor *input, @@ -506,6 +567,47 @@ TH_API void THNN_(SpatialConvolutionMM_accGradParameters)( int padW, int padH, real scale); +TH_API void THNN_(SpatialConvolutionLocal_updateOutput)( + THNNState *state, + THTensor *input, + THTensor *output, + THTensor *weight, + THTensor *bias, + THTensor *finput, + THTensor *fgradInput, + int kW, int kH, + int dW, int dH, + int padW, int padH, + long inputWidth, long inputHeight, + long outputWidth, long outputHeight); +TH_API void THNN_(SpatialConvolutionLocal_updateGradInput)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradInput, + THTensor *weight, + THTensor *finput, + THTensor *fgradInput, + int kW, int kH, + int dW, int dH, + int padW, int padH, + long inputWidth, long inputHeight, + long outputWidth, long outputHeight); +TH_API void THNN_(SpatialConvolutionLocal_accGradParameters)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradWeight, + THTensor *gradBias, + THTensor *finput, + THTensor *fgradInput, + int kW, int kH, + int dW, int dH, + int padW, int padH, + long inputWidth, long inputHeight, + long outputWidth, long outputHeight, + real scale); + TH_API void THNN_(SpatialAdaptiveMaxPooling_updateOutput)( THNNState *state, THTensor *input, @@ -539,6 +641,93 @@ TH_API void THNN_(SpatialAveragePooling_updateGradInput)( bool ceil_mode, bool count_include_pad); +TH_API void THNN_(SpatialFractionalMaxPooling_updateOutput)( + THNNState *state, + THTensor *input, + THTensor *output, + int outputW, int outputH, + int poolSizeW, int poolSizeH, + THTensor *indices, + THTensor *randomSamples); +TH_API void THNN_(SpatialFractionalMaxPooling_updateGradInput)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradInput, + int outputW, int outputH, + int poolSizeW, int poolSizeH, + THTensor *indices); + +TH_API void THNN_(SpatialFullConvolution_updateOutput)( + THNNState *state, + THTensor *input, + THTensor *output, + THTensor *weight, + THTensor *bias, + THTensor *columns, + THTensor *ones, + int kW, int kH, + int dW, int dH, + int padW, int padH, + int adjW, int adjH); +TH_API void THNN_(SpatialFullConvolution_updateGradInput)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradInput, + THTensor *weight, + THTensor *gradColumns, + int kW, int kH, + int dW, int dH, + int padW, int padH, + int adjW, int adjH); +TH_API void THNN_(SpatialFullConvolution_accGradParameters)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradWeight, + THTensor *gradBias, + THTensor *columns, + THTensor *ones, + int kW, int kH, + int dW, int dH, + int padW, int padH, + int adjW, int adjH, + real scale); + +TH_API void THNN_(SpatialFullConvolutionMap_updateOutput)( + THNNState *state, // library state + THTensor *input, // input tensor + THTensor *output, // [OUT] convolution output + THTensor *weight, // 3D weight tensor (connTable:size(1) x kH x kW) + THTensor *bias, // 1D bias tensor (nOutputPlane) + THTensor *connTable, // connection table + int nInputPlane, // number of input planes + int nOutputPlane, // number of output planes + int dW, int dH); // stride +TH_API void THNN_(SpatialFullConvolutionMap_updateGradInput)( + THNNState *state, // library state + THTensor *input, // input tensor + THTensor *gradOutput, // gradient w.r.t. output + THTensor *gradInput, // [OUT] gradient w.r.t. input + THTensor *weight, // 3D weight tensor (connTable:size(1) x kH x kW) + THTensor *bias, // 1D bias tensor (nOutputPlane) + THTensor *connTable, // connection table + int nInputPlane, // number of input planes + int nOutputPlane, // number of output planes + int dW, int dH); // stride +TH_API void THNN_(SpatialFullConvolutionMap_accGradParameters)( + THNNState *state, // library state + THTensor *input, // input tensor + THTensor *gradOutput, // gradient w.r.t. output + THTensor *gradWeight, // 3D gradWeight tensor (connTable:size(1) x kH x kW) + THTensor *gradBias, // 1D gradBias tensor (nOutputPlane) + THTensor *connTable, // connection table + int nInputPlane, // number of input planes + int nOutputPlane, // number of output planes + int dW, int dH, // stride + real scale); // scaling factor + TH_API void THNN_(SpatialMaxPooling_updateOutput)( THNNState *state, THTensor *input, @@ -559,6 +748,58 @@ TH_API void THNN_(SpatialMaxPooling_updateGradInput)( int padW, int padH, bool ceil_mode); +TH_API void THNN_(SpatialMaxUnpooling_updateOutput)( + THNNState *state, + THTensor *input, + THTensor *output, + THTensor *indices, + int owidth, int oheight); +TH_API void THNN_(SpatialMaxUnpooling_updateGradInput)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradInput, + THTensor *indices, + int owidth, int oheight); + +TH_API void THNN_(SpatialSubSampling_updateOutput)( + THNNState *state, + THTensor *input, + THTensor *output, + THTensor *weight, + THTensor *bias, + int kW, int kH, + int dW, int dH); +TH_API void THNN_(SpatialSubSampling_updateGradInput)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradInput, + THTensor *weight, + int kW, int kH, + int dW, int dH); +TH_API void THNN_(SpatialSubSampling_accGradParameters)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradWeight, + THTensor *gradBias, + int kW, int kH, + int dW, int dH, + real scale); + +TH_API void THNN_(SpatialUpSamplingNearest_updateOutput)( + THNNState *state, + THTensor *input, + THTensor *output, + int scale_factor); +TH_API void THNN_(SpatialUpSamplingNearest_updateGradInput)( + THNNState *state, + THTensor *input, + THTensor *gradOutput, + THTensor *gradInput, + int scale_factor); + TH_API void THNN_(VolumetricAveragePooling_updateOutput)( THNNState *state, THTensor *input, |