เมื่อความผิดพลาดกำหนดชะตา Linear Regression

หมายเหตุ ผู้อ่านสามารถดู table of contents ของบทความ machine learning ได้ที่ https://goo.gl/BExvUQ

ในบทความนี้ทำความรู้จักความผิดพลาดที่ส่งผลกับการประเมิน linear regression model ว่า model ที่เราได้นั้นจะได้ไปต่อหรือไม่ ซึ่งประเภทของความผิดพลาดใน statistics learning มีอยู่ด้วยกัน 2 ประเภทคือ reducible error และ irreducible error

reducible error หรือ residuals คือค่าความผิดพลาดที่สามารถปรับปรุงขบวนการคำนวนเพื่อปรับให้ค่าดังกล่าวให้น้อยลงได้ ซึ่งจากการทดสอบ linear regression model ในบทความก่อนหน้าจะเห็นได้ว่า เราทำการคำนวนค่าความผิดพลาด residuals โดยเทียบกันระหว่างค่า Y ซึ่งเป็นค่าจริงที่มีความสัมพันธ์กับค่า X และค่า ^Y ที่ได้มาจากการทำนายเมื่อใส่ X เป็น input และคำนวนเข้ากับค่า ^B0 และ ^B1 ซึ่งเป็นค่าประมาณเพื่อพลักดันให้ ^Y ใกล้กับ Y เมื่อใช้ X ตัวเดียวกัน

ตัวอย่าง residuals

จากรูป residuals จะแทนด้วยเส้นสีเทาซึ่งลากจากจุดสีแดงนั้นคือ Y ไปยังเส้นสีนํ้าเงินซึ่งก็คือ liner line หรือ ^Y ที่ได้จากการคำนวน โดยตัว residuals นี้สามารถทำให้ลดลงได้โดยใช้เทคนิคทาง statistics ต่างๆเข้ามาช่วยปรับค่า ^B0 และ ^B1 ให้ใกล้กับ B0 และ B1 แต่ถึงเราจะใช้กำลังภายในมากเพียงใดหรือแม้ว่าเราจะคำนวนจน ^B0 และ ^B1 เท่ากับ B0 และ B1 ได้เราก็ไม่มีวันทำให้ Y = ^Y ได้ นั้นก็เพราะเราถูกดึงไว้ด้วยค่า irreducible error ซึ่งเป็นค่าความผิดพลาดที่เราไม่สามารถตัดมันออกไปได้เพราะมันคือ error terms ที่อยู่ในสูตรฉบับเต็มของ linear regression function นั้นเอง

population regression line

เหตุที่เกิด error terms ก็ด้วยเพราะว่าข้อมูลหรือ data set ที่เรานำมาทำการวิเคราะห์นั้นเป็นเพียง sample ของ population data ทั้งหมดเท่านั้น ซึ่งตัว residuals ที่ได้กล่าวไปนั้นก็คือค่าความผิดพลาดที่เกิดขึ้นใน sample data นี้เท่านั้น เท่ากับว่าต่อให้เราทำนายค่า ^Y จาก model ที่เราได้จากการคำนวน data set ยังไงก็ไม่มีทางครอบคลุม population data ทั้งหมดได้

แม้ว่าเราจะกำจัด error terms ให้หายไปไม่ได้แต่เราก็ยังสามารถหาประโยชน์จากการมีอยู่ของมันได้ โดยในกรณีของ linear regression นี้เราสามารถหาค่า standard deviation ของ error terms เพื่อวัดว่าความผิดพลาดประมาณไหนเราสามารถรับได้และรับไม่ได้ โดยจะใช้สูตรของ Residual Standard Error เพื่อหาค่าดังกล่าว

Residual Standard Error
residual sum of squares

ในที่นี้ของยกเอาตัวอย่างของค่า RSS ในบทความ ทฤษฎี Linear Regression เบื้องต้น( https://goo.gl/j9FcaJ) มาต่อยอดกันนะครับ โดยค่า RSS ที่ได้จะเท่ากัน 25 และค่า n จะเท่ากับ 5 โดยเมื่อทำการคำนวนด้วยสูตร RSE จะได้ผลลัพธ์ออกมาว่า RSE ของ data set ดังกล่าวอยู่ที่ 2.88 กล่าวโดยสรุปได้ว่า ทุกๆการคำนายค่า ^Y จะมี deviation จาก mean ของ Y อยู่ประมาณ 2.88 คิดเป็น % ความผิดพลาดได้ว่าถ้า mean ของ sale อยู่ที่ 80.2 ดังนั้น 2.88 / 80.2 = 3.59% ซึ่งเมื่อแทนค่ากลับเข้าไปในสูตรจะได้ตามภาพด้านล่าง ส่วนคำถามที่ว่าค่า error ควรอยู่เท่าไรนั้นขึ้นอยู่กับความซีเรียสของโจทย์ที่จะ linear regression ไปใช้งานซึ่งบ้างงานอาจจะต้องการค่าความผิดพลาด deviation ต้องไม่เกิน 1% ส่วนอีกงานรับได้ที่ไม่เกิน 30%

error term เท่ากับ 2.88 ในสูตร linear regression

สุดท้ายนี้ถ้าท่านใดมีข้อสงสัยหรือคำชี้แนะใดๆสามารถฝากข้อความได้ที่ https://www.facebook.com/coeffest/ นะครับ ขอบคุณมากครับที่ติดตาม

อ้างอิง

1.An Introduction to Statistical Learning(http://www-bcf.usc.edu/~gareth/ISL/)

2. https://feliperego.github.io/blog/2015/10/23/Interpreting-Model-Output-In-R