فعال سازی
آموزش‌های پایه‌ای هوش مصنوعیاصول هوش مصنوعییادگیری با نظارتیادگیری عمیق

کدام توابع زیان و فعال سازی را باید در یادگیری عمیق به کار برد؟

0
زمان مطالعه: ۵ دقیقه

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

فرض نویسنده بر این است که مخاطبان با توابع فعال سازی آشنایی دارند. برای آشنایی بیشتر با این حوزه می‌توانید به این مقاله‌ Deep Learning: Overview of Neurons and Activation Functions مراجعه کنید.

فعال سازی و زیان

با چه مسئله‌ای روبرو هستید؟

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

  • آیا می‌خواهید یک مقدار عددی پیش‌بینی کنید؟

مثال‌: پیش‌بینی قیمت مناسب برای یک محصول، یا پیش‌بینی میزان فروش‌ در هرروز.

در این صورت، بخش رگرسیون: پیش‌بینی مقدار عددی را مطالعه نمایید.

  • آیا می‌خواهید یک خروجی گسسته (رده‌ای) پیش‌بینی کنید؟

مثال‌: پیش‌بینی اشیای مشاهده شده در یک تصویر، یا پیش‌بینی موضوع یک مکالمه.

در این صورت باید تعداد رده‌هایی که در دست دارید و تعداد برچسب‌های موردنظرتان را مشخص کنید.

اگر داده‌های شما دودویی (چه به صورت رده‌ای و چه غیررده‌ای (مثل کلاهبرداری، تشخیص، احتمال خرید)) هستند به قسمت پیش‌بینی خروجی دودیی مراجعه نمایید.

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

یادگیری عمیق deep learning چیست؟ هرآنچه باید درباره این فناوری بدانید

رگرسیون: پیش‌بینی مقدار عددی

مثال: پیش‌بینی قیمت یک محصول

لایه‌ی آخر شبکه‌ی عصبی یک نورون داشته و مقداری که تولید می‌کند یک مقدار عددی پیوسته است.

برای قضاوت در مورد صحت پیش‌بینی، مقدار به دست‌آمده را با مقدار حقیقی (که خود نیز یک عدد پیوسته است) مقایسه می‌کنیم.

پیش بینی مقدار در زیان و فعال سازی

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

خطی: این تابع مقدار عددی موردنیاز را به دست می‌دهد.

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

یا

  • ReLU: این تابع یک مقدار عددی بزرگ‌تر از ۰ تولید می‌کند.

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

تابع زیان

خطای مجذورات میانگین (MSE): این تابع، مجذورات میانگین تفاوت‌های بین مقدار پیش‌بینی شده و مقدار حقیقی را پیدا می‌کند.

مجذورات میانگین در زیان

پیش‌بینی خروجی دودویی

مثال: پیش‌بینی جعل تراکنش

لایه‌ی نهایی شبکه‌ی عصبی یک نورون داشته و مقداری بین ۰ و ۱ تولید می‌کند که به صورت احتمال تفسیر می‌شود.

برای ارزیابی صحت پیش‌بینی، مقدار به دست آمده با مقدار واقعی مقایسه می‌شود. اگر داده‌ها در همان رده باشند، مقدار حقیقی ۱ و در غیر این صورت ۰ خواهد بود.

پیش بینی خروجی دودویی

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

سیگموئید: این تابع مقداری بین ۰ و ۱ تولید می‌کند؛ این مقدار نشان می‌دهد مدل از قراردهی نمونه در رده‌ی مورد نظر چقدر اطمینان دارد.

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

تابع زیان

آنتروپی متقاطع دودویی: تابع آنتروپی متقاطع میزان تفاوت بین دو توزیع احتمال را تعیین می‌کند. مدل ما یک توزیع به شکل {p, 1-p} پیش‌بینی می‌کند زیرا یک توزیع دودویی داریم. از تابع آنتروپی متقاطع دودویی برای مقایسه‌ی این توزیع با توزیع حقیقی{y, 1-y} استفاده می‌کنیم.

