خلاصه

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


۱. مقدمه

۱.۱ یادگیری عمیق

یادگیری عمیق1 شاخه ای از بحث یادگیری ماشینی2 و مجموعه ای از الگوریتم هایی است که تلاش می کنند مفاهیم انتزاعی سطح بالا را با استفاده یادگیری در سطوح و لایه های مختلف مدل کنند . یادگیری عمیق در واقع نگرشی جدید به ایده ی شبکه های عصبی3 می باشد که سالیان زیادی است وجود داشته و هر چند سال یکبار در قالبی جدید خود را نشان می دهد. دو مزیت این شیوه ی یادگیری را می بینید

  • بازنمود های یادگیری : نیاز اصلی هر الگوریتم یادگیری ویژگی هایی4 است که از ورودی ها استخراج می شود . ممکن است این ویژگی ها از پیش به صورت دستی تهیه شده و به الگوریتم داده شود که این روش در الگوریتم های با ناظر5 به کار می رود . در مقابل روش های بدون نظارت 6 خواهد بود که خود اقدام به استخراج ویژگی ها از ورودی خواهد نمود. استخراج دستی ویژگی ها علاوه بر اینکه زمانبر است معمولا هم ناقص و در عین حال بیش از حد نیازِ ذکر شده می باشد. یادگیری عمقی برای ما یک راه استخراج خودکار ویژگی ها پدید می آورد.

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

    یادگیری لایه لایه

    در پاسخ به این سوال که چرا اکنون دوباره به این ایده برگشته ایم و علت رستاخیر مجدد یادگیری عمقی میتوان دلایل متعددی ذکر کرد از جمله همان دلیل به وجود آمدن روش های استخراج خودکار که از جمله ی آن ها میتوان RBMs7 , autoencoder , ... نام برد و همچنین درک بهتر از روش های منظم کردن مدل ها .
    تعاریف مختلفی برای یادگیری عمیق وجود دارد که همه ی آن ها در یک نکته مشترک هستند.ابتدا به معرفی سلول عصبی مصنوعی8 و شبکه های نورونی خواهیم پرداخت و سپس یادگیری عمیق را معرفی خواهیم کرد.
    • سلول عصبی مصنوعی :
      توافق دقیقی بر تعریف شبکه عصبی در میان محققان وجود ندارد؛ اما اغلب آنها موافقند که شبکه عصبی شامل شبکه‎ای از عناصر پردازش ساده (نورونها) است، که می‌تواند رفتار پیچیده کلی تعیین شده‎ای از ارتباط بین عناصر پردازش و پارامترهای عنصر را نمایش دهد.

تصویر ۱ - مدل تک نورون عصبی مصنوعی

در تصویر ۱ مدل یک نورون عصبی مصنوعی را مشاهده می کنید که از بخش های ورودی ، تابع فعال ساز و خروجی تشکیل شده است. خروجی تابع فعال ساز از رابطه ی زیر بدست می آید.
a = f ( w^T + b )

f(x) = sigmoid(x) = \frac {1- \mathrm{e}^{-۲x} }{1+ \mathrm{e}^{-۲x}}

تابع sigmoid هر عدد طبیعی را به بازه ی [۱و۰] نگاشت خواهد کرد لذا تابع فعال سازی می تواند به عنوان احتمال برای آن واحد عصبی در نظر گرفته شود.
f(x) = tanh(x)

  • شبکه های عصبی:

    شبکه ی عصبی- تصویر۲

    با کنار هم قرار گرفتن این نورون های واحد چه در جهت عمودی ( کنار هم ) و چه در جهت افقی (روی هم) شکل خواهند گرفت و در نهایت با یک لایه ی خروجی پایان خواهند یافت .
    برای مثال در واحد های چند گانه عمودی اینطور خواهد بود که هر واحد مقدار a خود را با ضرب داخلی پارامتر w در x و در نهایت جمع با مقدار بایاس b بدست می آورد . پس برای m نورون عصبی که مشابه تصویر-۲ قرار گرفته اند با استفاده از نوشتار ماتریسی خواهیم داشت :
    تعریف ماتریسی برای شبکه ای از m نورون

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

۱.۳ پردازش زبان طبیعی

