AttributeError: 'Sequential' object has no attribute 'predict_classes'
时间: 2023-06-17 17:03:47 浏览: 2525
【Python】AttributeError: ‘AutoSchema’ object has no attribute ‘get_link’
5星 · 资源好评率100%
这个错误通常是因为你正在使用 Keras 2.3 或更高版本,并且使用了 `predict_classes()` 方法,而这个方法已经被弃用了。
你可以使用 `predict()` 方法返回类别概率,然后使用 `np.argmax()` 函数获取预测的类别。例如:
```python
import numpy as np
# 模型预测
y_pred = model.predict(x_test)
# 获取预测的类别
y_pred_classes = np.argmax(y_pred, axis=1)
```
如果你需要返回概率最高的前 k 个类别,你可以使用 `np.argsort()` 函数来获取 top k 的类别索引。例如:
```python
import numpy as np
# 模型预测
y_pred = model.predict(x_test)
# 获取 top k 的类别索引
k = 3
y_pred_top_k = np.argsort(-y_pred, axis=1)[:,:k]
```
这里使用 `-y_pred` 来进行降序排列。
阅读全文