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 )