| یادگیری ماشین وداده‌کاوی |
| --- |
|  |
| موضوع‌ها
* طبقه‌بندی آماری
* خوشه‌بندی
* تحلیل رگرسیون
* روش تشخیص ناهنجاری
* یادگیری قانون وابستگی
* یادگیری تقویتی
* پیش بینی ساختاریافته
* مهندسی ویژگی
* یادگیری ویژگی
* یادگیری ماشین برخط
* یادگیری نیمه‌نظارتی
* یادگیری بی‌نظارت
* Learning to rank
* Grammar induction

 |
| یادگیری با نظارت(**طبقه‌بندی آماری** •  **تحلیل رگرسیون**)
* یادگیری درخت تصمیم
* Ensembles (Bagging, بوستینگ، جنگل تصادفی)
* *k*-NN
* رگرسیون خطی
* دسته‌بندی کننده بیز ساده
* شبکه‌های عصبی مصنوعی
* رگرسیون لجستیک
* پرسپترون
* Relevance vector machine (RVM)
* ماشین بردار پشتیبانی

 |
| خوشه‌بندی
* کاهش و خوشه‌بندی ترازمند و بازکردی با بهره‌گیری از رده‌بندی
* خوشه‌بندی سلسله‌مراتبی
* خوشه‌بندی کی-میانگین
* الگوریتم امید ریاضی–بیشینه کردن
* DBSCAN
* OPTICS
* انتقال میانگین

 |
| کاهش ابعاد
* تحلیل عاملی
* CCA
* تحلیل مؤلفه‌های مستقل
* آنالیز افتراقی خطی
* فاکتورگیری نامنفی ماتریس
* تحلیل مؤلفه‌های اصلی
* t-SNE

 |
| پیش‌بینی ساختاریافته
* مدل‌های گرافیکی (شبکه‌های بیزی، میدان تصادفی شرطی، مدل پنهان مارکف)

 |
| روش تشخیص ناهنجاری
* الگوریتم کی-نزدیکترین همسایه
* فاکتور پرتی محلی

 |
| شبکه عصبی مصنوعی
* خودرمزگذار
* یادگیری عمیق
* پرسپترون چندلایه
* RNN
* ماشین بولتزمن محدود شده
* ترانسفورمر بینایی
* SOM
* شبکه عصبی پیچشی

 |
| یادگیری تقویتی
* کیو-یادگیری
* SARSA
* یادگیری تفاوت زمانی

 |
| نظریه
* Bias-variance dilemma
* نظریه یادگیری محاسباتی
* Empirical risk minimization
* Occam learning
* یادگیری احتمالا تقریبا صحیح
* Statistical learning
* VC theory

 |
| حوزه‌های یادگیری ماشین
* NIPS
* ICML
* ML
* JMLR
* ArXiv:cs.LG

 |
| * ن
* ب
* و
 |

در یادگیری ماشینی و آمار، **نرخ یادگیری** یک پارامتر تنظیم در یک الگوریتم بهینه‌سازی است که اندازه گام هر تکرار را هنگام حرکت به سمت حداقل یک تابع زیان تعیین می‌کند. این پارامتر روی میزان رونویسی اطلاعات کسب شده بر اطلاعات قدیمی تاثیر می‌گذارد، به همین دلیل به صورت استعاری نمایش می‌دهد که مدل یادگیری ماشین به چه سرعتی «یادمی‌گیرد». در ادبیات کنترل تطبیقی، به نرخ یادگیری **بهره** گفته می‌شود.

برای تنظیم یک نرخ یادگیری، بین پرت شدن و نرخ همگرایی یک موازنه هست. درحالیکه جهت کاهشی معمولا از گرادیان تابع زیان تعیین می‌شود، نرخ یادگیری تعیین می‌کند که یک گام در آن جهت چقدر بزرگ است. اگر نرخ یادگیری خیلی بزرگ باشد، روی حداقل یک جهش انجام می‌شود، اما اگر نرخ یادگیری خیلی کوچک باشد، یا میزان همگرایی بسیار طولانی می‌شود یا در داخل حداقل محلی ناخواسته گیر خواهیم کرد.

