Compartir a través de


Operaciones de reducción

Reduzca una entrada, por ejemplo, la suma de proceso o la media en los elementos.

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

Parámetros

  • x: datos que se van a reducir
  • axis (valor predeterminado: None): si se especifica, realice la reducción solo a lo largo de este eje. Este valor está basado en 1; Es decir, 1 representa el primer eje estático de x.

Valor devuelto

Valor reducido. Para axis=1 (valor predeterminado), se trata de un valor escalar. Si se especifica un eje, ese eje se reduce para tener la dimensión 1.

Descripción

Estas funciones calculan agregados (suma, media, etc.) en todos los valores de un vector de entrada o tensor. Las agregaciones disponibles son:

  • ReduceSum(): suma sobre los elementos.
  • ReduceLogSum(): suma sobre los elementos de las representaciones de registro (logC = log (exp (logA) + exp (logB)))
  • ReduceMean(): media sobre los elementos.
  • ReduceMax(): el valor máximo de los elementos.
  • ReduceMin(): el valor mínimo.

De forma predeterminada, la agregación se realiza en todos los elementos. En el caso de un tensor con rango>1, el parámetro opcional axis especifica un único eje sobre el que se realiza la reducción. Por ejemplo, axis=2 aplicado a una [M x N]matriz dimensional se agregaría en todas las columnas, lo que produciría un [M x 1] resultado.

Reducción de las secuencias

Si la entrada es una secuencia, la reducción se realiza por separado para cada elemento de secuencia. Estas operaciones no admiten la reducción en las secuencias. En su lugar, puede lograrlo con una periodicidad. Por ejemplo, para resumir todos los elementos de una secuencia x, puede decir:

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

y para la agrupación máxima, puede usar

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

Ejemplos

Normalice un valor restando la media de sus elementos (por ejemplo, como parte de la normalización de capas):

mean = ReduceMean (x)
xNorm = x - mean

O bien, la entropía cruzada con criterio softmax se puede definir manualmente mediante ReduceLogSum():

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