В чем разница между использованием этих двух подходов к классификатору light gbm? - PullRequest
0 голосов
/ 06 ноября 2019

Я хочу использовать некоторые функции Light gbm правильно.

Это стандартный подход, он ничем не отличается от любого другого классификатора из sklearn:

  • определение X, y
  • train_test_split
  • создание классификатора
  • посадка на поезд
  • прогноз на тесте
  • сравнение

    X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25)  
    #here maybe DecisionTreeClassifier(), RandomForestClassifier() etc
    model = lgb.LGBMClassifier()
    model.fit(X_train, y_train)
    
    predicted_y = model.predict(X_test)
    
    print(metrics.classification_report())
    

, но у light gbm есть свои собственные функции, такие как lgb.Dataset, Booster.

Однако в этом блокноте kaggle он вообще не вызывает LightGBMClassifier! Почему?

каков стандартный порядок вызова функций lgbm и моделей поездов по принципу lgbm?

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25)

#why need this Dataset wrapper around x_train,y_train?

d_train = lgbm.Dataset(X_train, y_train)


#where is light gbm classifier()?
bst = lgbm.train(params, d_train, 50, early_stopping_rounds=100)

preds = bst.predict(y_test)

почему он тренируется сразу?

...