A diferença de pseudo-inversa entre SciPy e Numpy
Eu descobri que existem duas versões depinv()
função, que calcula o pseudo-inverso de uma matriz emScipy
enumpy
, os documentos podem ser visualizados em:
http://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.pinv.html
http://docs.scipy.org/doc/scipy/reference/generated/scipy.linalg.pinv.html
O problema é que eu tenho uma matriz 50000 * 5000, ao usarscipy.linalg.pinv
, me custa mais de 20GB de memória. Mas quando eu usonumpy.linalg.pinv
, apenas menos de 1 GB de memória é usado.
Eu estava me perguntando por quenumpy
escipy
ambos têm umpinv
sob diferentes implementações. E por que suas performances são tão diferentes.