【发布时间】:2022-08-23 17:51:03
【问题描述】:
我正在解决一个回归问题,并且我已经预留了一个 cv 数据集,用于评估我的模型。
我可以轻松地评估我的 NN 网络,因为 TensorFlow evaluate() 方法为我提供了所有平方误差的总和。 但是,xgb 为我提供了一个函数 - score(),它返回给我一个数字- 0.7
首先,我应该如何解释这个数字? 其次,我怎样才能让 xgb 返回我可以解释的模型的度量?
标签: xgboost
我正在解决一个回归问题,并且我已经预留了一个 cv 数据集,用于评估我的模型。
我可以轻松地评估我的 NN 网络,因为 TensorFlow evaluate() 方法为我提供了所有平方误差的总和。 但是,xgb 为我提供了一个函数 - score(),它返回给我一个数字- 0.7
首先,我应该如何解释这个数字? 其次,我怎样才能让 xgb 返回我可以解释的模型的度量?
标签: xgboost
首先,我应该如何解释这个数字?
来自官方doc,这个数字代表决定系数。它是自变量 (x) 解释的因变量 (y) 的方差比例。因此,它越接近 1,您的回归线越适合数据,您的模型就越好。
其次,我怎样才能让 xgb 返回我可以解释的模型的度量?
您可以使用模型中的预测方法,然后计算您想要的任何度量。例如,如果你想像 Tensorflow 那样求平方误差之和:
import xgboost as xgb model = xgb.XGBRegressor() model.fit(x_train, y_train) predictions = model.predict(x_test) ssr = ((predictions - y_test)**2).sum()
【讨论】: