概述
介绍
对于稀疏矩阵,PyTorch (version : 1.1.0) 中提供了稀疏张量 torch.sparse.FloatTensor 来表示,其中,torch.sparse.mm(mat1, mat2) 用来完成两矩阵相乘,参数如下:
- mat1 (SparseTensor) :稀疏矩阵,大小为(n × m)
- mat2 (Tensor) :密集矩阵,大小为 (m × p)
详情参考 PyTorch 官方文档
但是嘞,我操作的矩阵太大了,将其中一个变为密集矩阵都不可实现,于是,想寻找可以直接将两个稀疏矩阵进行乘法运算的工具,然后,就找到了 pytorch_sparse 其中就有两稀疏矩阵相乘的方法:
torch_sparse.spspmm(indexA, valueA, indexB, valueB, m, k, n) -> (torch.LongTensor, torch.Tensor)
安装
安装指令简洁明了,直接 pip install torch-scatter torch-sparse
,Linux系统可以完美驾驭,但在Win 10 上会报错导致安装失败,主要报错为:Microsoft Visual C++ 14.0 is required.
参考网上的方法,解决步骤如下:
- Visual Studio 官网 底部的 旧版本 寻找并下载 Visual Studio Community 2017 (version 15.0) ,下载直达链接。注:旧版本的访问需要登录账号,用任意邮箱注册一下即可。
- 安装时的选项如下:一定要选择 Visual C++ build tools 里面的 C++/CLI support 和 VC++ 2015.3 v14.00 (v140) toolset for desktop。
- 如果报错版本不符合,检查下报错信息,看下它需要的具体版本,重新去官网下载安装。
- 运行
pip3 install torch-scatter
、pip3 install torch-sparse
安装成功截图如下:
Why Visual C++ ?
Windows Python 需要通过 SDK 安装 Visual C++ 库来生成代码,但在 Linux 和 Mac 上,Visual C++ 库会与编译器一起安装。简而言之,就是系统编译某部分代码时需要用到一些库文件,但在 Windows 上这些库文件没有预装,正好,通过 Visual Studio 安装一套 SDK,会顺带安装蛮多库文件,这样,你的系统在需要时就可以共享这些库文件啦,编译安装也就可以顺利通过了。
参考链接
- error: Microsoft Visual C++ 14.0 is required
- Fix Python 3 on Windows error Microsoft Visual C++ 14.0 is required
- error: Microsoft Visual C++ 14.0 is required
最后
以上就是直率背包为你收集整理的【教程】win10 使用 python3 安装 pytorch_sparse的全部内容,希望文章能够帮你解决【教程】win10 使用 python3 安装 pytorch_sparse所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复