FixedUnigramCandidateSampler

classe final pública FixedUnigramCandidateSampler

Gera rótulos para amostragem de candidatos com uma distribuição de unigramas aprendida.

Um amostrador de unigrama poderia usar uma distribuição fixa de unigrama lida de um arquivo ou passada como uma matriz na memória, em vez de construir a distribuição a partir de dados em tempo real. Também existe a opção de distorcer a distribuição aplicando um poder de distorção aos pesos.

O arquivo de vocabulário deve estar em formato CSV, sendo o último campo o peso associado à palavra.

Para cada lote, esta operação escolhe um único conjunto de rótulos candidatos amostrados.

As vantagens da amostragem de candidatos por lote são a simplicidade e a possibilidade de multiplicação eficiente de matrizes densas. A desvantagem é que os candidatos amostrados devem ser escolhidos independentemente do contexto e dos verdadeiros rótulos.

Classes aninhadas

aula FixoUnigramCandidateSampler.Options Atributos opcionais para FixedUnigramCandidateSampler

Constantes

Corda OP_NAME O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow

Métodos Públicos

estático FixoUnigramCandidateSampler
create ( Escopo do escopo , Operando < TInt64 > trueClasses, Long numTrue, Long numSampled, Boolean exclusivo, Long rangeMax, Opções... opções)
Método de fábrica para criar uma classe que agrupa uma nova operação FixedUnigramCandidateSampler.
estático FixoUnigramCandidateSampler.Options
distorção (distorção flutuante)
estático FixoUnigramCandidateSampler.Options
numReservedIds (numReservedIds longos)
estático FixoUnigramCandidateSampler.Options
numShards (numShards longos)
Saída < TInt64 >
amostradosCandidatos ()
Um vetor de comprimento num_sampled, no qual cada elemento é o ID de um candidato amostrado.
Saída < TFloat32 >
sampledExpectedCount ()
Um vetor de comprimento num_sampled, para cada candidato amostrado, representando o número de vezes que se espera que o candidato ocorra em um lote de candidatos amostrados.
estático FixoUnigramCandidateSampler.Options
semente (semente longa)
estático FixoUnigramCandidateSampler.Options
seed2 (semente2 longa)
estático FixoUnigramCandidateSampler.Options
fragmento (fragmento longo)
Saída < TFloat32 >
trueExpectedCount ()
Uma matriz batch_size * num_true, representando o número de vezes que se espera que cada candidato ocorra em um lote de candidatos amostrados.
estático FixoUnigramCandidateSampler.Options
unigramas (List<Float> unigramas)
estático FixoUnigramCandidateSampler.Options
vocabFile (String vocabFile)

Métodos herdados

Constantes

String final estática pública OP_NAME

O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow

Valor constante: "FixedUnigramCandidateSampler"

Métodos Públicos

public static FixedUnigramCandidateSampler create ( Scope scope, Operand < TInt64 > trueClasses, Long numTrue, Long numSampled, Boolean unique, Long rangeMax, Options... options)

Método de fábrica para criar uma classe que agrupa uma nova operação FixedUnigramCandidateSampler.

Parâmetros
escopo escopo atual
trueClasses Uma matriz batch_size * num_true, na qual cada linha contém os IDs de num_true target_classes no rótulo original correspondente.
numTrue Número de rótulos verdadeiros por contexto.
numSampled Número de candidatos para amostragem aleatória.
exclusivo Se único for verdadeiro, amostraremos com rejeição, de modo que todos os candidatos amostrados em um lote sejam únicos. Isto requer alguma aproximação para estimar as probabilidades de amostragem pós-rejeição.
rangeMax O amostrador irá amostrar números inteiros do intervalo [0, range_max).
opções carrega valores de atributos opcionais
Devoluções
  • uma nova instância de FixedUnigramCandidateSampler

distorção pública estática FixedUnigramCandidateSampler.Options (distorção flutuante)

Parâmetros
distorção A distorção é usada para distorcer a distribuição de probabilidade do unigrama. Cada peso é primeiro elevado à potência da distorção antes de ser adicionado à distribuição interna de unigramas. Como resultado, distorção = 1,0 fornece amostragem regular de unigramas (conforme definido pelo arquivo de vocabulário) e distorção = 0,0 fornece uma distribuição uniforme.

public static FixedUnigramCandidateSampler.Options numReservedIds (Long numReservedIds)

Parâmetros
numReservedIds Opcionalmente, alguns IDs reservados podem ser adicionados no intervalo [0, ..., num_reserved_ids) pelos usuários. Um caso de uso é que um token especial de palavra desconhecida seja usado como ID 0. Esses IDs terão uma probabilidade de amostragem de 0.

public static FixedUnigramCandidateSampler.Options numShards (Long numShards)

Parâmetros
numShards Um amostrador pode ser usado para amostrar um subconjunto do intervalo original, a fim de acelerar todo o cálculo por meio do paralelismo. Este parâmetro (juntamente com 'shard') indica o número de partições que estão sendo usadas no cálculo geral.

Saída pública < TInt64 > sampledCandidates ()

Um vetor de comprimento num_sampled, no qual cada elemento é o ID de um candidato amostrado.

Saída pública < TFloat32 > sampledExpectedCount ()

Um vetor de comprimento num_sampled, para cada candidato amostrado, representando o número de vezes que se espera que o candidato ocorra em um lote de candidatos amostrados. Se único = verdadeiro, então esta é uma probabilidade.

semente pública estática FixedUnigramCandidateSampler.Options (semente longa)

Parâmetros
semente Se seed ou seed2 forem definidos como diferentes de zero, o gerador de números aleatórios será propagado pela semente fornecida. Caso contrário, é semeado por uma semente aleatória.

public static FixedUnigramCandidateSampler.Options seed2 (Long seed2)

Parâmetros
semente2 Uma segunda semente para evitar colisão de sementes.

fragmento estático público FixedUnigramCandidateSampler.Options (fragmento longo )

Parâmetros
fragmento Um amostrador pode ser usado para amostrar um subconjunto do intervalo original, a fim de acelerar todo o cálculo por meio do paralelismo. Este parâmetro (juntamente com 'num_shards') indica o número de partição específico de uma operação de amostragem, quando o particionamento está sendo usado.

Saída pública < TFloat32 > trueExpectedCount ()

Uma matriz batch_size * num_true, representando o número de vezes que se espera que cada candidato ocorra em um lote de candidatos amostrados. Se único = verdadeiro, então esta é uma probabilidade.

public static FixedUnigramCandidateSampler.Options unigramas (List<Float> unigramas)

Parâmetros
unigramas Uma lista de contagens ou probabilidades de unigramas, uma por ID em ordem sequencial. Exatamente um dos vocab_file e unigrams deve ser passado para esta operação.

public static FixedUnigramCandidateSampler.Options vocabFile (String vocabFile)

Parâmetros
arquivo de vocabulário Cada linha válida neste arquivo (que deve ter um formato semelhante a CSV) corresponde a um ID de palavra válido. Os IDs estão em ordem sequencial, começando em num_reserved_ids. Espera-se que a última entrada em cada linha seja um valor correspondente à contagem ou probabilidade relativa. Exatamente um dos vocab_file e unigrams precisa ser passado para esta operação.