RBM เป็นสัตว์ร้ายที่น่าสนใจ เพื่อตอบคำถามของคุณและเพื่อเขย่าหน่วยความจำของฉันกับพวกเขาฉันจะได้รับ RBM และพูดคุยผ่านการได้มา คุณพูดว่าคุณสับสนในความเป็นไปได้ดังนั้นฉันจะมาจากมุมมองของการพยายามเพิ่มโอกาสให้มากที่สุด เริ่มกันเลย
RBM มีเซลล์ประสาทสองชุดที่แตกต่างกันซึ่งมองเห็นและซ่อนอยู่ฉันจะแสดงมันเป็นและตามลำดับ ด้วยการกำหนดค่าเฉพาะของและเราได้แมปพื้นที่ความน่าจะเป็นเอชวีเอชvhvh
p(v,h)=e−E(v,h)Z
มีสองสามสิ่งที่จะกำหนดเพิ่มเติม ฟังก์ชั่นตัวแทนเราใช้ในการ map จากการกำหนดค่าเฉพาะพื้นที่น่าจะเรียกว่าฟังก์ชั่นการใช้พลังงาน(วีเอช) คงเป็นปัจจัยการฟื้นฟูเพื่อให้มั่นใจว่าเราจริง map ไปยังพื้นที่ความน่าจะเป็น ทีนี้มาถึงสิ่งที่เรากำลังมองหา ความน่าจะเป็นของชุดเซลล์ประสาทที่มองเห็นได้กล่าวอีกนัยหนึ่งคือความน่าจะเป็นของข้อมูลของเรา
Z Z = ∑ v ∈ V ∑ h ∈ H e - E ( v , h ) p ( v ) = ∑ h ∈ H p ( v , h ) = ∑ h ∈ H e - e ( v , h )E(v,h)Z
Z=∑v∈V∑h∈He−E(v,h)
p(v)=∑h∈Hp(v,h)=∑h∈He−E(v,h)∑v∈V∑h∈He−E(v,h)
แม้ว่าจะมีคำศัพท์มากมายในสมการนี้ แต่มันก็ลงมาเพื่อเขียนสมการความน่าจะเป็นที่ถูกต้อง หวังว่าเพื่อให้ห่างไกลนี้ช่วยให้คุณรู้ว่าทำไมเราต้องฟังก์ชั่นการใช้พลังงานในการคำนวณความน่าจะเป็นหรือสิ่งที่จะทำมากขึ้นมักจะ unnormalized น่าจะเป็น Z ความน่าจะเป็นแบบไม่ปกติถูกใช้เนื่องจากฟังก์ชันพาร์ติชันมีราคาแพงมากในการคำนวณZp(v)∗ZZ
ตอนนี้เรามาถึงขั้นตอนการเรียนรู้ที่แท้จริงของ RBM เพื่อเพิ่มโอกาสสำหรับทุกจุดข้อมูลที่เราจะต้องใช้ขั้นตอนการไล่ระดับสีที่จะทำให้ 1 เพื่อให้ได้นิพจน์การไล่ระดับสีนั้นต้องใช้การแสดงผาดโผนทางคณิตศาสตร์ สิ่งแรกที่เราทำคือการใช้บันทึกของ(V) เราจะดำเนินการในพื้นที่บันทึกความน่าจะเป็นนับจากนี้เพื่อให้การคำนวณเป็นไปได้p ( v )p(v)=1p(v)
log(p(v))=log[∑h∈He−E(v,h)]−log[∑v∈V∑h∈He−E(v,h)]
ลองไล่ระดับสีเทียบกับ paremeters ใน
p(v)
∂log(p(v))∂θ=−1∑h′∈He−E(v,h′)∑h′∈He−E(v,h′)∂E(v,h′)∂θ+1∑v′∈V∑h′∈He−E(v′,h′)∑v′∈V∑h′∈He−E(v′,h′)∂E(v,h)∂θ
ตอนนี้ฉันทำสิ่งนี้ลงบนกระดาษและเขียนสมการกึ่งสุดท้ายลงเพื่อไม่ให้เปลืองเนื้อที่บนไซต์นี้ ฉันแนะนำให้คุณหาสมการเหล่านี้ด้วยตัวเอง ทีนี้ฉันจะเขียนสมการลงไปเพื่อช่วยในการสืบสานของเรา โปรดทราบว่า: ,และZp(v,h)=e−E(v,h′)p(v)=∑h∈Hp(v,h)p(h|v)=p(v,h)p(h)
∂log(p(v))∂θ∂log(p(v))∂θ=−1p(v)∑h′∈Hp(v,h′)∂E(v,h′)∂θ+∑v′∈V∑h′∈Hp(v′,h′)∂E(v′,h′)∂θ=−∑h′∈Hp(h′|v)∂E(v,h′)∂θ+∑v′∈V∑h′∈Hp(v′,h′)∂E(v′,h′)∂θ
และเมื่อนั้นเราไปเราได้รับการประเมินความเป็นไปได้สูงสุดสำหรับ RBM ถ้าคุณต้องการคุณสามารถเขียนคำสองคำล่าสุดผ่านการคาดหวังของคำที่เกี่ยวข้อง (เงื่อนไขและความน่าจะเป็นร่วม)
หมายเหตุเกี่ยวกับฟังก์ชั่นพลังงานและการสุ่มของเซลล์ประสาท
อย่างที่คุณเห็นด้านบนในที่มาของฉันฉันออกจากนิยามของฟังก์ชันพลังงานค่อนข้างคลุมเครือ และเหตุผลในการทำเช่นนั้นก็คือ RBM รุ่นต่าง ๆ ใช้ฟังก์ชันพลังงานต่าง ๆ สิ่งที่ฮินตันอธิบายไว้ในการบรรยายที่เชื่อมโยงข้างต้นและแสดงโดย @ Laurens-Meeus คือ:
E(v,h)=−aTv−bTh−vTWh.
มันอาจจะง่ายกว่าที่จะให้เหตุผลเกี่ยวกับเงื่อนไขการไล่ระดับสีด้านบนผ่านแบบฟอร์มการคาดการณ์
∂log(p(v))∂θ=−Ep(h′|v)∂E(v,h′)∂θ+Ep(v′,h′)∂E(v′,h′)∂θ
ความคาดหวังของเทอมแรกนั้นง่ายมากในการคำนวณและนั่นคืออัจฉริยะที่อยู่เบื้องหลัง RBM โดยการ จำกัด การเชื่อมต่อความคาดหวังตามเงื่อนไขเพียงแค่กลายเป็นการแพร่กระจายไปข้างหน้าของ RBM กับหน่วยที่มองเห็นหนีบ นี่คือช่วงการปลุกที่เรียกว่าในเครื่อง Boltzmann ตอนนี้การคำนวณระยะที่สองนั้นยากกว่ามากและโดยปกติแล้ววิธีการของมอนติคาร์โลจะถูกนำมาใช้เพื่อทำเช่นนั้น เขียนการไล่ระดับสีโดยเฉลี่ยของการวิ่ง Monte Carlo
∂log(p(v))∂θ≈−⟨∂E(v,h′)∂θ⟩p(h′|v)+⟨∂E(v′,h′)∂θ⟩p(v′,h′)
การคำนวณภาคเรียนแรกนั้นไม่ยากดังที่กล่าวไว้ข้างต้นดังนั้น Monte-Carlo จึงทำในระยะที่สอง วิธีการมอนติคาร์โลใช้การสุ่มตัวอย่างแบบต่อเนื่องของการแจกแจงเพื่อคำนวณความคาดหวัง (ผลรวมหรืออินทิกรัล) ตอนนี้การสุ่มตัวอย่างแบบสุ่มใน RBM แบบคลาสสิกของถูกกำหนดเป็นการตั้งค่าหน่วยเป็น 0 หรือ 1 ตามความน่าจะเป็นของมันสุ่มอีกนัยหนึ่งได้รับหมายเลขเครื่องแบบสุ่มถ้ามันน้อยกว่าความน่าจะเป็นเซลล์ประสาทตั้งค่าเป็น 1 ถ้ามัน สูงกว่ากำหนดเป็น 0