Zadbaj o dobrą organizację dzięki kolekcji Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.

tensorflow :: ops :: FixedUnigramCandidateSampler

#include <candidate_sampling_ops.h>

Generuje etykiety do próbkowania kandydatów z wyuczonym rozkładem unigramów.

streszczenie

Sampler unigram mógłby używać stałej dystrybucji unigram odczytywanej z pliku lub przekazywanej jako tablica w pamięci zamiast budowania dystrybucji z danych w locie. Istnieje również możliwość wypaczenia rozkładu poprzez zastosowanie mocy zniekształcenia do ciężarków.

Plik słownictwa powinien być w formacie podobnym do CSV, a ostatnim polem powinna być waga skojarzona ze słowem.

Dla każdej partii ta opcja wybiera pojedynczy zestaw próbkowanych etykiet kandydujących.

Zalety próbkowania kandydatów na partię to prostota i możliwość wydajnego mnożenia gęstej macierzy. Wadą jest to, że kandydaci do próby muszą być wybierani niezależnie od kontekstu i prawdziwych etykiet.

Argumenty:

  • zakres: obiekt Scope
  • true_classes: macierz batch_size * num_true, w której każdy wiersz zawiera identyfikatory num_true target_classes w odpowiedniej oryginalnej etykiecie.
  • num_true: liczba prawdziwych etykiet na kontekst.
  • num_sampled: liczba kandydatów do losowej próby.
  • unikalne: jeśli prawda jest wyjątkowa, próbkujemy z odrzuceniem, tak aby wszyscy wybrani kandydaci w partii byli niepowtarzalni. Wymaga to pewnego przybliżenia w celu oszacowania prawdopodobieństwa pobierania próbek po odrzuceniu.
  • range_max: urządzenie próbkujące będzie próbkować liczby całkowite z przedziału [0, range_max).

Atrybuty opcjonalne (patrz Attrs ):

  • vocab_file: Każda poprawna linia w tym pliku (która powinna mieć format podobny do CSV) odpowiada poprawnemu identyfikatorowi słowa. Identyfikatory są w kolejności, zaczynając od num_reserved_ids. Oczekuje się, że ostatni wpis w każdym wierszu będzie wartością odpowiadającą liczbie lub prawdopodobieństwu względnemu. Dokładnie jeden z vocab_file i unigrams musi zostać przekazany do tej operacji.
  • zniekształcenie: zniekształcenie służy do wypaczenia unigramowego rozkładu prawdopodobieństwa. Każda waga jest najpierw podnoszona do mocy zniekształcenia przed dodaniem do wewnętrznego rozkładu unigramów. W rezultacie zniekształcenie = 1,0 daje regularne próbkowanie w jednostce unigram (zgodnie z definicją w pliku vocab), a zniekształcenie = 0,0 daje równomierny rozkład.
  • num_reserved_ids: Opcjonalnie niektóre zarezerwowane identyfikatory mogą być dodane przez użytkowników w zakresie [0, ..., num_reserved_ids). Jeden z przypadków użycia polega na tym, że jako identyfikator 0 używany jest specjalny token nieznanego słowa. Te identyfikatory będą miały prawdopodobieństwo próbkowania równe 0.
  • num_shards: próbnik może być użyty do próbkowania z podzbioru oryginalnego zakresu w celu przyspieszenia całego obliczenia poprzez równoległość. Ten parametr (razem z „fragmentem”) wskazuje liczbę partycji, które są używane w ogólnych obliczeniach.
  • fragment: próbnik może służyć do próbkowania podzbioru oryginalnego zakresu w celu przyspieszenia całego obliczenia dzięki równoległości. Ten parametr (razem z „num_shards”) wskazuje konkretny numer partycji operacji próbnika, gdy jest używane partycjonowanie.
  • unigrams: lista zliczeń unigramów lub prawdopodobieństw, po jednym na identyfikator w kolejności sekwencyjnej. Dokładnie jeden z vocab_file i unigrams powinien zostać przekazany do tej op.
  • seed: Jeśli seed lub seed2 są ustawione na wartość niezerową, generator liczb losowych jest inicjowany przez dane ziarno. W przeciwnym razie jest wysiewany przez losowe ziarno.
  • seed2: drugie ziarno, aby uniknąć kolizji nasion.

Zwroty:

  • Output sampled_candidates: wektor o długości num_sampled, w którym każdy element jest identyfikatorem próbkowanego kandydata.
  • Output true_expected_count: macierz batch_size * num_true, przedstawiająca, ile razy każdy kandydat powinien wystąpić w partii wybranych kandydatów. Jeśli unique = true, to jest to prawdopodobieństwo.
  • Output sampled_expected_count: wektor o długości num_sampled, dla każdego próbkowanego kandydata przedstawiający, ile razy oczekuje się, że kandydat wystąpi w partii próbkowanych kandydatów. Jeśli unique = true, to jest to prawdopodobieństwo.

Konstruktorzy i niszczyciele

FixedUnigramCandidateSampler (const :: tensorflow::Scope & scope, :: tensorflow::Input true_classes, int64 num_true, int64 num_sampled, bool unique, int64 range_max)
FixedUnigramCandidateSampler (const :: tensorflow::Scope & scope, :: tensorflow::Input true_classes, int64 num_true, int64 num_sampled, bool unique, int64 range_max, const FixedUnigramCandidateSampler::Attrs & attrs)

Atrybuty publiczne

operation
sampled_candidates
sampled_expected_count
true_expected_count

Publiczne funkcje statyczne

Distortion (float x)
NumReservedIds (int64 x)
NumShards (int64 x)
Seed (int64 x)
Seed2 (int64 x)
Shard (int64 x)
Unigrams (const gtl::ArraySlice< float > & x)
VocabFile (StringPiece x)

Struktury

tensorflow :: ops :: FixedUnigramCandidateSampler :: Attrs

Opcjonalne metody ustawiające atrybuty dla FixedUnigramCandidateSampler .

Atrybuty publiczne

operacja

Operation operation

sampled_candidates

::tensorflow::Output sampled_candidates

sampled_expected_count

::tensorflow::Output sampled_expected_count

true_expected_count

::tensorflow::Output true_expected_count

Funkcje publiczne

FixedUnigramCandidateSampler

 FixedUnigramCandidateSampler(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input true_classes,
  int64 num_true,
  int64 num_sampled,
  bool unique,
  int64 range_max
)

FixedUnigramCandidateSampler

 FixedUnigramCandidateSampler(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input true_classes,
  int64 num_true,
  int64 num_sampled,
  bool unique,
  int64 range_max,
  const FixedUnigramCandidateSampler::Attrs & attrs
)

Publiczne funkcje statyczne

Zniekształcenie

Attrs Distortion(
  float x
)

NumReservedIds

Attrs NumReservedIds(
  int64 x
)

NumShards

Attrs NumShards(
  int64 x
)

Nasionko

Attrs Seed(
  int64 x
)

Seed2

Attrs Seed2(
  int64 x
)

Czerep

Attrs Shard(
  int64 x
)

Unigrams

Attrs Unigrams(
  const gtl::ArraySlice< float > & x
)

VocabFile

Attrs VocabFile(
  StringPiece x
)