پرش به محتوا

تابع فعال‌سازی Swish

از ویکی‌پدیا، دانشنامهٔ آزاد
تابع swish برای مقادیر مختلف بتا

تابع Swish به شکل زیر تعریف می‌شود:


[۱]

که می‌تواند ثابت، یا پارامتر قابل یادگیری باشد. اگر باشد، تابع swish تبدیل به تابع سیگموئید خطی یا SiLU می‌شود.

  • در حالت تابع به ReLU یا تبدیل می‌شود.
  • در حالت تابع حاصل خطی و برابر با
  • در حالت تابع به تبدیل می‌شود.

مشتق[ویرایش]

نسبت به [ویرایش]

مشتق تابع swish نسبت به بدین شکل قابل محاسبه است:

مشتق تابع swish به ازای مقادیر مختلف β

نسبت به [ویرایش]

مشتق تابع swish نسبت به بدین شکل قابل محاسبه است:

کاربردها[ویرایش]

در سال 2017 دانشمندان در Google توانستند با جایگزینی تابع swish به جای ReLU و Sigmoid، نتایج بهتری برای دیتاست ایمیج‌نت بدست آورند. همچنین عملکرد این تابع در سایر مدل‌ها و دیتاست‌های مشهور برابر یا بهتر از دیگر توابع فعال‌سازی رایح بوده است. البته باید توجه داشت که تابع swish نسبت به ReLU از لحاظ محاسبات چه در محاسبه تابع و چه در محاسبه مشتق بسیار پیچیده‌تر است.[۲]

منابع[ویرایش]

  1. Ramachandran, Prajit; Zoph, Barret; Le, Quoc V. (2017-10-27). "Searching for Activation Functions". arXiv:1710.05941v2 [cs.NE].
  2. Serengil, Sefik Ilkin (2018-08-21). "Swish as Neural Networks Activation Function". Machine Learning, Math. Archived from the original on 2020-06-18. Retrieved 2020-06-18.