อัลกอริทึมการเรียนรู้ของเครื่องหรือการเรียนรู้ลึกสามารถนำมาใช้เพื่อ“ ปรับปรุง” กระบวนการสุ่มตัวอย่างของเทคนิค MCMC ได้หรือไม่?


21

จากความรู้เล็กน้อยที่ฉันมีในวิธีการ MCMC (มาร์คอฟโซ่มอนติคาร์โล) ฉันเข้าใจว่าการสุ่มตัวอย่างเป็นส่วนสำคัญของเทคนิคดังกล่าว วิธีการสุ่มตัวอย่างที่ใช้กันมากที่สุดคือ Hamiltonian และ Metropolis

มีวิธีใช้ประโยชน์จากการเรียนรู้ของเครื่องจักรหรือแม้แต่การเรียนรู้ลึกเพื่อสร้างตัวอย่าง MCMC ที่มีประสิทธิภาพมากขึ้นหรือไม่?


5
คุณสามารถระบุประเภทของ "การปรับปรุง" ที่คุณมีอยู่ในใจและคุณจะเห็นบทบาทของการเรียนรู้ของเครื่องได้อย่างไร .. ?
ทิม

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

1
@ Adamo ทำไมไม่แปลงเป็นคำตอบ? ดูเหมือนว่ามันอาจจะดีเท่าที่เราจะได้รับที่นี่
gung - Reinstate Monica

@Tim จากสิ่งที่ฉันได้อ่าน MCMC ดึงตัวอย่างจากการแจกแจงเพื่อคำนวณปริมาณอนุมาน อัลกอริทึม MH สุ่มเลือก "ตำแหน่งที่ตั้ง" แล้วยืนยันว่ายอมรับได้ สิ่งที่ฉันสงสัยคือถ้ามีเทคนิคทางเลือก ML ฉันรู้ว่ามันฟังดูคลุมเครือและฉันขอโทษสำหรับสิ่งนั้น แต่ฉันพบว่า MCMC น่าสนใจและฉันพยายามที่จะยึดทฤษฎีและการใช้งานจริงโดยการเรียนรู้ด้วยตนเอง
Jespar

คำตอบ:


27

ใช่. ซึ่งแตกต่างจากสิ่งที่คำตอบอื่น ๆ รัฐวิธีการเรียนรู้เครื่อง 'ปกติ' เช่น nonparametrics และ (ลึก) เครือข่ายประสาทสามารถช่วยสร้างตัวอย่าง MCMC ที่ดีขึ้น

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

การสุ่มตัวอย่างมักจะต้องมีการประเมินจำนวนมากของและความลาดชันของมันสำหรับวิธีการเช่น Hamiltonian Monte Carlo (HMC) หากfมีค่าใช้จ่ายสูงในการประเมินหรือไม่สามารถใช้การไล่ระดับสีบางครั้งเป็นไปได้ที่จะสร้างฟังก์ชั่นตัวแทนเสมือนที่ราคาไม่แพงซึ่งสามารถช่วยนำทางตัวอย่างและประเมินแทนf (ในลักษณะที่ยังคงคุณสมบัติของ MCMC)

ยกตัวอย่างเช่นกระดาษน้ำเชื้อ ( รัสมุส 2003 ) ได้เสนอที่จะใช้กระบวนการแบบเกาส์ (ฟังก์ชั่นการประมาณอิงพารามิเตอร์) เพื่อสร้างการประมาณที่จะและดำเนิน HMC ในฟังก์ชั่นตัวแทนที่มีเพียงขั้นตอนการยอมรับ / ปฏิเสธของ HMC อยู่บนพื้นฐานของฉ สิ่งนี้จะช่วยลดจำนวนการประเมินของต้นฉบับfและอนุญาตให้ดำเนินการ MCMC ในรูปแบบไฟล์ PDF ที่อาจมีราคาแพงเกินไปที่จะประเมินเข้าสู่ระบบ

แนวคิดของการใช้ตัวแทนเพื่อเร่งความเร็ว MCMC ได้รับการสำรวจอย่างมากในช่วงไม่กี่ปีที่ผ่านมาโดยการลองใช้วิธีที่แตกต่างกันในการสร้างฟังก์ชั่นตัวแทนและรวมเข้ากับวิธีการ MCMC ที่แตกต่างกัน 'ของการสุ่มตัวอย่าง MCMC) ที่เกี่ยวข้องกับคำถามของคุณเอกสารสองฉบับล่าสุดนี้ใช้เทคนิคการเรียนรู้ด้วยเครื่องจักรขั้นสูง - เครือข่ายแบบสุ่ม ( Zhang et al. 2015 ) หรือเรียนรู้ฟังก์ชั่นเคอร์เนลเอกซ์โพเนนเชียล ( Strathmann และคณะ 2015 ) เพื่อสร้างฟังก์ชั่นตัวแทน

