Bayesian lasso กับ Lasso สามัญ


24

ซอฟแวร์การดำเนินงานที่แตกต่างกันสำหรับเชือก ฉันรู้มากพูดคุยเกี่ยวกับวิธีการแบบเบส์เทียบกับวิธีการบ่อยในฟอรั่มที่แตกต่างกัน คำถามของฉันเฉพาะเจาะจงมากกับบ่วงบาศ - อะไรคือความแตกต่างหรือข้อดีของบ่วงเซียนบ่วงบาศกับบ่วงบาศปกติ ?

นี่เป็นสองตัวอย่างของการใช้งานในแพ็คเกจ:

# just example data
set.seed(1233)
X <- scale(matrix(rnorm(30),ncol=3))[,]
set.seed(12333)
Y <- matrix(rnorm(10, X%*%matrix(c(-0.2,0.5,1.5),ncol=1), sd=0.8),ncol=1)

require(monomvn) 
## Lasso regression
reg.las <- regress(X, Y, method="lasso")

## Bayesian Lasso regression
reg.blas <- blasso(X, Y)

ดังนั้นเมื่อใดฉันจึงควรเลือกวิธีใดวิธีหนึ่ง หรือพวกเขาเหมือนกัน?

คำตอบ:


30

เชือกมาตรฐานใช้การปรับให้เป็นมาตรฐานของL1เพื่อให้ได้ Sparsity ในการถดถอย หมายเหตุว่าเรื่องนี้ก็เป็นที่รู้จักกันเป็นเกณฑ์ในการแสวงหา

ในกรอบการทำงานแบบเบย์ทางเลือกของผู้ใช้งานประจำจะคล้ายกับทางเลือกก่อนหน้าของน้ำหนัก หากมีการใช้ Gaussian ก่อนหน้านี้วิธีแก้ปัญหาสูงสุด a Posteriori (MAP) จะเหมือนกับว่าใช้การลงโทษ L2 ในขณะที่ไม่เทียบเท่าโดยตรง Laplace ก่อนหน้า (ซึ่งแหลมอย่างแหลมคมรอบ ๆ ศูนย์ซึ่งแตกต่างจาก Gaussian ที่ราบเรียบรอบศูนย์) สร้างผลการหดตัวเดียวกันกับโทษ L1 บทความนี้อธิบายถึง Bayesian Lasso .

ในความเป็นจริงเมื่อคุณวาง Laplace ไว้ก่อนหน้าพารามิเตอร์ MAP ควรจะเหมือนกัน (ไม่เพียง แต่คล้ายกัน) กับการทำให้เป็นมาตรฐานด้วยการลงโทษ L1 และ Laplace ก่อนหน้าจะให้ผลการหดตัวเหมือนกันกับการลงโทษ L1 อย่างไรก็ตามเนื่องจากการประมาณค่าในขั้นตอนการอนุมานแบบเบย์หรือปัญหาทางตัวเลขอื่น ๆ การแก้ปัญหาอาจไม่เหมือนกัน

ในกรณีส่วนใหญ่ผลลัพธ์ที่ผลิตโดยทั้งสองวิธีจะคล้ายกันมาก ทั้งนี้ขึ้นอยู่กับวิธีการปรับให้เหมาะสมและการใช้งานการประมาณค่าอาจจะมีประสิทธิภาพมากขึ้นในการคำนวณกว่าแบบมาตรฐานแบบเบย์ Bayesian จะสร้างการประมาณช่วงเวลาโดยอัตโนมัติสำหรับพารามิเตอร์ทั้งหมดรวมถึงความแปรปรวนข้อผิดพลาดหากจำเป็นต้องใช้


"ถ้าใช้แบบเกาส์ก่อนหน้านี้วิธีแก้ปัญหาความน่าจะเป็นสูงสุดจะเหมือนกัน .... " วลีที่เน้นควรอ่าน "Maximum A Posteriori (MAP)" เนื่องจากการประเมินความเป็นไปได้สูงสุดจะไม่สนใจการแจกแจงก่อนหน้าเหนือพารามิเตอร์ที่นำไปสู่การแก้ปัญหาที่ไม่สม่ำเสมอในขณะที่การประมาณค่า MAP จะพิจารณาก่อน
mefathy

