การถดถอยแบบเกาส์กระบวนการสำหรับชุดข้อมูลมิติสูง


10

แค่อยากจะดูว่าใครมีประสบการณ์ใด ๆ ที่ใช้การถดถอยแบบเกาส์กระบวนการ (GPR) กับชุดข้อมูลมิติสูง ฉันกำลังดูวิธีการ GPR แบบกระจัดกระจายบางอย่าง (เช่นแบบ spse pseudo-inputs GPR) เพื่อดูว่าอะไรสามารถใช้งานได้กับชุดข้อมูลมิติสูงที่การเลือกคุณสมบัติเป็นส่วนหนึ่งของกระบวนการเลือกพารามิเตอร์

ข้อเสนอแนะใด ๆ เกี่ยวกับเอกสาร / รหัส / หรือวิธีการต่างๆที่จะลองแน่นอนชื่นชม

ขอบคุณ


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

คำตอบ:


13

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

วิธีการกระจัดกระจายและวิธีการป้อนข้อมูลแบบหลอกมีมากขึ้นสำหรับชุดข้อมูลที่มีตัวอย่างจำนวนมาก (> ประมาณ 4000 สำหรับคอมพิวเตอร์ของฉัน) แทนที่จะใช้ฟีเจอร์จำนวนมาก หากคุณมีคอมพิวเตอร์ที่ทรงพลังพอที่จะทำการสลายตัว Cholesky ของเมทริกซ์ความแปรปรวนร่วม (n คูณ n โดยที่ n คือจำนวนตัวอย่าง) คุณอาจไม่ต้องการวิธีการเหล่านี้

หากคุณเป็นผู้ใช้ MATLAB ฉันขอแนะนำกล่องเครื่องมือGPMLและหนังสือโดยRasmussen และ Williamsเป็นจุดเริ่มต้นที่ดี

อย่างไรก็ตามหากคุณสนใจเลือกคุณสมบัติฉันจะหลีกเลี่ยง GPs วิธีมาตรฐานในการเลือกคุณสมบัติด้วย GPs คือการใช้เคอร์เนลการกำหนดความเกี่ยวข้องอัตโนมัติ (เช่น covSEard ใน GPML) จากนั้นบรรลุการเลือกคุณลักษณะโดยการปรับพารามิเตอร์ของเคอร์เนลเพื่อเพิ่มความเป็นไปได้สูงสุด น่าเสียดายที่มีแนวโน้มที่จะจบลงที่ความเป็นไปได้ที่จะเกิดขึ้นและจบลงด้วยแบบจำลองที่มีประสิทธิภาพแย่กว่ารุ่นที่มีฟังก์ชั่นพื้นฐานทรงกลมแบบวงกลม (covSEiso ใน GPML) ความแปรปรวนร่วม

งานวิจัยปัจจุบันของฉันมุ่งเน้นไปที่การปรับให้เหมาะสมมากเกินไปในการเลือกแบบจำลองในขณะนี้และฉันพบว่านี่เป็นปัญหาสำหรับการเพิ่มหลักฐานใน GP ให้มากที่สุดเท่าที่เป็นไปได้สำหรับการหาค่าเหมาะที่สุด ดูบทความนี้และหนึ่งในนี้

การเลือกคุณสมบัติสำหรับรุ่นที่ไม่ใช่เชิงเส้นนั้นยุ่งยากมาก บ่อยครั้งที่คุณได้รับประสิทธิภาพที่ดีขึ้นโดยติดกับตัวแบบเชิงเส้นและใช้วิธีการทำให้เป็นมาตรฐานแบบ L1 (Lasso / LARS / Elastic net เป็นต้น) เพื่อให้ได้ sparsity หรือวิธีการป่าสุ่ม


ขอบคุณ Dikran ฉันลองดูที่ glmnet ใน R เพื่อหาโมเดลเชิงเส้น น่าเสียดายที่การคาดการณ์ของฉันจบลงด้วยการเป็นเหมือนกันหมด (ฉันคิดว่าค่าเฉลี่ยของชุดการฝึกอบรมของฉัน) โมเดลเชิงเส้นดูเหมือนจะมีช่วงเวลาที่ยากลำบากในการดึงสัญญาณออกมาในข้อมูลของฉัน นั่นเป็นเหตุผลที่ฉันกำลังมองหาโมเดลที่ไม่ใช่เชิงเส้นซึ่งสามารถจัดการกับคุณสมบัติ / การโต้ตอบคุณสมบัติที่มีศักยภาพมากมาย ฉันค่อนข้างแน่ใจว่าถามมาก ข้อเสนอแนะใด ๆ ที่อยู่ข้างหน้า? ฉันไม่มีปัญหา P >> N ใช้ 150 ฟีเจอร์ 1,000 ตัวอย่าง
มัส

เฮ้ Dikran นั่นเป็นคำถามที่คลุมเครือที่ฉันถามในความคิดเห็นของฉันขอโทษเกี่ยวกับเรื่องนั้น ฉันตั้งคำถามที่เฉพาะเจาะจงมากขึ้นบนกระดาน ขอบคุณอีกครั้งสำหรับความช่วยเหลือของคุณ stats.stackexchange.com/questions/30411/...
โทมัส

ไม่มีปัญหามักจะคิดออกคำถามที่ยากกว่าการตอบคำถาม! ฉันจะระวังคำถามอื่น ๆ
Dikran Marsupial

ขอบคุณสำหรับคำตอบนี้ ในกรณีของคุณสมบัติที่มีมิติสูง แต่ไม่มีชุดข้อมูลขนาดใหญ่ (n ~ 10k d ~ 1k) เป็นไปได้ไหมที่จะใช้ ARD เพื่อเร่งการคำนวณ? ฉันใช้กล่องเครื่องมือ GPML เราสามารถ "กระจาย" เมทริกซ์ความแปรปรวนร่วมโดยอัตโนมัติเพื่อมุ่งเน้นคุณสมบัติที่เกี่ยวข้องได้หรือไม่?
Emile

1
"การr.csail.mit.edu/papers/v8/cawley07a.htmlลิงก์" ไม่ทำงาน ... มันเป็นหนึ่งในนี้หรือไม่? jmlr.org/papers/v8/cawley07a.html บางทีการเพิ่มการอ้างอิงแบบเต็มแทนที่จะเชื่อมโยงเป็นเพียงแค่จะเป็นประโยชน์ :-)
Curious

4

คุณสามารถลองใช้ฟังก์ชันความแปรปรวนร่วมที่ออกแบบมาเป็นพิเศษเพื่อจัดการกับข้อมูลมิติสูง ดูกระดาษในฟังก์ชั่นการแปรปรวนร่วมแบบเพิ่มตัวอย่างเช่น พวกเขาทำงานได้ดีกว่าฟังก์ชั่นความแปรปรวนขั้นสูงอื่น ๆ ในการทดลองเชิงตัวเลขของฉันกับข้อมูลจริงของมิติข้อมูลขนาดใหญ่ที่ค่อนข้างใหญ่ (ประมาณ )30

อย่างไรก็ตามหากขนาดอินพุตมีขนาดใหญ่มาก (มากกว่าหรือ ) ดูเหมือนว่าวิธีเคอร์เนลใด ๆ จะล้มเหลวและไม่มีการยกเว้นสำหรับการถดถอยของกระบวนการแบบเกาส์100200

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