pyinn安装

pyinn安装

在使用convcrf【https://github.com/MarvinTeichmann/ConvCRF】包的时候需要依赖pyinn【https://github.com/szagoruyko/pyinn】这个包,在pyinn安装是总是出现cupy安装问题,记录一下如解决:

问题

首先问题就是找不到合适的cupy版本,但是我们可以自己手动安装成功,但是安装版本和pyinn的setup.py中不一致,所以一直有错误。而且会出现pyinn包无法下载的问题。

解决

针对上面问题,我们将原网站安装命令进行拆解,原始命令:pip install git+https://github.com/szagoruyko/pyinn.git@master

拆解为:

1.手动下载pyinn包并解压

(这时候文件夹里往往有一个setup.py文件,但是有些时候并不能简单的python setup.py)

1.1 对setup.py进行修改

原文件下载的包:

    install_requires=[
        'torch',
        'cupy',
        # 'scikit-cuda',
    ]

因为我电脑使用的cuda11.1.0,所以cupy需要针对cuda版本进行下载安装,需要修改cupy版本,改为:

    install_requires=[
        'torch',
        'cupy-cuda111',
        # 'scikit-cuda',
    ]

2.在下载的文件夹下执行 :python setup.py sdist

3.然后会多出一个dist的文件夹,打开文件夹便可以看到一个打包好的你需要安装的项目xxx.tar.gz

4.然后再 pip install xxx.tar.gz ,到此安装完成

后续

安装成功后调用pyinn时也会报错:

import pyinn

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/mol/.local/lib/python3.6/site-packages/pyinn/__init__.py", line 1, in <module>
    from .ncrelu import ncrelu
  File "/home/mol/.local/lib/python3.6/site-packages/pyinn/ncrelu.py", line 2, in <module>
    from pyinn.utils import Stream, Dtype, load_kernel
  File "/home/mol/.local/lib/python3.6/site-packages/pyinn/utils.py", line 17, in <module>
    @cupy.util.memoize(for_each_device=True)
AttributeError: module 'cupy' has no attribute 'util'

解决办法:https://blog.csdn.net/Zhangrx _/article/details/115037500

由于pytorch版本升级,cupy更新后没有了util属性,因此将代码中的

@cupy.util.memoize(for_each_device=True)

改为:

@cupy.memoize(for_each_device=True)

代码所在位置就是报错中提醒的/home/mol/.local/lib/python3.6/site-packages/pyinn/utils.py

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值