Mesmo que uma matriz seja muito esparsa, seu produto da matriz consigo mesmo pode ser denso. Pegue, por exemplo, uma matriz diagonal e preencha sua primeira linha e coluna com entradas diferentes de zero; seu produto em si será completamente denso. Essa matriz pode surgir, por exemplo, como gráfico Laplaciano de um gráfico no qual existe um vértice que está conectado a todos os outros vértices. Na prática, basta se houver poucos vértices com conectividade bastante alta ao restante da rede. Para a multiplicação de vetores de matriz, esse fenômeno é menos relevante, embora possa levar a desequilíbrios ao tentar paralelizar a multiplicação de vetores de matriz.
O que quero destacar: Depende realmente do padrão de escarsidade e do que você deseja fazer com a matriz. Portanto, a melhor definição de uma matriz esparsa que eu possa criar (que é bastante inútil ao mesmo tempo) é a seguinte:
Uma matriz é escassa se for vantajoso armazenar apenas seus valores diferentes de zero e suas posições e investir a sobrecarga adicional resultante do gerenciamento da estrutura de dados resultante.
A lição a aprender: Depende realmente do que você quer fazer com ele , qual algoritmo você usa e (como outros já apontaram) que hardware e software você usa se uma matriz é escassa ou não (leia-se como: se você deve usar uma estrutura de dados de matriz esparsa ou densa). Não pode haver uma regra puramente baseada em porcentagem se não se trata apenas de armazenar dados ou multiplicar vetores matriciais. A melhor maneira de descobrir se suas matrizes são esparsas é apenas tentar e comparar com métodos de matriz densa.