Skip to main content

ویکی AI

منبعی معتبر و کامل جهت معرفی رودمپ یادگیری مفاهیم تخصصی هوش مصنوعی

بازگشت به صفحه اصلی ویکی

جهت کسب اطلاع در مورد رودمپ عمومی هوش مصنوعی روی لینک رو به رو کلیک کنید.

شبکه های عصبی بازگشتی (RNN)

فهرست محتوا:

  • معرفی شبکه های عصبی بازگشتی
  • توابع فعال ساز
    • سیگموید
    • RELU
    • Tanh

شبکه های عصبی بازگشتی یا RNNs یکی از مدل های یادگیری عمیق هستند که برای سری های زمانی یا داده هایی که شامل دنباله می شوند، مورد استفاده قرار می گیرند. در سال ۱۹۹۷ اولین نمونه های شبکه های عصبی بازگشتی طراحی شدند. شبکه های عصبی بازگشتی دارای مفهوم حافظه هستند که به آنها کمک می کند وضعیت ها یا اطلاعات ورودی های قبلی را برای تولید خروجی بعدی دنباله ذخیره کنند. به عبارت دیگر، وضعیت فعلی یک شبکه عصبی بازگشتی تحت تاثیر تصمیمات گذشته می باشد و به طور مشابه حالت های فعلی شبکه نیز بر تصمیمات بعدی تاثیرگذار خواهد بود.

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

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

شبکه های عصبی بازگشتی

ساختار کلی شبکه عصبی بازگشتی

یک گام از شبکه عصبی بازگشتی ساده به صورت فشرده و باز شده در شکل زیر نشان داده شده است. در شبکه های عصبی بازگشتی می توان شبکه را در هر گام زمانی باز کرد تا خروجی در آن مرحله دریافت شود.

شبکه های عصبی بازگشتی

حالت فشرده و باز شده یک گام از شبکه عصبی بازگشتی

در شکل بالا نماد هایی به کار رفته است که به بیان مفاهیم هر نماد پرداخته می شود:

xt ورودی در مرحله زمانی t است.
yt خروجی شبکه در مرحله زمانی t است.
ht برداری است که مقادیر واحد ها یا حالت های پنهان در زمان را ذخیره می کند.
Whx وزن هایی مرتبط با ورودی های لایه بازگشتی هستند.
Whh وزن های مرتبط با واحد های پنهان در لایه بازگشتی هستند.
Wyh وزن هایی هستند که با واحدهای مخفی به خروجی مرتبط هستند.

توابع فعال سازی شبکه های عصبی بازگشتی

در شبکه های عصبی بازگشتی از توابع فعال سازی مختلفی استفاده می شود. رایج ترین توابع فعال سازی مورد استفاده در این شبکه ها توابع Tanh ،Sigmoid و RELU هستند. برای مشاهده روابط مربوط به توابع فعال سازی Sigmoid و RELU، اینجا کلیک کنید. برای جلوگیری از تکرار مطالب، در این قسمت تنها به بیان رابطه مربوط به تابع فعال سازی Tanh که در رابطه زیر نشان داده شده است، پرداخته می شود.

g(z)=ez-e-zez+e-z

رابطه تابع فعال سازی Tanh

تابع Tanh به تعدیل مقادیری که در طول شبکه در جریان هستند، کمک می کند. این تابع تمامی مقادیر را به بازه [1،1-] می برد. به دلیل انجام عملیات مختلف ریاضی در طول شبکه عصبی بازگشتی ممکن است مقادیر بسیار بزرگ شوند بنابراین با اعمال تابع Tanh مقادیر شبکه در بازه [1،1-] قرار می گیرند تا مقدار خروجی شبکه نیز تعدیل شود.

تابع Sigmoid هم مانند تابع Tanh عمل می کند با این تفاوت که مقادیر را در میان بازه [0،1] قرار می دهد. دلیل قرار دادن مقادیر در این بازه این است که شبکه بتواند در زمان به روز رسانی یا فراموش کردن داده از آن استفاده کند. به طوری که هر عددی در صفر ضرب شود نتیجه صفر می شود و این یعنی آن داده باید فراموش شود و هر عددی در یک ضرب شود حاصل برابر با خود عدد می شود و این یعنی آن داده باید حفظ شود. به این صورت شبکه یاد می گیرد چه اطلاعاتی فراموش و چه اطلاعاتی حفظ شود.

با توجه به اینکه توابع فعال ساز Sigmoid و RELU جزو توابع فعال ساز مشترک بین دو مدل MLP و LSTM هستند بنابراین، از رسم دوباره نمودار این دو تابع خودداری شده است. برای آشنایی با نمودار این توابع، اینجا کلیک کنید. در این قسمت به رسم نمودار مربوط به تابع فعال سازی Tanh پرداخته شده است. نمودار Tanh در شکل زیر قابل مشاهده است.

شبکه های عصبی بازگشتی

نمودار تابع فعال سازی Tanh

جهت کسب اطلاعات در مورد رویدادهای آموزشی هوش مصنوعی با ما در ارتباط باشید.

تماس با ما
Close Menu