HMC ไม่ใช่ MCMC รูปแบบเดียวที่สามารถได้รับประโยชน์จากตัวแทน ตัวอย่างเช่นNishiara และคณะ (2014)สร้างประมาณของความหนาแน่นของเป้าหมายโดยการปรับนักศึกษาหลายตัวแปรของแจกจ่ายให้กับรัฐหลายห่วงโซ่ของตัวอย่างทั้งมวลและใช้ในการดำเนินการเป็นรูปแบบทั่วไปของการสุ่มตัวอย่างชิ้นเป็นรูปวงรีเสื้อ

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

อ้างอิง:

  1. Rasmussen, Carl Edward "Gaussian ประมวลผลเพื่อเร่ง Monte Carlo ไฮบริดสำหรับอินทิกรัลเบย์ที่มีราคาแพง" สถิติแบบเบย์ 7. 2003.

  2. Zhang, Cheng, Babak Shahbaba และ Hongkai Zhao "แฮมิลโตเนียนมอนติคาร์โลเร่งด้วยฟังก์ชั่นตัวแทนด้วยฐานแบบสุ่ม" พิมพ์ล่วงหน้า arXiv arXiv: 1506.05555 (2015)

  3. Strathmann, Heiko และคณะ "Hamiltonian Monte Carlo ปราศจากการไล่ระดับสีพร้อมตระกูลชี้แจงเคอร์เนลที่มีประสิทธิภาพ" ความก้าวหน้าในระบบประมวลผลข้อมูลประสาท 2015

  4. Nishihara, Robert, Iain Murray และ Ryan P. Adams "Parallel MCMC พร้อมการสุ่มตัวอย่างชิ้นแบบวงรีทั่วไป" วารสารการวิจัยการเรียนรู้ของเครื่อง 15.1 (2014): 2087-2112


2
ฉันไม่แน่ใจว่าวิธีการที่คุณระบุไว้นั้นอยู่ในหมวดหมู่ของ "วิธีการเรียนรู้ของเครื่อง" แต่เป็นเพียงวิธีมาตรฐาน MCMC (แม้ว่านี่จะเป็นเส้นพร่ามัว) เพียงคนเดียวที่แน่นอนน่าจะเป็นวิธี ML / DL เป็น 3 ซึ่งได้ลบออกตั้งแต่ "เครือข่ายประสาท" จากนั้นชื่อ (และดูเหมือนว่าจะยอมรับในข้อความที่ใช้วิธีการ ML มาตรฐานจะมากช้าเกินไป)
หน้าผา AB

2
@CliffAB ขอบคุณ ฉันเห็นด้วยว่าเส้นนั้นเบลอเล็กน้อยสำหรับวิธีการเหล่านี้บางอย่าง (เช่น 4 ใช้tของนักเรียนอย่างง่ายเสื้อพอดี - แต่วิธีการของพวกเขาสามารถใช้เทคนิคการประมาณค่าความหนาแน่นของบางอย่างที่ซับซ้อนมากขึ้น) สำหรับส่วนที่เหลือก็ขึ้นอยู่กับว่าคุณจะพิจารณาการประมาณฟังก์ชั่น (ที่ไม่ใช่พารามิเตอร์) เช่น GP หรือการประมาณความหนาแน่นเทคนิค ML หรือไม่ หากคุณไม่ยุติธรรมพอ แต่ฉันไม่แน่ใจว่าเทคนิค ML คืออะไร (OP ขอเทคนิคML หรือ DL เพื่อปรับปรุง MCMC.)
lacerbi

1
ขอบคุณมาก @lacerbi ฉันดีใจที่ฉันสามารถใช้การอ้างอิงของคุณเป็นข้อเท็จจริงสำหรับการวิจัยเพิ่มเติม
Jespar

6

วิธีการที่สามารถเชื่อมต่อแนวคิดทั้งสองคืออัลกอริทึม Metropolis Hastings หลายตัวแปร ในกรณีนี้เรามีการกระจายเป้าหมาย (การกระจายด้านหลัง) และการกระจายข้อเสนอ (โดยทั่วไปคือการกระจายทั่วไปหลายตัวแปรหรือการแจกแจงแบบ t)

ข้อเท็จจริงที่รู้จักกันดีก็คือยิ่งการกระจายข้อเสนอนั้นมาจากการกระจายด้านหลังยิ่งตัวอย่างมีประสิทธิภาพน้อยลงเท่านั้น ดังนั้นเราสามารถจินตนาการได้ว่าใช้วิธีการเรียนรู้ของเครื่องบางอย่างเพื่อสร้างการกระจายข้อเสนอที่ตรงกับการกระจายด้านหลังที่แท้จริงดีกว่าการแจกแจงหลายตัวแปรปกติ / t แบบง่าย ๆ

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


Cliff AB ฉันรู้สึกว่าคุณและ @AdamO ชี้แจงแนวคิด MCMC และ ML ให้ฉันมากกว่าใช้เวลาอ่านหนังสือเล่มอื่น ฉันขอขอบคุณความพยายามของคุณและฉันดีใจที่คุณพูดถึงบางพื้นที่ที่ฉันสามารถเจาะลึก
Jespar

