概要
機械学習モデルのパラメーターチューニングにベイズ最適化を使用した例
機械学習は、既存の情報から未知の値を予測する手段であるという点で、幅広い範囲において需要があります。
また、機械学習モデルを作成し使用するためには、機械学習アルゴリズムのパラメーターが重要となっています。
しかし、機械学習には難解なパラメーターも存在するために、機械学習はブラックボックスとなる場合も少なくありません。そこで、ブラックボックス関数において有効な最適化手法の一つである ベイズ最適化 をPipeline Pilotのプロトコルに組み込むことで、学習モデルの改善を目指します。
つまり、本事例ではPipeline Pilotにベイズ最適化を組み込むことで、学習モデルの予測精度向上を図っております。
また、機械学習モデルを作成し使用するためには、機械学習アルゴリズムのパラメーターが重要となっています。
しかし、機械学習には難解なパラメーターも存在するために、機械学習はブラックボックスとなる場合も少なくありません。そこで、ブラックボックス関数において有効な最適化手法の一つである ベイズ最適化 をPipeline Pilotのプロトコルに組み込むことで、学習モデルの改善を目指します。
つまり、本事例ではPipeline Pilotにベイズ最適化を組み込むことで、学習モデルの予測精度向上を図っております。
ここで重要なのは、モデル本体だけではなく、パラメーター探索の流れまで含めてワークフロー化できる点です。探索範囲、評価指標、試行回数、結果の保存方法をプロトコルとして残すことで、担当者が変わっても同じ条件で再検証できる状態を作れます。
keyword
- 機械学習:さまざまなデータから規則性を学習し、結果を予測することができる手法です。
- ブラックボックス関数:変数の複雑さから目的変数に関する情報が手に入らず、ブラックボックス化してしまっている関数。
- ベイズ最適化:有力なブラックボックス関数最適化手法の一つであり、機械学習などの計算から実験まで幅広く使用されます。
Reference
- Y. Jin. et al. Journal of Materials Chemistry C 14, 4885(2020).
手法
フローチャートとプロトコル
機械学習モデルは、SVMモデルをR言語へアクセスすることで使用しました。
また、ベイズ最適化の最適化対象にRMSE(平均平方二乗誤差)を取り、そして最小化することを目的としました。
RMSEが最小になるモデルを作成することで、モデル精度の向上を図ることが出来ます。
また、ベイズ最適化の最適化対象にRMSE(平均平方二乗誤差)を取り、そして最小化することを目的としました。
RMSEが最小になるモデルを作成することで、モデル精度の向上を図ることが出来ます。
本ワークフローでは、候補パラメーターの生成、SVM 学習、予測結果の評価、次試行条件の更新までを繰り返し処理しています。単に最終結果だけを見るのではなく、各反復で RMSE がどのように変化したかを追跡できるため、探索が収束しているか、まだ改善余地があるかを判断しやすくなります。
また、R 言語へアクセスする処理を Pipeline Pilot 側に組み込むことで、既存ライブラリを活かしつつ、周辺の前処理・後処理・可視化・レポート化までを同一基盤上でつなげられます。複数の実装言語をまたぐケースでも、実験フロー全体を一つのプロトコルとして扱える点が実務上の利点です。
keyword
- SVM:強力な機械学習アルゴリズムの一つであり、分類と回帰のどちらも扱うことが出来ます。
- R言語:オープンソース・フリーソフトウェアの統計解析向けプログラミング言語の一つです。
- RMSE:回帰モデルの評価をする指標で、観測値と予測値が近づくほどこの値は小さくなります。
結果
SVMモデルのパラメーター改善についての考察
SVMモデル構築へ適用するパラメーターをベイズ最適化によって改善させた場合の、モデル精度の変化を上に示しました。モデル精度は、SVMモデルによる予測値と正解値を比較するプロット、予測値と正解値の誤差のプロットの2種類のプロットから見て取ることが出来ます。
また、ベイズ最適化を通してパラメーター改善を行ったサイクル回数は10回であり、左上画像には初期状態のモデル精度とパラメーター改善後のモデル精度を示しております。加えて、各サイクル回数におけるそれぞれのプロットは右上に示させていただきました。
このプロットから、ベイズ最適化は機械学習に用いるパラメーターの様な、判断基準が難しくブラックボックスに近いパラメーターの最適化に対して有効であると言うことが出来ます。
特に、総当たり探索のように組み合わせ数が急増する設定では、改善見込みの高い条件を優先的に評価できる点が有効です。試行回数を抑えながら一定の改善を狙えるため、計算資源や評価時間に制約がある場面でも導入しやすいアプローチです。
本事例は、機械学習モデルの性能改善そのものに加えて、最適化アルゴリズムを含む評価ループを Pipeline Pilot 上へ組み込めることを示しています。今後は別アルゴリズムや別評価指標へ拡張する際も、同じ枠組みを再利用しやすい構成です。
お問い合わせはこちらから
まずはお気軽にご相談ください。
045-682-7070