با گسترش روز افزون متونی که توسط بشر روی بستر اینترنت منتشر می شود امروز بیش از پیش نیاز به روش های تحلیل و استخراج دانش و اطلاعات مفید احساس می شود. اکنون روش های بسیاری برای تحلیل زبان های طبیعی وجود دارد و پیشرفت های بسیاری در زمینه ی حل مسائل آن به وجود آمده است .
از جمله ی این مسائل می توان به موضوع تحلیل لحن نظرات9 اشاره کرد. شناسایی لحن که به آن نظرکاوی10 هم گفته می شود روشی است که در آن نظر، لحن، برآورد، گرایش و احساس مردم نسبت به موجودیت هایی مثل: محصولات ، خدمات، وقایع مورد مطالعه قرار می گیرد.
کاربردهای شناسایی لحن نظرات:نظرات به دلیل تاثیر کلیدی که بر روی رفتار انسان می گذارد محور اصلی بیشتر فعالیت های بشر می باشد. هنگامی که ما میخواهیم یک تصمیمی بگیریم نیاز داریم که نظرهای دیگران را هم بدانیم. در دنیای واقعی شرکت ها و سازمان ها همواره به دنبال این هستند که نظرات مردم یا مشتریان را درباره ی محصولات و یا خدمات خود بدانند. مشتریان هم به دنبال این هستند که قبل از خرید یک محصول نظرات کاربرانی که قبلا از آن محصول استفاده کرده اند را بدانند و بر اساس آن اقدام به خرید یا عدم خرید آن محصول کنند. بدست آوردن نظرات مردم و مشتریان خود یک تجارت عظیم برای بازاریابی، روابط اجتماعی و حتی رقابت های انتخاباتی می باشد. در گذشته این اطلاعات از طریق برگه های نظرسنجی و یا آزمایش بر روی یک گروه خاص بدست می آمد ولی امروزه با گسترش روزافزون رسانه های اجتماعی (مثل بلاگ ها،توییتر و فیسبوک) افراد و سازمان ها از محتوای این رسانه ها برای تصمیم گیری استفاده می کنند و افراد دیگر لازم نیست که به نظر دوستان و آشنایان درباره یک محصول اکتفا کنند زیرا نظر و بحث های فراوانی درباره ی آن محصول در محیط وب وجود دارد. البته به خاطر فراوانی و تنوع سایت ها پیدا کردن و پایش سایت های مفید و چکیده گرفتن از اطلاعات موجود در آنها هنوز کاری دشوار و پیچیده می باشد، زیرا هر سایت به طور معمول دارای حجم زیادی از نظرات می باشد که برای انسان عادی استخراج و خلاصه سازی نظرات موجود سخت می باشد. در اینجاست که نیاز به یک سیستم شناسایی لحن نظرات احساس می شود. در سال های اخیر سیستم های تشخیص لحن نظرات در تقریبا تمام محدوده های ممکن از پیش بینی فروش محصولات و خدمات مشتریان گرفته تا پیش بینی وقایع اجتماعی و نتیجه انتخابات سیاسی پخش شده اند [8]

۲.۱ مدل های پردازش زبان

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

این مقاله ی او موضوع عجیب و جالبی دارد ، برخلاف سایر مقالاتش.
سایر مقالاتش موضوع عجیب و جالبی دارند ، برخلاف این مقاله ی او.

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

کارهای مرتبط

در این بخش های حوزه ها و کارهای مرتبط را بررسی خواهیم کرد .

حوزه تحلیل لحن نظرات :

بیشتر کار های انجام شده در این ضمینه مبتنی بر روش های مدل کردن [‌Bags of Words^] می باشد . از جمله آن ها [7] می باشد . همچنین در مقاله [8] به تحلیل نظرات مردم در مورد کیفیت غذا و جَو و ... با در نظر گرفتن جنبه های مختلف رستوران ها بررسی شده است .کار های زیادی هم در حوزه ی کاوش احساسات با روش تغییر قطب ها در ساختار ترکیبی انجام شده است. [9][10]

حوزه یادگیری عمیق :

ایده های ترکیبی زیادی مربوط به شبکه های عصبی در [11][12] انجام شده است . اولین مدل بازگشتی خودکار-مستقل حافظه در [13] . همچنین ارتقای RBMs به عنوان یک لایه ی ویژه برای تشخیص صدا [14] از جمله مقاله های کلیدی در این زمینه می باشد.


آزمایشها


مراجع

[1]. Richard S, Alex P, Jean : Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank: Stanford University. click
[2]. Richard Socher : Recursive Deep Learning For Natural Language Processing : PhD Dissertation , Department Of Computer Science , Stanford , Aug 2014 click
[3]. Changliang Li, Bo Xu: Recursive Deep Learning for Sentiment Analysis over Social Data , International Joint Conference on WI and IAT , 2014
[4]. Peter .D , Patric .P : From Frequency to Meaning: Vector Space Models of Semantics: Journal of Artificial Intelligence Research , 2010
[5]. Hidekazu Y : Study on Distributed Representation of Words with Sparse Neural Network Language Model , 3rd International Conference on Advanced Applied Informatics , Osaca , JAPAN , 2014
[6]. Baroni .M, A. Lenci : A general framework for corpus-based semantics: Computational Linguistics , 2010
[7]. Pang B . Lee L : Opinion Mining and Sentiment Analysis : oundations and Trends in Information Retrieval , 2008
[8]. Snyder and R. Barzilay: Multiple aspect rank-ing using the Good Grief algorithm. In HLT-NAACL , 2007
[9]. olanyi and A. Zaenen. 2006. Contextual valence shifters. In W. Bruce Croft, JamesThe Information Retrieval Series
[10]. Nakagawa, K. Inui, and S. Kurohashi. 2010. Dependency tree-based sentiment classification using CRFs
with hidden variables. In NAACL, HLT.
[11].Bottou. From machine learning to machine reasoning : CoRR , 2011
[12].E. Hinton : Mapping part-whole hierarchies into connectionist networks. Artificial Intelligence, 1990
[14]. L. Deng, and F. Seide. Large vocabulary speech recognition using deep tensor neural networks , In INTERSPEECH , 2010
[15]. Marvin Minsky : Society Of Mind , MIT Press 1985
[16]. Semantic-Analysis click