@Sitherion คุณหมายถึงหนังสือเล่มไหน?
AdamO

@AdamO ปัจจุบันฉันกำลังอ่านการเรียนรู้การเสริมแรงโดย Richard Sutton และการเรียนรู้ของเครื่อง: มุมมองที่น่าจะเป็นโดย Kevin Murphy ที่มีบท MCMC; และสิ่งพิมพ์จากวารสาร ML และสถิติการคำนวณต่างๆ
Jespar

3

การเรียนรู้ของเครื่องเกี่ยวข้องกับการทำนายการจัดประเภทหรือการรวมกลุ่มในการตั้งค่าแบบมีผู้ดูแลหรือไม่มีการดูแล ในทางกลับกัน MCMC เกี่ยวข้องกับการประเมิน intergral ที่ซับซ้อน (โดยปกติจะไม่มีรูปแบบปิด) โดยใช้วิธีการเชิงตัวเลขที่น่าจะเป็น การสุ่มตัวอย่างนครหลวงแน่นอนไม่ใช่วิธีที่ใช้กันมากที่สุดในความเป็นจริงนี้เป็นเพียงวิธีการ MCMC ไม่ได้ที่จะมีความน่าจะเป็นส่วนประกอบใด ๆ ดังนั้น ML จะไม่แจ้งอะไรกับ MCMC ในกรณีนี้

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

อย่างไรก็ตาม ML โดดเด่นสำหรับฉันในขั้นตอนที่แตกต่างกันในกระบวนการประเมินแบบจำลองความน่าจะเป็นมิติเชิงซ้อนสูงซึ่งใช้ในวิธีการเชิงตัวเลขในเวลาต่อมา ฉันไม่เห็นว่า ML ปรับปรุง MCMC ได้อย่างไรในกรณีนี้


ขอบคุณ @AdamO อย่างน้อยตอนนี้ฉันมีความเข้าใจที่ดีขึ้นในพื้นที่นี้
Jespar

1
ฉันคิดว่าคำตอบนี้ไม่สมบูรณ์และอาจไม่ถูกต้อง (ขึ้นอยู่กับการตีความของคำถามที่แท้จริงของ OP ซึ่งไม่ชัดเจนอย่างสมบูรณ์) วิธี ML ทั่วไปเช่น Nonparametrics และเครือข่ายประสาทสามารถและจะใช้ในการปรับปรุงตัวอย่าง MCMC ในความเป็นจริงมันเป็นพื้นที่ของการวิจัย ดูคำตอบของฉันและการอ้างอิงในนั้นเพื่อเริ่มต้นด้วย
lacerbi

1
พี

ขอบคุณ @AdamO ถึงกระนั้นฉันก็ยังไม่เข้าใจคำอธิบายของคุณหรือวิธีที่จะทำให้คำตอบของคุณถูกต้อง ตัวอย่างเช่นฉันไม่เข้าใจสิ่งที่คุณหมายถึงเมื่อคุณพูดว่า Metropolis มี "ไม่มีองค์ประกอบที่น่าจะเป็น" นอกจากนี้คุณระบุว่า ML ไม่สามารถช่วยในการสุ่มตัวอย่างซึ่งไม่จริงเพียงอย่างเดียว (แม้ในคำจำกัดความแคบของการสุ่มตัวอย่างเป็นการประมาณค่าอินทิกรัลมิติสูง) ดังที่คำตอบของฉันแสดง
lacerbi

3
@ Adamo: กระบวนการแบบเกาส์, วิธีเคอร์เนล, เครือข่ายพื้นฐานแบบสุ่ม โดยทั่วไปการประมาณฟังก์ชั่นใด ๆ หรือการประมาณความหนาแน่นจะทำงานได้ หากสิ่งเหล่านี้ไม่ใช่วิธี ML ฉันไม่แน่ใจว่าอะไรคือ ... (โปรดทราบว่า OP ขอวิธีML หรือ DL) นอกจากนี้ตามที่ฉันถามข้างต้นคุณช่วยอธิบายสิ่งที่คุณหมายถึงเมื่อคุณเขียนว่า Metropolis ไม่มีองค์ประกอบที่น่าจะเป็นหรือไม่? ขอบคุณ!
lacerbi

0

มีงานล่าสุดในสาขาฟิสิกส์เชิงคำนวณที่ผู้เขียนใช้เครื่องจำกัด Boltzmannเพื่อจำลองการแจกแจงความน่าจะเป็นแล้วเสนอการปรับปรุงที่มีประสิทธิภาพ Monte Carlo arXiv: 1610.02746 ความคิดที่นี่กลายเป็นค่อนข้างคล้ายกับการอ้างอิงที่ได้รับจาก @lacerbi ข้างต้น

ในความพยายามอีก1702.08586ผู้เขียนอย่างชัดเจนสร้างเครื่อง Boltzmann ซึ่งสามารถดำเนินการ (และแม้กระทั่งค้นพบ) ที่มีชื่อเสียงโด่งดังคลัสเตอร์การปรับปรุง Monte Carlo

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