Text Mining

Extrair informações importantes de textos, em .csv, banco de dados e de informação de grandes volumes textuais, análise de sentimentos, classificação de texto, detecção de fraudes e spam..

A maior parte são dados não estruturados, muita informação, com o Text Mining consegue-se extrair informações relevantes sobre todo esse volume de dados.

Onde pode ser utilizado?

Saúde e pesquisa.

Atendimento ao cliente.

Gestão de Riscos.

Pesquisa acadêmica.

Análise de sentimento.

Filtragem de Spam.

Pré-processamento

Tokenização: Transforma cada palavra ou frase em token

Stopwords: Utiliza somente as palavras importantes. Ex: “e”,”de,”um,”as”, …(português)

Lemmatization: Palavras importantes, aposto do stemming, precisão semantica, deixa a palavra no formato correto: ctz –> para –> certeza

lowercasing – minusculas

remover pontuação – se acaso não tiver valor semantico, se tiver valor semantico não remover.

stemming – reduz a palavra a sua raiz. Ex. fez, fazem, fazer –> para –> fazer.

Dica: iastudio.google.com – mostra quantos token com a pergunta e com a resposta (deixa mais barato a quantidade de token em um modelo generativo):

Exemplo de Libs:

NLTK – toolkit de NLP (https://www.nltk.org/)

wordcloud – https://www.wordclouds.com/

spacy – o que é verbo, o que é artigo… https://spacy.io/

Analise de sentimento:

Separar aspectos positivos e aspectos negativos.

Aspectos positivos: Ex: bom, sabor

Aspectos negativos: Ex: demora, ruim

Aspectos Neutros.

Desafios em NLP

Ambiguidade

A ambiguidade pode ser um desafio em NLP, palavras com mais de 1 sentido. Exemplo: Sonha, sonho dormindo e sonho de doce.

Sarcasmo e Ironia

“Seria ótimo se não fosse tão ruim”

NLP – Análise de Sentimento

TextBlob()

Polaridade:

-1 negativo, 0 neutro, 1 positivo, ou seja, quanto mais perto o valor da polaridade for de -1 mais tende ao negativo, o inverso tambem.

Subjetividade:

0 indica uma informação mais objetiva, baseada em fato.

1 baseada em opinião, subjetividade, não baseada em fato.

Outras bibliotecas mais detalhadas:

VANDER SentmentIntensityAnalyser()

  • pos:o quão positiva é a frase ou documento;
  • neu:o quão neutra é a frase ou documento;
  • neg:o quão é negativa;
  • compound:pontuação geral.

TF-IDC (frequencia do texto):

Avaliar a importância de 1 palavara, combinando a frequencia do termo.

Exemplo: a palavra “xxx” aparece 3 vezes no documento de 100 palavras: TF(xxx) = 3/100 = 0,03

IDF ():

O Quão rara é a palavra

Bag of Words (bow)

Palavras em números, converte palavras em numeros, a unica maneira de utilizar estatisticas, probabilidade no qual os modelos vai compreender.

Vai transformar cada frase em uma linha:

Deixe um comentário