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

訓練

アルゴリズムの入力

バッチ処理モードのニューラル・ネットワーク訓練アルゴリズムの入力は次のとおりです。入力 ID をパラメーターとして、アルゴリズムの入力を提供するメソッドに渡します。詳細は、「アルゴリズム」を参照してください。

入力 ID

入力

data

ニューラル・ネットワーク入力データを格納するサイズ n1 x n2 x ... x np のテンソルのポインター。この入力は、Tensor の派生クラスのオブジェクトです。

groundTruth

入力データに関連付けられた結果を格納するサイズ n1 のテンソルのポインター。この入力は、Tensor の派生クラスのオブジェクトです。

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

バッチ処理モードのニューラル・ネットワーク訓練アルゴリズムのパラメーターは次のとおりです。

パラメーター

デフォルト値

説明

algorithmFPType

float

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

method

defaultDense

パフォーマンス指向の計算メソッド。

batchSize

1

訓練で同時に使用するサンプルの数。

入力データテンソルの最初の次元はデータサンプルを表すため、ライブラリーは n1batchSize の値で割ってバッチの数を計算します。

各バッチを処理した後、ライブラリーはモデルのパラメーターを更新します。n1batchSize の倍数でない場合、アルゴリズムはデータテンソルの最後のデータサンプルを無視します。

optimizationProcedure

SharedPtr< optimization_solver::sgd::Batch<algorithmFPType,defaultDense> >

訓練段階で使用する最適化プロシージャー。

アルゴリズムの出力

バッチ処理モードのニューラル・ネットワーク訓練アルゴリズムは次の結果を計算します。結果 ID をパラメーターとして、アルゴリズムの結果にアクセスするメソッドに渡します。詳細は、「アルゴリズム」を参照してください。

結果 ID

結果

model

重みとバイアスの最適なセットで訓練されるモデル。結果は Model クラスのオブジェクトです。

サンプル

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

C++: ./examples/cpp/source/neural_networks/neural_network_batch.cpp

Java*: ./examples/java/source/com/intel/daal/examples/neural_networks/NeuralNetworkBatch.java

関連情報