📘

モデル開発 - FastSGLモデルの設計

 

FastSGLとは

FastSGLは、Sparse Group Lasso(以下、SGL)を高速化したアルゴリズムです。
本モデルの基本となる Lasso アルゴリズムについては 線形モデル のマニュアルをご確認ください。
 
SGLは、特徴量にグループ構造を持つデータに対して
  • Lassoによる個々の特徴量選択
  • グループ正則化による特徴グループの選択
を同時に行う手法です。
Node-AIでは、1つのカラム(説明変数)を1つのグループとして自動で設定します。
 
例えば、説明変数がカラムA・カラムB・カラムCのデータがあり、時間窓切り出しカードにより窓幅を5に設定したとします。
このとき、カラムA~Cの窓幅5個分、つまり15個の特徴量を使用するモデルとなります(窓幅分のデータを時刻1~時刻5で表現するとします)。
通常のLassoでは、例えばカラムAの時刻3と時刻4、カラムBの時刻1と時刻3、カラムCの時刻2、のように全15個の特徴量の中から、カラムの構造を意識せずに特徴選択を行います。
 
以下の図は、Lassoの特徴選択のイメージを示しています。色が塗りつぶされている箇所が選択された特徴としています。
一方、Node-AIのFastSGLではカラムA・B・Cの中からカラムBのグループが選択され、そのカラムBの中で時刻1・3・4・5 の特徴選択を行うようにチューニングすることができます。
 
💡
FastSGLはNTTコンピュータ&データサイエンス研究所が開発した手法です。詳細はこちらの論文で公開されています。
💡
LassoおよびGroup Lassoの実例や数学的な解説は スパースモデリング(基本編)スパースモデリング(応用編)をご確認ください(外部サイトの「ごちきか」に遷移します)。

FastSGLの特徴

  • 大規模なデータに対しても比較的高速に学習することができます。
  • (Node-AIでは1カラムが1グループとして設定されるため)重要なカラムのみを特徴量として選択するように学習されます。

FastSGLが有効な場面

  • 説明変数カラムのうち、特定のカラムの値が重要であると考えられる場合
  • モデルの解釈性を上げたいとき(特徴選択されるカラムが少数となるため解釈性が向上します)

FastSGLの活用例

特徴量選択の模様を確認するには 要因分析 カードを使用します。
FastSGLの要因分析では、各特徴量の重みがヒートマップで表示されるため、特定のカラムに集中して値が強くなる傾向が確認できます。

FastSGLカードの操作方法

各種パラメータの設定

パラメータ名概要
alphaグループ化の強度を設定します。1に近いほど通常のLassoとなり、0に近いほどグループ化を強める効果があります。動作イメージとしては線形モデルの Elastic Net における L1 ratio に相当します。
rho(ロウ)特徴選択(正則化)の強度を設定します。値が大きいほど、少数の特徴量を重要視するように動作します。通常の Lasso における alpha に相当します。

設計の保存

  • “実行” ボタンを押して、設定を保存します。
  • 設定内容に矛盾が存在する場合は、エラーが表示されます。
  • 処理時間が 5 分を超えるとタイムアウトし、処理が強制終了されます。