我有一个函数,可以使用 mae、mse、rmse、mape 和 mase 等指标创建一个用于评估的字典。错误在于“MAE”。截至 2024 年 1 月,此功能有效;附上错误截图。代码片段:
def evaluate_preds(y_true, y_pred):
# Make sure float32 (for metric calculations)
y_true = tf.cast(y_true, dtype=tf.float32)
y_pred = tf.cast(y_pred, dtype=tf.float32)
# Calculate various metrics
mae = tf.keras.metrics.mean_absolute_error(y_true, y_pred) #error here
mse = tf.keras.metrics.mean_squared_error(y_true, y_pred)
rmse = tf.sqrt(mse)
mape = tf.keras.metrics.mean_absolute_percentage_error(y_true, y_pred)
mase = mean_absolute_scaled_error(y_true, y_pred)
return {"mae": mae.numpy(),
"mse": mse.numpy(),
"rmse": rmse.numpy(),
"mape": mape.numpy(),
"mase": mase.numpy()}
我使用 stackoverflow 进行故障排除,查看文档,但没有成功。我进行设置的步骤是:
miniforge
conda install <package_name>
tensorflow-macos,tensorflow-metal,jupyter,pandas,numpy,matplotlib scikit-learn
错误描述
keras._tf_keras.keras.metrics
似乎误导了我。
如有任何帮助!
谢谢,
约旦 错误截图
令人惊讶的是,通过导入 Keras,它起作用了。 我想在tf 2.x中,Keras版本也从2升级到了3
5 月 3 日,从 TensorFlow 导入 keras 成功了:
from tensorflow import keras
。然而,12 小时后运行笔记本时出现了同样的错误。幸运的是,import keras
成功了。