Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Links dos scripts utilizados: 
 
https://www.kaggle.com/code/testes1000/analise-de-sentimentos-com-pyspark-ml 
 
https://www.kaggle.com/code/testes1000/utiliza-o-do-modelo-pyspark-sentimentos 
 
 
https://www.kaggle.com/code/testes1000/analise-de-sentimentos-com-pyspark-ml
https://www.kaggle.com/code/testes1000/utiliza-o-do-modelo-pyspark-sentimentos
Na primeira etapa do projeto foi definido como objetivo identificar o sentimento dos clientes de uma empresa 
pelos tweets postados. 
Muitos empreendedores têm dúvidas sobre a eficácia do Twitter para as empresas, afinal, a rede apresentou queda 
no número de usuários desde o “boom” inicial. Mas o fato é que ainda vale a pena investir em uma estratégia no 
Twitter. Essa é uma rede excelente para divulgar os conteúdos que você produz (em blog ou canal de YouTube, 
por exemplo) para gerar tráfego no seu site. Também é útil para apostar no relacionamento com o consumidor, já 
que se trata de uma rede social com interações rápidas. 
 
O Twitter anunciou o balanço do quarto trimestre de 2018, fechando o período com 908 milhões de dólares de 
receita. De acordo com o relatório, o período também contou com 126 milhões de pessoas utilizando a rede 
diariamente contra 124 milhões em 2017. Em relação ao número de usuários, houve uma queda: foram 321 
milhões no quatro trimestre de 2018 contra 330 milhões ao fim de 2017. No entanto, de acordo com as tendências 
do Twitter, a plataforma ainda é uma mídia interessante para as empresas. Segundo o Twitter, 74% das pessoas 
que seguem pequenas e médias empresas fazem isso para obter atualizações sobre produtos futuros. Já 47% dos 
usuários que seguem marcas estão propensas a visitarem os sites delas. Ou seja: independentemente da queda do 
número de usuários, o Twitter permanece como uma rede social relevante. A plataforma permite a comunicação 
direta com seus clientes, e por ser uma interação pública, a imagem da sua empresa será bem-vista. 
Assim, o Twitter torna mais fácil para os clientes chegarem às marcas e fornecerem seus comentários, ou pedirem 
ajuda. Portanto, a sua empresa pode utilizar essa oportunidade para coletar feedbacks que vão melhorar seus 
produtos, além de fornecer o suporte que seus clientes precisam. 
Um exemplo aqui é o Netflix, que criou uma conta no Twitter dedicada para fornecer suporte em vários idiomas. 
Dessa forma, a empresa também coleta feedbacks para promover uma melhor experiência do usuário, e repassar 
à equipe de pesquisa. Na segunda etapa foi feita a Seleção dos dados. O conjunto de dados utilizado será o 
Sentiment140 dataset with 1.6 million tweets ideal para análise de Big Data. 
Link: https://www.kaggle.com/datasets/kazanova/sentiment140 
 
 
 
 
 
 
 
https://blog.contaazul.com/como-montar-uma-estrategia-de-venda-campea-para-pequenas-empresas
https://blog.contaazul.com/empresa-pode-ganhar-dinheiro-no-youtube
https://g1.globo.com/economia/tecnologia/noticia/2019/02/07/com-foco-em-manter-rede-livre-de-abusos-twitter-teve-primeiro-lucro-anual-em-2018.ghtml
https://visual.ly/twitter-follower/
https://visual.ly/twitter-follower/
Contexto 
Este é o conjunto de dados sentiment140. Ele contém 1.600.000 tweets extraídos usando a API do Twitter. Os 
tweets foram anotados (0 = negativo, 4 = positivo) e podem ser usados para detectar sentimentos. 
 
Conteúdo 
Ele contém os seguintes 6 campos: 
 
alvo: a polaridade do tweet (0 = negativo, 2 = neutro, 4 = positivo) 
 
ids: O id do tweet (2087) 
 
data: a data do tweet (sábado, 16 de maio 23:58:44 UTC 2009) 
 
sinalizador: A consulta (lyx). Se não houver consulta, esse valor será NO_QUERY. 
 
usuário: o usuário que twittou (robotickilldozr) 
 
text: o texto do tweet (Lyx é legal) 
 
O framework utilizado será o apache spark através da biblioteca pyspark do python. 
 
O projeto foi desenvolvido na plataforma KAGGLE, uma das mais especializadas em Ciência de Dados. Por isso 
é indicado para experimentar os modelos e códigos testados, que seja criado uma conta gratuitamente na 
plataforma. 
 
 
Inicialmente é carregado todas as bibliotecas necessárias para o projeto: 
 
 
 
 
Em seguida é iniciada a sessão do Spark 
 
 
 
 
Agora carregamos os dados da fonte mencionada anteriormente e exibimos 
 
 
 
 
 
