เหตุใดฉันจึงได้รับโซลูชัน lasso แบบปิดไม่ถูกต้อง


28

ปัญหา lassoมีรูปแบบการปิด: \ beta_j ^ {\ text {lasso}} = \ mathrm {sgn} (\ beta ^ {\ text {LS}} _ j) (| \ beta_j ^ {\ text {LS }} | - \ alpha) ^ + ถ้าXมีคอลัมน์แบบออโธเทนเน็ต นี่ก็แสดงให้เห็นในกระทู้นี้: ที่มาของรูปแบบปิดวิธีการแก้เชือก

βlasso=argminβyXβ22+αβ1
βjlasso=sgn(βjLS)(|βjLS|α)+
X

อย่างไรก็ตามฉันไม่เข้าใจว่าทำไมไม่มีโซลูชันแบบปิดโดยทั่วไป ใช้ subifferentials ฉันได้รับดังต่อไปนี้

( Xคือn×pเมทริกซ์)

f(β)=yXβ22+αβ1
=i=1n(yiXiβ)2+αj=1p|βj|
( Xiคือ i-TH แถวของX )
=i=1nyi22i=1nyiXiβ+i=1nβTXiTXiβ+αj=1p|βj|
fβj=2i=1nyiXij+2i=1nXij2βj+βj(α|βj|)
={2i=1nyiXij+2i=1nXij2βj+α for βj>02i=1nyiXij+2i=1nXij2βjα for βj<0[2i=1nyiXijα,2i=1nyiXij+α] for βj=0
ด้วยfβj=0เราได้รับแล้ว

βj={(2(i=1nyiXij)α)/2i=1nXij2for i=1nyiXij>α(2(i=1nyiXij)+α)/2i=1nXij2for i=1nyiXij<α0 for i=1nyiXij[α,α]

ไม่มีใครเห็นที่ฉันทำผิดไปหรือเปล่า?

ตอบ:

ถ้าเราเขียนปัญหาในรูปของเมทริกซ์เราจะเห็นได้ง่ายมากว่าทำไมสารละลายแบบปิดมีอยู่เฉพาะในกรณี orthonormal ด้วยXTX=I :

f(β)=yXβ22+αβ1
=yTy2βTXTy+βTXTXβ+αβ1
f(β)=2XTy+2XTXβ+(α|β1)
(ฉันได้ดำเนินการหลายขั้นตอนพร้อมกันที่นี่อย่างไรก็ตาม จนถึงจุดนี้สิ่งนี้คล้ายคลึงกับการหาคำตอบของวิธีกำลังสองน้อยที่สุดดังนั้นคุณควรจะสามารถหาขั้นตอนที่หายไปได้ที่นั่น)
fβj=2XjTy+2(XTX)jβ+βj(α|βj|)

ด้วยfβj=0เราได้รับ

2(XTX)jβ=2XjTyβj(α|βj|)
2(XTX)jjβj=2XjTyβj(α|βj|)2i=1,ijp(XTX)jiβi

เราสามารถเห็นได้แล้วว่าโซลูชันของเราสำหรับขึ้นอยู่กับอีกดังนั้นจึงไม่ชัดเจนว่าจะดำเนินการอย่างไรจากที่นี่ ถ้าเป็น orthonormal เรามีดังนั้นจึงมีวิธีแก้ปัญหาแบบปิดในกรณีนี้βjβijX2(XTX)jβ=2(I)jβ=2βj

ขอบคุณGuðmundur Einarsson สำหรับคำตอบของเขาซึ่งฉันได้อธิบายที่นี่ ฉันหวังว่าคราวนี้มันถูกต้อง :-)


3
ยินดีต้อนรับสู่ CrossValidated และขอแสดงความยินดีกับการโพสต์แรกที่ดีมาก !
S. Kolassa - Reinstate Monica

คำตอบ:


16

ซึ่งจะดำเนินการตามปกติกับการถดถอยมุมน้อยคุณสามารถหากระดาษที่นี่

ขออภัยเกี่ยวกับความสับสนในตอนแรกฉันจะลองอีกครั้งในสิ่งนี้

ดังนั้นหลังจากการขยายฟังก์ชั่นของคุณคุณจะได้รับf(β)

f(β)=i=1nyi22i=1nyiXiβ+i=1nβTXiTXiβ+αj=1p|βj|

จากนั้นคุณคำนวณอนุพันธ์บางส่วนที่เกี่ยวกับ\ความกังวลของฉันอยู่ในการคำนวณของคุณของอนุพันธ์บางส่วนของเทอมสุดท้ายก่อน 1-norm นั่นคือเทอมกำลังสอง ตรวจสอบเพิ่มเติม เรามีสิ่งต่อไปนี้:βj

Xiβ=βTXiT=(β1Xi1+β2Xi2++βpXip)
ดังนั้นคุณสามารถเขียนคำกำลังสองของคุณเป็นหลักได้: ตอนนี้เราสามารถใช้กฎลูกโซ่เพื่อคำนวณอนุพันธ์ของ wrt :
i=1nβTXiTXiβ=i=1n(Xiβ)2
βj
βji=1n(Xiβ)2=i=1nβj(Xiβ)2=i=1n2(Xiβ)Xij

ดังนั้นตอนนี้ปัญหาของคุณก็ไม่ได้ทำให้ง่ายขึ้นอย่างง่ายๆเพราะคุณมีสัมประสิทธิ์อยู่ในสมการแต่ละสมการβ

นี่ไม่ได้ตอบคำถามของคุณว่าทำไมไม่มีแบบฟอร์มปิดของ Lasso ฉันอาจเพิ่มบางอย่างในภายหลัง


1
ขอบคุณมาก. ที่จริงฉันสามารถเห็นได้แล้วในขณะนี้ว่าทำไมไม่มีโซลูชันแบบปิด (ดูการแก้ไขของฉัน)
Norbert

หวาน! ผลงานยอดเยี่ยม :)
Gumeo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.