投稿

5月, 2024の投稿を表示しています

二値分類問題のモデル作成例

  LightGBMモデルの予測結果を使ってROC曲線を描き、AUC(Area Under the Curve)を計算するためのPythonコードは以下の通りです。ここでは、 sklearn ライブラリを用いています。 import lightgbm as lgb import numpy as np import matplotlib.pyplot as plt from sklearn.metrics import roc_curve, roc_auc_score from sklearn.model_selection import train_test_split # データの準備(例) # X, y = データの読み込みや生成 X, y = ... # あなたのデータセットに置き換えてください # データの分割 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size= 0.2 , random_state= 42 ) # LightGBMのデータセットの作成 train_data = lgb.Dataset(X_train, label=y_train) test_data = lgb.Dataset(X_test, label=y_test, reference=train_data) # モデルの訓練 params = { 'objective' : 'binary' , 'metric' : 'binary_logloss' , 'boosting_type' : 'gbdt' , 'num_leaves' : 31 , 'learning_rate' : 0.05 , 'feature_fraction' : 0.9 } model = lgb.train(params, train_data, valid_sets=[test_data], num_boost_round= 100 , early_stopping_rounds= 10