You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ICC_rep_anova can be sped up by rearranging the matrix multiplication order and using the hermitian=True flag in pinv
Actual behavior
As implemented, pinv is called without the hermitian=True flag.
dot(X.T, X) will always be a hermitian matrix so speedup can be achieved by setting the hermitian flag in pinv to True.
The matrix multiplication in line 117 in icc.py is arranged in a way that fat matrices end up being multiplied together.
The matrix multiplication order can be rearranged in a way that we end up multiplying fat matrices with column vectors most of the time.
Uh oh!
There was an error while loading. Please reload this page.
Summary
ICC_rep_anova can be sped up by rearranging the matrix multiplication order and using the hermitian=True flag in pinv
Actual behavior
As implemented, pinv is called without the hermitian=True flag.
dot(X.T, X) will always be a hermitian matrix so speedup can be achieved by setting the hermitian flag in pinv to True.
The matrix multiplication in line 117 in icc.py is arranged in a way that fat matrices end up being multiplied together.
The matrix multiplication order can be rearranged in a way that we end up multiplying fat matrices with column vectors most of the time.
Script/Workflow details
Suggested modification in lines 117: https://github.com/kristoferm94/nipype/blob/linalg-speedup/nipype/algorithms/icc.py
I.e. replace:
with
The text was updated successfully, but these errors were encountered: