การปรับพารามิเตอร์ Hyperparameter ในการถดถอยของกระบวนการแบบเกาส์เซียน


13

ฉันพยายามปรับค่าพารามิเตอร์ไฮเปอร์พารามิเตอร์ของอัลกอริทึมการถดถอยกระบวนการ Gaussian ที่ฉันได้ดำเนินการ ฉันเพียงต้องการเพิ่มความเป็นไปได้ที่จะได้รับจากสูตร โดยที่kคือเมทริกซ์ความแปรปรวนร่วมกับ องค์ประกอบK_ {ij} = k (x_i, x_j) = b ^ {- 1} \ exp (- \ frac {1} {2} (x_i-x_j) ^ TM (x_i-x_j) + a ^ {- 1 } \ delta_ {ij}โดยที่M = lIและa, bและlคือพารามิเตอร์หลายมิติ

log(y|X,θ)=12yTKy1y12log(det(K))n2log(2π)
K
Kij=k(xi,xj)=b1exp(12(xixj)TM(xixj))+a1δij
M=lIa,bl

อนุพันธ์บางส่วนของพารามิเตอร์ความเป็นไปได้ของการบันทึก wrt โอกาสถูกกำหนดโดย

log(y|X,θ)dθ=12trace(K1dKdθ)+12(ydKdθK1dKdθy)

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


ฉันประสบความสำเร็จในการใช้ HMC ในการสุ่มตัวอย่างพารามิเตอร์ไฮเปอร์ GP สำหรับชุดข้อมูลขนาดเล็ก
Sycorax พูดว่า Reinstate Monica

สวัสดี @Sycorax คุณช่วยบอกหน่อยได้ไหมว่าคุณใช้เทคนิคนี้เพื่อแก้ปัญหานี้อย่างไร? ฉันมีปัญหาเช่นเดียวกับ OP ถามและคิดที่จะใช้ MCMC เพื่อแก้ปัญหา แต่ยังไม่รู้ว่าจะทำอย่างไร
Willian Fuks

ฉันเพิ่งเขียนรหัส GP ในสแตน พารามิเตอร์ hyper GP ถูกประกาศเป็นพารามิเตอร์ของแบบจำลองและอนุมานตาม สิ่งนี้สร้างการทำนายหนึ่งชุดสำหรับการทำซ้ำ HMC แต่ละครั้ง Gelman แสดงให้เห็นว่ามันทำงานอย่างไรในBDA3
Sycorax พูดว่า Reinstate Monica

คำตอบ:


6

คุณมีสิทธิ์ที่คุณต้องการการคำนวณเมทริกซ์ความแปรปรวนร่วมใหม่ในการวนซ้ำของการไล่ระดับสีทุกครั้ง ดังนั้นหากการคำนวณเมทริกซ์ไม่เป็นไปได้สำหรับการตั้งค่าของคุณฉันคิดว่าคุณไม่สามารถใช้การเพิ่มประสิทธิภาพความเป็นไปได้ของการไล่ระดับสีตามความลาดเอียง

ข้อเสนอแนะของฉันคือการใช้วิธีการไล่ระดับสีฟรีสำหรับการปรับแต่ง hyperparameter เช่นการค้นหาตารางการค้นหาแบบสุ่มหรือค้นหาการเพิ่มประสิทธิภาพตามแบบเบย์ วิธีการเหล่านี้ใช้กันอย่างแพร่หลายสำหรับการเพิ่มประสิทธิภาพพารามิเตอร์ขั้นสูงของอัลกอริทึมการเรียนรู้ของเครื่องอื่นเช่น SVM

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

การค้นหากริดจะให้ชุดของพารามิเตอร์ไฮเปอร์พอยต์ย่อยและคุณต้องระบุกริดด้วยตัวเอง (เคล็ดลับ: สร้างกริดในสเกลบันทึก) แต่จำเป็นต้องมีการคำนวณน้อยกว่า (และคุณไม่ต้องการการไล่ระดับสี!)

หากคุณไม่คุ้นเคยกับการค้นหากริดคุณสามารถค้นหาวิกิพีเดีย: การเพิ่มประสิทธิภาพพารามิเตอร์ไฮเปอร์ - การค้นหากริด

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