تشخیص لحن نظرات

تغییرات پروژه از تاریخ 1394/02/27 تا حالا
وقتی برای یک محصول هزاران نظر توسط استفاده کننده‌ها قرار داده می‌شود،  با چالش تحلیل این نظرات مواجهیم و اینکه بلاخره مخاطب چقدر از محصول ما  راضی است. این مشکل وقتی شدیدتر می‌شود که مخاطب بی‌حوصله، نظرش را در  چندین حرف _توییت_ می‌کند و حالا ما باید بفهمیم که منظور مخاطب از  این واژه‌های اختصاری و شکلک‌های خندان یا عصبانی چیست. بگذریم از مواقعی  که برای خود انسان هم فهمیدن لحن نظر، چندان آسان نیست، مثل این یکی:

> کتاب خوبی بود، ولی فصل آخرش رو یه‌کم سخته که تنهایی بخونی!
<br>


# 1.مقدمه

<br>


## 1.1 آنالیز احساسی چیست ؟
<br>
آنالیز احساسی<sup class="footnote-ref" id="fnref-1"><a href="#fn-1" rel="footnote">1</a></sup> به معنای یافتن و استخراج اطلاعاتی است که در بطن یک متن وجود دارد . به طور کلی این تکنیک  قصد دارد تا با به کارگیری  پردازش زبان طبیعی<sup class="footnote-ref" id="fnref-2"><a href="#fn-2" rel="footnote">2</a></sup> ، پردازش متن <sup class="footnote-ref" id="fnref-3"><a href="#fn-3" rel="footnote">3</a></sup>و زبان شناسی محاسباتی<sup class="footnote-ref" id="fnref-4"><a href="#fn-4" rel="footnote">4</a></sup> لحن ، گرایش و حالت یک گوینده یا نویسنده را تشخیص دهد که اصطلاحاً به آن طبقه بندی قطبی <sup class="footnote-ref" id="fnref-5"><a href="#fn-5" rel="footnote">5</a></sup>گفته می شود . هنگامی که جملاتی کلی و بدون کلمات تعیین کننده (مانند "چه کسی می توانست تا انتهای فیلم بنشیند !") جهت طبقه بندی و امتیاز دهی داریم ، آنالیز احساسی متبلور می شود .   
<br>


## 1.2 چرا آنالیز احساسی ؟
<br>
انسان ها همواره سعی بر طبقه بندی اطلاعات در دسترس خود را داشته اند . امروزه نیز در دنیای کامپیوتر و مخصوصاً در فضای اینترنت با حجم عظیمی از اطلاعات مواجه هستیم . کاربران و محققان تلاش های بسیاری جهت طبقه بندی این اسناد کرده اند . پیشگامان علم هوش مصنوعی تلاش کرده اند تا با به کارگیری از این علم طبقه بندی اسناد را به ماشین ها واگذار کنند . آنالیز احساسی به عنوان یکی از متد های طبقه بندی در اوایل قرن 21 پا به عرصه گذاشت .
<br>


## 1.3 کاربرد های آنالیز احساسی 
<br>
برخی کاربردهای این آنالیز عبارت است از :
<br>
+ نقد ، بررسی و امتیاز دهی در سایتها و شبکه های اجتماعی مختلف
+ نرم افزارهای هوش تجاری <sup class="footnote-ref" id="fnref-6"><a href="#fn-6" rel="footnote">6</a></sup>
+ سیستم های پیشنهاد دهنده <sup class="footnote-ref" id="fnref-7"><a href="#fn-7" rel="footnote">7</a></sup>
+ طبقه بندی منابع چند رسانه ای
+ نرم افزارهای فیلتر کننده ی پیغام

<br>


  
# 2.کارهای مرتبط

<br>

تمامی روش های مطرح شده از آنالیز احساسی استفاده می کنند بر خلاف روش های سنتی تر که از سیستم های طبقه بندی بر اساس تیتر<sup class="footnote-ref" id="fnref-8"><a href="#fn-8" rel="footnote">8</a></sup> بهره می بردند . به علت حجم زیاد مطالب روش های پیشین به اختصار معرفی شده است .
<br>



## 2.1 کارهای پیشین
<br>

### 2.1.1 طبقه بندی بر اساس سبک منبع <sup class="footnote-ref" id="fnref-9"><a href="#fn-9" rel="footnote">9</a></sup>
  <br>
  
  
  این تقسیم بندی به طور خلاصه بر مبنای تغییرات در متغیر هایی که در سبک یک متن موثرند عمل میکند . به طور مثال  سبک نویسنده ای خاص یا ناشری به خصوص یا زبان محلی متن و یا سطح مطالب (عادی یا فلسفی یا روشنفکری و ...) .
<br>


### 2.1.2 طبقه بندی بر اساس ژانر
<br>


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



### 2.1.3 تعیین استفاده یا عدم استفاده ی متنی از زبان تلویحی
<br>
یافتن ای مطلب که آیا در یک متن ، نظرات به صورت صریح<sup class="footnote-ref" id="fnref-10"><a href="#fn-10" rel="footnote">10</a></sup> بیان شده است یا به صورت تلویحی<sup class="footnote-ref" id="fnref-11"><a href="#fn-11" rel="footnote">11</a></sup> !

<br>

## 2.2 کارهای اخیر 
<br>



