SegmentMaxV2

clase final pública SegmentMaxV2

Calcula el máximo a lo largo de los segmentos de un tensor.

Lea [la sección sobre segmentación](https://tensorflow.org/api_docs/python/tf/math#Segmentation) para obtener una explicación de los segmentos.

Calcula un tensor tal que \\(output_i = \max_j(data_j)\\) donde `max` está sobre `j` tal que `segment_ids[j] == i`.

Si el máximo está vacío para un ID de segmento dado `i`, genera el valor más pequeño posible para el tipo numérico específico, `output[i] = numeric_limits ::menor()`.

Nota: Actualmente, esta operación solo se admite con jit_compile=True.

Precaución: en la CPU, los valores en `segment_ids` siempre se validan para ordenarse y se genera un error para los índices que no aumentan. En GPU, esto no arroja un error para índices no ordenados. En la GPU, los índices desordenados dan como resultado un comportamiento seguro pero no especificado, que puede incluir el tratamiento de los índices desordenados como si fueran un índice de seguimiento más pequeño.

La única diferencia con SegmentMax es la entrada adicional `num_segments`. Esto ayuda a evaluar la forma de salida en tiempo de compilación. `num_segments` debe ser coherente con segment_ids. por ejemplo, Max(segment_ids) debe ser igual a `num_segments` - 1 para un 1-d segment_ids Con num_segments inconsistente, la operación aún se ejecuta. la única diferencia es que la salida toma el tamaño de num_segments independientemente del tamaño de segment_ids y data. para num_segments menor que el tamaño de salida esperado, los últimos elementos se ignoran para num_segments mayor que el tamaño de salida esperado, a los últimos elementos se les asigna el valor más pequeño posible para el tipo numérico específico.

Por ejemplo:

>>> @tf.function(jit_compile=True) ... def prueba(c): ... devuelve tf.raw_ops.SegmentMaxV2(data=c, segment_ids=tf.constant([0, 0, 1]), num_segmentos=2) >>> c = tf.constante([[1,2,3,4], [4, 3, 2, 1], [5,6,7,8]]) >>> prueba( matriz c).numpy() ([[4, 3, 3, 4], [5, 6, 7, 8]], dtype=int32)

Métodos públicos

Salida <T>
como salida ()
Devuelve el identificador simbólico de un tensor.
estático <T extiende Número, U extiende Número, V extiende Número> SegmentMaxV2 <T>
crear ( Ámbito de ámbito , Operando <T> datos, Operando <U> ID de segmento, Operando <V> numSegments)
Método de fábrica para crear una clase que envuelve una nueva operación SegmentMaxV2.
Salida <T>
salida ()
Tiene la misma forma que los datos, excepto por las primeras dimensiones `segment_ids.rank`, que se reemplazan con una sola dimensión que tiene el tamaño `num_segments`.

Métodos Heredados

Métodos públicos

salida pública <T> como salida ()

Devuelve el identificador simbólico de un tensor.

Las entradas de las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.

SegmentMaxV2 público estático <T> crear (Ámbito de ámbito , Operando <T> datos, Operando <U> segmentIds, Operando <V> numSegments)

Método de fábrica para crear una clase que envuelve una nueva operación SegmentMaxV2.

Parámetros
alcance alcance actual
IDs de segmento Un tensor 1-D cuyo tamaño es igual al tamaño de la primera dimensión de `datos`. Los valores deben ordenarse y pueden repetirse. Los valores deben ser menores que `num_segments`.

Precaución: Los valores siempre se validan para ordenarse en la CPU, nunca se validan en la GPU.

Devoluciones
  • una nueva instancia de SegmentMaxV2

salida pública <T> salida ()

Tiene la misma forma que los datos, excepto por las primeras dimensiones `segment_ids.rank`, que se reemplazan con una sola dimensión que tiene el tamaño `num_segments`.