上のコードのロジスティック回帰での値をLightGBMに変更したいです。
そこで下のコードを作りましたがクロスバリデーションの行い方がわかりません。
下のコードを変更してクロスバリデーションを行いtrainとtestのaucスコアを求めたいです
clf = LogisticRegression(penalty="l2", C=1.0) base_train_auc = np.mean(cross_val_score(clf, X_train, y_train, scoring="roc_auc", cv=5)) clf.fit(X_train, y_train) base_test_auc = roc_auc_score(y_test, clf.predict_proba(X_test)[:,1])
lgb_train = lgb.Dataset(X_train,y_train) lgb_eval = lgb.Dataset(X_test,y_test,reference=lgb_train) params = { # 二値分類問題 'objective': 'binary', # AUC の最大化を目指す 'metric': 'auc', } model = lgb.train(params, lgb_train, valid_sets=lgb_eval) pred = model.predict(X_test) fpr, tpr, thresholds = metrics.roc_curve(y_test, pred, pos_label=1) base_test_auc =metrics.auc(fpr, tpr) model = lgb.train(params, lgb_train, valid_sets=lgb_eval) pred = model.predict(X_train) fpr, tpr, thresholds = metrics.roc_curve(y_train, pred, pos_label=1) base_train_auc = metrics.auc(fpr, tpr)

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。