代码之家  ›  专栏  ›  技术社区  ›  Chris

.fit()和.cross_validate()之间的差异-python

  •  0
  • Chris  · 技术社区  · 5 年前

    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() 培训是模特吗?它是否使用交叉验证来提高性能?如果有,使用哪种评分方法来评估交叉验证?

    my_model.fit() 不使用交叉验证,它是如何训练模型的?

    1.3)如果 my_model.fit()

    2) 假设下面的行对预测进行评估,但它没有(因为预测在变量中) pred_test_Y

    acc_rf = round(my_model.score(train_X, train_Y) * 100, 2)
    
    0 回复  |  直到 5 年前