python - AssertionError: HybridBlock 要求转发的第一个参数是 Symbol 或 NDArray,但是得到了
问题描述
我正在尝试在我的图像上运行一个预制程序,并且图像类型是一个 numpy 数组。当我按回车时,我收到此错误:
AssertionError: HybridBlock requires the first argument to forward be
either Symbol or NDArray, but got < class 'numpy.ndarray' >
任何人都知道如何破译这个?当我在网上查看时,它说 a NDArray
IS a numpy.ndarray
,所以我不确定它为什么抱怨。非常感谢!
解决方案
您必须将 numpy 数组转换为 mxnet NDArray:
In [11]: import numpy as np
In [12]: import mxnet as mx
In [13]: a = np.array([1, 2, 3])
In [14]: b = mx.ndarray.array(a)
In [15]: b
Out[15]:
[1. 2. 3.]
<NDArray 3 @cpu(0)>
In [16]: type(b)
Out[16]: mxnet.ndarray.ndarray.NDArray
推荐阅读
- python-3.x - O(n) 字符串中单词列表的出现次数
- python - 如何从 PyTorch 网络中的稀疏矩阵中获取反向梯度?
- python - Python转换PDF
- python-3.x - 有没有人成功编译过 python 3 Kivy 应用程序?
- node.js - 使用 rxjs ajax() 我得到“你的浏览器不支持CORS”
- sqldatasource - 在我的 SqlDataSource 标记中使用全局变量
- angular - 页面加载时角度动画淡入
- avplayerviewcontroller - 如何改变 AVPlayerViewController 的速度?
- java - Java评估多个布尔参数是否相等
- php - 在作业中实现存储库接口