algorithm - Computing the null space of a matrix as fast as possible -
Let me calculate the emptyness of several thousand small metrics (8x9, 4x3, not as I had written before) in parallel (CUDA) I need to. All references point to SVD, but the algorithm in numerical recipes seems very expensive, and gives me lots of things from very empty space that I really do not need. Gaussian eradication is not really an option? Are there any other commonly used methods?
To answer your question directly ... Yes! QR Decomposition!
Let's assume a QR decomposition with an M-by-n matrix rank n, the orthonormal M-by-M matrix Q and the upper triangular M-by-n matrix R such as A = QR if we Q = [Q1 Q2], where Q1 is M-by-N and Q2 M-by- (Mn), then the columns of AQ of Q2 form A ^ T.
QR decomposition is calculated by either gram-schmitt, givination rotation, or domestic reactions. They have different stability properties and operations counting.
You are right: SVD is expensive! What do I use cutting-edge stuff, but when I hear "calculate the blank space", I can not say (edit: the way I'm easy to understand), I think QR
Comments
Post a Comment