زیان

یادگیری عمیق و ردیابی چند شی ای

پیش‌بینی یک برچسب واحد از چندین کلاس

مثال: پیش‌بینی موضوع یک سند

لایه‌ی آخر شبکه‌ی عصبی برای هر کلاس یک نورون دارد و مقداری بین ۰ و ۱ تولید می‌کند که می‌تواند به عنوان احتمال تفسیر شود. سپس یک توزیع احتمال از خروجی به دست می‌آید که مجموع آن ۱ خواهد بود.

برای تشخیص صحت پیش‌بینی، هر خروجی با مقدار حقیقی خودش مقایسه می‌شود. مقادیر واقعی به صورت one-hot رمزگذاری شده‌اند، بدین معنی که ۱ در ستون مربوط به دسته‌ی صحیح و ۰ در ستون دیگر نمایان می‌شود.

توابع هوش مصنوعی

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

سافت­مکس: این تابع برای هر خروجی مقداری بین ۰ تا ۱ ارائه می‌دهد؛ حاصل جمع همه‌ی این مقادیر با هم ۱ است. بدین ترتیب در این مورد هم یک توزیع احتمال در دست داریم.

سافتمکس

تابع زیان

آنتروپی متقاطع: تابع آنتروپی متقاطع میزان تفاوت بین دو توزیع احتمال را مشخص می‌کند. مدل ما یک توزیع مدل به صورت {p1, p2, p3}  پیش‌بینی می‌نماید (که در آن  p1+p2+p3 = 1). از تابع آنتروپی متقاطع برای مقایسه‌ی این توزیع با توزیع حقیقی {y1, y2, y3} استفاده می‌کنیم.

آنتروپی متقاطع

پیش‌بینی چندین برچسب از چندین کلاس

مثال: پیش‌بینی حضور حیوانات در یک تصویر

لایه‌ی نهایی شبکه‌ی عصبی برای هر کلاس یک نورون دارد و مقداری بین ۰ تا ۱ تولید می‌کند که به صورت احتمال در نظر گرفته می‌شود.

برای سنجش صحت پیش‌بینی، هر خروجی با مقدار حقیقی مربوط به خود مقایسه می‌شود. اگر در ستون مقادیر حقیقی، عدد ۱ نمایش داده شود، یعنی دسته‌ی مربوط به آن مقدار در ورودی حضور دارد؛ در غیر این صورت عدد ۰ در آن ستون نمایش داده خواهد شد.

پیش بینی از چندین کلاس

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

سیگموئید: این تابع مقداری بین ۰ تا ۱ به دست می‌دهد که نشان دهنده‌ی میزان اطمینان مدل از حضور داده در آن کلاس می‌باشد.

سیگموئید زیان و فعال سازی

تابع زیان

آنتروپی متقاطع دودویی: آنتروپی متقاطع تفاوت بین دو توزیع احتمال را مشخص می‌کند. مدل ما توزیع مدل به شکل {p, 1-p}  (یک توزیع دودویی) را برای هر کدام از کلاس‌ها پیش‌بینی می‌نماید. از آنتروپی متقاطع دودویی برای مقایسه‌ی این توزیع با توزیع حقیقی {y, 1-y}  در هر کلاس استفاده کرده و نتایج را با هم جمع می‌کنیم.

دودویی زیان

خلاصه‌ی مطالب

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

خلاصه متن

این مطلب چه میزان برای شما مفید بوده است؟
[کل: ۱ میانگین: ۲]

چگونه می‌توان داده های تاریک را با هوش مصنوعی و یادگیری ماشین استخراج کرد؟

مقاله قبلی

فناوری OCR؛ رابط هوشمند استخراج متون قابل ویرایش از تصاویر

مقاله بعدی

شما همچنین ممکن است دوست داشته باشید

نظرات

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد.