ฉันใช้ LASSO ที่มีตัวแปลตัวแปรเด็ดขาดและตัวต่อเนื่องบางตัว ฉันมีคำถามเกี่ยวกับตัวแปรเด็ดขาด ขั้นตอนแรกที่ฉันเข้าใจคือการแบ่งพวกเขาแต่ละคนออกเป็นหุ่นจำลองพวกเขาให้เป็นมาตรฐานสำหรับการลงโทษที่เป็นธรรมจากนั้นถอยกลับ มีหลายตัวเลือกสำหรับจัดการกับตัวแปรจำลอง:
รวมถึงหุ่นทั้งหมดยกเว้นหุ่นตัวใดตัวหนึ่งสำหรับแต่ละปัจจัยโดยปล่อยให้สิ่งนั้นอยู่ในระดับอ้างอิง การตีความสัมประสิทธิ์ดัมมี่นั้นสัมพันธ์กับหมวดหมู่ "อ้างอิง" ที่ยกเว้น ขณะนี้การสกัดกั้นเป็นการตอบสนองเฉลี่ยสำหรับหมวดหมู่อ้างอิง
จัดกลุ่มตัวแปรในแต่ละปัจจัยดังนั้นพวกมันจึงถูกยกเว้นหรือรวมอยู่ด้วย ฉันเชื่อว่านั่นคือสิ่งที่ @Glen_b กำลังแนะนำที่นี่ :
โดยปกติแล้วคุณเก็บปัจจัยทั้งหมดไว้ด้วยกัน มีแพ็คเกจ R หลายที่สามารถทำได้รวมถึง glmnet
รวมทุกระดับตามที่แนะนำโดย @Andrew M ที่นี่ :
คุณอาจต้องการเปลี่ยนฟังก์ชั่นคอนทราสต์เริ่มต้นซึ่งโดยปกติแล้วจะแยกระดับหนึ่งของแต่ละปัจจัยออกมา แต่เนื่องจากการลงโทษด้วยเชือกทำให้ไม่จำเป็นต้องระบุตัวตนอีกต่อไปและในความเป็นจริงแล้วการตีความตัวแปรที่เลือกมีความซับซ้อนมากขึ้น เมื่อต้องการทำสิ่งนี้ให้ตั้งค่า
contr.Dummy <- function(contrasts, ...){ conT <- contr.treatment(contrasts=FALSE, ...) conT } options(contrasts=c(ordered='contr.Dummy', unordered='contr.Dummy'))
ตอนนี้ไม่ว่าคุณจะเลือกระดับของปัจจัยใดคุณสามารถคิดว่ามันเป็นการเสนอแนะว่าระดับเฉพาะเหล่านี้มีความสำคัญเมื่อเทียบกับระดับที่ข้ามไปทั้งหมด ในการเรียนรู้ของเครื่องฉันได้เห็นการเข้ารหัสนี้เรียกว่าการเข้ารหัสแบบร้อนแรง
คำถาม:
- การตีความของการสกัดกั้นและค่าสัมประสิทธิ์ภายใต้วิธีการเหล่านี้แต่ละวิธีคืออะไร?
- สิ่งที่ต้องพิจารณาในการเลือกหนึ่งในนั้นคืออะไร?
- เราไม่ได้ปรับค่าสัมประสิทธิ์ dummy แล้วตีความว่าเป็นการเปลี่ยนจากไปเป็น on หรือไม่?