É necessário renomear as colunas para facilitar o entendimento dos dados 
 
 
Na terceira fase é realizado a limpeza dos dados entre várias etapas. Nesta fase é verificado se há valores nulos 
ou duplicados para exclusão: 
 
 
 
É detalhado um resumo estatístico do conjunto de dados 
 
 
Eliminamos colunas desnecessárias: 
 
 
Existem apenas dois valores distintos na coluna de destino. 0 para "Negativo" e 4 para "Positivo" de acordo com 
a descrição dos dados. Então foi alterado o valor Positivo de 4 para 1. 
 
Pré-processamento de texto 
 
Nesta parte do tratamento dos dados é removido palavras desnecessárias, pontuações, links e delimitadores nos 
textos. 
A função stopwords remove as “stop words” que são palavras que aparecem com frequência na maioria dos 
textos, e que não nos acrescentam informações. 
 
 
 
Visualizamos no gráfico o resultado até então dos sentimentos negativos e positivos mais recorrentes: 
Positivos: 
 
 
 
Negativos: 
 
 
 
 
 
Preparação dos dados para construção do modelo 
A tokenização é o tratamento que consiste em dividir uma frase em palavras ou tokens individuais. Percebemos 
que antes, os elementos estavam todos dentro da lista como uma única frase, agora, as palavras estão separadas 
por vírgulas como elementos individuais dentro da lista. 
 
 
CountVectorizer é usado para transformar um determinado texto em um vetor com base na frequência (contagem) 
de cada palavra que ocorre em todo o texto. Isso é útil quando temos vários desses textos e desejamos converter 
cada palavra em cada texto em vetores (para usar em análises de texto posteriores). 
 
 
 
 
TF-IDF é uma maneira de extrair recursos para qualquer dado textual. É calculado usando o termo frequência e 
frequência inversa do documento. 
 
 
onde N representa a frequência de uma palavra em um documento. A pontuação IDF nos diz o quão importante 
é uma determinada palavra em todo o corpus. Por exemplo, se uma palavra estiver aparecendo em cada 
documento, a pontuação do IDF será zero para isso. 
 
 
 
 
Nesta parte é selecionada as colunas e dividido os dados em treino e teste para o processamento posteriormente. 
 
 
 
 
 
 
 
 
 
 
 
Na quarta etapa é realizado a aplicação das técnicas de mineração, com dois algoritmos escolhidos: Regressão 
Logística e Naive Bayes. 
 
A regressão logística é um modelo estatístico usado para determinar a probabilidade de um evento acontecer. Ele 
mostra a relação entre os recursos e, em seguida, calcula a probabilidade de um determinado resultado. 
 
 
 
 
No caso o modelo foi salvo localmente para ser reutilizado em próximas execuções. 
 
 
 
 
 
Exibindo resultados assertivos: 
 
 
 
Atualmente, o algoritmo se tornou popular na área de Aprendizado de Máquina (Machine Learning) para 
categorizar textos baseado na frequência das palavras usadas, e assim pode ser usado para identificar se 
determinado e-mail é um SPAM ou sobre qual assunto se refere determinado texto, por exemplo. 
 
Por ser muito simples e rápido, possui um desempenho relativamente maior do que outros classificadores. Além 
disso, o Naive Bayes só precisa de um pequeno número de dados de teste para concluir classificações com uma 
boa precisão. 
 
A principal característica do algoritmo, e o motivo de receber “naive” (ingênuo) no nome, é que ele desconsidera 
completamente a correlação entre as variáveis (features). Ou seja, se determinada fruta é considerada uma “Maçã” 
se ela for “Vermelha”, “Redonda” e possui “aproximadamente 10cm de diâmetro”, o algoritmo não vai levar em 
consideração a correlação entre esses fatores, tratando cadaum de forma independente. 
 
 
 
 
No caso o modelo foi salvo localmente para ser reutilizado em próximas execuções. 
 
 
Na quinta etapa é realizado a validação dos resultados obtidos. 
Pela área da curva ROC que segue os parâmetros: 
 
• Um valor abaixo de 0,5 indica um modelo muito pobre. 
• Um valor de 0,5 significa que o modelo não é melhor do que prever um resultado do que uma chance 
aleatória. 
• Valores acima de 0,7 indicam um bom modelo. 
• Valores acima de 0,8 indicam um modelo forte. 
• Um valor de 1 significa que o modelo prevê perfeitamente os membros do grupo que experimentarão um 
determinado resultado e aqueles que não. 
 
