Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/torch/nn.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/init.c
diff options
context:
space:
mode:
Diffstat (limited to 'init.c')
-rw-r--r--init.c163
1 files changed, 163 insertions, 0 deletions
diff --git a/init.c b/init.c
new file mode 100644
index 0000000..b2a528e
--- /dev/null
+++ b/init.c
@@ -0,0 +1,163 @@
+#include "TH.h"
+#include "luaT.h"
+
+#define torch_(NAME) TH_CONCAT_3(torch_, Real, NAME)
+#define torch_string_(NAME) TH_CONCAT_STRING_3(torch., Real, NAME)
+#define nn_(NAME) TH_CONCAT_3(nn_, Real, NAME)
+
+static const void* torch_FloatTensor_id = NULL;
+static const void* torch_DoubleTensor_id = NULL;
+
+#include "generic/Square.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/Sqrt.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/HardTanh.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/Exp.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/LogSigmoid.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/LogSoftMax.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/Sigmoid.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/SoftPlus.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/Tanh.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/Abs.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/HardShrink.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/SoftShrink.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/Threshold.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/SoftMax.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/Max.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/Min.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/MSECriterion.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/AbsCriterion.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/SparseLinear.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/TemporalConvolution.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/TemporalSubSampling.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/SpatialConvolution.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/SpatialConvolutionMap.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/SpatialSubSampling.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/SpatialMaxPooling.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/VolumetricConvolution.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/MultiMarginCriterion.c"
+#include "THGenerateFloatTypes.h"
+
+#include "generic/MultiLabelMarginCriterion.c"
+#include "THGenerateFloatTypes.h"
+
+DLL_EXPORT int luaopen_libnn(lua_State *L)
+{
+ torch_FloatTensor_id = luaT_checktypename2id(L, "torch.FloatTensor");
+ torch_DoubleTensor_id = luaT_checktypename2id(L, "torch.DoubleTensor");
+
+ lua_newtable(L);
+ lua_pushvalue(L, -1);
+ lua_setfield(L, LUA_GLOBALSINDEX, "nn");
+
+ nn_FloatMin_init(L);
+ nn_FloatMax_init(L);
+ nn_FloatExp_init(L);
+ nn_FloatSqrt_init(L);
+ nn_FloatSquare_init(L);
+ nn_FloatHardTanh_init(L);
+ nn_FloatLogSoftMax_init(L);
+ nn_FloatMSECriterion_init(L);
+ nn_FloatAbsCriterion_init(L);
+ nn_FloatLogSigmoid_init(L);
+ nn_FloatSigmoid_init(L);
+ nn_FloatSoftMax_init(L);
+ nn_FloatSoftPlus_init(L);
+ nn_FloatTanh_init(L);
+ nn_FloatAbs_init(L);
+ nn_FloatHardShrink_init(L);
+ nn_FloatSoftShrink_init(L);
+ nn_FloatThreshold_init(L);
+ nn_FloatSparseLinear_init(L);
+ nn_FloatTemporalConvolution_init(L);
+ nn_FloatTemporalSubSampling_init(L);
+ nn_FloatSpatialConvolution_init(L);
+ nn_FloatSpatialConvolutionMap_init(L);
+ nn_FloatSpatialSubSampling_init(L);
+ nn_FloatSpatialMaxPooling_init(L);
+ nn_FloatVolumetricConvolution_init(L);
+ nn_FloatMultiMarginCriterion_init(L);
+ nn_FloatMultiLabelMarginCriterion_init(L);
+
+ nn_DoubleMin_init(L);
+ nn_DoubleMax_init(L);
+ nn_DoubleExp_init(L);
+ nn_DoubleSqrt_init(L);
+ nn_DoubleSquare_init(L);
+ nn_DoubleHardTanh_init(L);
+ nn_DoubleLogSoftMax_init(L);
+ nn_DoubleMSECriterion_init(L);
+ nn_DoubleAbsCriterion_init(L);
+ nn_DoubleLogSigmoid_init(L);
+ nn_DoubleSigmoid_init(L);
+ nn_DoubleSoftMax_init(L);
+ nn_DoubleSoftPlus_init(L);
+ nn_DoubleTanh_init(L);
+ nn_DoubleAbs_init(L);
+ nn_DoubleHardShrink_init(L);
+ nn_DoubleSoftShrink_init(L);
+ nn_DoubleThreshold_init(L);
+ nn_DoubleSparseLinear_init(L);
+ nn_DoubleTemporalConvolution_init(L);
+ nn_DoubleTemporalSubSampling_init(L);
+ nn_DoubleSpatialConvolution_init(L);
+ nn_DoubleSpatialConvolutionMap_init(L);
+ nn_DoubleSpatialSubSampling_init(L);
+ nn_DoubleSpatialMaxPooling_init(L);
+ nn_DoubleVolumetricConvolution_init(L);
+ nn_DoubleMultiMarginCriterion_init(L);
+ nn_DoubleMultiLabelMarginCriterion_init(L);
+
+ return 1;
+}