초간단 XGBoost 회귀 파이썬 치트코드

Untitled

XGBOOST 초간단 회귀분석 사용법

  • 초간단 최소한의 훈련 방법
In [22]:
import xgboost
import pandas as pd
import seaborn as sns

데이터로 변환

In [12]:
raw = pd.read_csv("data.csv")
raw.head()
Out[12]:
NAME YEAR KM PRICE FUEL AGE
0 아반떼 AD 2016-01-01 99249.0 1050.0 디젤 1253
1 아반떼 AD 2015-12-01 75806.0 1070.0 가솔린 1284
2 아반떼 AD 2016-01-01 22335.0 1080.0 가솔린 1253
3 아반떼 AD 2016-01-01 87339.0 1090.0 디젤 1253
4 아반떼 AD 2016-03-01 77861.0 1090.0 디젤 1193

독립, 종속변수 나눔

In [14]:
X = raw[['KM','AGE']]
y = raw[['PRICE']]

모델 선언

In [58]:
model = xgboost.XGBRegressor(learning_rate=0.1,
                             max_depth=5,
                             n_estimators=100) 

모델 훈련

In [18]:
model.fit(X,y)
[00:41:37] WARNING: C:/Jenkins/workspace/xgboost-win64_release_0.90/src/objective/regression_obj.cu:152: reg:linear is now deprecated in favor of reg:squarederror.
Out[18]:
XGBRegressor(base_score=0.5, booster='gbtree', colsample_bylevel=1,
       colsample_bynode=1, colsample_bytree=1, gamma=0,
       importance_type='gain', learning_rate=0.1, max_delta_step=0,
       max_depth=5, min_child_weight=1, missing=None, n_estimators=100,
       n_jobs=1, nthread=None, objective='reg:linear', random_state=0,
       reg_alpha=0, reg_lambda=1, scale_pos_weight=1, seed=42, silent=None,
       subsample=1, verbosity=1)

훈련결과 확인

In [57]:
sns.scatterplot(raw['PRICE'], model.predict(X))
Out[57]:
<matplotlib.axes._subplots.AxesSubplot at 0x223122ff978>

답글 남기기