تغییرات اخیر

در اینجا اطلاعیه‌ها، نسخه‌ها و تغییرات جدید لیارا فهرست می‌شوند.

درک شبکه‌های عصبی پیشخور FFN و یا شبکه عصبی بازگشتی


۶ شهریور ۱۴۰۴

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

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

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

در این مقاله از لیارا، هر دو نوع را تجزیه و تحلیل می‌کنیم، نحوه عملکردشان را توضیح می‌دهیم و عملکرد آن‌ها را از طریق مثال‌های ساده و موارد واقعی مقایسه خواهیم کرد.

با هوش مصنوعی لیارا، دسترسی سریع و پایدار به API هوش مصنوعی داشته باشید.
✅ ارائه API هوش مصنوعی✅ ادغام آسان با سرویس‌ها و اپلیکیشن‌ها✅ مقیاس‌پذیری و امنیت بالا
خرید و راه‌اندازی سرویس هوش مصنوعی

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

آنچه در ادامه خواهید خواند:

  • پیش‌ نیازها
  • شبکه عصبی چیست؟
  • شبکه عصبی چگونه یاد می‌گیرد؟
  • عناصر شبکه‌های عصبی
  • ساختار ابتدایی یک نورون واحد در شبکه عصبی
  • توابع فعال‌سازی رایج
  • این لایه‌ها چگونه با هم کار می‌کنند؟
  • مثال یک شبکه عصبی پایه
  • معماری CNN نمونه برای وظیفه شناسایی ارقام دست‌نویس (منبع)
  • شبکه پیش‌خور چگونه آموزش داده می‌شود؟
  • الگوریتم انتشار عقب‌گرد
  • ساختار شبکه‌های عصبی
  • مثال یک شبکه عصبی بازخورد
  • شبکه بازخورد چگونه آموزش داده می‌شود؟
  • CNN در مقابل RNN
  • نمونه‌های معماری: AlexNet
  • معماری AlexNet با pooling هرمی و نظارت (منبع)
  • ساختار LeNet-5 (منبع)
  • حافظه کوتاه‌مدت بلند (LSTM)
  • سلول حافظه کوتاه‌مدت بلند (LSTM) (منبع)
  • نمودار سلول واحد بازگشتی دروازه‌دار (منبع)
  • موارد استفاده نمودار سلول واحد بازگشتی دروازه‌دار (منبع)
  • جمع بندی

پیش‌ نیازها

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

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

شبکه عصبی چیست؟

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

ساختار یک شبکه عصبی معمولا شامل سه جزء اصلی است:

لایه ورودی:

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


لایه‌های پنهان:

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

لایه خروجی:

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

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

بیایید عملکرد شبکه عصبی را بررسی کنیم:

انتشار رو به جلو:

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

انتشار عقب‌گرد:

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

عناصر شبکه‌های عصبی

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

ساختار ابتدایی یک نورون واحد در شبکه عصبی

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

ورودی

این مجموعه داده‌ها (یعنی ویژگی‌ها) است که به مدل یادگیری وارد می‌شود. برای مثال، آرایه‌ای از اندازه‌گیری‌های جوی فعلی می‌تواند ورودی برای مدل پیش‌بینی آب و هوا باشد.

وزن

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

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

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

تابع‌های فعال‌سازی رایج عبارتند از: گام واحد، سیگموئید، خطی قطعه‌ای و گاوسی.

توابع فعال‌سازی رایج

بایاس

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

لایه‌ها

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

لایه ورودی

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

لایه‌های پنهان

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

هوش مصنوعی مولد (Generative AI) چیست؟ راهنمای جامع برای توسعه‌ دهندگان و استارتاپ‌ ها
هوش مصنوعی مولد (Generative AI)

لایه خروجی

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

در لایه خروجی، مدل‌های طبقه‌بندی و رگرسیون معمولاً یک گره واحد دارند. با این حال، این کاملاً به طبیعت مسئله و نحوه توسعه مدل بستگی دارد. برخی مدل‌های اخیر لایه خروجی دوبعدی دارند. برای مثال، مدل جدید Make-A-Scene متا که تصاویر را صرفاً از متن ورودی تولید می‌کند.

این لایه‌ها چگونه با هم کار می‌کنند؟

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

مثال یک شبکه عصبی پایه

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

ساختار شبکه‌های پیش‌خور

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

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

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

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

شبکه‌های عصبی کانولوشنی (CNNها) یکی از شناخته‌شده‌ترین تکرارهای معماری پیش‌خور هستند. آن‌ها رویکردی مقیاس‌پذیرتر برای طبقه‌بندی تصاویر و وظایف شناسایی اشیاء ارائه می‌دهند و از مفاهیم جبر خطی، به ویژه ضرب ماتریس، برای شناسایی الگوها در تصویر استفاده می‌کنند.

در زیر مثالی از معماری CNN برای طبقه‌بندی ارقام دست‌نویس آورده شده است.