بیشتر فعالیت های گذشته در این زمینه یا قسمتی از آنها و یا همه ی آن بر اساس سیستم های دانش محور <sup class="footnote-ref" id="fnref-12"><a href="#fn-12" rel="footnote">12</a></sup>بوده اند . برخی آنها با بهره گیری از تکنیک های زبانی و ریشه های از پیش تعیین شده ی کلمات<sup class="footnote-ref" id="fnref-1"><a href="#fn-13" rel="footnote">13</a></sup> روی فضای داده ی محدود به یک سری کلمات و جملات خاص کار میکنند . برخی از سیستم های جدید تر با به کارگیری از روش زبان شناسی شناختی<sup class="footnote-ref" id="fnref-14"><a href="#fn-14" rel="footnote">14</a></sup> یا با کمک گیری از ساختار واژه نامه های تفکیک شده بر اساس لغت<sup class="footnote-ref" id="fnref-15"><a href="#fn-15" rel="footnote">15</a></sup> (به صورت دستی یا نیمه اتوماتیک)  توانستند بر روی هر فضای داده ای به فعالیت بپردازند . اما یک نکته در آنها مشترک بوده و آن این است که هیچ یک از این سیستم ها به طور کلی از اینکه دقیقاً محتوای یک مطلب چیست حرفی نمی زدند . 2 مقاله در سال 2002 به چاپ رسید که ادعا داشت انسانها لزوماً هوش و بصیرت برتری جهت انتخاب لغات حساس<sup class="footnote-ref" id="fnref-16"><a href="#fn-16" rel="footnote">16</a></sup> در متن را نسبت به ماشین ها ندارند .
<br>


### 2.2.1 آنالیز احساسی بر اساس ماشین خودآموز<sup class="footnote-ref" id="fnref-17"><a href="#fn-17" rel="footnote">17</a></sup>(Turney's)
<br>

این سیستم مبتنی بر پیاده سازی یک تکنیک بدون سرپرست خودآموز  بوده است . سیستم بر اساس یافتن اطلاعات مشترک و شباهت میان عبارات اسناد موجود و کلمات "عالی" و "ضعیف" عمل می کرده و این کار را به کمک جمع آوری آمار به وسیله ی یک موتور جستجو انجام میداده است .
<br>

### 2.2.2 آنالیز احساسی بر اساس ماشین خودآموز (Thumbs up)
<br>

این سیستم شباهت زیادی به سیستم قبلی دارد با این تفاوت که بدون دانش قبلی بوده و همراه با سرپرست است . عملاً در سیستم قبلی این خود ماشین بوده که با فراگیری تفاوت بین "عالی" و "ضعیف" را متوجه می شده اما در این سیستم نیاز به یک سوپروایزر دارد تا در ابتدای امر تمییز بین "عالی" و "ضعیف" را به ماشین بیاموزد .
<br>
  
  

# آزمایش‌ها

# کارهای آینده

# مراجع

> + Pang, Bo, Lillian Lee, and Shivakumar Vaithyanathan. "Thumbs up? Sentiment Classification using Machine Learning Techniques."
>
> + Liu, Bing, and Lei Zhang. "A survey of opinion mining and sentiment analysis." Mining Text Data. Springer US, 2012. 415-463.
>
> + Erik Cambria , Björn Schuller , Yunqing Xia , Catherine Havasi . "New Avenues in Opinion Mining and Sentiment Analysis" Published by the IEEE Computer Society 2013
> 

# پیوندهای مفید

+ [استفاده از یادگیری عمیق برای تشخیص لحن نظرات](http://nlp.stanford.edu/sentiment)
+ [Natual Language Processing Course - Sentiment Analysis](https://class.coursera.org/nlp/lecture/preview)
+  [مجموعه داده آموزشی و آزمایش](http://www.kaggle.com/c/sentiment-analysis-on-movie-reviews/data)

+  [صفحه مربوط به مسابقه تشخیص لحن نظرات](http://www.kaggle.com/c/sentiment-analysis-on-movie-reviews)

<br>
<br>

<ol>
<li dir="ltr" id="fn-1"><p dir="ltr">Sentiment Analysis</p></li>
<li dir="ltr" id="fn-2"><p dir="ltr">Natural Language Processing</p></li>
<li dir="ltr" id="fn-3"><p dir="ltr">Text Analysis</p></li>
<li dir="ltr" id="fn-4"><p dir="ltr">Computational Linguistics</p></li>
<li dir="ltr" id="fn-5"><p dir="ltr">Polarity Classification</p></li>
<li dir="ltr" id="fn-6"><p dir="ltr">Bussiness Intelligence application</p></li>
<li dir="ltr" id="fn-7"><p dir="ltr">Recommender System</p></li>
<li dir="ltr" id="fn-8"><p dir="ltr">Topic-based Classification</p></li>
<li dir="ltr" id="fn-9"><p dir="ltr">Source Style</p></li>
<li dir="ltr" id="fn-10"><p dir="ltr">Objective</p></li>
<li dir="ltr" id="fn-11"><p dir="ltr">Subjective</p></li>
<li dir="ltr" id="fn-12"><p dir="ltr">knowledge-based</p></li>
<li dir="ltr" id="fn-13"><p dir="ltr">pre-selected set of seed words</p></li>
<li dir="ltr" id="fn-14"><p dir="ltr">Cognitive Linguistics</p></li>
<li dir="ltr" id="fn-15"><p dir="ltr">Construction of Discriminant-word Lexicons</p></li>
<li dir="ltr" id="fn-16"><p dir="ltr">Discriminating Words</p></li>
<li dir="ltr" id="fn-17"><p dir="ltr">Learning Machine</p></li>
</ol>