टेंसरफ़्लो:: ऑप्स:: फिक्स्डयूनिग्रामकैंडिडेटसैंपलर

#include <candidate_sampling_ops.h>

सीखे गए यूनीग्राम वितरण के साथ उम्मीदवार के नमूने के लिए लेबल तैयार करता है।

सारांश

एक यूनीग्राम सैंपलर तुरंत डेटा से वितरण बनाने के बजाय किसी फ़ाइल से पढ़े गए या इन-मेमोरी सरणी के रूप में पास किए गए एक निश्चित यूनीग्राम वितरण का उपयोग कर सकता है। वज़न पर विरूपण शक्ति लागू करके वितरण को तिरछा करने का भी एक विकल्प है।

शब्दावली फ़ाइल सीएसवी-जैसे प्रारूप में होनी चाहिए, जिसमें अंतिम फ़ील्ड शब्द से जुड़ा वजन होना चाहिए।

प्रत्येक बैच के लिए, यह ऑप नमूना उम्मीदवार लेबल का एक सेट चुनता है।

प्रति बैच उम्मीदवारों के नमूने लेने के फायदे सरलता और कुशल सघन मैट्रिक्स गुणन की संभावना हैं। नुकसान यह है कि नमूना उम्मीदवारों को संदर्भ और वास्तविक लेबल से स्वतंत्र रूप से चुना जाना चाहिए।

तर्क:

  • स्कोप: एक स्कोप ऑब्जेक्ट
  • true_classes: एक बैच_आकार * num_true मैट्रिक्स, जिसमें प्रत्येक पंक्ति में संबंधित मूल लेबल में num_true target_classes की आईडी होती हैं।
  • num_true: प्रति संदर्भ सही लेबल की संख्या।
  • num_sampled: यादृच्छिक रूप से नमूना लेने के लिए उम्मीदवारों की संख्या।
  • अद्वितीय: यदि अद्वितीय सत्य है, तो हम अस्वीकृति के साथ नमूना लेते हैं, ताकि एक बैच में सभी नमूना उम्मीदवार अद्वितीय हों। इसके लिए अस्वीकृति के बाद के नमूने की संभावनाओं का अनुमान लगाने के लिए कुछ अनुमान की आवश्यकता होती है।
  • रेंज_मैक्स: सैंपलर अंतराल [0, रेंज_मैक्स) से पूर्णांकों का नमूना लेगा।

वैकल्पिक विशेषताएँ (देखें Attrs ):

  • vocab_file: इस फ़ाइल में प्रत्येक मान्य पंक्ति (जिसमें CSV जैसा प्रारूप होना चाहिए) एक मान्य शब्द आईडी से मेल खाती है। आईडी अनुक्रमिक क्रम में हैं, जो num_reserved_ids से शुरू होती हैं। प्रत्येक पंक्ति में अंतिम प्रविष्टि गिनती या सापेक्ष संभावना के अनुरूप मान होने की उम्मीद है। वास्तव में vocab_file और unigrams में से एक को इस ऑप में पास करने की आवश्यकता है।
  • विरूपण: विरूपण का उपयोग यूनीग्राम संभाव्यता वितरण को तिरछा करने के लिए किया जाता है। आंतरिक यूनीग्राम वितरण में जोड़ने से पहले प्रत्येक वजन को पहले विरूपण की शक्ति तक बढ़ाया जाता है। परिणामस्वरूप, विरूपण = 1.0 नियमित यूनीग्राम नमूना देता है (जैसा कि वोकैब फ़ाइल द्वारा परिभाषित किया गया है), और विरूपण = 0.0 एक समान वितरण देता है।
  • num_reserved_ids: वैकल्पिक रूप से उपयोगकर्ताओं द्वारा कुछ आरक्षित आईडी को [0, ..., num_reserved_ids) श्रेणी में जोड़ा जा सकता है। एक उपयोग मामला यह है कि एक विशेष अज्ञात शब्द टोकन का उपयोग आईडी 0 के रूप में किया जाता है। इन आईडी में 0 की नमूना संभावना होगी।
  • num_shards: समांतरता के माध्यम से संपूर्ण गणना को गति देने के लिए मूल श्रेणी के सबसेट से नमूना लेने के लिए एक सैंपलर का उपयोग किया जा सकता है। यह पैरामीटर ('शार्क' के साथ) उन विभाजनों की संख्या को इंगित करता है जिनका उपयोग समग्र गणना में किया जा रहा है।
  • शार्ड: समांतरता के माध्यम से संपूर्ण गणना को गति देने के लिए मूल श्रेणी के सबसेट से नमूना लेने के लिए एक सैंपलर का उपयोग किया जा सकता है। यह पैरामीटर ('num_shards' के साथ) एक सैंपलर ऑप की विशेष विभाजन संख्या को इंगित करता है, जब विभाजन का उपयोग किया जा रहा हो।
  • यूनीग्राम: यूनीग्राम गणना या संभावनाओं की एक सूची, क्रमिक क्रम में प्रति आईडी एक। वास्तव में vocab_file और unigrams में से एक को इस ऑप को पास किया जाना चाहिए।
  • बीज: यदि बीज या बीज 2 को गैर-शून्य पर सेट किया गया है, तो यादृच्छिक संख्या जनरेटर को दिए गए बीज द्वारा बीजित किया जाता है। अन्यथा, यह एक यादृच्छिक बीज द्वारा बोया जाता है।
  • बीज 2: बीज टकराव से बचने के लिए दूसरा बीज।

