< 目次

インテル® DAAL 2017 デベロッパー・ガイド

分散処理

このモードは、データセットが計算ノードの 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 で計算された部分結果を含む数値テーブルのコレクション (各ローカルノードから 16 の数値テーブル)。これらの数値テーブルは、(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

変動係数の推定。

サンプル

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

C++:

Java*:

Python*:

最適化に関する注意事項

インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロセッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。

注意事項の改訂 #20110804

関連情報