LightBGM 
 パラメータ 
 training 
 予測の精度 

 GPU使用 

 機能・要件 
 構成・方式
 タスク
 ライブラリ
 導入
 Sample

 MNIST_LightBGM  # mnistLightBGM.py  import time  import lightgbm as lgb  import numpy as np  from mnist import load_mnist  #from sklearn.model_selection import train_test_split  from sklearn.metrics import accuracy_score  # MNISTデータセットの事前準備  (x_train, t_train), (x_test, t_test) = load_mnist()  # 学習データと検証データに分割 (分割済の場合は不要)  #split_ratio = 0.2  #x_train, x_validation, t_train, t_validation = train_test_split(x_train, t_train, test_size=split_ratio)  # 平滑化  #x_train = x_train.reshape(-1, 784)  #x_validation = x_validation.reshape(-1, 784)  #x_test = x_test.reshape(-1, 784)  # 正規化  #x_train = x_train.astype(float) / 255  #x_validation = x_validation.astype(float) / 255  #x_test = x_test.astype(float) / 255  # データセット  lgb_train_data = lgb.Dataset(x_train, label=t_train)  #lgb_eval_data = lgb.Dataset(x_validation, label=t_validation, reference=lgb_train_data)  lgb_eval_data = lgb.Dataset(x_test, label=t_test) # (分割済)  start = time.time()  lgb_params = {   "task": "train",   "boosting_type": "gbdt",   "objective": "multiclass",   "num_class": 10,   "force_col_wise": "true",  }  # 訓練データからLightGBMモデル作成  gbm = lgb.train(   lgb_params,   lgb_train_data,   valid_sets=lgb_eval_data,   num_boost_round=100,   early_stopping_rounds=10  )  # テストデータからLightGBMモデルの精度を確認  preds = gbm.predict(x_test)  y_pred = []  for x in preds:   y_pred.append(np.argmax(x))  print("accuracy score: {}".format(accuracy_score(t_test, y_pred)))  print("elapsed time: {}".format(time.time() - start)
 training  (base) \LightGBM\mnist> python mnist_LightGBM.py  [LightGBM] [Info] Total Bins 109606  [LightGBM] [Info] Number of data points in the train set: 60000, number of used features: 629  [LightGBM] [Info] Start training from score -2.315501  [LightGBM] [Info] Start training from score -2.185988  [LightGBM] [Info] Start training from score -2.309610  [LightGBM] [Info] Start training from score -2.280987  [LightGBM] [Info] Start training from score -2.329271  [LightGBM] [Info] Start training from score -2.404064  [LightGBM] [Info] Start training from score -2.316346  [LightGBM] [Info] Start training from score -2.259366  [LightGBM] [Info] Start training from score -2.327732  [LightGBM] [Info] Start training from score -2.311121  [1] valid_0's multi_logloss: 1.68284  Training until validation scores don't improve for 10 rounds  [2] valid_0's multi_logloss: 1.38174  [3] valid_0's multi_logloss: 1.17286  [4] valid_0's multi_logloss: 1.01394  [5] valid_0's multi_logloss: 0.886547  ・・・   [96] valid_0's multi_logloss: 0.071275 [97] valid_0's multi_logloss: 0.0710723  [98] valid_0's multi_logloss: 0.0708463  [99] valid_0's multi_logloss: 0.0704296  [100] valid_0's multi_logloss: 0.0702599  Did not meet early stopping. Best iteration is:  [100] valid_0's multi_logloss: 0.0702599  accuracy score: 0.9774  elapsed time: 28.805504083633423