Skip to content

Performance Issues with layer_likelihood (sparse matrix representation) #50

@verginer

Description

@verginer

The layer_likelihood function in tests has a bottleneck the indexing of the transition matrix

transition_matrix = self.transition_matrices[l]
factor_ = paths.paths[k][p][1]
for s in range(len(nodes)-1):
idx_s1 = indexmaps[l][nodes[s + 1]]
idx_s0 = indexmaps[l][nodes[s]]
trans_mat = transition_matrix[idx_s1, idx_s0]
likelihood += np.log(trans_mat) * factor_

Some stats changing the type of sparse matrix used:

dense lil csr csc
layer_likelihood 2.8 3.5 10 27
estimate_order 16.8 17.6 24 42
with instantiation 29.1 30 41 51

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions