2016-04-30 17 views
0

Ich habe ein paar Antworten über multiplying large matrices ausgecheckt, aber keine schien zu artikulieren, was ich suche.MATLAB Large spärlich inneres Produkt

Meine Daten sind eine spärliche 25000x4096 Matrix, nennen wir es D.

Ich bin auf der Suche nach D*D', aber es ist auch mit sparse Datentypen ungött langsam. Ich habe das Gefühl, dass es einen effizienteren Weg geben muss, weil das Ergebnis sowieso symmetrisch ist, so dass die Hälfte der Operationen redundant ist.

Gibt es eine Operation, die ich vermisse?

Antwort

0

Die Leistung solcher Algorithmen hängt stark von Speicherschemata ab, die Sie zum Speichern der Matrix verwenden. Wenn Ihr Algorithmus beispielsweise mit verketteten Listen arbeitet, kann seine Leistung im Vergleich zur Verwendung einer ähnlichen Adjazenzstruktur (dieser Begriff stammt aus der Theorie der Graphen) erheblich beeinträchtigt sein.