假设我们要求A的逆矩阵,正常情况下我们使用如下命令:
torch.inverse(A)
但是本人发现,这个函数还挺消耗显存的。想到求逆矩阵和求线性方程组有很大关系。从而可以使用torch.linalg.solve来求解逆矩阵,关键是其显存消耗小。
求解逆矩阵不就是求解下面的X吗?
AX=IAX=IAX=I
所以我们可以调用torch.linalg.solve来求解。
torch.linalg.solve(A,torch.eye(len(A)))
反正可以节约蛮多显存的,尤其是当A的维度比较高,比如上万,精度比较高,比如float64,的时候。