Closed sxsong1207 closed 5 years ago
Hello. Simd::Neural Framework is not optimal to work with so big images (I created it in order to recognize symbols). I would recommend you to use Synet Framework (it is mach faster and allows to use model trained with using of Caffe, Darknet, Tensorflow, and OpenCV::Dnn).
Looks great, you did great contribution on cpu accel nn, thank you!
Hi,
I found each layer declare these two same dimension data block. Sum is value before active func, Dst are value after active func.
Seems it is not necessary to store those values in sum vector,right? As I'm working on a network with large input size(2000x2000 and bigger), release sum vector could save up to half of RAM for me.
I tried in my code, it's forward-only convolutional-only, it didn't change anything but RAM cost.
I disabled these lines and change
sum
intodst
virtual void SetThreadNumber(size_t number, bool train) { _common.resize(number); for (size_t i = 0; i < _common.size(); ++i) { //_common[i].sum.resize(_dst.Volume());