วิธีใช้คำสั่ง proc glmselect ใน sas
คุณสามารถใช้คำสั่ง PROC GLMSELECT ใน SAS เพื่อเลือกแบบจำลองการถดถอยที่ดีที่สุดโดยพิจารณาจากรายการตัวแปรตัวทำนายที่เป็นไปได้
ตัวอย่างต่อไปนี้แสดงวิธีใช้คำสั่งนี้ในทางปฏิบัติ
ตัวอย่าง: วิธีใช้ PROC GLMSELECT ใน SAS สำหรับการเลือกรุ่น
สมมติว่าเราต้องการปรับโมเดลการถดถอยเชิงเส้นพหุคูณโดยใช้ (1) จำนวนชั่วโมงที่ใช้ในการศึกษา (2) จำนวนข้อสอบเตรียมสอบ และ (3) เพศในการทำนายการสอบเกรดปลายภาคของนักเรียน
ขั้นแรก เราจะใช้โค้ดต่อไปนี้เพื่อสร้างชุดข้อมูลที่มีข้อมูลนี้สำหรับนักเรียน 20 คน:
/*create dataset*/ data exam_data; input hours prep_exams gender $score; datalines ; 1 1 0 76 2 3 1 78 2 3 0 85 4 5 0 88 2 2 0 72 1 2 1 69 5 1 1 94 4 1 0 94 2 0 1 88 4 3 0 92 4 4 1 90 3 3 1 75 6 2 1 96 5 4 0 90 3 4 0 82 4 4 1 85 6 5 1 99 2 1 0 83 1 0 1 62 2 1 0 76 ; run ; /*view dataset*/ proc print data =exam_data;
ต่อไป เราจะใช้คำสั่ง PROC GLMSELECT เพื่อระบุชุดย่อยของตัวแปรทำนายที่สร้างแบบจำลองการถดถอยที่ดีที่สุด:
/*perform model selection*/
proc glmselect data =exam_data;
classgender ;
model score = hours prep_exams gender;
run ;
หมายเหตุ : เรารวม เพศ ไว้ในคำสั่ง class เนื่องจากเป็นตัวแปรประเภท
ตารางกลุ่มแรกในเอาต์พุตจะแสดงภาพรวมของขั้นตอน GLMSELECT:
เราจะเห็นว่าเกณฑ์ที่ใช้ในการหยุดการเพิ่มหรือลบตัวแปรออกจากโมเดลคือ SBC ซึ่งเป็น เกณฑ์ข้อมูล Schwarz ซึ่งบางครั้งเรียกว่า เกณฑ์ข้อมูลแบบเบย์
โดยพื้นฐานแล้ว คำสั่ง PROC GLMSELECT จะเพิ่มหรือลบตัวแปรออกจากโมเดลต่อไปจนกว่าจะพบโมเดลที่มีค่า SBC ต่ำที่สุด ซึ่งถือเป็นโมเดลที่ “ดีที่สุด”
กลุ่มตารางต่อไปนี้แสดงวิธีการสิ้นสุดการเลือกทีละขั้นตอน:
เราจะเห็นว่าแบบจำลองที่มีเฉพาะคำดั้งเดิมนั้นมีค่า SBC เท่ากับ 93.4337
เมื่อเพิ่มชั่วโมงเป็นตัวแปรทำนายในโมเดล ค่า SBC จะลดลงเหลือ 70.4452
วิธีที่ดีที่สุดในการปรับปรุงโมเดลคือการเพิ่มเพศเป็นตัวแปรทำนาย แต่จริงๆ แล้วเพิ่มค่า SBC เป็น 71.7383
ดังนั้นแบบจำลองสุดท้ายจึงรวมเฉพาะคำสกัดกั้นและเวลาที่ศึกษาเท่านั้น
ส่วนสุดท้ายของผลลัพธ์จะแสดงบทสรุปของแบบจำลองการถดถอยที่พอดีนี้:
เราสามารถใช้ค่าในตาราง การประมาณค่าพารามิเตอร์ เพื่อเขียนแบบจำลองการถดถอยที่ติดตั้ง:
คะแนนสอบ = 67.161689 + 5.250257 (ชั่วโมงเรียน)
นอกจากนี้เรายังสามารถดูตัวชี้วัดต่างๆ ที่บอกเราว่าโมเดลนี้เหมาะสมกับข้อมูลได้ดีเพียงใด:
ค่า R-Square บอกเราถึงเปอร์เซ็นต์ของการเปลี่ยนแปลงของคะแนนสอบ ซึ่งสามารถอธิบายได้ด้วยจำนวนชั่วโมงที่เรียนและจำนวนการสอบเพื่อเตรียมสอบ
ในกรณีนี้ 72.73% ของการเปลี่ยนแปลงของคะแนนสอบสามารถอธิบายได้ด้วยจำนวนชั่วโมงเรียนและจำนวนการสอบเพื่อเตรียมสอบ
ค่า Root MSE ยังมีประโยชน์ในการทราบอีกด้วย นี่แสดงถึงระยะห่างเฉลี่ยระหว่างค่าที่สังเกตได้กับเส้นถดถอย
ในแบบจำลองการถดถอยนี้ ค่าที่สังเกตได้จะเบี่ยงเบนโดยเฉลี่ย 5.28052 หน่วยจากเส้นการถดถอย
หมายเหตุ : โปรดดู เอกสารประกอบของ SAS สำหรับรายการอาร์กิวเมนต์ที่เป็นไปได้ทั้งหมดที่คุณสามารถใช้กับ PROC GLMSELECT
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานทั่วไปอื่นๆ ใน SAS:
วิธีดำเนินการถดถอยเชิงเส้นอย่างง่ายใน SAS
วิธีดำเนินการถดถอยเชิงเส้นพหุคูณใน SAS
วิธีดำเนินการถดถอยพหุนามใน SAS
วิธีดำเนินการถดถอยโลจิสติกใน SAS