次の方法で共有


削減操作

要素に対する計算の合計や平均など、入力を減らします。

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)