I tienen la siguiente situación: Tengo una secuencia de vectores y para cada uno quiero calcular el producto A x i donde A se fija desde el principio. Aunque no hay información sobre la estructura de x i , A generalmente tiene un patrón particular en el que se repiten muchos valores y me gustaría calcular estos productos lo más rápido posible.
Un ejemplo de ve así:
Aquí las regiones blancas son 0.
Me pregunto si hay alguna forma de almacenar información sobre o modificarla de alguna manera que me permita reducir el número de operaciones para cada producto. Para las filas que son todas 0, esto es trivial: uno puede almacenar las indicaciones de fila que indican tales filas. También es posible almacenar información sobre qué filas están duplicadas para reutilizar los cálculos de las filas. También he considerado ordenar las filas de la matriz para minimizar la diferencia de medias entre cada fila y solo calcular la diferencia en cada fila. Sin embargo, esto parece tener problemas para los patrones más complicados.
Me preguntaba si hay algún método conocido para este tipo de problemas.