tensorflow :: ops :: FixedUnigramCandidateSampler
#include <candidate_sampling_ops.h>
Öğrenilmiş bir unigram dağılımı ile aday örnekleme için etiketler oluşturur.
Özet
Bir unigram örnekleyici, dağıtımı anında verilerden oluşturmak yerine bir dosyadan okunan veya bellek içi dizi olarak iletilen sabit bir unigram dağıtımı kullanabilir. Ağırlıklara bir distorsiyon gücü uygulayarak dağılımı çarpıtma seçeneği de vardır.
Kelime dosyası, son alan kelime ile ilişkili ağırlık olacak şekilde CSV benzeri formatta olmalıdır.
Her parti için, bu işlem tek bir örneklenmiş aday etiket kümesi seçer.
Parti başına örnekleme adaylarının avantajları basitlik ve verimli yoğun matris çarpımı olasılığıdır. Dezavantajı, örneklenen adayların bağlamdan ve gerçek etiketlerden bağımsız olarak seçilmesinin gerekmesidir.
Argümanlar:
- kapsam: Bir Scope nesnesi
- true_classes: batch_size * num_true matrisi, burada her satır, ilgili orijinal etikette num_true target_class'ların kimliklerini içerir.
- num_true: Bağlam başına gerçek etiketlerin sayısı.
- num_sampled: Rastgele örneklenecek aday sayısı.
- benzersiz: Benzersiz doğruysa, bir partideki tüm örneklenen adayların benzersiz olması için ret ile örnekleme yaparız. Bu, reddetme sonrası örnekleme olasılıklarını tahmin etmek için bazı tahminler gerektirir.
- range_max: Örnekleyici, [0, aralık_maks) aralığındaki tam sayıları örnekleyecektir.
İsteğe bağlı özellikler (bkz. Attrs
):
- word_file: Bu dosyadaki her geçerli satır (CSV benzeri bir biçime sahip olmalıdır) geçerli bir kelime kimliğine karşılık gelir. Kimlikler, num_reserved_ids'den başlayarak sıralı sıradadır. Her satırdaki son girişin, sayıya veya göreli olasılığa karşılık gelen bir değer olması beklenir. Bu operasyona kelime_dosyası ve unigramlardan tam olarak biri aktarılmalıdır.
- bozulma: Bozulma, 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 distorsiyonun gücüne yükseltilir. Sonuç olarak, distorsiyon = 1.0, düzenli unigram örneklemesi (kelime dosyası ile tanımlandığı gibi) verir 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ığına bazı ayrılmış kimlikler eklenebilir. Bir kullanım durumu, özel bir bilinmeyen kelime simgesinin Kimlik 0 olarak kullanılmasıdır. Bu kimliklerin örnekleme olasılığı 0 olacaktır.
- num_shards: Tüm hesaplamayı paralellik yoluyla hızlandırmak için orijinal aralığın bir alt kümesinden örneklemek için bir örnekleyici kullanılabilir. Bu parametre ('parça' ile birlikte) genel hesaplamada kullanılan bölümlerin sayısını gösterir.
- parça: Paralellik yoluyla tüm hesaplamayı hızlandırmak için orijinal aralığın bir alt kümesinden örneklemek için bir örnekleyici kullanılabilir. Bu parametre ('num_shards' ile birlikte), bölümleme kullanılırken bir örnekleyici işleminin belirli bölüm numarasını gösterir.
- unigrams: Sıralı sırayla her kimlik için bir tane olmak üzere unigram sayıları veya olasılıklarının listesi. Bu operasyona tam olarak kelime_dosyası ve unigramlardan biri aktarılmalıdır.
- seed: Çekirdek veya tohum2 sıfırdan farklı olacak şekilde ayarlanmışsa, rastgele sayı oluşturucu verilen tohum tarafından tohumlanır. Aksi takdirde, rastgele bir tohumla tohumlanır.
- seed2: Tohum çarpışmasını önlemek için ikinci bir tohum.
İadeler:
-
Output
sampled_candidates: Num_örneklenen uzunluk vektörü; burada her öğe, örneklenmiş bir adayın kimliğidir. -
Output
true_expected_count A batch_size * num_true matris, her bir aday örneklenmiş bir aday toplu meydana beklenen sayısını temsil eder. Unique = true ise, bu bir olasılıktır. -
Output
örneklenen_beklenen_sayı: Her örneklenen aday için, örneklenen adayların bir grubunda adayın ortaya çıkmasının beklendiği sayıları temsil eden, num_sampled uzunluk vektörü. Unique = true 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 :: FixedUnigramCandidateSampler :: Attrs | FixedUnigramCandidateSampler 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
Kamusal işlevler
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 )
Genel statik işlevler
Çarpıtma
Attrs Distortion( float x )
NumReservedIds
Attrs NumReservedIds( int64 x )
NumShards
Attrs NumShards( int64 x )
Tohum
Attrs Seed( int64 x )
Tohum2
Attrs Seed2( int64 x )
Kırık
Attrs Shard( int64 x )
Unigram'lar
Attrs Unigrams( const gtl::ArraySlice< float > & x )
VocabFile
Attrs VocabFile( StringPiece x )