Xgboost: рдХреНрдпрд╛ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдЖрд╡рд╢реНрдпрдХ рд╣реИ?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 17 рдЬреВрди 2015  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: dmlc/xgboost

рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рд┐рджреНрдзрд╛рдВрдд рдореЗрдВ xgboost рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ xgboost рдПрдХ рдкреЗрдбрд╝ рдЖрдзрд╛рд░рд┐рдд рдХреНрд▓рд╛рд╕рд┐рдлрд╛рдпрд░рд┐рдпрд░ рд╣реИ, рдХреНрдпрд╛ рдпрд╣ рдорд╛рди рд▓реЗрдирд╛ рдареАрдХ рд╣реИ рдХрд┐ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдирд╣реАрдВ, рдЖрдкрдХреЛ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдирд╣реАрдВ, рдЖрдкрдХреЛ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ рдкреЗрдбрд╝реЛрдВ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рд▓рдХреНрд╖реНрдп y рдХреЛ рд╕реНрдХреЗрд▓ рдХрд░рддреЗ рд╕рдордп рдХреЛрдИ рдХреБрдЫ рдкреНрд░рднрд╛рд╡ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ ' reg:gamma ' рдХреЗ рд╕рд╛рде, рд▓реЗрдХрд┐рди ' reg:linear ' (рдбрд┐рдлрд╝реЙрд▓реНрдЯ) рдХреЗ рд▓рд┐рдП рднреА (рдХреБрдЫ рд╣рдж рддрдХ)ред рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдХреНрдпрд╛ рд╣реИ?

рдмреЛрд╕реНрдЯрди рд╣рд╛рдЙрд╕рд┐рдВрдЧ рдбреЗрдЯрд╛рд╕реЗрдЯ рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг:

import numpy as np
import xgboost as xgb
from sklearn.metrics import mean_squared_error
from sklearn.datasets import load_boston

boston = load_boston()
y = boston['target']
X = boston['data']

for scale in np.logspace(-6, 6, 7):
    xgb_model = xgb.XGBRegressor().fit(X, y / scale)
    predictions = xgb_model.predict(X) * scale
    print('{} (scale={})'.format(mean_squared_error(y, predictions), scale))

реи.рейрекрейреиренрейрекрекрелрекрепрежреорейрейрел (рдкреИрдорд╛рдирд╛=резрдИ-режрем)
2.343273977065266 (рдкреИрдорд╛рдирд╛=0.0001)
реи.рейрекрейреиренрепрейреоренрекрекрелрелрейрезрел (рдкреИрдорд╛рдирд╛=0.01)
реи.реирепрежрелрепрелреирежрекрезрейремреореорео (рдкреИрдорд╛рдирд╛=1.0)
реи.релреиреорелрезрейрейрепрейрелрежренренрезреп (рдкреИрдорд╛рдирд╛=резрежреж.реж)
рен.реиреиреорепренреорейрелрейрежрепрезрекренрей (рдкреИрдорд╛рдирд╛=резрежрежрежреж.реж)
реиренреи.реирепремрекрежренрелрепреоренрекрекренрек (рдкреИрдорд╛рдирд╛=резрежрежрежрежреж.реж)

' reg:gamma ' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп y рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХрд╛ рдкреНрд░рднрд╛рд╡ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрдбрд╝рд╛ рд╣реЛрддрд╛ рд╣реИ:

for scale in np.logspace(-6, 6, 7):
    xgb_model = xgb.XGBRegressor(objective='reg:gamma').fit(X, y / scale)
    predictions = xgb_model.predict(X) * scale
    print('{} (scale={})'.format(mean_squared_error(y, predictions), scale))

591.6509503519147 (рдкреИрдорд╛рдирд╛ = 1e-06)
релрекрел.реореирепреорепренрезрелрекрежрежреирей (рдкреИрдорд╛рдирд╛=0.0001)
37.68688286293508 (рдкреИрдорд╛рдирд╛=0.01)
4.039819858716935 (рд╕реНрдХреЗрд▓=1.0)
реи.релрежрелрекренренреиремрейрелрепрежренренрем (рдкреИрдорд╛рдирд╛=резрежреж.реж)
резрепрео.репрекрежрепрейреорежрежрезрепрежрекрелрей (рдкреИрдорд╛рдирд╛=резрежрежрежреж.реж)
релрепреи.резрекремрепрезремрепрепрелрепрежрей (рдкреИрдорд╛рдирд╛=резрежрежрежрежреж.реж)

@tqchen рдмреВрд╕реНрдЯреЗрдб рдЯреНрд░реАрдЬрд╝ рдХреЗ рдЖрдкрдХреЗ рдорд╣рд╛рди рдкрд░рд┐рдЪрдп рдХреЛ рдкрдврд╝рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЧрдгрд┐рддреАрдп рд╢рдмреНрджреЛрдВ рдореЗрдВ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреНрдпреЛрдВ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

ivannz picture ivannz  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

nnorton24 picture nnorton24  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

pplonski picture pplonski  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

RanaivosonHerimanitra picture RanaivosonHerimanitra  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

yananchen1989 picture yananchen1989  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