微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

找不到杯状卷积

如何解决找不到杯状卷积

我正在尝试从本文的文档中获取卷积 https://docs.cupy.dev/en/latest/reference/generated/cupy.convolve.html

>>> import cupy as cp
>>> b = cp.array([0,1,1])
>>> cp.convolve(b,cp.ones(3),'same') / 3
Traceback (most recent call last):
  File "<stdin>",line 1,in <module>
AttributeError: module 'cupy' has no attribute 'convolve'

因此,对numpy进行卷积似乎可以解决问题,但对cupy无效。

>>> import numpy as np
>>> a = np.array([0,1])
>>> np.convolve(a,np.ones(3),'same') / 3
array([0.,0.,0.33333333,0.33333333])

尽管基本功能(例如add)可以与cupy配合使用。

>>> cp.add(b,b)
array([0,2,2],dtype=int32)

设置:

  • Windows 10
  • Win32上的Python 3.8.5(tags / v3.8.5:580fbb0,2020年7月20日,15:57:54)[MSC v.1924 64位(AMD64)]
  • cuda 11.0.3 451.82
  • cuDNN 11.0 x64 v8.0.3.33
  • cuTENSOR 1.2.0

点:

  • numpy-1.19.1
  • cupy-cuda110-7.8.0
  • optuna-2.0.0

我完成了Python和cuda的全新安装,...,但是并没有解决问题。 我现在不知道还有什么可能丢失。据我了解,cuppy只是在gpu上处理了numpy,因此numpy的每个函数都应该在cupy中。

解决方法

似乎cupy 7.8.0不支持convolve,仅在版本8.0.0中支持 所以我现在安装了当前的候选版本cupy_cuda110-8.0.0rc1

pip install --pre -U cupy-cuda110

现在卷积效果很好

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。