python - .fit() 和 .cross_validate() 之间的区别 - python
问题描述
我有四个数字列的数据框,它们是X1, X2, X3, Y
. 我把它分成 80% 的训练和 20% 的测试。整个数据框中没有nan
,现在我需要创建模型并对其进行评估(我基于这个kaggle kernel构建了这个):
from sklearn.ensemble import RandomForestRegressor
predictor_cols = ["X1","X2","X3"]
train_X = train[predictor_cols]
my_model = RandomForestRegressor()
my_model.fit(train_X, train_Y)
test_X = test[predictor_cols]
test_Y = test["Y"] # the dependent variable is numeric
pred_test_Y = my_model.predict(test_X)
acc_rf = round(my_model.score(train_X, train_Y) * 100, 2)
acc_rf
我正在苦苦挣扎,my_model.fit()
因为我找不到有关它的文档,但我知道它使用RandomForestRegressor()
. 但是,我有几个问题:
1)如何my_model.fit()
训练模型?它是否使用交叉验证来提高性能?如果它使用哪种评分方法来评估交叉验证?
1.2)如果my_model.fit()
不使用交叉验证,它是如何训练模型的?
1.3) 如果my_model.fit()
不使用交叉验证,我如何使用 RandomForestRegressor() 技术与交叉验证能够选择评分方法?
2)假设下面的行评估预测,但它没有(因为预测在变量pred_test_Y
中,我用这行代码得到了 98% 的准确度(它的准确度?)。我的意思是,什么这条线?
acc_rf = round(my_model.score(train_X, train_Y) * 100, 2)
解决方案
推荐阅读
- python - Thread While True:循环使代码无法迭代
- vue.js - Vue 测试实用程序 - 无法读取属性 '$el' - $refs
- amazon-ecs - asm 获取用户名:授权数据格式错误,字段为空
- laravel - 在 Laravel 8 中调用未定义的函数 getClientOriginalName()
- android - 在应用请求位置权限之前创建弹出警报的问题
- powershell - 从 api 将参数传递给 devops 构建管道
- angular - 在 Angular 的应用洞察中设置 cloud_RoleName
- sql-server - SSIS 执行 SQL 任务错误错误:执行 SQL 任务时出现 0xC002F210,执行 SQL 任务:执行查询“”失败
- c# - 使用解密和加密方法时,如何修复 GetNumericValue 结果的 double 到 Int 转换
- javascript - 更改 Material-ui 卡片图标颜色的问题