É possível perceber que o modelo obteve um bom resultado. 
 
 
É detalhado sua boa acurácia e precisão, e em seguida é avaliado de maneira mais clara os acertos através da 
matriz de confusão onde é descrito os valores afirmados como verdadeiros e falsos e que realmente estavam 
corretos e o inverso. 
 
 
 
 
 
 
 
 
Os mesmos procedimentos foram repetidos para o algoritmo Naive Bayes. O resultado da curva ROC não foi tão 
satisfatório como no primeiro modelo assim como sua acurácia e precisão foram inferiores. 
 
 
 
 
 
 
 
 
Para facilitar ainda mais a visualização dos dados, utilizamos a biblioteca plotly para verificar a quantidade e 
porcentagem de resultados preditos pelo melhor modelo (Regressão Logística). 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Na próxima parte na implementação do modelo utilizaremos outro script para carregar dados quando necessário 
e fazer as predições com os algoritmos salvos anteriormente. 
*Nota: É necessário possuir uma conta com autenticação por telefone para ativar a internet e realizar o download 
das bibliotecas necessárias. 
 
É instalado as dependências necessárias, no caso a biblioteca pyspark. 
 
 
 
É carregado as bibliotecas e criada a sessão. 
 
 
 
 
 
 
Foi carregado uma base de dados de teste com um pedaço do dataframe utilizado para teste e treinamento dos 
modelos, mas também pode ser utilizado outras bases de dados com as mesmas semelhanças: uma coluna apenas 
de texto com tweets em inglês. 
 
 
 
Na sequência aplicamos as mesmas técnicas de limpeza descritas anteriormente, só que agora com os modelos 
salvos já treinados. 
 
 
 
 
 
 
 
Utilizamos agora o modelo de melhor precisão (Regressão Logística) para predizer os resultados para este 
conjunto de dados proposto. 
 
 
 
 
Em sequência plotamos os gráficos para visualizar os resultados obtidos: 
 
 
 
 
 
 
 
 
Juntando os resultados obtidos com os previamente carregados, salvamos os dados para utilização externa 
posteriormente. Esta planilha salva pode ser baixada facilmente. 
 
 
 
 
 
 
 
 
 
Na última etapa de utilização das informações, com os resultados obtidos é possível encaminhar, por exemplo, 
estas imagens de gráficos para os diretores da companhia, que assim, podem avaliar a qualidade das relações 
atuais e auxiliados pelo setor operacional, ou de marketing possam identificar possíveis estratégias que possam 
melhorar as opiniões dos clientes, buscando cada vez mais engajamento e retornos positivos da clientela. 
 
Diagrama do Modelo 
Seleção dos dados 
Carregamento Visualização 
Renomear Colunas 
Limpeza dos Dados 
Valores Ausentes 
Duplicatas 
Eliminar Colunas 
Ajustar Atributos 
Eliminar palavras 
Tokenizar Vetorizar texto 
Calcular IDF Dados para treino e teste 
Aplicação das técnicas 
de mineração 
Treinando o Modelo 
Regressão Logística 
Naive Bayes 
Avaliação dos 
resultados obtidos 
Regressão Logística Naive Bayes 
areaUnderROC 
Matriz de Confusão 
Plotando gráficos 
Regressão Logística 
areaUnderROC 
Utilização das 
informações 
Imagens 
Dataset 
 
Considerações Finais 
 
O projeto proposto foi de grande aprendizado na área de mineração de dados, sendo necessário diferentes recursos 
para estruturação dos dados em Big Data. 
O twitter apesar de um certo declínio de uso nos últimos anos ainda se prova como ferramenta útil para ser 
utilizada na exploração da opinião dos consumidores de uma empresa com um produto ou serviço. 
Passando por todas as etapas descritas, foram selecionados os dados ideais, fornecendo tratamento prévio e 
buscando o melhor modelo que se aproximasse da realidade. 
Depois de obtido os resultados com a visualização dos dados obtidos, é possível identificar um panorama das 
conexões com o público, buscando vários insights e estratégias que podem ser direcionadas a melhorar a 
qualidade da relação da empresa com os clientes acionando diferentes setores estratégicos que integrados, podem 
alavancar os retornos da companhia no longo prazo. 
 
 
 
 
 
 
REFERENCIAS 
 
https://hubify.com.br/social-media/twitter-para-empresas/ 
Citação: Go, A., Bhayani, R. e Huang, L., 2009. Classificação de sentimento do Twitter usando supervisão 
distante. Relatório do Projeto CS224N, Stanford, 1(2009), p.12. 
https://blog.contaazul.com/twitter-para-empresas 
https://acervolima.com/usando-countvectorizer-para-extrair-recursos-de-
texto/#:~:text=CountVectorizer%20%C3%A9%20uma%20%C3%B3tima%20ferramenta,ocorre%20em%20tod
o%20o%20texto. 
https://www.alura.com.br/artigos/spark-nlp-linguagem-natural-forma-otimizada 
https://towardsdatascience.com/tf-idf-calculation-using-map-reduce-algorithm-in-pyspark-e89b5758e64c) 
https://www.tibco.com/pt-br/reference-center/what-is-logistic-regression 
https://www.organicadigital.com/blog/algoritmo-de-classificacao-naive-bayes/ 
https://towardsdatascience.com/different-metrics-to-evaluate-binary-classification-models-and-some-strategies-
to-choose-the-right-911ef72a107b

Mais conteúdos dessa disciplina