1
resposta

[Projeto] Mão na massa: criando nuvens de palavras após o tratamento dos dados

Utilizei a coluna avaliacao, que representa o texto após as etapas de limpeza e normalização. A visualização permite observar quais termos aparecem com maior frequência em cada grupo de sentimento, facilitando a análise do vocabulário mais recorrente nas avaliações. Ao separar os sentimentos, torna-se possível comparar os termos mais associados às experiências positivas e negativas, além de verificar o impacto do tratamento textual na remoção de ruídos, como pontuações, palavras irrelevantes e variações desnecessárias no texto.

Segue o link com o código: https://github.com/Moquiuti/NLP/blob/main/nuvens_de_palavras.ipynb

1 resposta

Olá, Leandro. Como vai?

Parabéns pelo excelente trabalho no projeto! O seu repositório no GitHub está extremamente organizado e o seu notebook demonstra um domínio muito sólido dos conceitos fundamentais de Processamento de Linguagem Natural (NLP) e análise de sentimentos.

A sua abordagem analítica descrita no post é perfeita e reflete exatamente a boa prática do mercado de Data Science. Gerar nuvens de palavras (WordClouds) separadas por classes de sentimento (positivas e negativas) é uma das melhores estratégias de Análise Exploratória de Dados (EDA) em texto, pois permite validar de forma visual se o seu pipeline de limpeza realmente funcionou.

Analisando a sua metodologia, gostaria de destacar os pontos fortes do seu projeto e sugerir duas técnicas de boas práticas avançadas que podem elevar ainda mais o nível do seu tratamento de texto:

Pontos Fortes da sua Abordagem

  • Validação do Pipeline: Como você bem mencionou, ver as nuvens sem ruídos (como pontuações, stop words, etc.) prova o sucesso das etapas de normalização. Se palavras como "e", "de", "o" ou "que" aparecessem grandes na nuvem, saberíamos que a limpeza falhou.
  • Segmentação por Sentimento: Comparar o vocabulário recorrente de avaliações positivas contra as negativas ajuda a mapear os principais causadores de satisfação ou insatisfação dos clientes antes mesmo de treinar o modelo de Machine Learning.

Sugestões de Boas Práticas para Avançar em NLP

Para deixar a sua análise de vocabulário ainda mais rica e precisa, você pode aplicar dois tratamentos adicionais no seu notebook:

  • Aplicação de Lemmatization ou Stemming: Dependendo de como foi feita a sua normalização, palavras como "bom", "boa", "bons" e "boas" podem aparecer como termos separados na nuvem. Aplicar a Lematização (reduzir a palavra à sua forma de dicionário/infinitivo) junta todas essas variações em um único termo ("bom"), tornando o tamanho da palavra na nuvem muito mais fiel à realidade da frequência do conceito.
  • Análise de N-grams (Bigrams e Trigrams): A nuvem de palavras tradicional analisa apenas palavras isoladas (Unigrams). Em análise de sentimentos, uma palavra isolada pode enganar. Por exemplo, a palavra "gostei" é positiva, mas se no texto original estivesse "não gostei", a nuvem pegaria apenas "gostei" (se o "não" for removido como stop word). Configurar o seu pipeline para extrair pares de palavras (Bigrams) permite que termos combinados como "nao_gostei", "recomendo_muito" ou "pessimo_atendimento" apareçam destacados na sua nuvem, capturando o contexto real das frases.

O seu projeto demonstra maturidade técnica e rigor analítico no desenvolvimento de soluções de inteligência artificial aplicadas a texto. Continue compartilhando sua evolução e códigos conosco!

Espero que possa ter lhe ajudado!