رفتن به نوشته‌ها

انکدرها، اتوانکدرها و سایر متعلقات آنها

امروز داشتم تو یوتیوب میگشتم که یک کانال آموزشی بسیار جالب به نام Arvix Insight پیدا کردم. بعد از کانال Two minute paper که اونم راجع مقالات جدید در حوزه یادگیری ماشین و یادگیری عمیق صحبت می‌کنه و کانال تنسورفلو سومین کانلی بود که در یوتیوب دنبالش کردم و به نظرم واقعا ارزشش رو داشت. هرچند که کانالش تازه (۱ سال) راه افتاده و موضوعاتی که در آن پوشش داده شده است بسیار محدود است ولی از نحوه بیانش خوشم آمد 🙂 موضوعی که یوتیوب پیشنهاد داده بود راجع به اتوانکدرها بود که بدم نمیومد یکبار دیگر برای خودم مرور بشه… و البته شاید چیزهایی توش گفته بشه که من باهاشون آشنا نباشم. ویدئو رو دیدم و بسیار لذت بردم و به نظرم از اون چیزی که انتظار داشتم بسیار بهتر بود. اگر با بحث زبانش مشکل نداشته باشید به نظرم بهترین و مفیدترین توضیحی است که میتونید در ۱۵ دقیقه راجع به اتوانکدرها (رمزگذارهای خودکار !!!) به دست بیارید. در این ویدئو به نسخه‌های دیگر از جمله اتوانکدرهای نویزدار (noisy autoencoders)، انکودرهای متغیر (variational autoencoder) و… میپردازد و آنها را با مثال به صورت خیلی ساده توضیح می‌دهد.

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

یک کاربرد جالب که بنظرم می‌تونه خیلی در صنعت عکاسی تحول ایجاد کنه بحث noisy autoencoder ها هستند. شاید براتون اتفاق افتاده باشه که یک عکس می‌گیرید و نور میافته یا چشماتون قرمز میشه یا به طور کلی نویز دارد. با کمک همین تکنیک میتونید این مشکلات را تا حد خوبی حل کنید:

برای توضیحات بیشتر فیلم زیر در یوتیوب رو می‌تونید مشاهده کنید 🙂

 

خب حالا که ویدئوی بالا رو مشاهده کردید بیایید اندکی کاربردهای آن را در بحث پردازش زبان طبیعی بررسی کنیم.

 

بردار نهفته کلمات (word embedding):

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

ترجمه ماشین (machine translation):

ترجمه ماشین یکی از سخت‌ترین تسک‌های ماشین لرنینگ است و اصلاحا به آن AI Complete گفته می‌شود! یعنی تسکی است که اگر بتونیم حلش کنیم همه تسک‌های دیگر پردازش زبان به کمک آن می‌توان حل کرد! روش‌های زیادی برای ترجمه ماشین ارائه شده است و یکی از مدلهایی که ارائه شده است با کمک انکودرها است که در مقاله زیر به آن پرداخته شده است:

خوشه‌بندی اسناد (document clustering):

این کار ابتدا توسط آقای هینتون (hinton) و سالاخودینوو (Salakhutdinov) در سال ۲۰۰۶ انجام شده است و سعی در بازنمایی اسناد در ابعاد پایین‌تر به کمک انکودرها کرده‌اند. ایده مشابه قبل است هدف یافتن یک بازنمایی با ابعاد کمتر به شرطی که به بتوان اسناد اولیه را از روی آن با دقت بالایی ساخت ولی در حوزه پردازش زبان ساختن متن اولیه (تقریبا) معنی ندارد! در مقاله آقای هینتون یک بازنمایی به اندازه ۲۰۰۰ هزار برای هر سند به دست آوردند و با استفاده از شباهت کسینوسی میزان شباهت اسناد را محاسبه می‌کردند.

 

تحلیل احساسات متن (Sentiment analysis)

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

 

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

منتشر شده در آموزشپردازش زبان طبیعییادگیری عمیق

اولین باشید که نظر می دهید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *