- 目标:构建随机森林、GBDT、XGBoost和LightGBM这4个模型,并对每一个模型进行评分,评分方式任意,例如准确度和auc值。
- 构建随机森林并评分
#构建随机森林
#导入工具包
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandarScaler
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import GradientBoostingClassifier
#读取。
data = pd.read_csv("data_all.csv")
x = data.drop(labels = 'status', axis = 1)
y = data['status']
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.3, random_size = 2018)
#数据标准化
scaler = StandardScaler()
scaler.fit(x_train)
x_train = scaler.transform(x_train)
x_test = scaler.transform(x_test)
#建立模型,并进行模型训练。
rfc = RandomForestClassifier()
rfc.fit(x_train,y_train)
rfc_score = rfc.score(x_test, y_test)
#打印
print(rfc_score)
- 构建GBDT并评分
#构建GBDT算法
#导入工具包
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandarScaler
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import GradientBoostingClassifier
#读取。
data = pd.read_csv("data_all.csv")
x = data.drop(labels = 'status', axis = 1)
y = data['status']
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.3, random_size = 2018)
#数据标准化
scaler = StandardScaler()
scaler.fit(x_train)
x_train = scaler.transform(x_train)
x_test = scaler.transform(x_test)
#模型训练,使用GBDT算法
gbdt = GradientBoostingRegressor()
gbdt.fit(x_train, y_train
gdbt_score = gdbt.score(x_test, y_test)
#打印
print(gdbt_score)
- 构建XDBoost并评分
#构建XGBoost模型
#导入工具包
import pandas as pd
import xgboost as xgb
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandarScaler
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import GradientBoostingClassifier
#读取
data = pd.read_csv("data_all.csv")
x = data.drop(labels = 'status', axis = 1)
y = data['status']
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.3, random_size = 2018)
#数据标准化
scaler = StandardScaler()
scaler.fit(x_train)
x_train = scaler.transform(x_train)
x_test = scaler.transform(x_test)
#XDBoost模型
xgb = xgb.XGBClassifier()
xbg.fit(x_traim, y_train)
xgb_score = xgb.score(x_test, y_test)
#打印
print(xgb_score)
4 构建lightGBM并评分
#构建lightGBM模型
#导入工具包
import pandas as pd
import lightgbm as lgb
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandarScaler
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import GradientBoostingClassifier
#读取
data = pd.read_csv("data_all.csv")
x = data.drop(labels = 'status', axis = 1)
y = data['status']
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size = 0.3, random_size = 2018)
#数据标准化
scaler = StandardScaler()
scaler.fit(x_train)
x_train = scaler.transform(x_train)
x_test = scaler.transform(x_test)
#lightGBM模型
gbm = lgb.LGBMRegressor()
gbm.fit(x_train, y_train)
gbm_score = gbm.score(x_test, y_test)
#打印
print(gbm_score)