Skip to content

オートML

データ内の目的変数列や説明変数列を指定して、機械学習モデルを構築できます。
オート ML は機械学習におけるデータ前処理、学習アルゴリズムの選択、パラメータチューニングを自動で行います。
また、構築したモデルが何を重視したかなどの解釈を行うための情報も提供します。


入出力定義

定義内容補足
入力データ
左出力機械学習モデル
中出力データモデルの精度指標を出力
右出力データ説明変数の重要度などの指標を出力
ボニートくん精度検証結果
ボニートくん機械が重視したデータ
ボニートくん学習プロセス
ボニートくん精度改善の余地
ボニートくんモデル詳細情報

サンプル


処理内容補足

実施する前処理

精度が最大になるように、自動的に処理を選択します。

  • 欠損値処理(欠損値があれば)
  • 数値列の変換(Boxcox 変換など)
  • 文字列の変換(One-hot encoding など)
  • 数値の外れ値処理
  • 特徴量生成(列同士の四則演算による新規列生成)
  • 特徴量選択

学習に用いるアルゴリズム

精度が最大になるように、自動的に処理を選択します。

  • ランダムフォレスト
  • XGBoost
  • LightGBM
  • CatBoost
  • SVM
  • 上記の 2 つ以上をブレンディングしたアンサンブルモデル(速度重視モードを除く)

探索ロジック

全ての組み合わせについてモデルを構築するのではなく、ベイズ最適化を使用して最適な組み合わせを探索します。
このため、実行時間を大幅に短縮しつつ高い精度を期待できます。
探索回数の上限は処理モードで制御できます。


処理設定補足

処理モード

処理モードの選択により、精度の追求と実行時間のバランスを調整できます。
下記にパラメータと値の一覧を示します。

速度重視

実行時間を優先するモードです。
精度重視モードよりも精度が劣る場合があります。

  • 学習に使うデータの行数比率: 30%
  • 特徴量選択の上限探索回数: 3
  • 学習アルゴリズムの上限探索回数: 3
  • アンサンブルモデルを構築: する

精度重視

時間をかけても精度を向上させたい場合に適したモードです。ただし、探索回数が増えるため、過学習のリスクが高まることがあります。

  • 学習に使うデータの行数比率: 70%
  • 特徴量選択の上限探索回数: 10
  • 学習アルゴリズムの上限探索回数: 10
  • アンサンブルモデルを構築: しない

カスタム

各パラメータを自由に設定できるモードです。

最大化する指標(オプション)

カテゴリ分類の場合、以下から最大化する精度を選択できます。

  • 正解率[Accuracy]
  • F 値[F1]
  • 再現率[Recall]
  • 適合率[Precision]

数値予測の場合は、以下から選択できます。

  • 平均絶対相対誤差[MAPE]
  • 平均絶対誤差[MAE]
  • 二乗平均平方根誤差[RMSE]

出力内容補足

モデルの精度指標

モデルの精度を簡単に確認できるように、以下の情報をノードの真ん中のポートから出力します。

  • 採用モデル: 構築モデルに採用された学習アルゴリズムを表示
  • 精度指標値: 処理設定最大化する指標にて選択した指標の値を表示
  • 精度評価: 精度指標値に基準にした評価を表示
  • 過学習リスク(10 段階): 構築モデルが過学習している可能性を 10 段階で表示

モデル補足情報

モデルの構築に使用された各説明変数の重要度を示します。
数値が大きいほど、機械が重視した説明変数であることを意味します。
ノードの右ポートから出力します。


パフォーマンス補足

実行時間の参考情報を以下に示します。(レギュラープラン相当の環境での検証)

処理モード=速度重視

予測モード説明変数の数行数実行時間
カテゴリ分類8約 2,000 行30 秒
数値予測10約 5,000 行50 秒
カテゴリ分類20約 41,000 行5 分 30 秒
カテゴリ分類30約 120,000 行5 分 10 秒
数値予測25約 840,000 行31 分 40 秒

処理モード=精度重視

予測モード説明変数の数行数実行時間
カテゴリ分類8約 2,000 行6 分 50 秒
数値予測10約 5,000 行6 分 30 秒
カテゴリ分類20約 41,000 行8 分 30 秒
カテゴリ分類30約 120,000 行33 分 40 秒
数値予測25約 840,000 行メモリエラー