ฟังก์ชันต้นทุนในการถดถอยเชิงเส้น OLS


31

ฉันสับสนเล็กน้อยกับการบรรยายเกี่ยวกับการถดถอยเชิงเส้นที่ Andrew Ng ให้กับ Coursera เกี่ยวกับการเรียนรู้ของเครื่อง ที่นั่นเขาได้จัดทำฟังก์ชั่นต้นทุนที่จะลดผลรวมของกำลังสองเป็น:

12mi=1m(hθ(X(i))Y(i))2

ฉันเข้าใจว่ามาจากไหน ฉันคิดว่าเขาทำเพื่อที่ว่าเมื่อเขาทำอนุพันธ์บนเทอมสแควร์, 2 ในเทอมสแควร์จะยกเลิกด้วยครึ่งหนึ่ง แต่ฉันไม่เข้าใจว่ามาจากไหน 1121m

ทำไมเราต้องทำ ? ในการถดถอยเชิงเส้นมาตรฐานเราไม่มีมันเราแค่ลดจำนวนเหลือ ทำไมเราต้องการที่นี่?1m


1 / 2m ช่วยในการค้นหาข้อผิดพลาดเฉลี่ยต่อจุดข้อมูลและ m หมายถึงการสังเกตทั้งหมดหรือจำนวนการสังเกต
Krishnan Achary

คำตอบ:


33

ตามที่คุณเห็นว่าเราไม่จำเป็นต้องใช้ปัจจัยในการถดถอยเชิงเส้น ตัวย่อขนาดเล็กสุดจะเหมือนกันทั้งที่มีและไม่มีมัน เหตุผลทั่วไปหนึ่งข้อในการทำให้เป็นมาตรฐานโดยคือเพื่อให้เราสามารถดูฟังก์ชันต้นทุนเป็นค่าประมาณของ "ข้อผิดพลาดทั่วไป" ซึ่งเป็นผลขาดทุนสแควร์ที่คาดหวังจากตัวอย่างใหม่ที่เลือกแบบสุ่ม (ไม่ใช่ในชุดฝึกอบรม):m1/mm

สมมติว่ามีการสุ่มตัวอย่าง iid จากบางคน การกระจาย สำหรับขนาดใหญ่เราคาดหวังว่า m 1(X,Y),(X(1),Y(1)),,(X(m),Y(m))m

1mi=1m(hθ(X(i))Y(i))2E(hθ(X)Y)2.

แม่นยำยิ่งขึ้นตามกฎหมายที่แข็งแกร่งของคนจำนวนมากเรามี ด้วยความน่าจะเป็น 1

limm1mi=1m(hθ(X(i))Y(i))2=E(hθ(X)Y)2

