Génère des étiquettes pour l'échantillonnage des candidats avec une distribution d'unigramme apprise.
Voir les explications sur l'échantillonnage des candidats et les formats de données sur go/candidate-sampling.
Pour chaque lot, cette opération sélectionne un seul ensemble d’étiquettes candidates échantillonnées.
Les avantages de l’échantillonnage des candidats par lot sont la simplicité et la possibilité d’une multiplication matricielle dense efficace. L’inconvénient est que les candidats échantillonnés doivent être choisis indépendamment du contexte et des véritables étiquettes.
Classes imbriquées
classe | LearnedUnigramCandidateSampler.Options | Attributs facultatifs pour LearnedUnigramCandidateSampler |
Constantes
Chaîne | OP_NAME | Le nom de cette opération, tel que connu par le moteur principal TensorFlow |
Méthodes publiques
statique LearnedUnigramCandidateSampler | créer ( Scope scope, Operand < TInt64 > trueClasses, Long numTrue, Long numSampled, Boolean unique, Long rangeMax, Options... options) Méthode d'usine pour créer une classe encapsulant une nouvelle opération LearnedUnigramCandidateSampler. |
Sortie < TInt64 > | candidats échantillonnés () Un vecteur de longueur num_sampled, dans lequel chaque élément est l'ID d'un candidat échantillonné. |
Sortie < TFloat32 > | sampledExpectedCount () Un vecteur de longueur num_sampled, pour chaque candidat échantillonné, représentant le nombre de fois où le candidat devrait apparaître dans un lot de candidats échantillonnés. |
statique LearnedUnigramCandidateSampler.Options | graine (graine longue) |
statique LearnedUnigramCandidateSampler.Options | graine2 (graine longue2) |
Sortie < TFloat32 > | trueExpectedCount () Une matrice batch_size * num_true, représentant le nombre de fois où chaque candidat est censé apparaître dans un lot de candidats échantillonnés. |
Méthodes héritées
Constantes
chaîne finale statique publique OP_NAME
Le nom de cette opération, tel que connu par le moteur principal TensorFlow
Méthodes publiques
public static LearnedUnigramCandidateSampler créer ( Scope scope, Operand < TInt64 > trueClasses, Long numTrue, Long numSampled, Boolean unique, Long rangeMax, Options... options)
Méthode d'usine pour créer une classe encapsulant une nouvelle opération LearnedUnigramCandidateSampler.
Paramètres
portée | portée actuelle |
---|---|
vraiClasses | Une matrice batch_size * num_true, dans laquelle chaque ligne contient les ID des classes cibles num_true dans l'étiquette d'origine correspondante. |
numVrai | Nombre de vraies étiquettes par contexte. |
numSampled | Nombre de candidats à échantillonner au hasard. |
unique | Si unique est vrai, nous échantillonnons avec rejet, de sorte que tous les candidats échantillonnés dans un lot soient uniques. Cela nécessite une certaine approximation pour estimer les probabilités d’échantillonnage après rejet. |
plageMax | L'échantillonneur échantillonnera les entiers de l'intervalle [0, range_max). |
choix | porte des valeurs d'attributs facultatifs |
Retour
- une nouvelle instance de LearnedUnigramCandidateSampler
Sortie publique < TInt64 > sampledCandidates ()
Un vecteur de longueur num_sampled, dans lequel chaque élément est l'ID d'un candidat échantillonné.
Sortie publique < TFloat32 > sampledExpectedCount ()
Un vecteur de longueur num_sampled, pour chaque candidat échantillonné, représentant le nombre de fois où le candidat devrait apparaître dans un lot de candidats échantillonnés. Si unique=true, alors c'est une probabilité.
graine publique statique LearnedUnigramCandidateSampler.Options (graine longue)
Paramètres
graine | Si seed ou seed2 sont définis comme étant différents de zéro, le générateur de nombres aléatoires est amorcé par la graine donnée. Sinon, il est ensemencé par une graine aléatoire. |
---|
public statique LearnedUnigramCandidateSampler.Options seed2 (Long seed2)
Paramètres
graine2 | Une deuxième graine pour éviter la collision des graines. |
---|