Teilen über


Reduzierungsvorgänge

Reduzieren Sie eine Eingabe, z. B. berechnen Sie Summe oder Mittelwert über Elemente.

ReduceSum (x, axis=None)
ReduceLogSum (x, axis=None)
ReduceMean (x, axis=None)
ReduceMax (x, axis=None)
ReduceMin (x, axis=None)

Parameter

  • x: Daten, die reduziert werden sollen
  • axis (Standard: None): wenn angegeben, führen Sie nur die Reduktion auf dieser Achse aus. Dieser Wert basiert auf 1; d.h. 1 steht für die erste statische Achse von x.

Rückgabewert

Reduzierter Wert. Für axis=1 (Standard) ist dies ein Skalar. Wenn eine Achse angegeben wird, wird diese Achse reduziert, um Dimension 1 zu haben.

BESCHREIBUNG

Diese Funktionen berechnen Aggregate (Summe, Mittelwert usw.) über alle Werte eines Eingabevektors oder Tensors. Verfügbare Aggregationen sind:

  • ReduceSum(): Die Summe über die Elemente
  • ReduceLogSum(): die Summe über Elemente in Protokolldarstellungen (logC = log (exp (logA) + exp (logB)))
  • ReduceMean(): das Mittel über die Elemente
  • ReduceMax(): der maximale Wert der Elemente
  • ReduceMin(): der Mindestwert

Standardmäßig erfolgt die Aggregation über alle Elemente. Bei einem Tensor mit Rang>1 gibt der optionale axis Parameter eine einzelne Achse an, über die die Reduktion ausgeführt wird. axis=2[M x N]Beispielsweise würde eine -dimensionale Matrix über alle Spalten aggregiert, wodurch ein [M x 1] Ergebnis erzielt wird.

Reduzieren von Übersequenzen

Wenn die Eingabe eine Sequenz ist, wird die Reduzierung für jedes Sequenzelement separat ausgeführt. Diese Vorgänge unterstützen keine Reduzierung über Sequenzen. Stattdessen können Sie dies mit einer Wiederholung erreichen. Wenn Sie beispielsweise alle Elemente einer Sequenz xzusammenfassen möchten, können Sie sagen:

sum = x + PastValue (0, sum, defaultHiddenActivation=0)

und für max. Pooling können Sie verwenden

max = Max(x, PastValue (0, max, defaultHiddenActivation=0))

Beispiele

Normalisieren Eines Werts durch Subtrahieren des Mittelwerts seiner Elemente (z. B. als Teil der Layer normalisierung):

mean = ReduceMean (x)
xNorm = x - mean

Oder die Kreuz-Entropie mit softmax-Kriterium kann manuell mithilfe ReduceLogSum()von :

myCrossEntropyWithSoftmax (y/*label*/, z/*logit*/) = ReduceLogSum (z) - ReduceSum (y .* z)