gpt4 book ai didi

python - 一个预测中的目标值数量

转载 作者:行者123 更新时间:2023-11-28 21:25:21 26 4
gpt4 key购买 nike

我使用 python 的 scikit-learn 模块来预测 CSV 文件中的某些值。我正在使用 Random Forest Regressor 来做这件事。例如,我有 8 个训练值和 3 个要预测的值——我必须使用哪些代码?作为要预测的值,我必须一次(A) 还是分别(B) 给出所有目标值?

变体 A:

#Readind CSV file
dataset = genfromtxt(open('Data/for training.csv','r'), delimiter=',', dtype='f8')[1:]
#Target value to predict
target = [x[8:11] for x in dataset]
#Train values to train
train = [x[0:8] for x in dataset]
#Starting traing
rf = RandomForestRegressor(n_estimators=300,compute_importances = True)
rf.fit(train, target)

变体 B:

#Readind CSV file
dataset = genfromtxt(open('Data/for training.csv','r'), delimiter=',', dtype='f8')[1:]
#Target values to predict
target1 = [x[8] for x in dataset]
target2 = [x[9] for x in dataset]
target3 = [x[10] for x in dataset]
#Train values to train
train = [x[0:8] for x in dataset]
#Starting traings
rf1 = RandomForestRegressor(n_estimators=300,compute_importances = True)
rf1.fit(train, target1)
rf2 = RandomForestRegressor(n_estimators=300,compute_importances = True)
rf2.fit(train, target2)
rf3 = RandomForestRegressor(n_estimators=300,compute_importances = True)
rf3.fit(train, target3)

哪个版本是正确的?

提前致谢!

最佳答案

两者皆有可能,但作用不同。

第一个为 y 的不同条目学习独立模型。第二个为 y 的所有条目学习一个联合模型。如果可以学习的 y 条目之间存在有意义的关系,则第二个应该更准确。

由于您在非常少的数据上进行训练并且没有进行正则化,因此我想您在第二种情况下只是过度拟合。我不完全确定回归案例中的拆分标准,但如果标签空间是三维的,则叶子要“纯”的时间比它只是一维的要长得多。因此,您将学习更复杂的模型,而您所拥有的少量数据并不能保证这些模型。

关于python - 一个预测中的目标值数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14506615/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com