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

در هوش مصنوعی، **تابع فعالسازی** یک گره، خروجی آن گره را با یک ورودی یا مجموعه ای از ورودی‌ها تعریف می‌کند. یک مدار مجتمع استاندارد می‌تواند به عنوان یک الکترونیک دیجیتال از توابع فعال سازی دیده شود که بسته به ورودی می‌تواند «روشن» (۱) یا «خاموش» (۰) باشد. این مشابه پرسپترون خطی در شبکه‌های عصبی است. با این حال، تنها توابع فعال‌سازی غیرخطی به چنین شبکه‌هایی اجازه می‌دهند تا مسائل غیر ضروری را تنها با استفاده از تعداد کمی از گره‌ها محاسبه کنند و چنین توابع فعال‌سازی غیرخطی نامیده می‌شوند.

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

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

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

### توابع فعالسازی غیر خطی
این نوع توابع بیشتر از سایر توابع فعالسازی در شبکه‌های عصبی مورد استفاده قرار می‌گیرند و وفق پذیری بالایی با داده‌های پیچیده ورودی دارند. در این نوع توابع استفاده از روند پس‌انتشار به راحتی امکان‌پذیر است.

## مقایسهٔ بین توابع فعالسازی
توابع فعال سازی متعددی وجود دارد. مقاله اصلی هینتون و همکاران در سال ۲۰۱۲ در مورد تشخیص خودکار گفتار از یک تابع فعال سازی لجستیک سیگموئید استفاده می‌کند. معماری چشم‌انداز کامپیوتر AlexNet 2012 از تابع فعال سازی یکسوساز استفاده می‌کند، همان‌طور که ResNet معماری بینایی کامپیوتری Seminal 2015 نیز استفاده می‌کند. مدل پردازش زبان اولیه 2018 BERT از نسخه روان ReLU، یعنی GELU استفاده می‌کند.

علاوه بر عملکرد تجربی، توابع فعالسازی دارای ویژگی‌های ریاضی مختلفی نیز هستند:

**غیرخطی**

وقتی تابع فعال‌سازی غیرخطی است، می‌توان ثابت کرد که یک شبکه عصبی دو لایه یک تقریب‌کننده تابع جهانی است. این به عنوان قضیه تقریب جهانی شناخته می‌شود. تابع فعال سازی هویت این ویژگی را برآورده نمی‌کند. وقتی چندین لایه از تابع فعال سازی هویت استفاده می‌کنند، کل شبکه معادل یک مدل تک لایه است.

**دامنه**

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

**مشتق‌پذیری پیوسته**

این ویژگی برای فعال کردن روش‌های بهینه‌سازی مبتنی بر گرادیان مطلوب است (تابع فعالسازی یکسوساز به‌طور پیوسته قابل تمایز نیست و مشکلاتی با بهینه‌سازی مبتنی بر گرادیان دارد، اما همچنان امکان‌پذیر است). تابع فعال‌سازی مرحله باینری در ۰ قابل تمایز نیست و برای تمام مقادیر دیگر به ۰ متمایز می‌شود، بنابراین روش‌های مبتنی بر گرادیان نمی‌توانند با آن پیشرفتی داشته باشند.

این خصوصیات به‌طور قاطع بر عملکرد تأثیر نمی‌گذارند و تنها ویژگی‌هایی نیستند که ممکن است مفید باشند.

### جدول توابع فعالسازی
جدول زیر ویژگی‌های چندین تابع فعال سازی را مقایسه می‌کند:

جدول زیر توابع فعال‌سازی را فهرست می‌کند که توابع یک برابر x از لایه یا لایه‌های قبلی نیستند:

## جستارهای وابسته
* تابع لجستیک
* تابع یکسوساز
* تابع بیشینه هموار
* تابع سیگموید

## منابع

رده:شبکه‌های عصبی مصنوعی
رده:هوش مصنوعی
رده:یادگیری ماشین