หมายเหตุ: แต่ละข้อความข้างต้นมีไว้สำหรับใด ๆ โดยเลือกโดยไม่ดูที่ชุดฝึกอบรม สำหรับการเรียนรู้ของเครื่องจักรเราต้องการให้ข้อความเหล่านี้มีไว้สำหรับเลือกตามประสิทธิภาพที่ดีในชุดฝึกอบรม การอ้างสิทธิ์เหล่านี้ยังคงสามารถเกิดขึ้นได้ในกรณีนี้แม้ว่าเราจำเป็นต้องตั้งสมมติฐานบางอย่างเกี่ยวกับชุดฟังก์ชั่นและเราต้องการอะไรที่แข็งแกร่งกว่ากฎหมาย ของตัวเลขขนาดใหญ่ θ { ชั่วโมงθθθ^{hθ|θΘ}


1
@StudentT นี่อาจเป็นเหตุผลที่ดีที่สุดในการใช้ข้อผิดพลาดเฉลี่ยโดยรวม คำอธิบายของฉันเป็นเพียงผลลัพธ์ระดับพื้นผิวเนื่องจากเหตุผลที่ลึกกว่าของ DavidR
แมทธิวดรูรี่

28

คุณไม่ต้องไป ฟังก์ชันการสูญเสียมีค่าต่ำสุดเหมือนกันไม่ว่าคุณจะใส่หรือไม่ก็ตาม หากคุณรวมไว้คุณจะได้รับการตีความที่ดีในการลดข้อผิดพลาดโดยเฉลี่ย (ครึ่งหนึ่ง) ต่อดาต้าพอยน์ อีกวิธีหนึ่งคุณลดอัตราข้อผิดพลาดให้น้อยที่สุดแทนที่จะเป็นข้อผิดพลาดทั้งหมด1m

พิจารณาเปรียบเทียบประสิทธิภาพกับชุดข้อมูลสองขนาดที่แตกต่างกัน ผลรวมดิบของข้อผิดพลาดกำลังสองนั้นไม่สามารถเปรียบเทียบกันได้โดยตรงเนื่องจากชุดข้อมูลขนาดใหญ่มักจะมีข้อผิดพลาดทั้งหมดมากกว่าเนื่องจากขนาดของชุดข้อมูลนั้น ในทางกลับกันข้อผิดพลาดเฉลี่ยต่อ DataPoint คือ

คุณอธิบายรายละเอียดเล็กน้อยได้ไหม?

แน่ใจ ชุดข้อมูลของคุณเป็นคอลเลกชันของจุดข้อมูล\} เมื่อคุณมีโมเดลแล้วข้อผิดพลาดกำลังสองน้อยที่สุดของบนจุดข้อมูลเดียวคือh h{xi,yi}hh

(h(xi)yi)2

แน่นอนนี่แตกต่างกันไปสำหรับแต่ละดาต้าพอยน์ ตอนนี้ถ้าเราสรุปข้อผิดพลาด (และคูณครึ่งด้วยเหตุผลที่คุณอธิบาย) เราจะได้รับข้อผิดพลาดทั้งหมด

12i(h(xi)yi)2

แต่ถ้าเราหารด้วยจำนวนการสรุปเราจะได้รับข้อผิดพลาดเฉลี่ยต่อจุดข้อมูล

12mi(h(xi)yi)2

ประโยชน์ของข้อผิดพลาดเฉลี่ยคือว่าถ้าเรามีสองชุดข้อมูลและของdiffereing ขนาดแล้วเราสามารถเปรียบเทียบข้อผิดพลาดเฉลี่ย แต่ไม่ใช่ข้อผิดพลาดทั้งหมด สำหรับถ้าชุดข้อมูลที่สองคือพูดขนาดของชุดข้อมูลแรกเป็นสิบเท่าจากนั้นเราคาดว่าข้อผิดพลาดทั้งหมดจะใหญ่ขึ้นประมาณสิบเท่าสำหรับรุ่นเดียวกัน ในทางกลับกันข้อผิดพลาดเฉลี่ยจะแบ่งผลกระทบของขนาดของชุดข้อมูลออกดังนั้นเราคาดว่าแบบจำลองของประสิทธิภาพที่คล้ายคลึงกันจะมีข้อผิดพลาดเฉลี่ยที่คล้ายกันในชุดข้อมูลที่แตกต่างกัน{ x i , y i }{xi,yi}{xi,yi}


1
ฉันสามารถติดตามคุณได้คุณสามารถอธิบายรายละเอียดเล็กน้อยได้ไหม? ขออภัยฉันยังใหม่กับการเรียนรู้ของเครื่อง!
SmallChess

@ นักเรียนฉันพยายามชี้แจงในคำตอบของฉัน
แมทธิวดรูรี่

1
เช่นเดียวกันหากคุณเกิดการทดลองกับขนาดมินิ - แบทช์เมื่อทำการทำ stochastic gradient descent ซึ่งเป็นชนิดที่ใช้กันมากที่สุดของการไล่ระดับสีเชิงเส้นเมื่อทำงานกับชุดข้อมูลขนาดใหญ่: คุณสามารถเปรียบเทียบข้อผิดพลาดได้ง่ายขึ้น
jasonszhao
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.