python - AxisError:计算类的准确性时,轴 1 超出维度 1 数组的范围
问题描述
我尝试使用此代码预测 10 个类
#Predicting the Test set rules
y_pred = model.predict(traindata)
y_pred = np.argmax(y_pred, axis=1)
y_true = np.argmax(testdata, axis=1)
target_names = ["akLembut","akMundur","akTajam","caMenaik", "caMenurun", "coretanTengah", "garisAtas", "garisBawah", "garisBawahBanyak", "ttdCangkang"]
print("\n"+ classification_report(y_true, y_pred, target_names=target_names))
但后来我收到这样的错误消息
AxisError Traceback (most recent call last)
<ipython-input-13-a2b02b251547> in <module>()
2 y_pred = model.predict(traindata)
3 y_pred = np.argmax(y_pred, axis=1)
----> 4 y_true = np.argmax(testdata, axis=1)
5
6 target_names = ["akLembut","akMundur","akTajam","caMenaik", "caMenurun", "coretanTengah", "garisAtas", "garisBawah", "garisBawahBanyak", "ttdCangkang"]
<__array_function__ internals> in argmax(*args, **kwargs)
2 frames
/usr/local/lib/python3.6/dist-packages/numpy/core/fromnumeric.py in _wrapit(obj, method, *args, **kwds)
45 except AttributeError:
46 wrap = None
---> 47 result = getattr(asarray(obj), method)(*args, **kwds)
48 if wrap:
49 if not isinstance(result, mu.ndarray):
AxisError: axis 1 is out of bounds for array of dimension 1
我已经对数据进行了训练,我需要知道每个准确性。
解决方案
我的猜测是您的test_data
数组只是一维的,因此更改为y_true = np.argmax(testdata, axis=0)
.
推荐阅读
- java - 如何对命令中的表情做出反应 (Discord JDA)?
- r - 在两个 data.tables 之间添加和相乘公共元素
- amazon-web-services - 如何在 AWS CloudFormation 的参数部分添加条件?
- r - 使用 mutate 为变量名赋值
- html - 如何直接制表到子元素并忽略父元素
- android-studio - Flutter:任务“:app:transformClassesAndResourcesWithProguardForRelease”执行失败
- c - 什么可能是 C 中 SystemVerilog 中 casex 语句的等效方法
- idempiere - 尝试在 Idempiere 中导入 web 服务时无法在 packIn 对话框中看到 ZIP FileType
- python - 文本脱离 figsize plot.bar
- azure - 该节点有条件:[DiskPressure] 导致 azure/aks 中的 k8s 中的 pod 驱逐