我现在使用 sklearn.ensemble 中的 RandomForestRegressor 来分析数据集,并选择“mse”作为衡量分割质量的函数。但我不太清楚 mse 是如何计算的。谁能在这里向我解释一下(用方程式更好)或提供一些参考资料?先感谢您。
问问题
705 次
1 回答
2
如果我想尽快回答这个作为成本函数方法之一的指标,如果您认为您的模型遵循下图中的绿线,并且这些蓝点是您的数据 MSE,顾名思义是所有平方面积总和的平均值关于线的数据点,总而言之,代表您的模型错误。
MSE 可以通过以下方式计算:
它显示了我们的 medel 的好坏。MSE越小,模型越好!
更多信息:
2019 年 5 月 30 日更新:为了验证事情,您可以根据其文档.RandomForestRegressor深入研究文档,有时也可以深入研究代码,即使您检查用于测量的源代码,MSE 也不过是作为特征选择标准的方差减少一个分裂的质量。另一方面,如果您对 MSE 方法持怀疑态度,.RandomForestRegressor
您可以通过criterion
这样的自定义来独立使用:
from sklearn.metrics import mean_squared_error
from sklearn.ensemble import RandomForestRegressor
#Feature Selection
criterion = mean_squared_error(y, predictions)
RandomForestRegressor( ...,criterion= criterion,...)
或使用 numpy:
import numpy as np
criterion = np.mean((y_test - est.predict(X_test))**2)
于 2019-05-29T23:19:05.133 回答