カテゴリー
lightgbm Python 機械学習

機械学習サンプルコード(テーブルデータ)

機械学習サンプルコードの備忘録。

# 必要なライブラリをインポートする
import lightgbm as lgb
from sklearn.model_selection import train_test_split

# 目的変数と説明変数を指定する
X = df.drop('mokuteki', axis = 1)
y = df['mokuteki']

# データを学習用とテスト用に分ける
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)
lgb_train = lgb.Dataset(X_train, y_train)
lgb_eval = lgb.Dataset(X_test, y_test, reference=lgb_train)

# パラメータを設定する
lgbm_params = {
        'objective': 'binary',    # 二値分類問題の場合
        'metric': 'auc',
        'learning_rate':0.1,
        'num_iterations':100,
        'num_leaves':31
    }

# 学習させる
gbm = lgb.train(lgbm_params,lgb_train,valid_sets=lgb_eval)

# クロスバリデーション
scores = cross_val_score(estimator = clf, X = X_train, y = y_train,cv = 5,n_jobs = 1)
print(np.mean(scores))

# 予測する
gbm_pred = gbm.predict(X_test, num_iteration=gbm.best_iteration)

# ファイル出力
y_submit = pd.DataFrame({"id": X_test["id"], "y":gbm_pred})
y_submit.to_csv("../output/results/submit.csv", index=False) 

予測精度を上げるポイントは、

パラメータチューニングデータクリーニング(データを綺麗にしたり特徴量を工夫すること)である!!

コメントを残す

WordPress.com で次のようなサイトをデザイン
始めてみよう