Nhà xây dựng công cộng
Phương pháp công khai
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 khai
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
x - x * z + log(1 + exp(-x)) = log(exp(x)) - x * z + log(1 + exp(-x)) = - x * z + log(1 + exp(x))ở trên
Do đó, để đảm bảo sự ổn định và tránh tràn, việc triển khai sử dụng công thức tương đương
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
Ngoại lệ Đối số bất hợp pháp | nếu nhật ký' và nhãn' không có hình dạng giống nhau |
---|