برای دسترسی به همگرایی سریع‌تر، جلوگیری از نوسان، و گیر افتادن در حداقل محلی ناخواسته، باید نرخ یادگیری را در حین یادگیری تغییر داد، یا براساس یک برنامه نرخ یادگیری یا به کمک یک نرخ یادگیری تطبیقی باید آن را متغیر کرد. نرخ یادگیری و تنظیمات آن می‌تواند بر اساس پارامتر تغییر کند، که در این حالت یک ماتریس قطری است که می‌توان آن را به صورت یک تقریب به وارون ماتریس هسین در روش نیوتون تفسیر کرد. نرخ یادگیری با اندازه گام که توسط جستجوی خط در روش‌های شبه-نیوتون و دیگر الگوریتم‌های بهینه‌سازی تعیین می‌شود، مرتبط است.

برنامه نرخ یادگیری
------------------

نرخ اولیه را می‌توان به صورت پیش‌فرض سامانه قرار داد یا می‌توان آن را به کمک فنونی انتخاب کرد. یک برنامه نرخ یادگیری، در واقع نرخ یادگیری را در مدت یادگیری تغییر می‌دهد، و به صورت معمول بین تکرارها/دوره‌ها تغییر می‌کند. این کار معمولا توسط دو پارامتر انجام می‌شود: **زوال** و **تکانه**. تعداد بسیار متنوعی برنامه نرخ یادگیری وجود دارد، اما معمول‌ترین آن‌ها **زمان-بینان**، **گام-بنیان**، و **نمایی** است.

از پارامتر **زوال** برای قرار دادن یادگیری در محل مناسب و جلوگیری از نوسان استفاده می‌شود، این حالت وقتی اتفاق می‌افتد که نرخ یادگیری ثابت بسیار زیاد یک پرش یادگیری جلو و عقب روی حداقل ایجاد می‌کند، که این توسط یک فراپارامتر کنترل می‌شود.

پارامتر **تکانه** مشابه یک توپ است که از یک تپه پایین می‌آید؛ ما می‌خواهیم تا توپ در پایین‌ترین نقطه تپه قرار گیرد (که متناظر با خطای حداقل است). تکانه هم یادگیری را تسریع می‌کند (افزایش نرخ یادگیری) وقتیکه گرادیان هزینه خطا به یک جهت برای مدت طولانی اشاره می‌کند، و همچنین از حداقل محلی با غلت‌زدن از روی برآمدگی‌ها جلوگیری می‌کند. تکانه توسط یک فراپارامتر کنترل می‌شود، که مشابه جرم یک توپ است که باید به صورت دستی انتخاب شود- اگر بسیار بلند باشد، توپ از روی حداقل غلت می‌زند که ما می‌خواهیم، اگر کم باشد این هدف را برآورده نمی‌کند. فرمول فاکتورگیری در تکانه بسیار پیچیده‌تر از زوال است، اما معمولا در کتابخانه‌های یادگیری عمیق مثل کراس ساخته می‌شود.

برنامه‌های یادگیری **زمان-بنیان** نرخ یادگیری را بر اساس نرخ یادگیری تکرار زمانی قبل تغییر می‌دهد. با فاکتورگیری در زوال، فرمول ریاضی برای نرخ یادگیری این چنین است:

{\displaystyle \eta \_{n+1}={\frac {\eta \_{n}}{1+dn}}}

که در آن \eta  نرخ یادگیری است، d پارامتر زوال است، و n گام تکرار است.

برنامه‌های یادگیری **گام-بنیان** نرخ یادگیری را براساس چند گام از قبل معین تغییر می‌دهد. فرمول کاربردی روال به صورت زیر تعریف می‌شود:

{\displaystyle \eta \_{n}=\eta \_{0}d^{\left\lfloor {\frac {1+n}{r}}\right\rfloor }}

که در آن {\displaystyle \eta \_{n}} همان نرخ یادگیری در تکرار n است، {\displaystyle \eta \_{0}} همان نرخ یادگیری اولیه است، و d میزان تغییر نرخ یادگیری در هر رهاسازی است (0.5 متناسب با نیمه کردن است) و r متناظر با نرخ رهاسازی است، و چقدر نرخ باید رهاسازی شود (10 متناظر با یک رهاسازی در هر 10 تکرار است). یک تابع کف ({\displaystyle \lfloor \dots \rfloor }) در اینجا مقدار ورودی را برای همه مقادیر کمتر از 1 به 0 انجام می‌دهد.

