void do_update( ccube_p<real> const & g ) { auto dEdW = convolve_sparse_flipped(*last_input, *g, filter_stride); filter_.update(*dEdW); flatten(filter_.W(), repeat_); }
void do_update( ccube_p<real> const & g ) { auto dEdW = convolve_sparse_flipped(*last_input, *g, filter_stride); filter_.update(*dEdW, patch_sz_); }
inline cube_p<T> convolve_sparse_flipped( ccube_p<T> const & a, ccube_p<T> const & b, vec3i const & s ) { return convolve_sparse_flipped(*a,*b,s); }