import lightgbm as lgb
from sklearn import datasets
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
file = datasets.load_boston()
data = file.data
target = file.target
X_train, X_test, y_train, y_test = train_test_split(data,target,test_size = 0.4,random_state = 0)
lgb_train = lgb.Dataset(X_train,y_train)
lgb_eval = lgb.Dataset(X_test,y_test,reference=lgb_train)
params = {
'task':'train',
'boosting_type':'gbdt',
'objective':'regression',
'metric':{'l2','mae'},
'num_leaves':31,
'learning_rate':0.05,
'feature_fraction':0.9,
'bagging_fraction':0.8,
'bagging_freq':5,
'verbose':0
}
gbm = lgb.train(params,lgb_train,num_boost_round=100,valid_sets=lgb_eval,early_stopping_rounds=5)
lgb_predit = gbm.predict(X_test,num_iteration=gbm.best_iteration)
print(mean_squared_error(y_test,lgb_predit) ** 0.5)
#4.362611034426013
版权声明:本文为gaoyishu91原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。