【pytorch】缺少LAPACK库(LAPACK library not found in compilation)

在使用PyTorch进行行列式计算和矩阵幂运算时遇到LAPACK库缺失的错误,尝试通过conda和pip安装lapack失败。问题解决方法是通过conda-forge安装lapack,并重新按照官方指令完整安装pytorch,确保所有依赖项齐全。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

使用pytorch的某些接口时,报错缺少LAPACK库,如:

行列式计算det

import torch

A = torch.randn(3, 3)
output = torch.linalg.det(A)
print(output)

报错:

RuntimeError: Calling torch.linalg.lu_factor on a CPU tensor requires compiling PyTorch with LAPACK. Please use PyTorch built with LAPACK support.

矩阵幂运算matrix_power的负数场景(需要求逆时)

x = torch.tensor(np.array([[2, 0, 0], [0, 2, 0], [0, 0, 2]]), dtype=torch.float32)
y = torch.matrix_power(x, -1)
print(y)

报错:

RuntimeError: inverse: LAPACK library not found in compilation

解决措施

在conda环境下安装lapack库(无用)

以为是缺少lapack库的依赖,遂尝试安装该库:
conda install lapack
安装失败,找不到该库。

pip install lapack
也安装失败,找不到该库。

网上查询后发现,conda默认的库用的是anaconda,里面不包括lapack,需要改用conda-forge库,才能找到lapack。
conda install -c conda-forge lapackpp
安装成功,但是pytorch还是运行不了。

使用官网安装指令重装pytorch,解决问题

到pytorch官网找了完整的安装指令,安装最新稳定版本的torch:
conda install pytorch torchvision torchaudio cpuonly -c pytorch
安装后即可正常使用。
猜测是安装pytorch时,偷懒使用了指令 conda install torch,导致安装的依赖不全。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值