การถดถอยคือจุดที่แบบจำลองทำนายตัวเลข
การถดถอยคืออะไร?
การถดถอยทำงานโดยการสร้างความสัมพันธ์ระหว่างตัวแปรในข้อมูลที่แสดงถึงคุณลักษณะ — ที่เรียกว่า คุณลักษณะ— ของสิ่งที่ถูกสังเกต และตัวแปรที่เราพยายามคาดการณ์ — ที่เรียกว่า ป้ายกำกับ .
ตัวอย่างเช่น หากบริษัทที่เช่าจักรยานต้องการคาดการณ์จำนวนการเช่าที่คาดหวังในวันที่กำหนด แบบจำลองการถดถอยสามารถทำนายจำนวนนี้ได้ ในกรณีนี้ คุณลักษณะต่างๆ จะรวมถึงสิ่งต่างๆ เช่น วันในสัปดาห์ เดือน และอื่นๆ ในขณะที่ป้ายกำกับคือจำนวนจักรยานที่เช่า
ในการฝึกโมเดล เราเริ่มต้นด้วยตัวอย่างข้อมูลที่มีคุณสมบัติต่างๆ รวมถึงค่าที่ทราบสำหรับป้ายกำกับ ดังนั้น ในกรณีนี้ เราต้องการข้อมูลในอดีตซึ่งประกอบด้วยวันที่ สภาพอากาศ และจำนวนจักรยานเช่า
จากนั้นเราจะแบ่งตัวอย่างข้อมูลนี้ออกเป็นสองชุดย่อย:
- ชุดข้อมูลการฝึกอบรมที่เราจะใช้อัลกอริทึมที่กำหนดฟังก์ชันที่สรุปความสัมพันธ์ระหว่างค่าคุณลักษณะและค่าป้ายกำกับที่รู้จัก
- ชุดข้อมูลการตรวจสอบหรือการทดสอบที่เราสามารถใช้เพื่อประเมินแบบจำลองโดยใช้เพื่อสร้างการคาดการณ์สำหรับป้ายกำกับและเปรียบเทียบกับค่าป้ายกำกับที่ทราบจริง
การใช้ข้อมูลประวัติที่มีค่าป้ายกำกับที่รู้จักในการฝึกโมเดลทำให้การถดถอยเป็นตัวอย่างของแมชชีนเลิร์นนิงที่มีการควบคุมดูแล
ตัวอย่างง่ายๆ
สมมติว่าเราทำให้สถานการณ์ง่ายขึ้นเพื่อที่เราจะใช้คุณลักษณะเดียว — อุณหภูมิเฉลี่ยรายวัน — เพื่อคาดการณ์ป้ายเช่าจักรยาน เราเริ่มต้นด้วยข้อมูลบางอย่างซึ่งรวมถึงค่าที่ทราบสำหรับคุณลักษณะอุณหภูมิเฉลี่ยรายวันและป้ายเช่าจักรยาน
Temperature Rentals 56 115 61 126 67 137 72 140 76 152 82 156 54 114 62 129
ตอนนี้เราจะสุ่มเลือกข้อสังเกตเหล่านี้ห้ารายการและใช้เพื่อฝึกแบบจำลองการถดถอย เมื่อเรากำลังพูดถึง "การฝึกโมเดล" สิ่งที่เราหมายถึงคือการหาฟังก์ชัน (สมการทางคณิตศาสตร์ เรียกว่า f) ที่สามารถใช้คุณลักษณะอุณหภูมิได้ (ซึ่งเราจะเรียกว่า x) เพื่อคำนวณจำนวนการเช่า (ซึ่งเราจะเรียกว่า y) กล่าวอีกนัยหนึ่ง เราจำเป็นต้องกำหนดฟังก์ชันต่อไปนี้: f(x) = y
ชุดข้อมูลการฝึกอบรมของเรามีลักษณะดังนี้:
x y 56 115 61 126 67 137 72 140 76 152
เริ่มต้นด้วยการวางแผนค่าการฝึกสำหรับ x และ y บนแผนภูมิ:
ตอนนี้เราจำเป็นต้องปรับค่าเหล่านี้ให้พอดีกับฟังก์ชัน เพื่อให้เกิดการแปรผันแบบสุ่ม คุณอาจเห็นว่าจุดที่วาดไว้นั้นกลายเป็นเส้นทแยงมุมเกือบเป็นเส้นตรง กล่าวอีกนัยหนึ่ง มี ความสัมพันธ์เชิงเส้น ที่ชัดเจนระหว่าง x และ y ดังนั้นเราจึงจำเป็นต้องค้นหาฟังก์ชันเชิงเส้นที่เหมาะสมที่สุดสำหรับข้อมูล ตัวอย่าง. มีอัลกอริธึมต่างๆ ที่เราสามารถใช้เพื่อกำหนดฟังก์ชันนี้ ซึ่งท้ายที่สุดแล้วจะพบเส้นตรงที่มีความแปรปรวนโดยรวมน้อยที่สุดจากจุดที่วางแผนไว้ เช่นนี้
เส้นนี้แสดงถึงฟังก์ชันเชิงเส้นที่สามารถใช้กับค่าใดๆ ของ x เพื่อใช้ ความชันของเส้น และ จุดตัด (โดยที่เส้นนี้ ข้ามแกน y เมื่อ x เป็น 0) เพื่อคำนวณ y ในกรณีนี้ หากเราขยายเส้นไปทางซ้าย เราจะพบว่าเมื่อ x เป็น 0 y จะอยู่ที่ประมาณ 20 และความชันของเส้นเป็นเช่นนั้น ว่าสำหรับแต่ละหน่วยของ x คุณเลื่อนไปทางขวา y จะเพิ่มขึ้นประมาณ 1.7 ดังนั้นเราจึงสามารถคำนวณฟังก์ชัน f ของเราเป็น 20 + 1.7x
ตอนนี้เราได้กำหนดฟังก์ชันการทำนายของเราแล้ว เราสามารถใช้มันเพื่อทำนายป้ายกำกับสำหรับข้อมูลการตรวจสอบความถูกต้องที่เราเก็บไว้ และเปรียบเทียบค่าที่ทำนายไว้ (ซึ่งโดยทั่วไปเราจะระบุด้วยสัญลักษณ์ ŷ หรือ “y- hat”) ด้วยค่า y ที่ทราบจริง
x y ŷ 82 156 159.4 54 114 111.8 62 129 125.4
มาดูกันว่าค่า y และ ŷ เปรียบเทียบกันอย่างไรในพล็อต:
จุดที่ลงจุดซึ่งอยู่บนบรรทัดฟังก์ชันคือค่าŷที่ทำนายไว้ซึ่งคำนวณโดยฟังก์ชัน และจุดอื่นๆ ที่ลงจุดคือค่า y จริง
มีหลายวิธีที่เราสามารถวัดความแปรปรวนระหว่างค่าที่คาดการณ์กับค่าจริง และเราสามารถใช้เมตริกเหล่านี้เพื่อประเมินว่าแบบจำลองคาดการณ์ได้ดีเพียงใด
แมชชีนเลิร์นนิงมีพื้นฐานมาจากสถิติและคณิตศาสตร์ และสิ่งสำคัญคือต้องคำนึงถึงคำศัพท์เฉพาะที่นักสถิติและนักคณิตศาสตร์ (และนักวิทยาศาสตร์ข้อมูล) ใช้ คุณสามารถนึกถึงความแตกต่างระหว่างค่าป้ายกำกับ ที่คาดการณ์ และค่าป้ายกำกับ จริง เพื่อเป็นการวัดข้อผิดพลาด อย่างไรก็ตาม ในทางปฏิบัติ ค่า "จริง" จะขึ้นอยู่กับการสังเกตตัวอย่าง (ซึ่งตัวมันเองอาจมีความแปรปรวนแบบสุ่มบ้าง)
เพื่อให้ชัดเจนว่าเรากำลังเปรียบเทียบค่า ที่คาดการณ์ (ŷ) กับค่า ที่สังเกตได้ (y) เราเรียกความแตกต่างระหว่างสิ่งเหล่านั้นว่าสิ่งตกค้าง เราสามารถสรุปผลคงเหลือสำหรับการคาดการณ์ข้อมูลการตรวจสอบความถูกต้องทั้งหมดเพื่อคำนวณ การสูญเสีย โดยรวมในแบบจำลองเพื่อใช้เป็นการวัดประสิทธิภาพในการคาดการณ์
วิธีหนึ่งที่ใช้กันทั่วไปในการวัดการสูญเสียคือการยกกำลังสองส่วนที่เหลือแต่ละรายการ รวมกำลังสอง และคำนวณค่าเฉลี่ย การยกกำลังสองส่วนที่เหลือมีผลต่อการคำนวณตามค่า สัมบูรณ์ (โดยไม่สนใจว่าผลต่างเป็นลบหรือบวก) และให้น้ำหนักมากขึ้นกับผลต่างที่มากขึ้น หน่วยวัดนี้เรียกว่า ข้อผิดพลาดกำลังสองเฉลี่ย
สำหรับข้อมูลการตรวจสอบของเรา การคำนวณจะมีลักษณะดังนี้:
y ŷ y - ŷ (y - ŷ)² 156 159.4 -3.4 11.56 114 111.8 2.2 4.84 129 125.4 3.6 12.96 Sum ∑ 29.36 Mean μ 9.79
ดังนั้น การสูญเสียสำหรับโมเดลของเราตามหน่วยเมตริก MSE คือ 9.79
แล้วมันดีมั้ยล่ะ? เป็นการยากที่จะบอกได้ เนื่องจากค่า MSE ไม่ได้แสดงเป็นหน่วยการวัดที่มีความหมาย เรารู้ว่ายิ่งค่าต่ำ การสูญเสียในแบบจำลองก็จะยิ่งน้อยลง ดังนั้น การคาดการณ์ก็จะยิ่งดีขึ้นเท่านั้น ซึ่งทำให้เป็นเมตริกที่มีประโยชน์ในการเปรียบเทียบสองโมเดลและค้นหาโมเดลที่ทำงานได้ดีที่สุด
บางครั้ง การแสดงการสูญเสียในหน่วยการวัดเดียวกันกับค่าป้ายกำกับที่คาดการณ์ไว้นั้น ในกรณีนี้คือจำนวนค่าเช่าจะมีประโยชน์มากกว่า คุณสามารถทำได้โดยการคำนวณรากที่สองของ MSE ซึ่งสร้างหน่วยเมตริกที่รู้จักกันในชื่อ ข้อผิดพลาด Root Mean Squared Error (RMSE) อย่างไม่น่าแปลกใจ
√9.79 = 3.13
ดังนั้น RMSE ของแบบจำลองของเราบ่งชี้ว่าการสูญเสียนั้นมากกว่า 3 ซึ่งคุณสามารถตีความได้อย่างหลวมๆ ว่าหมายความว่าโดยเฉลี่ยแล้ว การคาดการณ์ที่ไม่ถูกต้องจะผิดประมาณสามครั้ง
มีตัวชี้วัดอื่นๆ อีกมากมายที่สามารถใช้วัดการสูญเสียในการถดถอยได้ ตัวอย่างเช่น R² (R-Squared) (บางครั้งเรียกว่า สัมประสิทธิ์การกำหนด) คือความสัมพันธ์ระหว่าง x และ y กำลังสอง สิ่งนี้จะสร้างค่าระหว่าง 0 ถึง 1 เพื่อวัดจำนวนความแปรปรวนที่แบบจำลองสามารถอธิบายได้ โดยทั่วไป ยิ่งค่านี้เข้าใกล้ 1 มากเท่าใด โมเดลก็จะคาดการณ์ได้ดีขึ้นเท่านั้น
ถัดไป ›› ฝึกและประเมินแบบจำลองการถดถอย (2/4)