インテル® DAAL プログラミング・ガイド

分散処理

このモードは、データセットが計算ノードの nblocks ブロックに分割されていると仮定します。

アルゴリズムのパラメーター

分散処理モードの低次モーメント・アルゴリズムのパラメーターは次のとおりです。

パラメーター

デフォルト値

説明

computeStep

適用不可

アルゴリズムを初期化するために必要なパラメーターです。次のいずれか。

  • step1Local - 第 1 ステップ、ローカルノードで実行
  • step2Master - 第 2 ステップ、マスターノードで実行

algorithmFPType

double

アルゴリズムが中間計算に使用する浮動小数点の型。float または double を指定できます。

method

defaultDense

低次モーメントの計算に利用可能なメソッド。

  • defaultDense - パフォーマンス指向の計算メソッド、デフォルト

  • singlePassDense - D.H.D. West により提案された単一パス・アルゴリズムの実装

  • sumDense - 事前計算された和によるアルゴリズムの実装

  • fastCSR - CSR 数値テーブルのパフォーマンス指向の計算メソッド

  • singlePassCSR - D.H.D. West により提案された単一パス・アルゴリズムの実装、CSR 数値テーブル用に最適化

  • sumCSR - 事前計算された和によるアルゴリズムの実装、CSR 数値テーブル用に最適化

低次モーメントの計算は、アルゴリズムで説明されている一般的なスキーマに従います。

ステップ 1 - ローカルノード

このステップの低次モーメント・アルゴリズムの入力は次のとおりです。入力 ID をパラメーターとして、アルゴリズムの入力を提供するメソッドに渡します。詳細は、「アルゴリズム」を参照してください。

入力 ID

入力

data

ローカルノードの i 番目のデータブロックを表す ni x p 数値テーブルのポインター。

defaultDensesinglePassDensesumDense メソッドの入力は NumericTable の派生クラスのオブジェクトですが、fastCSRsinglePassCSRsumCSR メソッドの入力は CSRNumericTable クラスのオブジェクトのみです。

このステップで、低次モーメント・アルゴリズムは次の結果を計算します。結果 ID をパラメーターとして、アルゴリズムの結果にアクセスするメソッドに渡します。詳細は、「アルゴリズム」を参照してください。

結果 ID

結果

nObservations

ローカルノードで処理された観測点の数を含む 1 x 1 数値テーブルのポインター。デフォルトでは、この結果は HomogenNumericTable クラスのオブジェクトですが、(CSRNumericTable を除く) NumericTable の派生クラスのオブジェクトとして定義できます。

ローカルノードで計算された部分特性。それぞれ 1 x p 数値テーブル。デフォルトでは、各テーブルは HomogenNumericTable クラスのオブジェクトですが、(PackedSymmetricMatrixPackedTriangularMatrix、および CSRNumericTable を除く) NumericTable の派生クラスのオブジェクトとして定義できます。

partialMinimum

部分最小。

partialMaximum

部分最大。

partialSum

部分和。

partialSumSquares

部分 2 乗和。

partialSumSquaresCentered

平均値との差の部分 2 乗和。

ステップ 2 - マスターノード

このステップの低次モーメント・アルゴリズムの入力は次のとおりです。入力 ID をパラメーターとして、アルゴリズムの入力を提供するメソッドに渡します。詳細は、「アルゴリズム」を参照してください。

入力 ID

入力

partialResults

ステップ 1 でローカルノードで計算された部分結果 (各ローカルノードの 6 つの数値テーブル) を含むコレクション。これらの数値テーブルは、(PackedSymmetricMatrix および PackedTriangularMatrix を除く) NumericTable の派生クラスのオブジェクトです。

このステップで、低次モーメント・アルゴリズムは次の結果を計算します。結果 ID をパラメーターとして、アルゴリズムの結果にアクセスするメソッドに渡します。詳細は、「アルゴリズム」を参照してください。

各結果は、データセットの各特徴の特性を含む 1 x p 数値テーブルのポインターです。デフォルトでは、このテーブルは HomogenNumericTable クラスのオブジェクトですが、(PackedSymmetricMatrixPackedTriangularMatrix、および CSRNumericTable を除く) NumericTable の派生クラスのオブジェクトとして定義できます。

結果 ID

特性

minimum

最小。

maximum

最大。

sum

和。

sumSquares

2 乗和。

sumSquaresCentered

平均値との差の 2 乗和。

mean

平均値の推定。

secondOrderRawMoment

2 次ローモーメントの推定。

variance

分散値の推定。

standardDeviation

標準偏差の推定。

variation

変動係数の推定。

最適化に関する注意事項

インテル® コンパイラーは、互換マイクロプロセッサー向けには、インテル製マイクロプロセッサー向けと同等レベルの最適化が行われない可能性があります。これには、インテル® ストリーミング SIMD 拡張命令 2 (インテル® SSE2)、インテル® ストリーミング SIMD 拡張命令 3 (インテル® SSE3)、ストリーミング SIMD 拡張命令 3 補足命令 (SSSE3) 命令セットに関連する最適化およびその他の最適化が含まれます。インテルでは、インテル製ではないマイクロプロセッサーに対して、最適化の提供、機能、効果を保証していません。本製品のマイクロプロセッサー固有の最適化は、インテル製マイクロプロセッサーでの使用を目的としています。インテル® マイクロアーキテクチャーに非固有の特定の最適化は、インテル製マイクロプロセッサー向けに予約されています。この注意事項の適用対象である特定の命令セットの詳細は、該当する製品のユーザー・リファレンス・ガイドを参照してください。

改訂 #20110804

サンプル

インテル® DAAL ディレクトリーの次のサンプルを参照してください。

C++:

Java*: