-
Você já se deparou
com algum momento
-
em que você acessou um Instagram,
por exemplo,
-
e alguns comentários
estavam bloqueados?
-
Esse recurso é um recurso que faz
o uso de análise de sentimentos
-
para avaliar se existem informações
críticas ou palavras de ódio
-
ou alguns xingamentos em relação
a algum tipo de conteúdo.
-
Então, a gente pode utilizar AWS
para poder automatizar
-
toda essa análise de redes sociais
e facilitar a identificação
-
de como que está a aceitação
do nosso produto
-
ou da nossa empresa
em relação a comunidade.
-
Acessamos agora o console da WS,
vamos acessar aqui Sidemaker A.I.
-
Eu já tenho aqui
uma instância de notebook criado
-
que vai servir para criar o nosso
analisador de sentimentos próprio.
-
Vou clicar
aqui em "abrir o Jupiter Lab".
-
Já tinha algumas informações abertas.
-
Agora a gente vai importar o notebook
que já está pronto
-
para a gente
fazer a análise de sentimentos.
-
Vou clicar aqui
para fazer o upload de um arquivo.
-
Já separei aqui o notebook para vocês
de análise sentimento.
-
Vou clicar nele duas vezes
para poder carregar nosso ambiente.
-
Esse notebook foi criado
usando o Python
-
e aqui ele já faz na primeira célula
-
a gente já importa
algumas bibliotecas necessárias
-
para poder fazer
análises de sentimentos.
-
A principal delas
é do "sklearn"
-
e a "nltk" que lida com a parte
de tocanização dos elementos,
-
que é o processo
de quebrar uma sentença
-
em várias palavras separadas
para tentar extrair
-
algum tipo de informação.
-
Então,
assim que carregar o nosso ambiente,
-
a gente vai importar
os recursos necessários
-
para poder fazer análises
de sentimentos
-
em relação a comentários de filmes,
por exemplo.
-
Bom, ele deu esse erro,
-
porque a gente ainda não subiu
o arquivo csv
-
que a gente vai analisar.
-
Eu vou subir aqui
no nosso ambiente.
-
Vou ficar em "upload files",
vou escolher aqui o nosso dataset.
-
Um dataset um pouco pesado,
ele tem 63 mega
-
Demora um pouco,
é só aguardar.
-
E aqui embaixo a gente vê o status
do carregamento.
-
Legal, ele já carregou.
-
Vamos explorar aqui esse dataset.
-
As primeiras dez linhas
são comentários,
-
são reviews
e o sentimento em relação
-
a cada um desses reviews.
-
Então se usa algo que já foi
classificado,
-
alguma pessoa já avaliou,
o cara reviu
-
e mostrou o sentimento em relação,
se reviu como positivo ou negativo.
-
E a gente usa isso para poder
treinar o nosso algoritmo.
-
Vou visualizar aqui parte dos dados.
-
Eu tenho aqui 25.000 reviews
positivos e 25.000 reviews negativos
-
e vou usar esses dados
para treinamento.
-
Aqui nós temos, por exemplo,
-
60% dos
dados usados para treinamento
-
e 40% dos dados para teste.
-
Mas mais adiante
nós temos aqui uma classe para poder
-
fazer toda a limpeza dos dados
para poder remover conteúdo HTML
-
e remover conteúdo entre colchetes,
caracteres especiais,
-
palavras de parada como ponto,
ponto e virgula, hífen.
-
Fazer o processo
conhecido como timing,
-
que é um processo
de transformar a palavra
-
no seu radical.
-
E aí a gente
usa uma função agregadora
-
chamada click test,
-
que vai usar todas
essas outras funções de uma vez só.
-
E finalmente,
a gente vai ajustar o modelo
-
e fazer a transformação dos dados
-
para poder fazer todo esse
processo de tokenização
-
e transformação dos dados.
-
Tudo isso está dentro de uma classe
chamada teste clínico,
-
que é para
fazer a limpeza dos dados.
-
Antes de
-
fazer a limpeza, a gente pode ver,
por exemplo, que parte dos textos
-
tem caracteres especiais
ou tem algumas marcações em HTML.
-
Então ele precisa tirar esses textos
para a gente
-
conseguir treinar melhor
o nosso modelo.
-
Aqui embaixo,
onde vai ter um pipeline,
-
que é uma sequência de etapas
que vai fazer de forma integrada.
-
Primeiro, a limpeza dos dados,
depois ele faz o processo
-
conhecido como vetorização,
que ele vai
-
tokenização transformar uma sentença
-
em várias palavras e contar
a frequência dessas palavras.
-
E por último, a gente vai usar
o modelo de machine learning,
-
que é a regressão logística,
-
para poder utilizar
essas informações de entrada
-
para avaliar novos textos,
se eles são positivos ou negativos.
-
Então, papelaria
é só uma sequência de etapas,
-
Aí sim eu vou treinar esse
modelo usando esse pipeline.
-
Esse processo ele
-
demora cerca de 3 a 5 minutinhos,
então vamos aguardar.
-
Enquanto ele faz o treinamento
do modelo.
-
No nosso caso,
depois que a gente mandou treinar
-
aquele modelo, ele deu um time out.
-
Então ele precisou redimensionar
a nossa base de dados e treino
-
para uma massa de dados menor
para que ele conseguisse processar.
-
Como que a gente fez isso?
-
Foi lá na célula dois ou três.
-
Aqui na nossa célula seis
-
aqui as redimensionou.
-
Em vez de treinar com 60% dos dados,
eu coloquei aqui para treinar
-
com 40% dos dados, 20.000
-
itens, 20.000 linhas
-
e aí o restante fica para testes.
-
Após isso,
nós mandamos processar novamente
-
e finalmente ele treinou aqui
o nosso modelo,
-
ajustando os dados e aprendendo com
essa massa de dados de teste
-
aqui.
-
Quando ele faz o treinamento,
-
ele já mostra para a gente também
o pai, pelo o que o pai foi lá,
-
aquela sequência de etapas
que ele executou no texto.
-
Primeiro
ele fez a linguagem dos textos.
-
Ele excluiu informações não
relevantes para análise de texto,
-
a contagem e vetorização.
-
Ele cria várias, mas estou que
-
ele separa as palavras,
faz uma contagem e essas palavras
-
são utilizadas para alimentar
o modelo de regressão logística.
-
E finalmente, a gente pode aferir
-
a acurácia do nosso modelo
-
que a gente vai executar agora.
-
Legal,
-
Depois de alguns minutos
ele processou aqui
-
o que ele fez.
-
Ele usou o modelo treinado
-
e executou sobre os dados de teste.
-
E ele acertou 88% dos dados de teste
Em relação ao sentimento
-
aferido, se positivo ou não.
-
O que que vai fazer agora?
-
Já pegar um novo texto
e vamos pedir para ele avaliar
-
se o sentimento é positivo
ou negativo.
-
Então coloquei aqui
-
uma review em inglês.
-
A primeira é uma review positiva
-
e aí eu vou tentar fazer uma análise
-
do sentimento
em relação a essa review.
-
Então a gente usou o nosso pai
pela Anica, já deixou pronto,
-
ele vai pegar todo esse
texto, vai tokenização,
-
vai separar as palavras,
eliminar as palavras de ligação
-
e vai avaliar com as palavras
que sobraram.
-
São o sentimento positivo
ou negativo.
-
Então, para essa review específica,
ele ficou aqui
-
como um sentimento
-
positivo, que é o que a gente
espera que ele faça a análise.
-
Então, nesse caso,
nós vimos o modelo completo
-
de análise de sentimentos usando
o ambiente do sentimento, que é a
-
antes
a gente encerrar, precisa excluir
-
a nossa instância do notebook
para que a gente evite cobranças.
-
Ela está no ar
enquanto ela está no ar, a WS
-
vai incidir cobrança para a gente.
-
Então vou voltar aqui.
-
Vou sair do Júpiter Lab.
-
Voltei aqui para o ambiente
do sistema e criei.
-
Vou selecionar a instância
-
e vou primeiro
interromper a instância.
-
Depois de alguns instantes
ele vai interromper aqui
-
o nosso serviço.
-
Aí eu posso finalmente excluir
a nossa instância de notebooks.
-
Vou aplicar aqui, excluir.
-
E aí já não vai incidir nenhum custo
-
em relação ao uso dessa instância
do ser, de querer.
-
Então nós vemos como a gente
pode usar o sistema e criar.
-
E para criar uma solução completa
de machine learning,
-
por exemplo,
como análise de sentimentos.
-
Quando se cria uma solução
-
usando machine learning,
é um processo interativo.
-
Você precisa testar,
-
avalia as métricas
e depois você modifica o seu código
-
para avaliar se está de acordo
com o que você espera,
-
que foi o que a gente fez.
-
Em alguns momentos,
pode dar algum tempo
-
a gente reprocessar,
reavalia os dados de treino,
-
reavalia os das ideias
e executa novamente.
-
Então, com isso, a gente consegue
-
ampliar
-
a forma como a gente usa
os modelos de machine learning
-
no ambiente seguro da WS,
no ambiente dentro do 6,5, que é.