अजगर - भावना विश्लेषण

अर्थ विश्लेषण दर्शकों की सामान्य राय का विश्लेषण करने के बारे में है। यह चर्चा के तहत किसी मामले के बारे में समाचार, फिल्म या किसी भी ट्वीट की प्रतिक्रिया हो सकती है। आम तौर पर, इस तरह की प्रतिक्रियाओं को सोशल मीडिया से लिया जाता है और एनएलपी के माध्यम से विश्लेषण करने के लिए एक फाइल में रखा जाता है। हम पहले सकारात्मक और नकारात्मक शब्दों को परिभाषित करने का एक सरल मामला लेंगे। फिर उन शब्दों का उपयोग करके उन शब्दों का विश्लेषण करने के लिए एक दृष्टिकोण लेना। हम nltk से sentiment_analyzer मॉड्यूल का उपयोग करते हैं। हम पहले एक शब्द के साथ विश्लेषण करते हैं और फिर युग्मित शब्दों के साथ बीग्राम्स भी कहते हैं। अंत में, हम शब्दों को नकारात्मक भाव के साथ चिह्नित करते हैं जैसा कि में परिभाषित किया गया हैmark_negation समारोह।

import nltk
import nltk.sentiment.sentiment_analyzer 
# Analysing for single words
def OneWord(): 
	positive_words = ['good', 'progress', 'luck']
   	text = 'Hard Work brings progress and good luck.'.split()                 
	analysis = nltk.sentiment.util.extract_unigram_feats(text, positive_words) 
	print(' ** Sentiment with one word **\n')
	print(analysis) 
# Analysing for a pair of words	
def WithBigrams(): 
	word_sets = [('Regular', 'fit'), ('fit', 'fine')] 
	text = 'Regular excercise makes you fit and fine'.split() 
	analysis = nltk.sentiment.util.extract_bigram_feats(text, word_sets) 
	print('\n*** Sentiment with bigrams ***\n') 
	print analysis
# Analysing the negation words. 
def NegativeWord():
	text = 'Lack of good health can not bring success to students'.split() 
	analysis = nltk.sentiment.util.mark_negation(text) 
	print('\n**Sentiment with Negative words**\n')
	print(analysis) 
    
OneWord()
WithBigrams() 
NegativeWord()

जब हम उपरोक्त कार्यक्रम चलाते हैं तो हमें निम्नलिखित आउटपुट मिलते हैं -

** Sentiment with one word **
{'contains(luck)': False, 'contains(good)': True, 'contains(progress)': True}
*** Sentiment with bigrams ***
{'contains(fit - fine)': False, 'contains(Regular - fit)': False}
**Sentiment with Negative words**
['Lack', 'of', 'good', 'health', 'can', 'not', 'bring_NEG', 'success_NEG', 'to_NEG', 'students_NEG']