معماری CNN نمونه برای وظیفه شناسایی ارقام دست‌نویس (منبع)

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

شبکه پیش‌خور چگونه آموزش داده می‌شود؟

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

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

الگوریتم انتشار عقب‌گرد

ساختار شبکه‌های عصبی

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

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

مثال یک شبکه عصبی بازخورد

شبکه بازخورد چگونه آموزش داده می‌شود؟

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

CNN در مقابل RNN

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

از نظر کاربرد، CNNها اغلب برای مدل‌سازی مسائل شامل داده‌های فضایی مانند تصاویر استفاده می‌شوند. RNNها در پردازش داده‌های زمانی و توالی‌دار مانند متن یا توالی‌های تصویری بهتر عمل می‌کنند.

این تفاوت‌ها را می‌توان در جدول زیر خلاصه کرد:

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

نمونه‌های معماری: AlexNet

AlexNet، یک معماری مهم شبکه عصبی کانولوشنی (CNN)، توسط الکس کریژوسکی توسعه یافت. این شبکه شامل هشت لایه بود: پنج لایه کانولوشنی (برخی با pooling حداکثری) و سه لایه کاملاً متصل. AlexNet به طور قابل توجهی از تابع فعال‌سازی ReLU غیراشباع استفاده کرد که در آموزش نسبت به tanh و سیگموئید کارآمدتر بود. این کار به عنوان نقطه عطفی در بینایی کامپیوتری شناخته می‌شود و انتشار AlexNet تحقیقات گسترده بعدی با استفاده از CNNها و GPUها برای یادگیری عمیق سریع‌تر را تحریک کرد. تا سال ۲۰۲۲، مقاله AlexNet بیش از ۶۹,۰۰۰ ارجاع دریافت کرده بود.

معماری AlexNet با pooling هرمی و نظارت (منبع)

LeNet

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

ساختار LeNet-5 (منبع)

حافظه کوتاه‌مدت بلند (LSTM)

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

سلول حافظه کوتاه‌مدت بلند (LSTM) (منبع)

شبکه‌های LSTM از سلول‌ها ساخته شده‌اند (شکل بالا را ببینید)، اجزای اساسی یک سلول LSTM معمولاً عبارتند از: دروازه فراموشی، دروازه ورودی، دروازه خروجی و حالت سلول.

واحدهای بازگشتی دروازه‌دار (GRU)

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

نمودار سلول واحد بازگشتی دروازه‌دار (منبع)

موارد استفاده نمودار سلول واحد بازگشتی دروازه‌دار (منبع)

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

پیش‌بینی نرخ ارز

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

شناسایی اشیاء نیمه‌پوشیده

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

طبقه‌بندی تصاویر

در برخی موارد، معماری‌های پیش‌خور ساده وقتی با رویکردهای آموزشی مناسب ترکیب شوند، از شبکه‌های بازگشتی بهتر عمل می‌کنند. برای مثال، ResMLP، یک معماری برای طبقه‌بندی تصاویر که صرفاً بر اساس پرسپترون‌های چندلایه است. یک پروژه تحقیقاتی عملکرد چنین ساختاری را هنگام استفاده با آموزش کارآمد داده نشان داد. ثابت شد که یک معماری باقی‌مانده ساده با بلوک‌های باقی‌مانده متشکل از شبکه پیش‌خور با یک لایه پنهان واحد و لایه تعامل پچ خطی، اگر با روش آموزشی مدرن مانند آن‌هایی که برای معماری‌های مبتنی بر ترانسفورمر معرفی شده‌اند استفاده شود، می‌تواند به طور شگفت‌انگیزی خوب روی بنچمارک‌های طبقه‌بندی ImageNet عمل کند.

طبقه‌بندی متن

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

مقاله دیگری روش طبقه‌بندی احساسات مبتنی بر LSTM برای داده‌های متنی پیشنهاد کرد. این تکنیک LSTM عملکرد طبقه‌بندی احساسات با نرخ دقت ۸۵% نشان داد که برای مدل‌های تحلیل احساسات بالا محسوب می‌شود.

عامل هوش مصنوعی (AI Agents) یا چت‌ بات؟ تفاوت‌ ها و کاربرد ها
عامل هوش مصنوعی (AI Agents) یا چت‌ بات

جمع بندی

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

در این پست، تفاوت‌های بین توپولوژی‌های شبکه عصبی پیش‌خور و بازخورد را بررسی کردیم. سپس دو نمونه از این معماری‌ها را کاوش کردیم که زمینه هوش مصنوعی را پیش برده‌اند: شبکه‌های عصبی کانولوشنی (CNNها) و شبکه‌های عصبی بازگشتی (RNNها). سپس مثال‌هایی از هر ساختار همراه با موارد استفاده واقعی ارائه دادیم.

به اشتراک بگذارید

برچسب‌ها: