Xuất phát của hàm chi phí hồi quy tuyến tính thường xuyên trên mỗi khóa học máy Coursera


12

Tôi đã tham gia khóa học "Machine Learning" của Andrew Ng qua Coursera vài tháng trước, không chú ý đến hầu hết các môn toán / phái sinh và thay vào đó tập trung vào thực hiện và thực tiễn. Kể từ đó, tôi đã bắt đầu quay lại để nghiên cứu một số lý thuyết cơ bản, và đã xem lại một số bài giảng của Giáo sư Ng. Tôi đã đọc qua bài giảng của ông về "Hồi quy tuyến tính thường xuyên" và thấy rằng ông đã đưa ra hàm chi phí sau:

J(θ)= =12m[ΣTôi= =1m(hθ(x(Tôi))-y(Tôi))2+λΣj= =1nθj2]

Sau đó, anh ta đưa ra độ dốc sau cho hàm chi phí này:

θjJ(θ)= =1m[ΣTôi= =1m(hθ(x(Tôi))-y(Tôi))xj(Tôi)-λθj]

Tôi hơi bối rối về cách anh ấy đi từ người này sang người khác. Khi tôi cố gắng thực hiện đạo hàm của riêng mình, tôi đã có kết quả như sau:

θjJ(θ)= =1m[ΣTôi= =1m(hθ(x(Tôi))+y(Tôi))xj(Tôi)+λθj]

Sự khác biệt là dấu 'cộng' giữa hàm chi phí ban đầu và tham số chính quy trong công thức của giáo sư Ng thay đổi thành dấu 'trừ' trong hàm gradient của anh ta, trong khi điều đó không xảy ra trong kết quả của tôi.

Theo trực giác tôi hiểu lý do tại sao nó âm tính: chúng tôi đang giảm tham số theta bằng con số gradient và chúng tôi muốn tham số chính quy giảm số lượng mà chúng tôi đang thay đổi tham số để tránh bị quá mức. Tôi chỉ bị mắc kẹt một chút về tính toán ủng hộ trực giác này.

FYI, bạn có thể tìm thấy bộ bài ở đây , trên các slide 15 và 16.


1
Trong kết quả của bạn, bạn có " + " trước y ^ (i) - đó có phải là một lỗi đánh máy không?
Steve S

Câu trả lời:


12

J(θ)= =12m[ΣTôi= =1m(hθ(x(Tôi))-y(Tôi))2+λΣj= =1nθj2]

Hiện nay

θj(hθ(x(Tôi))-y(Tôi))2= =2[(hθ(x(Tôi))-y(Tôi))θj{hθ(x(Tôi))}]

Lưu ý rằng trong mô hình tuyến tính (đang được thảo luận trên các trang bạn đề cập),θj(hθ(x(Tôi))= =[x(Tôi)]j

θjλΣj= =1nθ2= =2λθj

Vì vậy, đối với trường hợp tuyến tính

θjJ(θ)= =1m[ΣTôi= =1m(hθ(x(Tôi))-y(Tôi))xj(Tôi)+λθj]

Có vẻ như có lẽ cả bạn và Andrew đều có thể mắc lỗi chính tả. Chà, ít nhất hai trong số ba chúng tôi dường như.


nó đã được xác nhận, chỉ là một lỗi đánh máy trên ghi chú của Andrew, nó phải là dấu +. Và Prof giải thích chính xác mọi thứ một cách chính xác bao gồm cả trực giác θ (1 - α (λ / m)) nghĩa là mỗi khi điều này co lại θ sau đó trừ đi phần thông thường trước khi đưa ra quy tắc chính quy.
Gob00st


1

Thật ra, tôi nghĩ đó chỉ là một lỗi đánh máy.

Trên slide # 16, anh ta viết đạo hàm của hàm chi phí (với thuật ngữ chính quy) đối với theta nhưng nó nằm trong ngữ cảnh của thuật toán Gradient Descent . Do đó, anh ta cũng nhân hệ số phái sinh này với . Lưu ý: Trên dòng thứ hai (của slide 16) anh ta có (như bạn đã viết), nhân với . Tuy nhiên, ở dòng thứ ba, thuật ngữ nhân vẫn còn âm mặc dù - nếu dòng thứ hai đúng - các dấu hiệu tiêu cực sẽ bị hủy bỏ.-α-λθ-α

Có lý?

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.