削減操作
要素に対する計算の合計や平均など、入力を減らします。
ReduceSum (x, axis=None)
ReduceLogSum (x, axis=None)
ReduceMean (x, axis=None)
ReduceMax (x, axis=None)
ReduceMin (x, axis=None)
パラメーター
x
: 削減するデータaxis
(既定値:None
): 指定した場合は、この軸のみに沿って縮小を実行します。 この値は 1 から始まります。つまり、1 はx
.
戻り値
値が小さくなります。 (既定値) の場合 axis=1
、これはスカラーです。 軸を指定すると、その軸は次元 1 に縮小されます。
説明
これらの関数は、入力ベクトルまたはテンソルのすべての値の集計 (合計、平均など) を計算します。 使用可能な集計は次のとおりです。
ReduceSum()
: 要素の合計ReduceLogSum()
: ログ表現の要素の合計 (logC = log (exp (logA) + exp (logB))
)ReduceMean()
: 要素に対する平均ReduceMax()
: 要素の最大値ReduceMin()
: 最小値
既定では、集計はすべての要素に対して行われます。
ランク>1 のテンソルの場合、省略可能な axis
パラメーターは、縮小が実行される 1 つの軸を指定します。
たとえば、 axis=2
-次元マトリックスに [M x N]
適用すると、すべての列が集計され、結果が生成 [M x 1]
されます。
シーケンスの削減
入力がシーケンスの場合、削減はシーケンス項目ごとに個別に実行されます。
これらの操作では、シーケンスに対する削減はサポートされていません。
代わりに、繰り返しでこれを実現できます。
たとえば、シーケンス x
のすべての要素を合計すると、次のようになります。
sum = x + PastValue (0, sum, defaultHiddenActivation=0)
最大プーリングの場合は、⯖〘〘
max = Max(x, PastValue (0, max, defaultHiddenActivation=0))
例
要素の平均を減算して値を正規化します ( レイヤー正規化の一部など)。
mean = ReduceMean (x)
xNorm = x - mean
または、 softmax 条件を使用したクロス エントロピ は、次を使用して ReduceLogSum()
手動で定義できます。
myCrossEntropyWithSoftmax (y/*label*/, z/*logit*/) = ReduceLogSum (z) - ReduceSum (y .* z)