< Return to Video

PSCC CAP06 2025 VA03 ANALISE DE SENTIMENTOS CUSTOMIZADA

  • 0:08 - 0:10
    Você já se deparou
    com algum momento
  • 0:10 - 0:12
    em que você acessou um Instagram,
    por exemplo,
  • 0:12 - 0:15
    e alguns comentários
    estavam bloqueados?
  • 0:15 - 0:20
    Esse recurso é um recurso que faz
    o uso de análise de sentimentos
  • 0:20 - 0:26
    para avaliar se existem informações
    críticas ou palavras de ódio
  • 0:26 - 0:30
    ou alguns xingamentos em relação
    a algum tipo de conteúdo.
  • 0:30 - 0:34
    Então, a gente pode utilizar AWS
    para poder automatizar
  • 0:34 - 0:39
    toda essa análise de redes sociais
    e facilitar a identificação
  • 0:39 - 0:42
    de como que está a aceitação
    do nosso produto
  • 0:42 - 0:44
    ou da nossa empresa
    em relação a comunidade.
  • 0:44 - 0:55
    Acessamos agora o console da WS,
    vamos acessar aqui Sidemaker A.I.
  • 0:55 - 0:58
    Eu já tenho aqui
    uma instância de notebook criado
  • 0:58 - 1:03
    que vai servir para criar o nosso
    analisador de sentimentos próprio.
  • 1:03 - 1:11
    Vou clicar
    aqui em "abrir o Jupiter Lab".
  • 1:11 - 1:13
    Já tinha algumas informações abertas.
  • 1:13 - 1:16
    Agora a gente vai importar o notebook
    que já está pronto
  • 1:16 - 1:18
    para a gente
    fazer a análise de sentimentos.
  • 1:18 - 1:24
    Vou clicar aqui
    para fazer o upload de um arquivo.
  • 1:24 - 1:29
    Já separei aqui o notebook para vocês
    de análise sentimento.
  • 1:29 - 1:33
    Vou clicar nele duas vezes
    para poder carregar nosso ambiente.
  • 1:33 - 1:37
    Esse notebook foi criado
    usando o Python
  • 1:37 - 1:40
    e aqui ele já faz na primeira célula
  • 1:40 - 1:42
    a gente já importa
    algumas bibliotecas necessárias
  • 1:42 - 1:45
    para poder fazer
    análises de sentimentos.
  • 1:45 - 1:48
    A principal delas
    é do "sklearn"
  • 1:48 - 1:53
    e a "nltk" que lida com a parte
    de tokenização dos elementos,
  • 1:53 - 1:56
    que é o processo
    de quebrar uma sentença
  • 1:56 - 1:59
    em várias palavras separadas
    para tentar extrair
  • 1:59 - 2:01
    algum tipo de informação.
  • 2:01 - 2:04
    Então,
    assim que carregar o nosso ambiente,
  • 2:04 - 2:06
    a gente vai importar
    os recursos necessários
  • 2:06 - 2:08
    para poder fazer análises
    de sentimentos
  • 2:08 - 2:11
    em relação a comentários de filmes,
    por exemplo.
  • 2:11 - 2:12
    Bom, ele deu esse erro,
  • 2:12 - 2:15
    porque a gente ainda não subiu
    o arquivo csv
  • 2:15 - 2:16
    que a gente vai analisar.
  • 2:16 - 2:17
    Eu vou subir aqui
    no nosso ambiente.
  • 2:17 - 2:24
    Vou ficar em "upload files",
    vou escolher aqui o nosso dataset.
  • 2:24 - 2:29
    Um dataset um pouco pesado,
    ele tem 63 mega
  • 2:29 - 2:33
    Demora um pouco,
    é só aguardar.
  • 2:33 - 2:42
    E aqui embaixo a gente vê o status
    do carregamento.
  • 2:42 - 2:43
    Legal, ele já carregou.
  • 2:43 - 2:45
    Vamos explorar aqui esse dataset.
  • 2:45 - 2:48
    As primeiras dez linhas
    são comentários,
  • 2:48 - 2:51
    são reviews
    e o sentimento em relação
  • 2:51 - 2:52
    a cada um desses reviews.
  • 2:52 - 2:56
    Então, a gente usa algo
    que já foi classificado,
  • 2:56 - 3:01
    alguma pessoa já avaliou
    cada review e mostrou o sentimento
  • 3:01 - 3:04
    em relação a esse review
    como positivo ou negativo.
  • 3:04 - 3:10
    E a gente usa isso para poder
    treinar o nosso algoritmo.
  • 3:10 - 3:12
    Vou visualizar aqui parte dos dados.
  • 3:12 - 3:18
    Eu tenho aqui 25.000 reviews
    positivos e 25.000 reviews negativos
  • 3:18 - 3:23
    e vou usar esses dados
    para treinamento.
  • 3:23 - 3:25
    Aqui nós temos,
    por exemplo,
  • 3:25 - 3:28
    60% dos dados usados
    para treinamento
  • 3:28 - 3:31
    e 40% dos dados para teste.
  • 3:31 - 3:34
    Mais adiante
    nós temos aqui uma classe
  • 3:34 - 3:37
    para poder fazer
    toda a limpeza dos dados
  • 3:37 - 3:43
    para poder remover conteúdo HTML,
    remover conteúdo entre colchetes,
  • 3:43 - 3:48
    caracteres especiais,
    palavras de parada como ponto,
  • 3:48 - 3:50
    ponto e virgula, hífen.
  • 3:50 - 3:53
    Fazer o processo
    conhecido como stemming ,
  • 3:53 - 3:59
    que é um processo de transformar
    a palavra no seu radical.
  • 3:59 - 4:01
    E aí a gente
    usa uma função agregadora
  • 4:01 - 4:03
    chamada "clean_test",
  • 4:03 - 4:07
    que vai usar todas
    essas outras funções de uma vez só.
  • 4:07 - 4:11
    Finalmente,
    a gente vai ajustar o modelo
  • 4:11 - 4:12
    e fazer a transformação dos dados
  • 4:12 - 4:17
    para poder fazer todo esse
    processo de tokenização
  • 4:17 - 4:20
    e transformação dos dados.
  • 4:20 - 4:25
    Tudo isso está dentro de uma classe
    chamada "TestCleaner",
  • 4:25 - 4:29
    que é para
    fazer a limpeza dos dados.
  • 4:29 - 4:31
    Antes de fazer a limpeza,
    a gente pode ver,
  • 4:31 - 4:34
    por exemplo,
    que parte dos textos
  • 4:34 - 4:37
    tem caracteres especiais
    ou tem algumas marcações em HTML.
  • 4:37 - 4:39
    Então a gente precisa
    tirar esses textos
  • 4:39 - 4:45
    para a gente conseguir treinar
    melhor o nosso modelo.
  • 4:45 - 4:47
    Aqui embaixo,
    a gente vai criar um pipeline,
  • 4:47 - 4:52
    que é uma sequência de etapas
    que vai fazer de forma integrada.
  • 4:52 - 4:54
    Primeiro,
    a limpeza dos dados,
  • 4:54 - 4:57
    depois ele faz o processo
    conhecido como vetorização,
  • 4:57 - 5:02
    que ele vai tokenização
    transformar uma sentença
  • 5:02 - 5:06
    em várias palavras e contar
    a frequência dessas palavras.
  • 5:06 - 5:09
    E por último, a gente vai usar
    o modelo de machine learning,
  • 5:09 - 5:11
    que é a regressão logística,
  • 5:11 - 5:14
    para poder utilizar
    essas informações de entrada
  • 5:14 - 5:20
    para avaliar novos textos,
    se eles são positivos ou negativos.
  • 5:20 - 5:22
    Então, pipeline
    é só uma sequência de etapas.
  • 5:22 - 5:29
    Aí sim eu vou treinar esse
    modelo usando esse pipeline.
  • 5:29 - 5:32
    Esse processo ele demora
    cerca de 3 a 5 minutos,
  • 5:32 - 5:36
    então, vamos aguardar enquanto
    ele faz o treinamento do modelo
  • 5:36 - 5:37
    No nosso caso,
  • 5:37 - 5:39
    depois que a gente mandou
    treinar aquele modelo,
  • 5:39 - 5:40
    ele deu um time out.
  • 5:40 - 5:44
    Então ele precisou redimensionar
    a nossa base de dados de treino
  • 5:44 - 5:49
    para uma massa de dados menor
    para que ele conseguisse processar.
  • 5:49 - 5:51
    Como que a gente fez isso?
  • 5:51 - 5:57
    A gente foi lá na célula
    dois ou três.
  • 5:57 - 6:00
    Aqui a nossa célula seis.
  • 6:00 - 6:04
    Aqui a gente redimensionou em vez
    de treinar com 60% dos dados,
  • 6:04 - 6:08
    eu coloquei aqui para treinar
    com 40% dos dados,
  • 6:08 - 6:12
    20.000 itens,
    20.000 linhas
  • 6:12 - 6:15
    e aí,
    o restante fica para testes.
  • 6:15 - 6:18
    Após isso,
    nós mandamos processar novamente
  • 6:18 - 6:22
    e finalmente ele treinou aqui
    o nosso modelo,
  • 6:22 - 6:26
    ajustando os dados e aprendendo
    com essa massa de dados de teste
  • 6:26 - 6:28
    Aqui quando ele faz o treinamento,
  • 6:28 - 6:30
    ele já mostra para a gente também
    o pipeline.
  • 6:30 - 6:31
    O que é o pipeline?
  • 6:31 - 6:34
    Aquela sequência de etapas
    que ele executou no texto.
  • 6:34 - 6:37
    Primeiro ele fez
    a limpagem dos textos.
  • 6:37 - 6:41
    Ele excluiu informações não
    relevantes para análise de texto.
  • 6:41 - 6:46
    A contagem e vetorização,
    ele cria vários tokens
  • 6:46 - 6:49
    ele separa as palavras,
    faz uma contagem
  • 6:49 - 6:51
    e essas palavras são utilizadas
    para alimentar
  • 6:51 - 6:53
    o modelo de regressão logística.
  • 6:53 - 6:56
    E finalmente,
    a gente pode aferir
  • 6:56 - 7:02
    a acurácia do nosso modelo
    que a gente vai executar agora.
  • 7:02 - 7:03
    Legal,
  • 7:03 - 7:06
    depois de alguns minutos
    ele processou aqui
  • 7:06 - 7:07
    O que ele fez?
  • 7:07 - 7:14
    Ele usou o modelo treinado
    e executou sobre os dados de teste.
  • 7:14 - 7:21
    E ele acertou 88% dos dados de teste
    em relação ao sentimento aferido,
  • 7:21 - 7:22
    se positivo ou não.
  • 7:22 - 7:23
    O que a gente vai fazer agora?
  • 7:23 - 7:26
    A gente vai pegar um novo texto
    e vamos pedir para ele avaliar
  • 7:26 - 7:31
    se o sentimento é positivo
    ou negativo.
  • 7:31 - 7:36
    Então coloquei aqui
    uma review em inglês.
  • 7:36 - 7:40
    A primeira é uma review positiva
  • 7:40 - 7:43
    e aí eu vou tentar fazer
    uma análise de sentimento
  • 7:43 - 7:45
    em relação a essa review.
  • 7:45 - 7:49
    Então a gente usou o nosso pipeline
    que a gente já deixou pronto,
  • 7:49 - 7:53
    ele vai pegar todo esse texto,
    vai tokenizar,
  • 7:53 - 7:57
    vai separar as palavras,
    eliminar as palavras de ligação
  • 7:57 - 7:59
    e vai avaliar com as palavras
    que sobraram
  • 7:59 - 8:02
    se é um sentimento positivo
    ou negativo.
  • 8:02 - 8:04
    Então,
    para essa review específica,
  • 8:04 - 8:08
    ele verificou aqui
    como um sentimento positivo,
  • 8:08 - 8:12
    que é o que a gente
    espera que ele faça a análise.
  • 8:12 - 8:16
    Então, nesse caso,
    nós vimos o modelo completo
  • 8:16 - 8:20
    de análise de sentimentos usando
    o ambiente do sentimento, que é a
  • 8:21 - 8:23
    antes
    a gente encerrar, precisa excluir
  • 8:23 - 8:26
    a nossa instância do notebook
    para que a gente evite cobranças.
  • 8:26 - 8:29
    Ela está no ar
    enquanto ela está no ar, a WS
  • 8:29 - 8:32
    vai incidir cobrança para a gente.
  • 8:32 - 8:33
    Então vou voltar aqui.
  • 8:33 - 8:36
    Vou sair do Júpiter Lab.
  • 8:37 - 8:40
    Voltei aqui para o ambiente
    do sistema e criei.
  • 8:40 - 8:41
    Vou selecionar a instância
  • 8:41 - 8:44
    e vou primeiro
    interromper a instância.
  • 8:45 - 8:47
    Depois de alguns instantes
    ele vai interromper aqui
  • 8:47 - 8:48
    o nosso serviço.
  • 8:48 - 8:52
    Aí eu posso finalmente excluir
    a nossa instância de notebooks.
  • 8:53 - 8:56
    Vou aplicar aqui, excluir.
  • 8:58 - 9:01
    E aí já não vai incidir nenhum custo
  • 9:01 - 9:04
    em relação ao uso dessa instância
    do ser, de querer.
  • 9:04 - 9:06
    Então nós vemos como a gente
    pode usar o sistema e criar.
  • 9:06 - 9:09
    E para criar uma solução completa
    de machine learning,
  • 9:09 - 9:11
    por exemplo,
    como análise de sentimentos.
  • 9:11 - 9:13
    Quando se cria uma solução
  • 9:13 - 9:16
    usando machine learning,
    é um processo interativo.
  • 9:16 - 9:18
    Você precisa testar,
  • 9:18 - 9:21
    avalia as métricas
    e depois você modifica o seu código
  • 9:21 - 9:23
    para avaliar se está de acordo
    com o que você espera,
  • 9:23 - 9:25
    que foi o que a gente fez.
  • 9:25 - 9:27
    Em alguns momentos,
    pode dar algum tempo
  • 9:27 - 9:30
    a gente reprocessar,
    reavalia os dados de treino,
  • 9:30 - 9:33
    reavalia os das ideias
    e executa novamente.
  • 9:33 - 9:34
    Então, com isso, a gente consegue
  • 9:35 - 9:37
    ampliar
  • 9:37 - 9:40
    a forma como a gente usa
    os modelos de machine learning
  • 9:40 - 9:44
    no ambiente seguro da WS,
    no ambiente dentro do 6,5, que é.
Title:
PSCC CAP06 2025 VA03 ANALISE DE SENTIMENTOS CUSTOMIZADA
Video Language:
Portuguese, Brazilian
Duration:
09:48

Portuguese, Brazilian subtitles

Incomplete

Revisions Compare revisions