ماشین بولتزمن محدود شده
یادگیری ماشین و دادهکاوی |
---|
یک ماشین بولتزمن محدود (RBM) یک شبکه عصبی مصنوعی تصادفی مولد است که میتواند توزیع احتمال از مجموعه ورودیهای بیاموزد.
RBMها ابتدا با نام هارمونیوم توسط پل اسمولنسکی در سال ۱۹۸۶ اختراع شدند، و در اواسط سال ۲۰۰۰، پس از آنکه جفری هینتون و همکارانش که الگوریتمهای یادگیری سریع را برایش اختراع کردند، به شهرت رسیدند. RBMها کاربردهایی در کاهش ابعاد،[۱] طبقهبندی، پالایش گروهی، یادگیری ویژگی، مدل عناوین[۲] و حتی سیستم چندپیکره کوانتومی پیدا کردهاند.[۳][۴] بسته کاربرد، آنها را میتوان به دو روش تحت نظارت یا بدون نظارت آموزش داد.
همانطور که از نام آنها پیداست، RBMها گونه ای از ماشینهای بولتزمن هستند، با این محدودیت که نورونهای آنها باید یک نمودار دوبخشی تشکیل دهند به این معنا که یک جفت نورون از هر دو بخش (که معمولاً به عنوان واحد «مرئی» و واحد «پنهان» نامیده میشود) ممکن است یک ارتباط متقارن داشته باشد. ولی هیچ ارتباطی بین واحدهای درون یک بخش وجود ندارد.
در مقابل، ماشینهای بولتزمن «نامحدود» میتوانند اتصالاتی بین واحدهای پنهان داشته باشند. این محدودیت باعث کارآمدتر شدن الگوریتمهای آموزشی (نسبت به کلاس عمومی ماشینهای بولتزمن) میشود؛ این امر به ویژه برای الگوریتم واگرایی متضاد
گرادیان کاهشی، صادق است.[۵]
ماشینهای محدود بولتزمن را میتوان در شبکههای یادگیری عمیق نیز استفاده کرد. بهویژه، شبکههای باور عمیق را میتوان با «انباشته کردن» RBMها ایجاد کرد و با تنظیم دقیق شبکه عمیق (با نزول گرادیان و انتشار پسانداز) میتوان آن را بهبود داد.[۶]
ساختار
[ویرایش]نوع استاندارد RBM دارای واحدهای پنهان و مرئی با ارزش دودویی (بولی) است. این ماشین شامل ماتریسی از وزنها، از اندازه ، میباشد. هر عنصر ماتریس وزن نماینده یک یال بین یک واحد مرئی (ورودی) و یک واحد پنهان میباشد. علاوه بر این، وزنهای بایاس برای و برای وجود دارند.
با توجه به وزنها و بایاسها، "انرژی" یک پیکربندی (جفت بردار بولی) (v,h) به صورت زیر تعریف میشود.
یا در به صورت ماتریسی،
این تابع انرژی مشابه تابع شبکه هاپفیلد است. همانند ماشینهای بولتزمن عمومی، توزیع احتمال توأم برای بردارهای مرئی و پنهان بر حسب تابع انرژی به صورت زیر تعریف میشود،[۷]
که در آن یک تابع پارتیشن میباشد که به عنوان مجموع برای تمام پیکربندی تعریف میشود. این تعریف را میتواند به عنوان یک ثابت بهنجارسازی کننده تفسیر کرد تا اطمینان حاصل شود که مجموع احتمالات برابر با ۱ است. توزیع حاشیه ای یک بردار مرئی مجموع بر روی تمام پیکربندیهای لایه پنهان ممکن میباشد.[۷]
- ،
و بالعکس. از آنجایی که ساختار گراف زیربنایی RBM دو بخشی است (به این معنی که هیچ اتصال درون لایه ای وجود ندارد)، با توجه به فعال سازی واحدهای قابل مشاهده، فعال سازیهای واحد پنهان متقابلاً مستقل هستند. از طرف دیگر، فعالسازیهای واحد مرئی با توجه به فعالسازیهای واحد پنهان، متقابلاً مستقل هستند.[۵]
یعنی برای m واحد مرئی و n واحد پنهان، احتمال شرطی پیکربندی واحدهای مرئی v، با توجه به پیکربندی واحدهای پنهان h، برابر است با
- .
برعکس، احتمال شرطی h با فرض v برابر هست با
- .
احتمال فعال سازی فردی برابر است با
- و
جایی که نشان دهنده تابع سیگموئید لجستیک میباشد.
واحدهای مرئی ماشین محدود شده بولتزمن میتوانند توزیع چندجملهای داشته باشند، اگرچه واحدهای پنهان برنولی هستند.[نیازمند شفافسازی] در این مورد، تابع لجستیک برای واحدهای مرئی با تابع softmax جایگزین میشود.
که در آن K تعداد مقادیر گسستهای است که مقادیر مرئی دارند. آنها در مدلسازی موضوع،[۲] و سامانه توصیهگر به کار میروند.
ارتباط با مدلهای دیگر
[ویرایش]ماشینهای بولتزمن محدود شده مورد خاصی از ماشینهای بولتزمن و میدان تصادفی مارکوفی میباشد.[۸][۹] مدل گرافیکی آنها با مدل تحلیل عاملی مطابقت دارد.[۱۰]
الگوریتم یادگیری
[ویرایش]ماشینهای محدود بولتزمن آموزش داده میشوند که حاصل ضرب احتمالهای اختصاص داده شده به مجموعه به حداکثر برسانند.
یک راهنمای عملی برای آموزش RBMها توسط هینتون نوشته شدهاست که آن را میتوان در صفحه اصلی وی یافت.[۷]
ادبیات
[ویرایش]- Fischer, Asja; Igel, Christian (2012), "An Introduction to Restricted Boltzmann Machines", Progress in Pattern Recognition, Image Analysis, Computer Vision, and Applications, Lecture Notes in Computer Science, Berlin, Heidelberg: Springer Berlin Heidelberg, 7441: 14–36, doi:10.1007/978-3-642-33275-3_2, ISBN 978-3-642-33274-6, retrieved 2021-09-19
جستارهای وابسته
[ویرایش]- رمزگذار خودکار
- دستگاه هلمهولتز
منابع
[ویرایش]- ↑ Hinton, G. E.; Salakhutdinov, R. R. (2006). "Reducing the Dimensionality of Data with Neural Networks" (PDF). Science. 313 (5786): 504–507. Bibcode:2006Sci...313..504H. doi:10.1126/science.1127647. PMID 16873662. Archived from the original (PDF) on 23 December 2015. Retrieved 26 September 2022.
- ↑ ۲٫۰ ۲٫۱ Ruslan Salakhutdinov and Geoffrey Hinton (2010). Replicated softmax: an undirected topic model بایگانیشده در ۲۵ مه ۲۰۱۲ توسط Wayback Machine. Neural Information Processing Systems 23.
- ↑ Carleo, Giuseppe; Troyer, Matthias (2017-02-10). "Solving the quantum many-body problem with artificial neural networks". Science (به انگلیسی). 355 (6325): 602–606. arXiv:1606.02318. Bibcode:2017Sci...355..602C. doi:10.1126/science.aag2302. ISSN 0036-8075. PMID 28183973.
- ↑ Melko, Roger G.; Carleo, Giuseppe; Carrasquilla, Juan; Cirac, J. Ignacio (September 2019). "Restricted Boltzmann machines in quantum physics". Nature Physics (به انگلیسی). 15 (9): 887–892. Bibcode:2019NatPh..15..887M. doi:10.1038/s41567-019-0545-1. ISSN 1745-2481.
- ↑ ۵٫۰ ۵٫۱ Miguel Á. Carreira-Perpiñán and Geoffrey Hinton (2005). On contrastive divergence learning. Artificial Intelligence and Statistics.
- ↑ Hinton, G. (2009). "Deep belief networks". Scholarpedia. 4 (5): 5947. Bibcode:2009SchpJ...4.5947H. doi:10.4249/scholarpedia.5947.
- ↑ ۷٫۰ ۷٫۱ ۷٫۲ Geoffrey Hinton (2010). A Practical Guide to Training Restricted Boltzmann Machines. UTML TR 2010–003, University of Toronto.
- ↑ Sutskever, Ilya; Tieleman, Tijmen (2010). "On the convergence properties of contrastive divergence" (PDF). Proc. 13th Int'l Conf. On AI and Statistics (AISTATS). Archived from the original (PDF) on 2015-06-10.
- ↑ Asja Fischer and Christian Igel. Training Restricted Boltzmann Machines: An Introduction بایگانیشده در ۲۰۱۵-۰۶-۱۰ توسط Wayback Machine. Pattern Recognition 47, pp. 25-39, 2014
- ↑ María Angélica Cueto; Jason Morton; Bernd Sturmfels (2010). "Geometry of the restricted Boltzmann machine". Algebraic Methods in Statistics and Probability. American Mathematical Society. 516. arXiv:0908.4425. Bibcode:2009arXiv0908.4425A.
پیوند به بیرون
[ویرایش]- Introduction to Restricted Boltzmann Machines. Edwin Chen's blog, July 18, 2011.
- "A Beginner's Guide to Restricted Boltzmann Machines". Archived from the original on February 11, 2017. Retrieved November 15, 2018.. Deeplearning4j Documentation
- "Understanding RBMs". Archived from the original on September 20, 2016. Retrieved December 29, 2014.. Deeplearning4j Documentation
- Python implementation of Bernoulli RBM and tutorial
- SimpleRBM is a very small RBM code (24kB) useful for you to learn about how RBMs learn and work.
- Julia implementation of Restricted Boltzmann machines: https://github.com/cossio/RestrictedBoltzmannMachines.jl