FixedUnigramCandidateSampler

FixedUnigramCandidateSampler public final class

Genera etiquetas para el muestreo de candidatos con una distribución de unigramo aprendida.

Un muestreador de unigramo podría usar una distribución unigrama fija leída de un archivo o pasada como una matriz en memoria en lugar de construir la distribución a partir de datos sobre la marcha. También hay una opción para sesgar la distribución aplicando un poder de distorsión a los pesos.

El archivo de vocabulario debe estar en formato CSV, siendo el último campo el peso asociado con la palabra.

Para cada lote, esta operación selecciona un único conjunto de etiquetas candidatas muestreadas.

Las ventajas de muestrear candidatos por lote son la simplicidad y la posibilidad de una multiplicación de matriz densa eficiente. La desventaja es que los candidatos incluidos en la muestra deben elegirse independientemente del contexto y de las verdaderas etiquetas.

Clases anidadas

clase FixedUnigramCandidateSampler.Options Los atributos opcionales para FixedUnigramCandidateSampler

Constantes

Cuerda OP_NAME El nombre de esta operación, como lo conoce el motor central de TensorFlow

Métodos públicos

estática FixedUnigramCandidateSampler
crear ( Alcance alcance, operando < TInt64 > trueClasses, Long numTrue, Long numSampled, booleano exclusivo, Long RANGEMAX, Opciones ... Opciones)
Método de fábrica para crear una clase que envuelva una nueva operación FixedUnigramCandidateSampler.
estáticas FixedUnigramCandidateSampler.Options
distorsión (distorsión Float)
estáticas FixedUnigramCandidateSampler.Options
numReservedIds (numReservedIds de largo)
estáticas FixedUnigramCandidateSampler.Options
numShards (numShards de largo)
Salida < TInt64 >
sampledCandidates ()
Un vector de longitud num_sampled, en el que cada elemento es el ID de un candidato muestreado.
Salida < TFloat32 >
sampledExpectedCount ()
Un vector de longitud num_sampled, para cada candidato muestreado que representa el número de veces que se espera que el candidato ocurra en un lote de candidatos muestreados.
estáticas FixedUnigramCandidateSampler.Options
semilla (semilla de larga duración)
estáticas FixedUnigramCandidateSampler.Options
seed2 (Long seed2)
estáticas FixedUnigramCandidateSampler.Options
fragmento (fragmento largo)
Salida < TFloat32 >
trueExpectedCount ()
Una matriz batch_size * num_true, que representa el número de veces que se espera que ocurra cada candidato en un lote de candidatos muestreados.
estáticas FixedUnigramCandidateSampler.Options
unigrams (List <Float> unigrams)
estáticas FixedUnigramCandidateSampler.Options
vocabFile (String vocabFile)

Métodos heredados

Constantes

OP_NAME pública final static String

El nombre de esta operación, como lo conoce el motor central de TensorFlow

Valor constante: "FixedUnigramCandidateSampler"

Métodos públicos

public static FixedUnigramCandidateSampler crear ( Alcance alcance, operando < TInt64 > trueClasses, Long numTrue, Long numSampled, booleano exclusivo, Long RANGEMAX, Opciones ... Opciones)

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

Parámetros
alcance alcance actual
trueClasses Una matriz batch_size * num_true, en la que cada fila contiene los ID de num_true target_classes en la etiqueta original correspondiente.
numTrue Número de etiquetas verdaderas por contexto.
numSampled Número de candidatos para muestrear aleatoriamente.
único Si único es verdadero, tomamos muestras con rechazo, de modo que todos los candidatos muestreados en un lote sean únicos. Esto requiere cierta aproximación para estimar las probabilidades de muestreo posteriores al rechazo.
rangeMax El muestreador muestreará números enteros del intervalo [0, range_max).
opciones lleva valores de atributos opcionales
Devoluciones
  • una nueva instancia de FixedUnigramCandidateSampler

estáticas pública FixedUnigramCandidateSampler.Options distorsión (distorsión del flotador)

Parámetros
distorsión La distorsión se utiliza para sesgar la distribución de probabilidad unigrama. Cada peso se eleva primero a la potencia de la distorsión antes de agregarlo a la distribución interna de unigramo. Como resultado, la distorsión = 1.0 proporciona un muestreo de unigramo regular (según lo definido por el archivo de vocabulario) y la distorsión = 0.0 proporciona una distribución uniforme.

estáticas pública FixedUnigramCandidateSampler.Options numReservedIds (numReservedIds de largo)

Parámetros
numReservedIds Opcionalmente, los usuarios pueden agregar algunos ID reservados en el rango [0, ..., num_reserved_ids). Un caso de uso es que se utiliza un token de palabra desconocida especial como ID 0. Estos ID tendrán una probabilidad de muestreo de 0.

estáticas pública FixedUnigramCandidateSampler.Options numShards (numShards de largo)

Parámetros
numShards Se puede utilizar un muestreador para muestrear de un subconjunto del rango original con el fin de acelerar todo el cálculo a través del paralelismo. Este parámetro (junto con 'fragmento') indica el número de particiones que se utilizan en el cálculo general.

pública de salida < TInt64 > sampledCandidates ()

Un vector de longitud num_sampled, en el que cada elemento es el ID de un candidato muestreado.

pública de salida < TFloat32 > sampledExpectedCount ()

Un vector de longitud num_sampled, para cada candidato muestreado que representa el número de veces que se espera que el candidato ocurra en un lote de candidatos muestreados. Si único = verdadero, entonces esta es una probabilidad.

public static FixedUnigramCandidateSampler.Options semilla (semilla de larga duración)

Parámetros
semilla Si la semilla o semilla2 se establecen en un valor distinto de cero, el generador de números aleatorios es sembrado por la semilla dada. De lo contrario, es sembrado por una semilla aleatoria.

public static FixedUnigramCandidateSampler.Options seed2 (Long seed2)

Parámetros
semilla2 Una segunda semilla para evitar la colisión de semillas.

estáticas pública FixedUnigramCandidateSampler.Options fragmento (fragmento largo)

Parámetros
casco Se puede utilizar un muestreador para muestrear de un subconjunto del rango original con el fin de acelerar todo el cálculo a través del paralelismo. Este parámetro (junto con 'num_shards') indica el número de partición particular de una operación de muestreo, cuando se utiliza la partición.

pública de salida < TFloat32 > trueExpectedCount ()

Una matriz batch_size * num_true, que representa el número de veces que se espera que ocurra cada candidato en un lote de candidatos muestreados. Si único = verdadero, entonces esta es una probabilidad.

públicas estáticas FixedUnigramCandidateSampler.Options unigrams (List <Float> unigrams)

Parámetros
unigramos Una lista de recuentos o probabilidades de unigramo, uno por ID en orden secuencial. Se debe pasar exactamente uno de vocab_file y unigrams a esta operación.

estáticas pública FixedUnigramCandidateSampler.Options vocabFile (String vocabFile)

Parámetros
vocabFile Cada línea válida en este archivo (que debe tener un formato similar a CSV) corresponde a una ID de palabra válida. Los ID están en orden secuencial, comenzando por num_reserved_ids. Se espera que la última entrada en cada línea sea un valor correspondiente al recuento o probabilidad relativa. Exactamente uno de vocab_file y unigrams debe pasarse a esta operación.