tensor akışı:: işlem:: SabitUnigramAdaySampler

#include <candidate_sampling_ops.h>

Öğrenilmiş bir unigram dağılımıyla aday örneklemesi için etiketler oluşturur.

Özet

Unigram örnekleyici, dağıtımı anında verilerden oluşturmak yerine, bir dosyadan okunan veya bellek içi dizi olarak aktarılan sabit bir unigram dağılımını kullanabilir. Ağırlıklara distorsiyon gücü uygulayarak dağılımı çarpıtma seçeneği de mevcuttur.

Kelime dosyası CSV benzeri formatta olmalı ve son alan kelimeyle ilişkili ağırlık olmalıdır.

Bu operasyon, her parti için tek bir örneklenmiş aday etiket seti seçer.

Parti başına aday örneklemenin avantajları basitlik ve verimli yoğun matris çoğaltma olanağıdır. Dezavantajı ise örneklenen adayların bağlamdan ve gerçek etiketlerden bağımsız olarak seçilmesinin gerekmesidir.

Argümanlar:

  • kapsam: Bir Kapsam nesnesi
  • true_classes: Her satırın karşılık gelen orijinal etiketteki num_true hedef_sınıflarının kimliklerini içerdiği birbatch_size * num_true matrisi.
  • num_true: Bağlam başına doğru etiketlerin sayısı.
  • num_sampled: Rastgele örneklenecek adayların sayısı.
  • benzersiz: Eğer benzersiz doğruysa, bir grupta örneklenen tüm adayların benzersiz olması için reddedilerek örnekleniriz. Bu, ret sonrası örnekleme olasılıklarını tahmin etmek için bazı yaklaşımlar gerektirir.
  • range_max: Örnekleyici [0, range_max) aralığındaki tam sayıları örnekleyecektir.

İsteğe bağlı özellikler (bkz. Attrs ):

  • vocab_file: Bu dosyadaki (CSV benzeri bir formata sahip olması gereken) her geçerli satır, geçerli bir kelime kimliğine karşılık gelir. Kimlikler num_reserved_ids'den başlayarak sıralıdır. Her satırdaki son girişin sayıma veya bağıl olasılığa karşılık gelen bir değer olması beklenir. Bu operasyona vocab_file ve unigramlardan tam olarak birinin aktarılması gerekiyor.
  • distorsiyon: Distorsiyon, unigram olasılık dağılımını çarpıtmak için kullanılır. Her ağırlık, dahili unigram dağılımına eklenmeden önce ilk olarak distorsiyonun gücüne yükseltilir. Sonuç olarak, distorsiyon = 1,0, düzenli unigram örneklemeyi verir (vocab dosyası tarafından tanımlandığı gibi) ve distorsiyon = 0,0, düzgün bir dağılım verir.
  • num_reserved_ids: İsteğe bağlı olarak kullanıcılar tarafından [0, ..., num_reserved_ids) aralığında bazı ayrılmış ID'ler eklenebilir. Bir kullanım durumu, özel bir bilinmeyen kelime belirtecinin ID 0 olarak kullanılmasıdır. Bu ID'lerin örnekleme olasılığı 0 olacaktır.
  • num_shards: Paralellik yoluyla tüm hesaplamayı hızlandırmak amacıyla orijinal aralığın bir alt kümesinden örnekleme yapmak için bir örnekleyici kullanılabilir. Bu parametre ('shard' ile birlikte) genel hesaplamada kullanılan bölüm sayısını gösterir.
  • parça: Paralellik yoluyla tüm hesaplamayı hızlandırmak amacıyla orijinal aralığın bir alt kümesinden örnekleme yapmak için bir örnekleyici kullanılabilir. Bu parametre ('num_shards' ile birlikte), bölümleme kullanıldığında bir örnekleyici işleminin belirli bölüm numarasını gösterir.
  • unigrams: Unigram sayımlarının veya olasılıklarının, her kimlik için sıralı sırayla bir listesi. Bu operasyona vocab_file ve unigramlardan tam olarak biri aktarılmalıdır.
  • tohum: Tohum veya tohum2'den biri sıfırdan farklı olarak ayarlanırsa, rastgele sayı üreteci verilen tohum tarafından tohumlanır. Aksi takdirde rastgele bir tohumla tohumlanır.
  • tohum2: Tohum çarpışmasını önlemek için ikinci bir tohum.

İade:

  • Sampled_candidates Output : Her öğenin örneklenmiş bir adayın kimliği olduğu num_sampled uzunluğunda bir vektör.
  • Output true_expected_count: Örneklenen adaylardan oluşan bir grupta her bir adayın kaç kez ortaya çıkmasının beklendiğini temsil eden bir parti_boyutu * num_true matrisi. Benzersiz=doğru ise bu bir olasılıktır.
  • Output sampled_expected_count: Num_sampled uzunluğunda bir vektör; örneklenen her aday için, adayın örneklenen adaylardan oluşan bir grupta kaç kez ortaya çıkmasının beklendiğini temsil eder. Benzersiz=doğru ise bu bir olasılıktır.

Yapıcılar ve Yıkıcılar

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)

Genel özellikler

operation
sampled_candidates
sampled_expected_count
true_expected_count

Genel statik işlevler

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)

Yapılar

tensorflow:: ops:: FixUnigramCandidateSampler:: Öznitelikler

FixUnigramCandidateSampler için isteğe bağlı öznitelik ayarlayıcılar.

Genel özellikler

operasyon

Operation operation

sampled_candidates

::tensorflow::Output sampled_candidates

sampled_expected_count

::tensorflow::Output sampled_expected_count

true_expected_count

::tensorflow::Output true_expected_count

Kamu işlevleri

SabitUnigramAdaySampler

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

SabitUnigramAdaySampler

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

Genel statik işlevler

Çarpıtma

Attrs Distortion(
  float x
)

Ayrılmış Kimlik Sayısı

Attrs NumReservedIds(
  int64 x
)

Parça Sayısı

Attrs NumShards(
  int64 x
)

Tohum

Attrs Seed(
  int64 x
)

Tohum2

Attrs Seed2(
  int64 x
)

Parça

Attrs Shard(
  int64 x
)

Unigramlar

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

Kelime Dosyası

Attrs VocabFile(
  StringPiece x
)