מפסיק את חישוב השיפוע.
כאשר הוא מבוצע בגרף, הפעולה הזו מוציאה את טנסור הקלט שלו כפי שהוא.
בעת בניית אופציות לחישוב שיפועים, אופציה זו מונעת את התרומה של התשומות שלו להילקח בחשבון. בדרך כלל, מחולל הגרדיאנט מוסיף אופציות לגרף כדי לחשב את הנגזרות של 'הפסד' שצוין על ידי גילוי רקורסיבי של תשומות שתרמו לחישוב שלו. אם אתה מכניס את האופציה הזו לגרף שהוא מכניס מיסוך ממחולל השיפוע. הם אינם נלקחים בחשבון עבור מעברי מחשוב.
זה שימושי בכל פעם שאתה רוצה לחשב ערך עם TensorFlow אבל צריך להעמיד פנים שהערך היה קבוע. לדוגמה, ניתן לכתוב את הפונקציה softmax עבור וקטור x
def softmax(x):
numerator = tf.exp(x)
denominator = tf.reduce_sum(numerator)
return numerator / denominator
def stable_softmax(x):
z = x - tf.reduce_max(x)
numerator = tf.exp(z)
denominator = tf.reduce_sum(numerator)
return numerator / denominator
tf.reduce_max(x)
(אם ערכי המקסימום אינם ייחודיים אז הגרדיאנט יכול לזרום לקלט השגוי) ולהתייחס לזה כאל קבוע. לכן, עלינו לכתוב את זה בתורdef stable_softmax(x):
z = x - tf.stop_gradient(tf.reduce_max(x))
numerator = tf.exp(z)
denominator = tf.reduce_sum(numerator)
return numerator / denominator
- אלגוריתם EM שבו M-step לא אמור לכלול התפשטות חזרה דרך הפלט של E-step .
- אימון סטייה ניגודית של מכונות בולצמן כאשר, כאשר מבדילים את פונקציית האנרגיה, האימון אינו חייב להתפשט דרך הגרף שיצר את הדגימות מהמודל.
- אימון יריבות, שבו לא אמורה לקרות תמיכה אחורית בתהליך יצירת הדוגמאות היריבות.
שיטות ציבוריות
פלט <T> | asOutput () מחזירה את הידית הסמלית של טנזור. |
סטטי <T> StopGradient <T> | |
פלט <T> | פלט () |
שיטות בירושה
שיטות ציבוריות
פלט ציבורי <T> asOutput ()
מחזירה את הידית הסמלית של טנזור.
כניסות לפעולות TensorFlow הן יציאות של פעולת TensorFlow אחרת. שיטה זו משמשת להשגת ידית סמלית המייצגת את חישוב הקלט.
סטטי סטטי StopGradient <T> create ( היקף היקף , קלט Operand <T>)
שיטת מפעל ליצירת מחלקה העוטפת פעולת StopGradient חדשה.
פרמטרים
תְחוּם | ההיקף הנוכחי |
---|
מחזיר
- מופע חדש של StopGradient