Рубрики
Без рубрики

Анализ настроений с использованием Python и NLTK

Анализ настроений в Python действительно прост из-за библиотеки NLTK и ее предварительно обученной модели под названием Vader (Valence Alence Soidary для настроения Reb. Tagged с Python, NLP, DataScience.

Введение

В этой статье я проведу вас, как создать простой проект анализа настроений с использованием Python и NLTK.

Что такое анализ настроений?

Анализ настроений – это процесс вывода эмоций от некоторых средств массовой информации, таких как текст, изображение или видео. Это широко используется в различных областях. Большинство крупных политических партий используют анализ настроений, чтобы проверить восприятие своих кандидатов среди общественности, чтобы оценить их вероятность победы.

Как сделать анализ настроений?

Анализ настроений стал простым из-за таких библиотек, как NLTK, используя эту библиотеку.

В этом примере я буду использовать модель под названием Vader (валентный словарь, осведомленное о валентности для рассуждений с чувствами). Он обучен коротким текстам, похожим на те, которые мы видим в Твиттере, и он чрезвычайно мощный в идентификации сленга, но будет бороться при использовании с большим текстом.

Давайте прыгнем в код

# sentiment.py
import nltk

text = "This is a very nice day"
nltk.download('vader_lexicon')
from nltk.sentiment.vader import SentimentIntensityAnalyzer
sid = SentimentIntensityAnalyzer()
score = ((sid.polarity_scores(str(text))))['compound']

if(score > 0):
    label = 'This sentence is positive'
elif(score == 0):
    label = 'This sentence is neutral'
else:
    label = 'This sentence is negative'

print(label)

Теперь вы можете запустить приведенный выше код

python sentiment.py

Действительно просто, верно? Вы можете поиграть с этим, изменив текст.

Давайте теперь развертываем это с помощью колбы.

Развертывание модели анализа настроений с использованием колбы

Flask-это микро-образная работа, используемая для очень быстрого создания веб-сайтов с очень небольшим количеством строк кода. Это один из популярных и предпочтительных средств, используемых учеными данных, чтобы показать свои выводы для обычных людей.

Вот как будет выглядеть наше готовое веб -приложение

ШАГ 1

Создайте новую папку, чтобы сохранить проект. Файлы, которые нам нужны

  • main.py – Вот где инициализируется сервер Flask и Vader
  • шаблоны/index.html – Мы можем использовать пользовательские HTML -файлы вместе с колбами, чтобы придать финальной веб -странице хороший вид.

Шаг – 2 Скопируйте код в соответствующие файлы

# main.py
import nltk
from flask import request
from flask import jsonify
from flask import Flask, render_template

app = Flask(__name__)

@app.route('/')
def my_form():
    return render_template('index.html')

@app.route('/', methods=['POST'])
def my_form_post():
    text = request.form['text']
    nltk.download('vader_lexicon')
    from nltk.sentiment.vader import SentimentIntensityAnalyzer
    sid = SentimentIntensityAnalyzer()
    score = ((sid.polarity_scores(str(text))))['compound']

    if(score > 0):
        label = 'This sentence is positive'
    elif(score == 0):
        label = 'This sentence is neutral'
    else:
        label = 'This sentence is negative'

    return(render_template('index.html', variable=label))

if __name__ == "__main__":
    app.run(port='8088', threaded=False, debug=True)
// index.html



  
    
    
    
  
  
    
sentiment analysis app

Sentiment Analysis App

Type a sentence, click on the submit button and wait for your prediction.



{{ variable }}

ШАГ 3

Теперь вы можете запустить сервер, запустив основной файл.

Посетите URL -адрес, указанный при запуске основного файла.

Вуаля !! Вот и все, теперь, как следующий шаг, вы можете провести это на таких платформах, как Heroku, как любой другой веб -сайт.

Оригинал: “https://dev.to/milindsoorya/sentiment-analysis-using-python-and-nltk-26l1”