インテル® DAAL 2018 デベロッパー・ガイド
適応劣勾配 (AdaGrad) 法は、反復ソルバーの特殊なケースです。反復ソルバーのパラメーター、入力、出力は、「反復ソルバー」 > 「計算」を参照してください。
反復ソルバーの入力に加えて、AdaGrad 法では次のオプション入力を使用できます。
オプションデータ ID |
入力 |
|
---|---|---|
gradientSquareSum |
Gt の値を含むサイズ p x 1 の数値テーブル。値はそれぞれ、対応する勾配の座標値の累計された平方和です。 |
反復ソルバーのパラメーターに加えて、AdaGrad 法には次のパラメーターがあります。
パラメーター |
デフォルト値 |
説明 |
|
---|---|---|---|
algorithmFPType |
float |
アルゴリズムが中間計算に使用する浮動小数点の型。float または double を指定できます。 |
|
method |
defaultDense |
デフォルトのパフォーマンス指向の計算メソッド。 |
|
batchIndices |
NULL |
目的関数の項の 32 ビット整数インデックスを表す defaultDense メソッドのサイズ nIterations x batchSize の数値テーブル。インデックスが提供されない場合、アルゴリズムはランダム・インデックスを生成します。 |
|
batchSize |
128 |
確率的勾配を計算するバッチ・インデックスの数。batchSize が目的関数の項の数と等しい場合、ランダム・サンプリングは実行されず、すべての項が勾配の計算に使用されます。 batchIndices パラメーターが提供された場合、アルゴリズムはこのパラメーターを無視します。 |
|
learningRate |
1 に等しいデフォルトのステップ長を含むサイズ 1 x 0.01 の数値テーブル。 |
学習率 η の値を含むサイズ 1 x 1 の数値テーブル。 このパラメーターは、(CSRNumericTable、PackedSymmetricMatrix、および PackedTriangularMatrix を除く) NumericTable の派生クラスのオブジェクトです。 |
|
degenerateCasesThreshold |
1e-08 |
平方根を計算するときに変換を中止するために必要な値 ε。 |
|
seed |
777 |
目的関数の項の 32 ビット整数インデックスの乱数生成用のシード。 |
反復ソルバーの出力に加えて、AdaGrad 法は次のオプション結果を計算します。
オプションデータ ID |
出力 |
|
---|---|---|
gradientSquareSum |
Gt の値を含むサイズ p x 1 の数値テーブル。値はそれぞれ、対応する勾配の座標値の累計された平方和です。 |
C++:
Java*:
Python*: