Oblynx / HierarchicalTemporalMemory.jl

A simple, high-level Julia implementation of Numenta HTM algorithms
https://oblynx.github.io/HierarchicalTemporalMemory.jl
MIT License
21 stars 3 forks source link

Efficient VSpM (CSC) multiplication? Needs CSR? #12

Closed Oblynx closed 5 years ago

Oblynx commented 5 years ago

Matrix of connected synapses ( W == proximalSynapses.connected ) remains in Dense format, even though it's even sparser than the Synapses matrix, because the overlap calculation becomes very inefficient otherwise.

@pitsianis Is there an efficient way to calculate z' * W where z:: dense vector, W:: SparseMatrixCSC, or is dense vector x sparse matrix CSC fundamentally inefficient?

Originally posted by @Oblynx in https://github.com/Oblynx/htm.jl/issues/6#issuecomment-489600200

Oblynx commented 5 years ago

This calculation becomes very fast with a low-level implementation in arithmetic_utils.jl