What is the correct formula for the cost function (log loss) in logistic regression?

4 phương ánCó giải thích

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở
Đáp án đúng: "J = −(1/m) ∑(i=1..m) ∑(j=1..c) y_j^(i) log(ŷ_j^(i)) where m, c, y_j^(i), ŷ_j^(i) denote number of examples, number of classes, ground-truth label, and predicted probability, respectively.". Hàm mất mát log (log loss, cross-entropy) của một mẫu là tổng y_j log ŷ_j lấy dấu âm, thực chất chỉ phạt xác suất dự đoán cho lớp đúng; hàm chi phí (cost function) J của cả tập huấn luyện là trung bình của nó trên m mẫu, nên có hệ số 1/m và tổng theo i. Đây là dạng tổng quát cho c lớp (softmax regression); với hai lớp nó thu về −[y log ŷ + (1−y) log(1−ŷ)]. Dấu trừ cần thiết vì log của xác suất nhỏ hơn 1 là số âm, nhờ đó J không âm và giảm khi mô hình dự đoán đúng hơn. "L = −∑(j=1..c) y_j log(ŷ_j)" là loss của riêng một mẫu, đúng về dạng nhưng chưa phải hàm chi phí trên toàn tập. "ŷ = σ(wᵀx + b), where σ(z) = 1/(1 + e^(−z))" là công thức dự đoán của hồi quy logistic qua hàm sigmoid, không phải hàm chi phí. "L = ∑(j=1..c) y_j log(ŷ_j)" thiếu dấu trừ nên cho giá trị âm và tăng dần khi dự đoán tốt hơn; cực tiểu hoá nó sẽ đẩy mô hình về phía dự đoán sai.

Cùng phần 4

Xuất hiện trong 1 bộ đề