image

Acesse bootcamps ilimitados e +650 cursos

50
%OFF
Article image
Carlos CGS
Carlos CGS04/06/2024 12:15
Compartilhe
Microsoft Certification Challenge #3 DP-100Recomendados para vocêMicrosoft Certification Challenge #3 DP-100

Crie Seu Próprio Analisador de Sentimentos com Python em Minutos

  • #Python
  • #Inteligência Artificial (IA)

Introdução

A análise de sentimentos é uma técnica usada para entender se um texto é positivo, negativo ou neutro. É como sentir as emoções das palavras! Imagina ler um comentário e descobrir se a pessoa está feliz, triste ou indiferente. Vamos usar Python para criar um programa que faz isso automaticamente. É como ter um superpoder de leitura de sentimentos!

A aplicabilidade deste código no nosso dia a dia torna a avaliação de feedbacks dos usuários muito mais rápida e eficaz. Imagine que você tenha um site onde há 100 ou 200 feedbacks por dia. Um ser humano não conseguiria dar conta de toda essa demanda, mas uma máquina sim. Com a programação, conseguimos direcionar nosso foco para o que realmente é importante e deixar as tarefas simples para a máquina, como neste caso.

image

Importando Bibliotecas

Primeiro, precisamos importar a biblioteca re, que nos ajuda a trabalhar com texto.

import re

Dividindo o Comentário em Palavras

Vamos dividir a string única gerada comentario em palavras, para que sejam analisadas separadamente uma a uma.

def analise_sentimento(comentario):
palavras = re.findall(r'\b\w+\b', comentario.lower())

Listas de Palavras

Temos três listas nas quais as palavras do comentário são comparadas para verificar se são palavras felizes (positivas), tristes (negativas) e neutras.

 positivas = ["bom", "boa", "ótimo", "excelente", "maravilhoso", "gostei", "incrível", "amei", "amo", "incrivel", "fantástico", "feliz", "alegre"]
negativas = ["ruim", "péssimo", "horrível", "terrível", "odeio", "triste", "chateado", "lamentável"]
neutras = ["mas", "deixou", "apesar", "embora", "mediano", "apenas", "contudo"]

Contando Palavras

Contamos quantas palavras felizes, tristes e neutras existem no comentário, e vamos somando um a mais em cada palavra que entra neste critério de comparação.

count_positivo = sum(palavra in positivas for palavra in palavras)
count_negativo = sum(palavra in negativas for palavra in palavras)
count_neutro = sum(palavra in neutras for palavra in palavras)

Determinando o Sentimento

Decidimos se o comentário é positivo, negativo ou neutro, fazendo um comparação da quantidade de incidências das palavras negativas, negativas e neutras, verificando no primeiro if se há mais palavras positivas, no segundo elif se há mais palavras negativas e no ultimo else se se o sentimento é neutro.

 if count_positivo > count_negativo and count_neutro == 0:
  return "Positivo"
elif count_negativo > count_positivo and count_neutro == 0:
  return "Negativo"
else:
  return "Neutro"

Iniciando o Codigo

Nesta ultima parte iniciamos o código e definimos uma entrada e armazenamos na variável cometario para depois colocarmos ele como atributo da função analise_sentimento para que seja retornada a análise do sentimento.

Vamos iniciar e testar! Digite um comentário e veja o que o programa diz sobre ele.

if __name__ == "__main__":
comentario = input("Insira sua mensagem...")
sentimento = analise_sentimento(comentario)
print("Sentimento:", sentimento)

Conclusão

Agora você sabe como um programa pode entender se um comentário é positivo, negativo ou neutro. É como ter um ajudante que lê emoções! Você pode tentar escrever diferentes comentários e ver o que o programa diz e automatizar rotinas repetitivas que te demandam tempo, permitindo que você realmente foque no que é necessário. Espero ter ajudado um pouco na sua jornada com este artigo!

Este artigo foi desenvolvido por inteligência artificial, complementado e revisado por humano. O código de análise de sentimentos foi inspirado em um bootcamp da DIO e refatorado por mim, segue abaixo as IAs utilizadas:

  • ChatGpt - Para gerar os textos e título;
  • Lexica - Para gerar as imagens do artigo;
  • Remove.bg - Para remover fundo das imagens;

Vamos Disseminar os Conhecimentos e Transbordar Tudo que Aprendemos

Segue o repositório deste código em meu GitHub

Segue o link para o meu LinkedIn

Compartilhe
Recomendados para você
Suzano - Python Developer
BairesDev - Machine Learning Practitioner
Santander - Cibersegurança #2
Comentários (1)
Jairo Junior
Jairo Junior - 05/06/2024 11:43

Contribuo fornecendo profundidade sobre o tema, para quem deseja entender o potencial do uso da análise de sentimentos e de sua importância para o contexto moderno.

 

Apresento uma indicação de uso para o Youtube.

 

Segue link;

 

https://revista.ibict.br/liinc/article/view/3933

 

Quem puder por favor continue a contribuir e estender esse tópico, para fazermos do mesmo uma referência de consulta sobre o tema.

Recomendados para vocêMicrosoft Certification Challenge #3 DP-100