Nhà xây dựng công cộng
Phương pháp công cộng
tĩnh <T mở rộng TNumber > Toán hạng <T> | sigmoidCrossEntropyWithLogits ( Phạm vi phạm vi, nhãn Toán hạng <T>, nhật ký Toán hạng <T>) Tính toán entropy chéo sigmoid cho logits đã cho. |
Phương pháp kế thừa
Nhà xây dựng công cộng
SigmoidCrossEntropyWithLogits công khai ()
Phương pháp công cộng
public static Operand <T> sigmoidCrossEntropyWithLogits ( Phạm vi phạm vi, nhãn Toán hạng <T>, nhật ký Toán hạng <T>)
Tính toán entropy chéo sigmoid cho logits
đã cho.
Đo lường sai số xác suất trong các nhiệm vụ phân loại riêng biệt trong đó mỗi lớp độc lập và không loại trừ lẫn nhau. Ví dụ: người ta có thể thực hiện phân loại nhiều nhãn trong đó một bức ảnh có thể chứa cả con voi và con chó cùng một lúc.
Để ngắn gọn, hãy đặt x = logits
, z = labels
. Tổn thất logistic trong mã giả là
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))
Đối với x < 0
, để tránh tràn exp(-x)
, chúng tôi định dạng lại ở trên
x - x * z + log(1 + exp(-x)) = log(exp(x)) - x * z + log(1 + exp(-x)) = - x * z + log(1 + exp(x))
Do đó, để đảm bảo tính ổn định và tránh tràn, việc triển khai sử dụng công thức tương đương này
max(x, 0) - x * z + log(1 + exp(-abs(x)))
nhật ký và labels
phải có cùng loại và hình dạng.
Thông số
phạm vi | Phạm vi TensorFlow |
---|---|
nhãn | nhãn |
nhật ký | nhật ký kiểu float32 hoặc float64 |
Trả lại
- tổn thất logistic theo thành phần.
Ném
Đối số bất hợp phápNgoại lệ | nếu nhật ký' và nhãn' không có hình dạng giống nhau |
---|