रिटर्न:

  • Output सैम्पल्ड_कैंडिडेट्स: लंबाई num_sampled का एक वेक्टर, जिसमें प्रत्येक तत्व एक सैम्पल किए गए उम्मीदवार की आईडी है।
  • Output true_expected_count: एक बैच_आकार * num_true मैट्रिक्स, जो नमूना किए गए उम्मीदवारों के एक बैच में प्रत्येक उम्मीदवार के आने की उम्मीद की जाने वाली संख्या का प्रतिनिधित्व करता है। यदि अद्वितीय = सत्य है, तो यह एक संभावना है।
  • Output सैंपल्ड_एक्सपेक्टेड_काउंट: प्रत्येक सैंपल किए गए उम्मीदवार के लिए लंबाई संख्या_सैंपल्ड का एक वेक्टर, जो सैंपल किए गए उम्मीदवारों के बैच में उम्मीदवार के आने की उम्मीद की जाने वाली संख्या को दर्शाता है। यदि अद्वितीय = सत्य है, तो यह एक संभावना है।

निर्माता और विध्वंसक

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)

सार्वजनिक गुण

operation
sampled_candidates
sampled_expected_count
true_expected_count

सार्वजनिक स्थैतिक कार्य

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)

संरचनाएँ

टेंसरफ्लो:: ऑप्स:: फिक्स्डयूनिग्रामकैंडिडेटसैंपलर:: एटर्स

फिक्स्डयूनिग्रामकैंडिडेटसैंपलर के लिए वैकल्पिक विशेषता सेटर्स।

सार्वजनिक गुण

संचालन

Operation operation

नमूना_उम्मीदवार

::tensorflow::Output sampled_candidates

नमूना_अपेक्षित_गिनती

::tensorflow::Output sampled_expected_count

true_expected_count

::tensorflow::Output true_expected_count

सार्वजनिक समारोह

फिक्स्डयूनिग्रामकैंडिडेटसैंपलर

 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
)

सार्वजनिक स्थैतिक कार्य

विरूपण

Attrs Distortion(
  float x
)

संख्या आरक्षित आईडी

Attrs NumReservedIds(
  int64 x
)

न्यूशर्ड्स

Attrs NumShards(
  int64 x
)

बीज

Attrs Seed(
  int64 x
)

बीज2

Attrs Seed2(
  int64 x
)

ठीकरा

Attrs Shard(
  int64 x
)

यूनीग्राम

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

वोकैबफ़ाइल

Attrs VocabFile(
  StringPiece x
)