Escolar Documentos
Profissional Documentos
Cultura Documentos
BIG DATA
Equipe:
1 INTRODUÇÃO........................................................................................................................................4
1.1 NOSSO OBJETIVO...............................................................................................................................5
A Send.Knowledge, nosso cliente, foi selecionada entre algumas Startups para fazer a
mineração de informações não estruturadas, relacionadas às vendas dentro da plataforma de
e-mails do seu cliente, uma instituição financeira. Para solucionar esta demanda de mercado,
a Send.Knowledge adotou a metodologia de Process Mining, uma das mais avançadas técnicas
de Ciência de Dados para descoberta, monitoramento e otimização de processos.
Para atingir o seu objetivo a Send.Knowledge incluiu em sua pipeline de algoritmos plataformas
pagas, e.g. a LUIS da Microsoft, que os possibilitou alcançar bons resultados.
O desafio proposto à nossa equipe (denominada Metaverso) foi a construção de um BIG DATA,
ou seja, analisar Custo X Benefício entre as principais nuvens existentes no mercado, construir
uma arquitetura, configurar os serviços da nuvem escolhida e implementar o algoritmo
desenvolvido pelo grupo FADO. Para isso, foi necessário realizar a melhoria desse algoritmo,
uma vez que ele não foi desenvolvido para executar um alto volume de dados, também foi
necessário o desenvolvimento da geração de dados sintéticos para simulação da massa de e-
mails, utilizando o GPT-3.
Palavras-chaves: Process Mining, Big data, base sintética GPT-3, NLP, Vetorização, Machine
Learning e Classificação.
1. Introdução
Estamos vivendo um momento em que o volume de dados gerados nunca foi tão alto, e será
essencial para todas empresas que tenham ou projetem um alto volume de dados em pequeno
ou médio prazo, se preocupar com o armazenamento, organização e tradução dos dados para
tomadas de decisões. Pensando nisso a Send.Knowledge propôs o desafio para nosso grupo
(denominado Metaverso) através do Instituto D’vinci3, de criar uma solução Big Data rodando
a solução do desafio da equipe da turma III (denominada FADO).
A startup nos deu autonomia para escolher a nuvem para implementar o Big Data, e após
realizarmos diversas pesquisas, orçamento, alinhamentos com mentores, chegamos à
conclusão de que a Azure da Microsoft seria a melhor nuvem para trabalharmos nesse projeto.
A Send.Knowledge informou que não tem cenários (massa de dados de e-mails) para nos
fornecer para as validações, e que também sofriam com essa deficiência, como e-mails são
dados sigilosos, não é possível mostrá-los por conta do risco de vazamento de dados
confidenciais que esses e-mails podem conter, e pela violação da LGPD não podem utilizar os
dados do atual cliente, e consequentemente não conseguem apresentar o produto para
prospecção de novos clientes. Para testarmos nosso ambiente, desenvolvemos em linguagem
python uma base de dados de e-mails sintética utilizando o GPT-3, baseado em Machine
Learning, que é capaz de gerar dados extremamente parecidos com a realidade.
1.1. Nosso Objetivo
Desenvolver uma solução Big Data na nuvem Azure da Microsoft para suportar o
armazenamento e processamento de alto volume de dados, implementando nesse ambiente a
solução FADO, com melhorias no código para atender a volumetria de dados, e assim, melhorar
o desempenho e assertividade da solução. E para testes e validações, tanto da arquitetura da
nuvem quanto da solução FADO criar uma solução de geração de base sintética de e-mail.
1.3. Metodologia
Para atingirmos o nosso objetivo, buscamos analisar a dor de nosso cliente e alinhar as
possibilidades de soluções, para assim fechar toda a cadeia de processos que nos daria uma
trajetória para a adoção dos algoritmos necessários. Fizemos isso através de:
2. Estudo teórico
Microsoft Azure é uma plataforma em cloud que concentra toda a plataforma de nuvem da
Microsoft, desde a infraestrutura de cloud computing para hospedar sistemas empresariais, até
ferramentas e recursos que expandem a capacidade produtiva de negócios em todos os
setores. Ela funciona como apoio tecnológico ao negócio, sua capacidade de lidar com big data,
data mining e data lake se torna uma ótima oportunidade para o projeto.
2.3. LGPD
A Lei Geral de Proteção de Dados Pessoais (LGPD), Lei n° 13.709/2018, foi promulgada para
proteger os direitos fundamentais de liberdade e de privacidade e a livre formação da
personalidade de cada indivíduo. A Lei fala sobre o tratamento de dados pessoais, dispostos
em meio físico ou digital, feito por pessoa física ou jurídica de direito público ou privado,
englobando um amplo conjunto de operações que podem ocorrer em meios manuais ou
digitais.
2.4. GPT-3
A GPT-3 é um algoritmo que utiliza deep learning treinado por textos de milhares de livros para
unir palavras e frases. Foi construída pela OpenAI e lançado em 2020. Possui capacidade de
imitar texto escrito por humanos com grande realismo.
Machine Learning é a ciência (ou a arte) de programar computadores para que possam
aprender com os dados (Géron, 2019, p. 6), hoje em dia, está em todos os lugares:
nos filtros de spam dos e-mails, sistemas de recomendações, detecção de doenças, em carros
autônomos, entre outros. Esta técnica é ótima em conseguir simplificar problemas complexos
e possui excelentes ferramentas para classificação (Géron, 2019, p. 28) tanto supervisionada,
quanto não supervisionada. Alguns exemplos de algoritmos são kNN (k-Nearest Neighbors),
Random Forest, redes neurais.
2.6. Lematização
A lematização é o processo de deflexionar uma palavra para determinar o seu lema (as flexões
chamam-se lexemas). Por exemplo, as palavras “gato”, “gata”, “gatos”, “gatas” são todas
formas do mesmo lema: “gato”. Igualmente, as palavras “tiver”, “tenho”, “tinha”, tem são do
mesmo lema “ter”. E “bom”, “melhor” e “ótimo” são lexemas do lema “bom”. A lematizção é
útil quando queremos ver os usos de palavras em contextos sem importância das flexões. Por
exemplo, para a criação e uso de índices ou na investigação linguística. (Salviati, M. E., 2017).
Utilizamos a tecnologia GPT-3 Open AI (https://openai.com/) para criar 1500 e-mails sintéticos.
O uso restrito desta ferramenta foi baseado em três contas gratuitas criadas por membros do
nosso grupo. A sigla GPT (Generative Pre-trained Transformer) representa esse uma tecnologia
que, baseada em Machine Learning, é capaz de processar a linguagem natural humana e
produzir textos de forma preditiva. O GPT-3 é um programa de inteligência artificial focado na
produção de texto, que se baseia no conceito de uma rede neural. A partir de um parágrafo
com determinada ideia podemos interpretar a ideia e gerar novo textos com a linha de
raciocínio usando vários algoritmos estatísticos. A seguir apresentamos um exemplo dos
resultados estimados por GPT-3:
palavra-chave Texto
Acesse o link (informar o link) e faça o login com seus dados cadastrais. Em
seguida, acesse a opção “Boletas” e localize a boleta desejada.
Atenciosamente,
O algoritmo usado na solução proposta pelo grupo FADO fornece classes básicas para
representar dados relevantes para o processamento da linguagem natural. No gráfico a seguir,
apresentamos os detalhes deste algoritmo:
Executamos o algoritmo localmente com os dados criados pelo GPT-3. A tabela abaixo resume
os testes realizados utilizando diversos volumes de dados.
Iniciamos o fluxo “To be” iniciando com um estudo aprofundado da solução FADO, entendendo
seu fluxo, e a partir dele criamos uma versão avançada, utilizando a técnica de lematização para
remoção de caracteres especiais, e como melhoria foram incluídos no algoritmo a técnica de
vetorização para converter dados do tipo texto para dados numéricos, e também a técnica de
regressão Naiva Bayes, algoritmo ML mais adequado para grandes volumes de dados.
Podemos concluir que o conjunto de dados não está balanceado, precisaremos aplicar
técnicas de balanceamento de dados como SMOTE, um método de reamostragem bem
conhecido para superamostras, gerando instâncias de classe minoritária sintética (Nitesh et
al. 2022). Na primeira etapa de nosso trabalho, devido à restrição de tempo, não aplicamos
nenhuma técnica de balanceamento de dados. No entanto, planejamos aplicá-lo na próxima
etapa deste projeto.
3º ETAPA – Vetorização
Para trabalhar com Machine Learning é preciso converter dados do tipo texto em dados
numéricos bem definidos, essa conversão é chamada de vetorização ou no mundo NLP Bag-
of-words (BoW) e Word Embedding (Word2Vec). Aplicamos a biblioteca Sklearn para esta
parte da solução.
Para mais detalhes sobre as etapas técnicas de nossa solução, indicamos ao leitor diversos
Tutoriais de PNL para Classificação de Texto em Python disponíveis na internet, os links nas
referências.
3.2.2.2. Resultado Final
Como resultado final, utilizamos nossa solução para classificar 500 e-mails criados pelo GPT-3.
Nossa solução atinge uma precisão final de cerca de 99%, com um tempo de execução cerca
de 20 segundos.
Para melhorar nossos resultados usando maiores volumes de dados, podemos criar um
processo para adicionar a classificação errada detectada aos dados de treinamento, desta
forma, quando o código for executado novamente, nosso algoritmo aprenderá com os dados,
e a classificação correta de e-mails semelhantes.
Optamos por essa nuvem por vários motivos, mas os principais foram os listados abaixo:
Solução FADO estava hospedada em nuvem Microsoft;
A ferramenta Databricks utilizada nas maiores nuvens do mercado é da Microsoft,
sendo assim o custo é menos;
Ao comparar orçamento geral entre as nuvens, a Azure foi a de menor custo.
GCP da Google
4. Comentários e sugestões
Nitesh V. Chawla, Kevin W. Bowyer, Lawrence O. Hall, and W. Philip Kegelmeyer. Smote: Synthetic
minority over-sampling technique. J. Artif. Int. Res., 16(1):321–357, June 2002
Dalpiaz, et al.: Applied Statistics with R, STAT 420. University of Illinois at Urbana-Champaign,
(2021) https://daviddalpiaz.github.io/appliedstats/
Piryonesi, S.M., El-Diraby, T.: Data analytics in asset management: Cost-effective prediction of
the pavement condition. J. Infrastruct. Syst. (2020). https://doi.org/10.1061/(ASCE)IS.1943-
555X.0000512
https://stackabuse.com/text-classification-with-python-and-scikit-learn/
https://towardsdatascience.com/machine-learning-nlp-text-classification-using-scikit-learn-
python-and-nltk-c52b92a7c73a
https://github.com/kk7nc/Text_Classification
Lei Geral de Proteção de Dados Pessoais (LGPD), Ministério da cidadania. Disponível em:
https://www.gov.br/cidadania/pt-br/acesso-a-informacao/lgpd. Acesso em dia 14 de ago. de
2022.
Géron A., Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow. O’Reilly Media,
2019, 1109
Fredigo Hack, A. Text Mining. 2013 – Universidade Federal de Santa Catarina
Manual do Aplicativo Iramuteq. Maria Elisabeth Salviati. 2017