ฉันมีโปรแกรมถดถอยโลจิสติกโดยใช้อัลกอริทึม IRLS ฉันต้องการใช้การลงโทษ LASSOเพื่อเลือกคุณสมบัติที่ถูกต้องโดยอัตโนมัติ ในการวนซ้ำแต่ละครั้งจะมีการแก้ไขดังต่อไปนี้:
ให้เป็นจำนวนจริงที่ไม่ลบ ฉันไม่ได้ทำการลงโทษดักตามที่แนะนำในองค์ประกอบของ การเรียนรู้ทางสถิติ เหมือนกันสำหรับสัมประสิทธิ์เป็นศูนย์อยู่แล้ว มิฉะนั้นฉันจะลบคำหนึ่งออกจากด้านขวา:
อย่างไรก็ตามฉันไม่แน่ใจเกี่ยวกับการปรับเปลี่ยนอัลกอริทึม IRLS มันเป็นวิธีที่ถูกต้องหรือไม่
แก้ไข: แม้ว่าฉันไม่มั่นใจเกี่ยวกับเรื่องนี้ แต่นี่เป็นหนึ่งในวิธีแก้ปัญหาที่ฉันได้รับในที่สุด สิ่งที่น่าสนใจคือโซลูชันนี้สอดคล้องกับสิ่งที่ฉันเข้าใจเกี่ยวกับ LASSO ในขณะนี้ แน่นอนว่ามีสองขั้นตอนในการทำซ้ำแต่ละครั้งแทนที่จะเป็นเพียงขั้นตอนเดียว:
- ขั้นตอนแรกเหมือนกับเมื่อก่อน: เราทำการวนซ้ำของอัลกอริทึม (ราวกับว่าในสูตรสำหรับการไล่ระดับสีด้านบน)
- ขั้นตอนที่สองคือขั้นตอนใหม่: เราใช้ซอฟต์ในแต่ละองค์ประกอบ (ยกเว้น componentซึ่งสอดคล้องกับการสกัดกั้น) ของ vectorได้รับในขั้นตอนแรก นี้เรียกว่าซ้ำอ่อน Thresholding อัลกอริทึม