インテル® DAAL 2018 デベロッパー・ガイド
分散処理モードの線形/リッジ回帰は、訓練段階でのみ使用できます。
この計算モードは、データセットが計算ノードの nblocks ブロックに分割されていると仮定します。
アルゴリズムのパラメーター
次の表は、分散処理モードの訓練段階での線形回帰とリッジ回帰のパラメーターの一覧です。パラメーターまたは値の一部は、線形/リッジ回帰アルゴリズム固有です。
パラメーター |
アルゴリズム |
デフォルト値 |
説明 |
|
---|---|---|---|---|
computeStep |
任意 |
適用不可 |
アルゴリズムを初期化するために必要なパラメーターです。次のいずれか。
|
|
algorithmFPType |
任意 |
float |
アルゴリズムが中間計算に使用する浮動小数点の型。float または double を指定できます。 |
|
method |
線形回帰 |
defaultDense |
線形回帰訓練に利用可能なメソッド。
|
|
リッジ回帰 |
リッジ回帰により使用されるデフォルトの計算メソッド。訓練段階でサポートしている唯一のメソッドは、正規方程式メソッドです。 |
|||
ridgeParameters |
リッジ回帰 |
1 に等しいデフォルトのリッジ・パラメーターを含むサイズ 1 x 1 の数値テーブル。 |
サイズ 1 x k (k は従属変数の数) または 1 x 1 の数値テーブル。サイズに依存するテーブルのコンテンツ。
このパラメーターは、(CSRNumericTable、PackedSymmetricMatrix、および PackedTriangularMatrix を除く) NumericTable の派生クラスのオブジェクトです。 |
|
非推奨:interceptFlag |
任意 |
true |
注これは古いパラメーター (非推奨) で、将来のリリースで削除される予定です。 |
分散処理モードの線形/リッジ回帰訓練では、以下の図のように 2 ステップの計算スキーマを使用します。
ステップ 1 - ローカルノード
このステップの線形/リッジ回帰訓練の入力は次のとおりです。入力 ID をパラメーターとして、アルゴリズムの入力を提供するメソッドに渡します。詳細は、「アルゴリズム」を参照してください。
入力 ID |
入力 |
|
---|---|---|
data |
ローカルノードの i 番目のデータブロックを表す ni x p 数値テーブルのポインター。このテーブルは、NumericTable の派生クラスのオブジェクトです。 |
|
dependentVariables |
i 番目のデータブロックに関連付けられた応答を含む ni x k 数値テーブルのポインター。このテーブルは、NumericTable の派生クラスのオブジェクトです。 |
このステップで、線形/リッジ回帰訓練は次の結果を計算します。結果 ID をパラメーターとして、アルゴリズムの結果にアクセスするメソッドに渡します。詳細は、「アルゴリズム」を参照してください。
結果 ID |
結果 |
|
---|---|---|
partialModel |
i 番目のデータブロックに対応する部分線形回帰モデルのポインター。結果は Model クラスのオブジェクトです。 |
ステップ 2 - マスターノード
このステップの線形/リッジ回帰訓練の入力は次のとおりです。入力 ID をパラメーターとして、アルゴリズムの入力を提供するメソッドに渡します。詳細は、「アルゴリズム」を参照してください。
入力 ID |
入力 |
|
---|---|---|
partialModels |
ステップ 1 で計算された部分モデルのコレクション。Model クラスのオブジェクトを含むコレクションです。 |
このステップで、線形/リッジ回帰訓練は次の結果を計算します。結果 ID をパラメーターとして、アルゴリズムの結果にアクセスするメソッドに渡します。詳細は、「アルゴリズム」を参照してください。
結果 ID |
結果 |
|
---|---|---|
model |
訓練されている線形/リッジ回帰モデルのポインター。結果は Model クラスのオブジェクトです。 |
C++:
Java*:
Python*: