エラスティック ネット ロジスティック - MADlib
TIBCO Data Science - Team Studio エラスティック ネット ロジスティック回帰アルゴリズムの MADlib 実装をサポートします。
情報一覧
|
パラメーター |
説明 |
|---|---|
| カテゴリー | モデル |
| データ ソース タイプ | DB |
| 出力を他のオペレーターに送信 | はい |
| データ処理ツール | MADlib |
アルゴリズム
このモジュールは、ロジスティック回帰問題に対するエラスティック ネット正則化を実装します。エラスティック ネット正則化では、特定のトレーニング サンプル セットに対して、Lasso 回帰手法とリッジ回帰手法の L1 ペナルティと L2 ペナルティを組み合わせた計量関数を最小化する重みベクトルを見つけようとします。
一般原則などの詳細については、公式 MADlib ドキュメントを参照してください。
入力
モデリング用の従属変数と独立変数を含むデータベース データセット。データセットには、少なくとも 1 つのブール カラムと少なくとも 1 つの数値型列が必要です。
構成
| パラメーター | 説明 |
|---|---|
| ノート | このオペレーターのパラメーター設定に関するメモまたは役立つ情報。 [ノート] フィールドに内容を入力すると、オペレーターに黄色のアスタリスクが表示されます。 |
| MADLib スキーマ名 | MADlib がデータベースにインストールされるスキーマ。MADlib は、入力データセットと同じデータベースにインストールする必要があります。 「madlib」スキーマがデータベースに存在する場合、このパラメーターはデフォルトで madlib になります。 |
| モデル出力スキーマ名 | モデル出力スキーマの名前。 |
| モデル出力テーブル名 | 回帰モデルを保存するために作成されるテーブルの名前。 モデル出力テーブルには以下が格納されます。 family | features | features_selected | coef_nonzero | coef_all | intercept | log_likelihood | standardize | iteration_run詳細については、「公式の MADlib エラスティック ネット正規化ドキュメント」を参照してください。 |
| 存在する場合は削除 |
|
| 従属変数 | モデル化または予測する量。これはブール カラムである必要があります。エラスティック ネットLogistic オペレーターで使用可能なデータ カラムのリストが表示されます。回帰の従属変数とみなされるデータ カラムを選択します。 |
| 独立変数 | 回帰分析またはモデルのトレーニングに含めるデータ カラムを選択します。少なくとも 1 つのカラムまたは 1 つのインタラクションを指定する必要があります。 [カラムの選択] をクリックすると、分析に使用できる入力データセットからカラムを選択するためのダイアログが開きます。 参照: 「カラムの選択ダイアログ」 |
| 制御パラメーター | エラスティック ネット制御パラメーター (alpha) は [0,1]の値である必要があります。 |
| 正則化パラメーター | 正則化パラメーター (ラムダ) は正の値である必要があります。 |
| 標準化 | データを正規化するオプションを指定するブール値のフラグ。デフォルト値は [true] で、多くの場合、より良い結果が得られ、収束が速くなります。 |
| オプティマイザー | fista (高速反復収縮しきい値アルゴリズム) または igd (増分勾配降下法) を使用できます。必要な進行中のオプティマイザー構成パラメーターは、選択したオプティマイザーによって異なります。 詳細については、公式の MADlib エラスティック ネット正規化ドキュメントを参照してください。 |
| FISTA 最大ステップサイズ | 最初のバックトラッキング ステップ サイズ。各反復で、アルゴリズムは最初に stepsize = max_stepsize を試行し、それが機能しない場合は、より小さいステップ サイズ stepsize = stepsize/eta を試行します。ここで、eta は次のとおりです。一見すると、これは 1 ステップでも繰り返し反復を実行しているように見えますが、より大きなステップ サイズを使用すると、実際には計算速度が大幅に向上し、反復の総数が最小限に抑えられます。 max_stepsize を慎重に選択すると、計算時間を 10 分の 1 以上短縮できます。デフォルト値: 4.0 |
| FISTA Eta | stepsize が機能しない場合は、stepsize /eta が試行されます。この値は 1 より大きくなければなりません。デフォルト値: 2.0 |
| ウォームアップ |
|
| ラムダのウォームアップ | ウォームアップが [true] の場合に使用するラムダ値シリーズ。デフォルトは Null で、ラムダ値が自動的に生成されることを意味します。 |
| ウォームアップ ラムダの数 | ウォームアップで使用されるラムダの数。 warmup_lambdas が Null でない場合、この値は指定されたラムダ値の数でオーバーライドされます。デフォルト値: 15 |
| ウォームアップ許容値 | ウォームアップ中に使用される許容値の値。デフォルト値: 1e-6 |
| FISTA はアクティブなメソッドを使用 |
|
| FISTA アクティブ耐性 | アクティブ セットの計算中に使用される許容値の値。デフォルト値: 1e-6 |
| FISTA ランダム ステップ サイズ | ステップ サイズにランダム性を追加するかどうかを指定します。場合によっては、これにより計算が高速化されることがあります。デフォルト値: 1e-6 |
| IGD ステップ サイズ | 最初のバックトラッキング ステップ サイズ。デフォルト値: 0.01 |
| IGD ゼロ係数しきい値 | 係数が非常に小さい場合は、この係数を 0 に設定します。SGD の確率的性質により、フィッティング係数として非常に小さな値しか取得できません。したがって、小さな値を選別してゼロにハード設定するには、計算の最後にしきい値が必要です。これは次のようにして実現されます。
デフォルト値: 1e-10 |
| IGD 並列化 | 複数のセグメントに対して計算を実行するかどうかを指定します。SGD は本質的に逐次アルゴリズムです。分散方式で実行する場合、データの各セグメントは独自の SGD モデルを実行し、その後、モデルが平均されて各反復のモデルが取得されます。この平均化により収束速度が遅くなる可能性がありますが、複数のマシンで大規模なデータセットを処理する能力も得られます。したがって、このアルゴリズムには、並列計算を実行するかどうかを選択できる並列オプションが用意されています。 デフォルト値: true |
| 最大反復数 | 連続する 2 つの反復の係数の差が収束許容値より小さい場合、または反復数が 最大反復数より大きい場合、計算は停止します。 デフォルト値: 10000 |
| 収束許容値 | 連続する 2 つの反復の係数の差が 収束許容値 より小さい場合、または反復数が最大反復数より大きい場合、計算は停止します。 デフォルト値: 1e-6 |
出力
出力は、サマリー タブに表示され、選択した特徴、ゼロ以外の係数、すべての係数、対数尤度、終了までに実行された反復数が表示されます。追加の評価は、ROC、LIFT、ロジスティック回帰予測オペレーターの結果を使用して行われることがよくあります。
詳細については、「エラスティック ネット正則化に関する公式 MADlib ドキュメント」を参照してください。