gpt4 book ai didi

python - `train=True` 在 H2O model_performance() 中的作用是什么?

转载 作者:行者123 更新时间:2023-11-30 08:56:47 26 4
gpt4 key购买 nike

起初我认为 model_performance(train=True) 给出了对我们训练模型的相同数据进行预测的性能结果。但事实并非如此,因为该数字必须与 model.model_performance(test_data=train) 相同,但事实并非如此。

考虑以下玩具示例:

# Make a dataframe
df = h2o.H2OFrame({'a':list(range(100)), 'b':list(range(100, 0, -1)), 'c':list(range(0, 200, 2))})

# Split the data
train, val, test = df.split_frame([.6, .2], seed=0)

# Build a model
from h2o.estimators.random_forest import H2ORandomForestEstimator
model = H2ORandomForestEstimator(seed=0)

# Train the model
model.train(x=train.names[:-1], y=train.names[-1], training_frame=train, validation_frame=val)

# Get performance results
print(model.model_performance(train=True)['mae']
, model.model_performance(valid=True)['mae']
, model.model_performance(test_data=test)['mae']
)
# 1.3816 1.1968 1.4722

将结果与

进行比较
print(model.model_performance(test_data=train)['mae'] 
, model.model_performance(test_data=val)['mae']
, model.model_performance(test_data=test)['mae']
)
# 0.5548 1.1968 1.4722

请注意,model_performance(train=True)model_performance(test_data=train) 的结果不同,但 model_performance(valid=True) 的结果)model_performance(test_data=val) 相同。

所以我想知道 model_performance(train=True)model.model_performance(test_data=train) 是否应该相同(并且有一个错误H2O 代码中的计算),或者 model_performance(train=True) 的目的是别的。

docs它说

train: boolean, optional
Report the training metrics for the model.
valid: boolean, optional
Report the validation metrics for the model.

但考虑到上述事实,这一点还不是很清楚。

最佳答案

train=True显示训练结束时的模型性能,这意味着它返回训练期间构建的训练指标,而 test_data = train发送train将数据传输到模型进行预测,并检查模型在该预测上的性能。

关于python - `train=True` 在 H2O model_performance() 中的作用是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56893769/

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