I've been scouring the various dense matrix helper classes but have not come across a class with specializations for computing the Gramian matrix X^T X. This form occurs in OLS and many other scenarios. Doing a X.transpose.mult(X) would be super expensive for a rectangular X of large size (where rows >> columns), whereas the product is a much smaller result.
Does this exist somewhere in the code and I have not come across it?
I've been scouring the various dense matrix helper classes but have not come across a class with specializations for computing the Gramian matrix X^T X. This form occurs in OLS and many other scenarios. Doing a X.transpose.mult(X) would be super expensive for a rectangular X of large size (where rows >> columns), whereas the product is a much smaller result.
Does this exist somewhere in the code and I have not come across it?