Hàm Binary Cross-Entropy With Logits ổn định số học (BCEWithLogits)
Trong bài toán phân loại nhị phân hoặc đa nhãn (Multi-Label Classification), hàm mất mát Binary Cross-Entropy (BCE) cho một mẫu có logit z và nhãn y ∈ {0, 1} là:
Tiến độ của tôi ở bài này
Điểm được lưu vào tài khoản sau khi chấm bài.
Đang tải điểm của bạn…
Kiến thức và chủ đề
Kiến thức tiên quyết: activation-derivatives-sigmoid-tanh-relu.
Nội dung đề bài
Mô tả bài toán
Trong bài toán phân loại nhị phân hoặc đa nhãn (Multi-Label Classification), hàm mất mát Binary Cross-Entropy (BCE) cho một mẫu có logit z và nhãn y ∈ {0, 1} là: L = - [ y log(σ(z)) + (1 - y) log(1 - σ(z)) ] Biến đổi giải tích để tránh lỗi tràn số khi tính σ(z): L = max(z, 0) - z · y + log ( 1 + e-|z| ) Đạo hàm theo logit z: ∂ L∂ z = σ(z) - y
Hãy viết hàm bce_with_logits(logits: np.ndarray, targets: np.ndarray) -> tuple[float, np.ndarray]:
logits: mảng NumPy bất kỳ shape chứa logit số thực float64.targets: mảng NumPy cùng shape chứa nhãn float hoặc int trong đoạn [0, 1] (hỗ trợ cả soft labels).- Tính loss trung bình trên toàn bộ phần tử L = 1N ∑ Li.
- Tính gradient trung bình ∂ L∂ z = 1N (σ(z) - y).
- Trả về tuple
(loss: float, grad: np.ndarray).
Input
- Hàm
bce_with_logits(logits,targets): Các tham số đầu vào chứa dữ liệu Tensor/mảng NumPy hoặc giá trị siêu tham số tương ứng.
Output
- Hàm
bce_with_logits: Trả về kết quả kiểuTuple[float, np.ndarray]theo đúng đặc tả kỹ thuật và kích thước quy định.
Ràng buộc
- Thời gian chạy tối đa: 6000ms.
- Giới hạn bộ nhớ: 512MB.
- Dữ liệu đầu vào hợp lệ theo đúng kiểu dữ liệu và miền giá trị được mô tả.
Ví dụ 1
Input
z = np.array([0.0])
y = np.array([1.0])
loss, grad = bce_with_logits(z, y)Output
(0.693147, [-0.5])Giải thích
Hàm/lớp được gọi với các tham số mẫu trên và trả về kết quả số học / kích thước tensor tương ứng theo đúng thiết kế.
Ví dụ 2
Input
z = np.array([-100.0, 100.0])
y = np.array([0.0, 1.0])
loss, grad = bce_with_logits(z, y)Output
(0, [0., 0.])Giải thích
Hàm/lớp được gọi với các tham số mẫu trên và trả về kết quả số học / kích thước tensor tương ứng theo đúng thiết kế.
Gợi ý và lời giải chỉ mở sau khi bạn bấm Nộp bài. Giáo viên và quản trị viên mở được ngay.
Góp ý & báo lỗi bài tập
Đề bài chưa rõ, test có vấn đề hay bạn có ý tưởng giúp bài tốt hơn? Gửi cho đội ngũ AI Empire nhé — mỗi góp ý đều được đọc.
