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


28

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

βlasso=argminβ⁡‖y−Xβ‖22+α‖β‖1
βjlasso=sgn(βjLS)(|βjLS|−α)+
X

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

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

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

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

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

ตอบ:

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

f(β)=‖y−Xβ‖22+α‖β‖1
=yTy−2β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|)−2∑i=1,i≠jp(XTX)jiβi

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

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


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

คำตอบ:


16

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

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

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

f(β)=∑i=1nyi2−2∑i=1nyiXiβ+∑i=1nβTXiTXiβ+α∑j=1p|βj|

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

Xiβ=βTXiT=(β1Xi1+β2Xi2+⋯+βpXip)
ดังนั้นคุณสามารถเขียนคำกำลังสองของคุณเป็นหลักได้: ตอนนี้เราสามารถใช้กฎลูกโซ่เพื่อคำนวณอนุพันธ์ของ wrt :
∑i=1nβTXiTXiβ=∑i=1n(Xiβ)2
βj
∂∂βj∑i=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.