Commit 36f7d1db authored by Benjamin Thomas Graham's avatar Benjamin Thomas Graham
Browse files

fix NetworkInNetwork on CPU; tidy

parent 29c810b2
...@@ -17,7 +17,7 @@ double cpu_NetworkInNetwork_updateOutput(/*float*/ at::Tensor input_features, ...@@ -17,7 +17,7 @@ double cpu_NetworkInNetwork_updateOutput(/*float*/ at::Tensor input_features,
output_features.copy_(bias); output_features.copy_(bias);
else else
output_features.zero_(); output_features.zero_();
output_features.addmm(input_features, weight); output_features.addmm_(input_features, weight);
return nActive * input_nPlanes * output_nPlanes; return nActive * input_nPlanes * output_nPlanes;
} }
template <typename T> template <typename T>
......
...@@ -32,19 +32,4 @@ from .spectral_norm import spectral_norm ...@@ -32,19 +32,4 @@ from .spectral_norm import spectral_norm
from .submanifoldConvolution import SubmanifoldConvolution, ValidConvolution from .submanifoldConvolution import SubmanifoldConvolution, ValidConvolution
from .tables import * from .tables import *
from .unPooling import UnPooling from .unPooling import UnPooling
from .utils import appendSparseConvTensors, AddCoords from .utils import append_tensors, AddCoords, add_feature_planes, concatenate_feature_planes
def concatenate_feature_planes(input):
output = SparseConvNetTensor()
output.metadata = input[0].metadata
output.spatial_size = input[0].metadata
output.features = torch.cat([i.features for i in input], 1)
return output
def add_feature_planes(input):
output = SparseConvNetTensor()
output.metadata = input[0].metadata
output.spatial_size = input[0].metadata
output.features = sum([i.features for i in input])
return output
...@@ -49,7 +49,23 @@ def threadDatasetIterator(d): ...@@ -49,7 +49,23 @@ def threadDatasetIterator(d):
return iterator return iterator
def appendSparseConvTensors(tensors):
def concatenate_feature_planes(input):
output = SparseConvNetTensor()
output.metadata = input[0].metadata
output.spatial_size = input[0].spatial_size
output.features = torch.cat([i.features for i in input], 1)
return output
def add_feature_planes(input):
output = SparseConvNetTensor()
output.metadata = input[0].metadata
output.spatial_size = input[0].spatial_size
output.features = sum([i.features for i in input])
return output
def append_tensors(tensors):
spatial_size=tensors[0].spatial_size spatial_size=tensors[0].spatial_size
dimension=len(spatial_size) dimension=len(spatial_size)
x=SparseConvNetTensor( x=SparseConvNetTensor(
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment