Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

tensorflow :: ops :: FixedUnigramCandidateSampler

#include <candidate_sampling_ops.h>

Menghasilkan label untuk pengambilan sampel kandidat dengan distribusi unigram yang dipelajari.

Ringkasan

Sampler unigram dapat menggunakan distribusi unigram tetap yang dibaca dari file atau diteruskan sebagai larik dalam memori alih-alih membangun distribusi dari data dengan cepat. Ada juga opsi untuk memiringkan distribusi dengan menerapkan kekuatan distorsi pada bobot.

File kosakata harus dalam format seperti CSV, dengan bidang terakhir adalah bobot yang terkait dengan kata tersebut.

Untuk setiap batch, operasi ini mengambil satu set label kandidat sampel.

Keuntungan dari kandidat pengambilan sampel per batch adalah kesederhanaan dan kemungkinan perkalian matriks rapat yang efisien. Kerugiannya adalah bahwa calon sampel harus dipilih secara independen dari konteks dan label yang sebenarnya.

Argumen:

  • scope: Objek Scope
  • true_classes: Sebuah matriks batch_size * num_true, di mana setiap baris berisi ID dari num_true target_classes di label asli yang sesuai.
  • num_true: Jumlah label sebenarnya per konteks.
  • num_sampled: Jumlah kandidat untuk diambil sampelnya secara acak.
  • unique: Jika unique is true, kami mengambil sampel dengan penolakan, sehingga semua sampel kandidat dalam satu batch adalah unik. Ini membutuhkan beberapa perkiraan untuk memperkirakan probabilitas pengambilan sampel setelah penolakan.
  • range_max: Sampler akan mengambil sampel bilangan bulat dari interval [0, range_max).

Atribut opsional (lihat Attrs ):

  • vocab_file: Setiap baris valid dalam file ini (yang harus memiliki format seperti CSV) sesuai dengan ID kata yang valid. ID disusun secara berurutan, mulai dari num_reserved_ids. Entri terakhir di setiap baris diharapkan menjadi nilai yang sesuai dengan hitungan atau probabilitas relatif. Salah satu vocab_file dan unigram harus diteruskan ke operasi ini.
  • distorsi: Distorsi digunakan untuk memiringkan distribusi probabilitas unigram. Setiap bobot terlebih dahulu dinaikkan ke kekuatan distorsi sebelum ditambahkan ke distribusi unigram internal. Akibatnya, distorsi = 1.0 memberikan pengambilan sampel unigram reguler (seperti yang didefinisikan oleh file vocab), dan distorsi = 0.0 memberikan distribusi yang seragam.
  • num_reserved_ids: Secara opsional, beberapa ID yang dipesan dapat ditambahkan dalam rentang [0, ..., num_reserved_ids) oleh pengguna. Satu kasus penggunaan adalah bahwa token kata khusus yang tidak dikenal digunakan sebagai ID 0. ID ini akan memiliki probabilitas pengambilan sampel 0.
  • num_shards: Sampler dapat digunakan untuk mengambil sampel dari subset rentang asli untuk mempercepat seluruh komputasi melalui paralelisme. Parameter ini (bersama dengan 'shard') menunjukkan jumlah partisi yang digunakan dalam komputasi keseluruhan.
  • shard: Sampler dapat digunakan untuk mengambil sampel dari subset rentang asli untuk mempercepat seluruh komputasi melalui paralelisme. Parameter ini (bersama dengan 'num_shards') menunjukkan nomor partisi tertentu dari operasi sampler, ketika partisi sedang digunakan.
  • unigrams: Daftar jumlah atau probabilitas unigram, satu per ID secara berurutan. Salah satu vocab_file dan unigram harus diteruskan ke operasi ini.
  • benih: Jika salah satu benih atau benih2 ditetapkan menjadi bukan nol, generator nomor acak disemai oleh benih yang diberikan. Jika tidak, itu diunggulkan dengan benih acak.
  • seed2: Benih kedua untuk menghindari tumbukan benih.

Pengembalian:

  • Output sampled_candidates: Sebuah vektor dengan panjang num_sampled, di mana setiap elemen adalah ID dari kandidat yang disampel.
  • Output true_expected_count: Matriks batch_size * num_true, yang menunjukkan berapa kali setiap kandidat diharapkan muncul dalam sekumpulan kandidat sampel. Jika unique = true, maka ini adalah probabilitas.
  • Output sampled_expected_count: Vektor dengan panjang num_sampled, untuk setiap kandidat sampel yang mewakili frekuensi kandidat diharapkan muncul dalam sekumpulan kandidat sampel. Jika unique = true, maka ini adalah probabilitas.

Pembuat dan Penghancur

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)

Atribut publik

operation
sampled_candidates
sampled_expected_count
true_expected_count

Fungsi statis publik

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)

Structs

tensorflow :: ops :: FixedUnigramCandidateSampler :: Attrs

Penyetel atribut opsional untuk FixedUnigramCandidateSampler .

Atribut publik

operasi

Operation operation

sampled_candidates

::tensorflow::Output sampled_candidates

sampled_expected_count

::tensorflow::Output sampled_expected_count
.dll

true_expected_count

::tensorflow::Output true_expected_count

Fungsi publik

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
)

Fungsi statis publik

Distorsi

Attrs Distortion(
  float x
)

NumReservedIds

Attrs NumReservedIds(
  int64 x
)
.dll

NumShards

Attrs NumShards(
  int64 x
)

Benih

Attrs Seed(
  int64 x
)

Benih2

Attrs Seed2(
  int64 x
)

Beling

Attrs Shard(
  int64 x
)

Unigrams

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

VocabFile

Attrs VocabFile(
  StringPiece x
)