tensorflow:: אופס:: FixedUnigramCandidateSampler

#include <candidate_sampling_ops.h>

יוצר תוויות לדגימת מועמדים עם התפלגות אוניגרמה נלמדת.

סיכום

מדגם יוניגרם יכול להשתמש בהפצת אוניגרמה קבועה הנקראת מקובץ או מועברת כמערך בזיכרון במקום לבנות את ההפצה מנתונים תוך כדי תנועה. ישנה גם אפשרות להטות את החלוקה על ידי הפעלת כוח עיוות על המשקולות.

קובץ אוצר המילים צריך להיות בפורמט דמוי CSV, כאשר השדה האחרון הוא המשקל המשויך למילה.

עבור כל אצווה, פעולה זו בוחרת קבוצה אחת של תוויות מועמדות שנדגמו.

היתרונות של דגימת מועמדים לכל אצווה הם הפשטות והאפשרות של כפל מטריקס צפוף יעיל. החיסרון הוא שיש לבחור את המועמדים הנדגמים ללא תלות בהקשר ובתוויות האמיתיות.

טיעונים:

  • scope: אובייקט Scope
  • true_classes: מטריצת batch_size * num_true, שבה כל שורה מכילה את המזהים של num_true target_classes בתווית המקורית המתאימה.
  • num_true: מספר התוויות האמיתיות לכל הקשר.
  • num_sampled: מספר המועמדים לדגימה אקראית.
  • ייחודי: אם ייחודי הוא נכון, אנו דוגמים עם דחייה, כך שכל המועמדים שנדגמו באצווה יהיו ייחודיים. זה דורש קירוב מסוים כדי להעריך את הסתברויות הדגימה שלאחר הדחייה.
  • range_max: הדגימה תדגום מספרים שלמים מהמרווח [0, range_max).

מאפיינים אופציונליים (ראה Attrs ):

  • vocab_file: כל שורה חוקית בקובץ זה (שצריכה להיות בפורמט דמוי CSV) תואמת למזהה מילה חוקי. המזהים נמצאים בסדר עוקב, החל מ-num_reserved_ids. הערך האחרון בכל שורה צפוי להיות ערך המתאים לספירה או להסתברות יחסית. בדיוק אחד מ-vocab_file ו-unigrams צריך לעבור לאופ הזה.
  • עיוות: העיוות משמש כדי להטות את התפלגות ההסתברות של אוניגרמה. כל משקל מועלה תחילה לעוצמת העיוות לפני הוספת התפלגות האוניגרמה הפנימית. כתוצאה מכך, עיוות = 1.0 נותן דגימת אוניגרמה רגילה (כפי שהוגדר בקובץ ה-vocab), ועיוות = 0.0 נותן התפלגות אחידה.
  • num_reserved_ids: ניתן להוסיף כמה מזהים שמורים בטווח [0, ..., num_reserved_ids) על ידי המשתמשים. מקרה שימוש אחד הוא שאסימון מיוחד של מילה לא ידוע משמש כמזהה 0. למזהים אלה תהיה הסתברות דגימה של 0.
  • num_shards: ניתן להשתמש בדמפלר כדי לדגום מתת-קבוצה של הטווח המקורי על מנת לזרז את כל החישוב באמצעות מקביליות. פרמטר זה (יחד עם 'רסיס') מציין את מספר המחיצות שנמצאות בשימוש בחישוב הכולל.
  • shard: ניתן להשתמש בדמפלר כדי לדגום מתת-קבוצה של הטווח המקורי על מנת לזרז את כל החישוב באמצעות מקביליות. פרמטר זה (יחד עם 'num_shards') מציין את מספר המחיצה המסוים של הפעלת דגימה, כאשר נעשה שימוש במחיצות.
  • unigrams: רשימה של ספירות או הסתברויות של unigram, אחד לכל מזהה בסדר עוקב. בדיוק אחד מ-vocab_file ו-unigrams צריך לעבור לאופ הזה.
  • seed: אם ה-seed או seed2 מוגדרים כלא-אפס, מחולל המספרים האקראיים מוזרע על ידי ה-seed הנתון. אחרת, הוא נזרע על ידי זרע אקראי.
  • seed2: זרע שני כדי למנוע התנגשות זרע.

החזרות:

  • Output sampled_candidates: וקטור באורך num_sampled, שבו כל אלמנט הוא המזהה של מועמד שנדגם.
  • Output true_expected_count: מטריצת batch_size * num_true, המייצגת את מספר הפעמים שכל מועמד צפוי להתרחש באצווה של מועמדים שנדגמו. אם ייחודי=נכון, אז זו הסתברות.
  • Output sampled_expected_count: וקטור באורך num_sampled, עבור כל מועמד שנדגם המייצג את מספר הפעמים שהמועמד צפוי להתרחש בקבוצה של מועמדים שנדגמו. אם ייחודי=נכון, אז זו הסתברות.

בנאים והורסים

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)

מבנים

tensorflow:: ops:: FixedUnigramCandidateSampler:: Attrs

קובעי תכונות אופציונליים עבור FixedUnigramCandidateSampler .

תכונות ציבוריות

מבצע

Operation operation

sampled_candidates

::tensorflow::Output sampled_candidates

sampled_expected_count

::tensorflow::Output sampled_expected_count

true_expected_count

::tensorflow::Output true_expected_count

תפקידים ציבוריים

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
)

פונקציות סטטיות ציבוריות

עיוות

Attrs Distortion(
  float x
)

NumReservedIds

Attrs NumReservedIds(
  int64 x
)

NumShards

Attrs NumShards(
  int64 x
)

זֶרַע

Attrs Seed(
  int64 x
)

זרע 2

Attrs Seed2(
  int64 x
)

חֶרֶס

Attrs Shard(
  int64 x
)

יוניגרמים

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

VocabFile

Attrs VocabFile(
  StringPiece x
)