برنامه یادگیری **نمایی** مشابه با گام-بنیان است، اما در عوض گام، از یک تابع نمایی کاهشی استفاده می‌شود. فرمول ریاضی برای فاکتورگیری در زوال به این صورت است:

{\displaystyle \eta \_{n}=\eta \_{0}e^{-dn}}

که در آن d همان متغیر زوال است.

نرخ یادگیری تطبیقی
------------------

مشکلی که با برنامه نرخ یادگیری وجود دارد آن است که همه به فراپارامتر بستگی دارند، که باید همه برای هر جلسه یادگیری معین به صورت دستی انتخاب شوند، که بسته به مشکل با مدل استفاده شده بسیار متغیر هستند. برای حل مشکل، الگوریتم‌های کاهش گرادیان تطبیقی متنوعی مثل Adagrad, Adadelta, RMSprop و Adam که معمولا در کتابخانه‌های یادگیری عمیق مثل کراس ساخته می‌شوند.

پانویس
------

1. ↑  Murphy, Kevin P. (2012). *Machine Learning: A Probabilistic Perspective*. Cambridge: MIT Press. p. 247. ISBN 978-0-262-01802-9.
2. ↑  Delyon, Bernard (2000). "Stochastic Approximation with Decreasing Gain: Convergence and Asymptotic Theory". *Unpublished Lecture Notes*. Université de Rennes. CiteSeerX 10.1.1.29.4428.
3. ↑  Buduma, Nikhil; Locascio, Nicholas (2017). *Fundamentals of Deep Learning : Designing Next-Generation Machine Intelligence Algorithms*. O'Reilly. p. 21. ISBN 978-1-4919-2558-4.
4. 1 2  Patterson, Josh; Gibson, Adam (2017). "Understanding Learning Rates". *Deep Learning : A Practitioner's Approach*. O'Reilly. pp. 258–263. ISBN 978-1-4919-1425-0.
5. ↑  Ruder, Sebastian (2017). "An Overview of Gradient Descent Optimization Algorithms". arXiv:1609.04747 [cs.LG].
6. ↑  Nesterov, Y. (2004). *Introductory Lectures on Convex Optimization: A Basic Course*. Boston: Kluwer. p. 25. ISBN 1-4020-7553-7.
7. ↑  Dixon, L. C. W. (1972). "The Choice of Step Length, a Crucial Factor in the Performance of Variable Metric Algorithms". *Numerical Methods for Non-linear Optimization*. London: Academic Press. pp. 149–170. ISBN 0-12-455650-7.
8. ↑  Smith, Leslie N. (4 April 2017). "Cyclical Learning Rates for Training Neural Networks". arXiv:1506.01186 [cs.CV].
9. ↑  Murphy, Kevin (2021). *Probabilistic Machine Learning: An Introduction*. *Probabilistic Machine Learning: An Introduction*. MIT Press. Retrieved 10 April 2021.
10. ↑  Brownlee, Jason (22 January 2019). "How to Configure the Learning Rate When Training Deep Learning Neural Networks". *Machine Learning Mastery*. Retrieved 4 January 2021.

منابع
-----

مشارکت‌کنندگان ویکی‌پدیا. «Learning rate». در *دانشنامهٔ ویکی‌پدیای انگلیسی*، بازبینی‌شده در ۱۰ ژوئن ۲۰۲۳.

خواندن بیشتر
------------

* Géron, Aurélien (2017). "Gradient Descent". *Hands-On Machine Learning with Scikit-Learn and TensorFlow*. O'Reilly. pp. 113–124. ISBN 978-1-4919-6229-9.
* Plagianakos, V. P.; Magoulas, G. D.; Vrahatis, M. N. (2001). "Learning Rate Adaptation in Stochastic Gradient Descent". *Advances in Convex Analysis and Global Optimization*. Kluwer. pp. 433–444. ISBN 0-7923-6942-4.تابع

پیوند به بیرون
--------------

* de Freitas, Nando (February 12, 2015). "Optimization". *Deep Learning Lecture 6*. University of Oxford.