- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试了两种实现轻型 GBM 的方法。期望它返回相同的值,但它没有。
我以为lgb.LightGBMRegressor()
和 lgb.train(train_data, test_data)
将返回相同的精度,但它没有。所以我想知道为什么?
数据打断函数
def dataready(train, test, predictvar):
included_features = train.columns
y_test = test[predictvar].values
y_train = train[predictvar].ravel()
train = train.drop([predictvar], axis = 1)
test = test.drop([predictvar], axis = 1)
x_train = train.values
x_test = test.values
return x_train, y_train, x_test, y_test, train
这就是我分解数据的方式
x_train, y_train, x_test, y_test, train2 = dataready(train, test, 'runtime.min')
train_data = lgb.Dataset(x_train, label=y_train)
test_data = lgb.Dataset(x_test, label=y_test)
预测模型
lgb1 = LMGBRegressor()
lgb1.fit(x_train, y_train)
lgb = lgb.train(parameters,train_data,valid_sets=test_data,num_boost_round=5000,early_stopping_rounds=100)
我希望它大致相同,但事实并非如此。据我了解,一个是助推器,另一个是回归器?
最佳答案
LGBMRegressor
是 sklearn界面。 .fit(X, y)
call 是用于模型训练的标准 sklearn 语法。它是一个类对象,供您用作 sklearn 生态系统的一部分(用于运行管道、参数调整等)。lightgbm.train
是 lightgbm 本身的核心训练 API。
XGBoost 和许多其他流行的 ML 训练库有类似的区别(核心 API 使用 xgb.train(...)
,例如 sklearn API 使用 XGBClassifier
或 XGBRegressor
)。
关于python - model.LGBMRegressor.fit(x_train, y_train) 和 lightgbm.train(train_data, valid_sets = test_data) 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57046862/
我有一个包含文本列的数据框。我将它们分为 x_train 和 x_test。 我的问题是,是对整个 x 数据集还是仅对 x_train 执行 Keras 的 Tokenizer.fit_on_text
我想用Keras搭建一个CNN-LSTM网络。但是,我无法为第一层的 input_shape 参数找到正确的形状。 我的 train_data 是形状为 (1433, 32, 32) 的 ndarra
我正在尝试为我的数据创建一个 get_dummies 类,稍后我想在管道中使用它: class Dummies(BaseEstimator, TransformerMixin): def t
我尝试了两种实现轻型 GBM 的方法。期望它返回相同的值,但它没有。 我以为lgb.LightGBMRegressor()和 lgb.train(train_data, test_data)将返回相同
我是一名优秀的程序员,十分优秀!