SigmoidCrossEntropyWithLogits

כיתה ציבורית SigmoidCrossEntropyWithLogits

בונים ציבוריים

שיטות ציבוריות

סטטי <T מרחיב TNummer > Operand <T>
sigmoidCrossEntropyWithLogits ( scope scope, Operand <T> תוויות, Operand <T> logits)
מחשב אנטרופיה צולבת סיגמואידית בהינתן logits .

שיטות בירושה

בונים ציבוריים

ציבורי SigmoidCrossEntropyWithLogits ()

שיטות ציבוריות

Operand סטטי ציבורי <T> sigmoidCrossEntropyWithLogits ( scope scope, Operand <T> תוויות, Operand <T> logits)

מחשב אנטרופיה צולבת סיגמואידית בהינתן logits .

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

לקיצור, תן x = logits , z = labels . ההפסד הלוגיסטי בפסאודו-קוד הוא

 z * -log(sigmoid(x)) + (1 - z) * -log(1 - sigmoid(x))
  = z * -log(1 / (1 + exp(-x))) + (1 - z) * -log(exp(-x) / (1 + exp(-x)))
  = z * log(1 + exp(-x)) + (1 - z) * (-log(exp(-x)) + log(1 + exp(-x)))
  = z * log(1 + exp(-x)) + (1 - z) * (x + log(1 + exp(-x))
  = (1 - z) * x + log(1 + exp(-x))
  = x - x * z + log(1 + exp(-x))
 

עבור x < 0 , כדי למנוע הצפה ב- exp(-x) , אנו מנסחים מחדש את האמור לעיל

 x - x * z + log(1 + exp(-x))
  = log(exp(x)) - x * z + log(1 + exp(-x))
  = - x * z + log(1 + exp(x))
 

לפיכך, כדי להבטיח יציבות ולהימנע מהצפת, היישום משתמש בניסוח המקביל הזה

   max(x, 0) - x * z + log(1 + exp(-abs(x)))
 

לוגיטים labels חייבים להיות בעלי אותו סוג וצורה.

פרמטרים
תְחוּם היקף TensorFlow
תוויות התוויות
לוגיטים הלוגיטים מסוג float32 או float64
מחזיר
  • ההפסדים הלוגיסטיים מבחינת הרכיבים.
זורק
חריג טיעון לא חוקי אם ללוגיטים ולתוויות אין אותה צורה