Visando a ideia de customer success dentro da startup, decidi que o meu projeto será com enfâse na análise mais precisa e detalhada do customer success.
Este projeto é uma solução com inteligência artificial para analisar o sentimento do cliente em um texto formatado (JSON, XML) ou um texto livre (Post do facebook, tweet, etc).
Técnicas de classificação:
Classificação:
E-mail: Entrada(post, tweet) -> Algoritmo classficador -> Spam, Normal
Notícia: "Fred passa por cirurgia no joelho direito e tem alta prevista para esta quinta-feira" -> Algoritmo classificador multirrótulo -> Esporte, Cone, Lesão
Agrupamento (Clustering):
Agrupamento de pratos, por exemplo. Um funcionário caixa da Sapore sempre insere no app o prato que o cliente comeu na hora do pagamento. O prato é "arroz com feijão" mas o funcionário coloca "arrz e feij" ou "arros e fejao". Conseguimos detectar e agrupar todo mundo como "Arroz com Feijão".
Detecção de plágio
Extração de informação:
Em nosso cenário, eu recebo um comentário do facebook e consigo extrair: Nome, Sobrenome, Data, Hora, Opinião, Prato em questão, restaurante, Sentimento identificado e etc..
Utilização de ontologias, representando conceitos e relacionamentos em um domínio(section2, lecture3)
Associações:
Correlação entre palavras (Associações):
É basicamente identificar padrões -regras de associações- em textos:
=======É basicamente identificar padrões em textos:
"60% dos textos que contém a palavra Internacional também contém a palavra Grêmio. 3% de todos os textos contém ambas as palavras. Case baseado nisso: O walmart identificou que quando eram vendido fraudas também eram vendido cerveja. Aí eles colocaram uma seção de cerveja próxima de fraudas e maximizaram a venda desses produtos.
A presença do termo Pelé aumenta em 5 vezes a chance de ocorrência dos termos Copa e 1970
Regra deInterpratação sintica e semântica das frases associação: Pelé => Copa e 1970A polícia usa esse tipo de algoritmo para varrer redes sociais e identificar se terá briga em jogos de futebol
Correspondências semânticas
Migração de base de dados(sec 2 aula 4)
matcher para consulta de dados no banco (Monta um select automático com base no que o usuário digitou)
Recuperar informação:
Indexação API Lucene(Java)(sec 2 aula 4)
Resumo de documentos:(sec 2 aula 4)
Abordagem estatística
Frequência de termos, ignorando informações semânticas
Processamento de lingaugem natural
Interpratação sintica e semântica das frases
Fazer o computador entender a frase
Classificação: texto -> algoritmo -> alegria, tristeza, medo
Monitoramento de sentimento das pessoas em relação a marcas, entidades, figuras sociais, etc
Gestão de crises (% de alegria, tristeza em comentários ou sei lápara tomada de decisões estratégicas)
Entender o que o consumidor está pensando
Classificação por polaridade
texto -> Algoritmo de machine learning -> classificação em positivo, neutro ou negativo
Classificação por Emoção
Surpresa, alegria, tristeza, medo, nojo e raiva
Com base nos atributos previsores eu crio uma classe.
Esses atributos previsores são atributos de uma base de dados histórica
Aprendizado supervisionado de máquina. Ele analisa todos os atributos previsores da pessoa e com base nisso, define como a pessoa foi categorizada.
Eu coloco uma base histórica com muitos registros e gero uma classe para a informação que eu quero(sec2 ep6) e, para prever o movimento dos próximos clientes, eu submeto as informações dos clientes que eu quero prever em um algoritmo de aprendizado de máquina com base nessa base histórica que foi processada.
Cada registro pertence a uma classe e possui um conjunto de atributos previsores
Objetiva-se descobrir um relacionamento entre os atributos previsores e o atributo meta(classe)
O valor do atributo meta é conhecido (aprendizagem supervisionada)
Os atributos previsores na classificação de textos são as próprias palavras
É feito um pivoteamente de frase para coluna. Cada palavra da frase vira uma coluna. Stop-words são eliminadas e são apenas palavras únicas permitidas. Logo após isso, para cada coluna eu coloco uma flag booleana para identificar se a palavra está na frase daquele registro
=======Temos uma base de frases e uma coluna com o sentimento que ela representa.
Removemos stop-words (o, a, agora, agora, algum, alguma, aquele, aqueles, de, deu, do, e) pois diminui o processamento e deixa a tabela menor.
(Steeming) Extraímos os radicais das palavras para reduzir a dimensionalidade dos dados. A raiz da palavra é um elemento originário e irredutível em que se encontra a significação das palavras.
Desvantagens de usar stemming: Palavras com sentido opostos possuem o mesmo radical: Novamente e novo, por exemplo.
A tabela final é feita apenas com radicais únicos de palavras. Não posso ter cabeçalhos iguais.