1
เมื่อคุณวาง Laplace ไว้ก่อนหน้าพารามิเตอร์การแก้ปัญหา MAP จะเหมือนกัน (ไม่เพียง แต่คล้ายกัน) กับการทำให้เป็นปกติด้วยการลงโทษ L1 และ Laplace ก่อนหน้าจะให้ผลการหดตัวเหมือนกันกับการลงโทษ L1
mefathy

@mefathy ใช่คุณคิดถูกทั้งคู่ (ไม่อยากจะเชื่อเลยว่าฉันเขียน ML แทนที่จะเป็น MAP .... ) แม้ว่าแน่นอนว่าในทางปฏิบัติ YMMV ฉันได้อัปเดตคำตอบเพื่อรวมความคิดเห็นทั้งสองแล้ว
tdc

6

"กำลังสองน้อยที่สุด" หมายถึงการแก้ปัญหาโดยรวมลดผลรวมของกำลังสองของข้อผิดพลาดที่เกิดขึ้นในผลลัพธ์ของสมการเดียวทุกโปรแกรมที่สำคัญที่สุดคือในการปรับข้อมูล ความพอดีที่ดีที่สุดในความรู้สึกกำลังสองน้อยที่สุดจะช่วยลดผลรวมของส่วนที่เหลือกำลังสองส่วนที่เหลือเป็นความแตกต่างระหว่างค่าที่สังเกตและค่าที่ติดตั้งที่มีให้โดยแบบจำลองปัญหาของรูปสี่เหลี่ยม เชิงเส้นกำลังสองน้อยที่สุดขึ้นอยู่กับว่าส่วนที่เหลือเป็นเส้นตรงหรือไม่ในนิรนามทั้งหมด

การถดถอยเชิงเส้นแบบเบย์เป็นวิธีการถดถอยเชิงเส้นซึ่งการวิเคราะห์ทางสถิติจะดำเนินการภายในบริบทของการอนุมานแบบเบย์ เมื่อแบบจำลองการถดถอยมีข้อผิดพลาดที่มีการแจกแจงแบบปกติและหากสันนิษฐานว่ามีการแจกแจงรูปแบบเฉพาะก่อนหน้านี้ผลลัพธ์ที่ชัดเจนจะมีให้สำหรับการแจกแจงความน่าจะเป็นหลังของพารามิเตอร์ของโมเดล

β2

รุ่น regularized ทางเลือกของสี่เหลี่ยมน้อยเป็นเชือก (แน่นอนอย่างน้อยการหดตัวและการเลือกผู้ประกอบการ) ซึ่งใช้ข้อ จำกัด ว่าที่ L1-บรรทัดฐานของเวกเตอร์พารามิเตอร์เป็นใหญ่ไม่เกินกว่าค่าที่กำหนด ในบริบทแบบเบย์สิ่งนี้เทียบเท่ากับการวาง Laplace ก่อนหน้าเป็นศูนย์แบบเฉลี่ยบนพารามิเตอร์เวกเตอร์β1

หนึ่งในความแตกต่างที่สำคัญระหว่าง Lasso และสันเขาถดถอยคือในการถดถอยสันเมื่อการลงโทษเพิ่มขึ้นพารามิเตอร์ทั้งหมดจะลดลงในขณะที่ยังคงไม่เป็นศูนย์ในขณะที่ใน Lasso การเพิ่มการลงโทษจะทำให้พารามิเตอร์มากขึ้น ขับเคลื่อนให้เป็นศูนย์

บทความนี้เปรียบเทียบบ่วงบาศปกติกับบ่วงบาศแบบเบส์และการถดถอยสัน (ดูรูปที่ 1 )

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