برنامه نویسی ۱۶۰۴ بازدید

در ادامه سری مطالب آموزش پروژه محور پایتون در مجله فرادرس در این مقاله قصد داریم یک اسکریپت پایتون بنویسیم که برای تحلیل احساسات توییتر افراد مختلف در مورد یک موضوع خاص استفاده می‌شود. بدین منظور از یک کتابخانه «پردازش زبان طبیعی» (Natural Language Processing) به نام TextBlob استفاده می‌کنیم و صرفاً با نوشتن 15 خط کد به مقصود خود نائل می‌شویم. اما شاید بپرسید چرا توییتر؟ دلیل انتخاب توییتر این است که دوست داشته باشیم یا نه، افراد در سراسر دنیا، هر روز و هر ثانیه هزاران واکنش و نظر در مورد هر موضوع در این شبکه اجتماعی ابزار می‌کنند. پیش از آن که به بحث کدنویسی بپردازیم ابتدا باید سازوکار مقدماتی موجود در پس تحلیل احساسات را درک کنیم.

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

تحلیل احساسات چگونه عمل می‌کند؟

  1. ما ابتدا یک ورودی متنی دریافت می‌کنیم که در این مورد توییت خواهد بود.
  2. ورودی خود را به چند کلمه یا جمله کوتاه تقسیم می‌کنیم که به طول ورودی بستگی دارد. این فرایند به نام «توکن سازی» (Tokenization) شناخته می‌شود و توکن‌های کوچکی از متن‌های طولانی ایجاد می‌شود.
  3. زمانی که کلمات مورد نظر را به دست آوردیم، می‌توانیم تعداد دفعاتی که هر کلمه نمایش یافته را بشماریم. این کار مدل «کیسه کلمات» (Bag of Words) نام دارد.
  4. اینک به مرحله نهایی می‌رسیم که مقدار احساسی هر کلمه تعیین شده و زمانی که این کار انجام یافت، ارزش کلی احساسی ورودی محاسبه می‌شود.

تحلیل احساسات توییتر

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

مرحله 1 – آماده‌سازی همه چیز

ما برای تحلیل احساسات با استفاده از توییتر تنها به دو کتابخانه نیاز داریم. کتابخانه اول tweepy (+) است که یک کتابخانه پایتون برای دسترسی به API توییتر است. کتابخانه دوم textblob (+) است که یک کتابخانه برای پردازش داده‌های متنی است. ضمناً این کتابخانه API ساده‌ای برای اجرای وظایف ساده پردازش زبان طبیعی (NLP) مانند تگ‌گذاری اجزای سخن، استخراج عبارت‌های اسمی، تحلیل احساسات و موارد دیگر ارائه می‌کند.

برای استفاده از داده‌های توییتر باید به صفحه Developer Apps (+) توییتر بروید و یک اپلیکیشن ایجاد کنید. ایجاد یک اپلیکیشن باعث می‌شود که یک مجموعه کلید داشته باشید که می‌توانید در ادامه از آن‌ها استفاده کنید.

#Authenticate your application
auth = tweepy.OAuthHandler(consumer_key، consumer_secret)
auth.set_access_token(access_token، access_token_secret)
api = tweepy.API(auth)

تحلیل احساسات توییتر

مرحله 2 – احراز هویت اپلیکیشن

به محض این که کلیدها و توکن‌ها را به دست آورید، کار بعدی که باید انجام دهید این است که خودتان را احراز هویت کنید. 0AuthHandler کلیدهای احراز هویت را می‌گیرد. توکن‌های دسترسی به تعریف مجوز می‌پردازند که شامل خواندن، نوشتن و هر دو است. زمانی که این کار انجام یافت، آن را به API tweepy ارائه دهید.

#Import libraries
import tweepy
from textblob import TextBlob
#Create your app from apps.twitter.com and fill your keys and tokens
consumer_key = '3KFL*************'
consumer_secret = 'yltO********************'
access_token = '3014895**************'
access_token_secret = 'w7rZ********************'

مرحله 3 – تحلیل احساسات

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

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

#Search for tweets
public_tweets = api.search('Tim Cook')
for tweet in public_tweets:
#Print tweets
print(tweet.text)
#Use textblob to fetch sentiment of the tweet
analysis = TextBlob(tweet.text)
print(analysis.sentiment)
print('\n')
تحلیل احساسات توییتر
به نظر می‌آید اغلب توییت‌های تیم کوک مثبت هستند؛ برای مشاهده تصویر در ابعاد اصلی رو این لینک کلیک کنید.

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

سخن پایانی

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

بخش بعدی این مجموعه مطلب آموزشی را می‌توانید از طریق لینک زیر مطالعه کنید:

اگر این نوشته برای شما مفید بوده است، آموزش‌های زیر نیز به شما پیشنهاد می‌شوند:

==

بر اساس رای ۵ نفر
آیا این مطلب برای شما مفید بود؟
شما قبلا رای داده‌اید!
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.

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

یک نظر ثبت شده در “آموزش پایتون: تحلیل احساسات توییتر در ۳ دقیقه — به زبان ساده