سید ابوالفضل مهدی زاده

در ابتدا لازم می‌بینم بابت زحمتی که صورت گرفته از شما تشکر کنم. موضوع انتخاب شده موضوع خوبی بوده و جای کار بسیاری برای آن وجود دارد. در اینجا به ذکر چند نکته برای بهبود کیفیت کارتان می‌پردازم. هدف من بهبود کار شما است و امیدوارم این نظرات در ادامه به بهتر شدن کارتان کمک کند.
1- پیشنهاد می‌کنم هیچ‌وقت به سمت ترجمه تحت الفظی بالخصوص در زمان ذکر کارهای دیگران نروید. بهترین کار نوشتن برداشت خودتان است.
2- ذکر لغت اصلی کلمات معادل در پاورقی کار بسیار درستی است. این کار معمولا در اولین استفاده لغت در متن صورت می‌گیرد. همچنین نیاز به ذکر پاورقی برای بعضی لغات وجود ندارد. مثلا همه می‌دانند یادگیری ماشین معادل چه لغتی است.
3- فکر می‌کنم منظور شما از مدل بازگشتی عمقی همان Deep Recurrent است. بهتر است در همه جای متن از واژه عمیق به جای عمقی استفاده شود.
4- در پاورقی شماره 3 Artificial Neural Network ذکر شده ولی در متن از واژه مصنوعی خبری نیست.
5-به جای تمامی فعل‌های می‌باشد، می‌توانید از فعل است استفاده کنید.
6- مقدمه مناسب است هر چند می‌توانست کاملتر باشد اما موضوع را به خوبی توضیح داده‌اید. بخش‌هایی از مقدمه که به نظر می‌رسد از کارهای دیگران تهیه شده‌اند شماره ارجاع ندارند. بهتر است زمانی که از منابع دیگری برای بیان مطالب استفاده می‌کنید حتما ارجاع به آن را در متن قرار دهید.
7- شماره ارجاع برای شکل‌های استفاده شده نیز وجود ندارند.
8- تحلیل لحن نظرات معادل Sentiment Analysis است.
9- معمولا منابع مطابق با ترتیب ارجاع آن‌ها در متن، بیان می‌شوند. همچنین منابع شما از قالب مشخصی پیروی نمی‌کند. پیشنهاد می‌کنم قالب مشخصی مانند ieee citation references را استفاده کنید.
10- به نظرم بازنمود معادل مناسبی برای واژه Representation نیست. هرچند شما این لغت را در پاورقی ذکر نکردید که به نظرم حتما باید ذکر می‌شد. معادل مناسب برای این واژه بازنمایی با بازنمایش است. البته برای واژگانی مانند Representation Learning و یا Multilayer Representation Learning استفاده از معادل‌هایی مانند یادگیری بازنمایش یا یادگیری بازنمایشی چندلایه به نظر خود من هم جالب نیست. در صورتی که معادل مناسبی پیدا نکردید می‌توانید خود لغت را به کار ببرید.
11- منبع 13 اصلا وجود ندارد.
12- بیشتر کارهای صورت گرفته در این حوزه تقریبا مربوط به چند سال اخیر هستند. منظور من تشخیص لحن نظرات با استفاده از یادگیری عمیق است. پیشنهاد می‌کنم بخش کارهای مرتبط را تکمیل کنید. به نظر مطالعات شما بر کارهای دیگران بسیار کم است. به نظرم بهتر است به پایان نامه آقای ریچارد ساچر در استفورد مراجعه کرده و از آن استفاده کنید.
13- به طور کلی متن نقایص زبانی زیادی دارد. یکبار مطالعه مجدد و ترمیم این نقایص کیفیت کار شما را بسیار بهتر می‌کند.
در انتها باید ذکر کنم اینکه بتوانید کارهای صورت گرفته توسط دیگران را یکبار خودتان اجرا کرده و نتایج را مشاهده کنید، موفقیت مناسبی محسوب می‌شود. پروژه انجام شده در درس الگوشناسی آماری می‌تواند به شما بسیار کمک کند. مراجعه به سایت پردازش زبان طبیعی استنفورد http://nlp.stanford.edu/sentiment نیز می‌تواند شما را کمک کند.