Logo Passei Direto
Buscar

teorico (4)

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Data Science 
Algorithms
Material Teórico
Estudo de Caso com Análise de Dados
Responsável pelo Conteúdo:
Prof. Dr. Alberto Messias
Revisão Textual:
Prof.ª Dr.ª Selma Aparecida Cesarin
• Introdução;
• Modelagem do Estudo de Caso;
• Elaboração das Novas Estratégias.
• Introduzir o estudo de caso real de utilização de algoritmos de análise de dados e minera-
ção em uma organização real;
• Exibir o processo de implementação e execução do algoritmo apriori em stored procedure
em SQL Server e, posteriormente, analisar os resultados obtidos na organização 
em questão.
OBJETIVOS DE APRENDIZADO
Estudo de Caso com Análise de Dados
Orientações de estudo
Para que o conteúdo desta Disciplina seja bem 
aproveitado e haja maior aplicabilidade na sua 
formação acadêmica e atuação profissional, siga 
algumas recomendações básicas: 
Assim:
Organize seus estudos de maneira que passem a fazer parte 
da sua rotina. Por exemplo, você poderá determinar um dia e 
horário fixos como seu “momento do estudo”;
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
alimentação saudável pode proporcionar melhor aproveitamento do estudo;
No material de cada Unidade, há leituras indicadas e, entre elas, artigos científicos, livros, vídeos 
e sites para aprofundar os conhecimentos adquiridos ao longo da Unidade. Além disso, você tam-
bém encontrará sugestões de conteúdo extra no item Material Complementar, que ampliarão sua 
interpretação e auxiliarão no pleno entendimento dos temas abordados;
Após o contato com o conteúdo proposto, participe dos debates mediados em fóruns de discus-
são, pois irão auxiliar a verificar o quanto você absorveu de conhecimento, além de propiciar o 
contato com seus colegas e tutores, o que se apresenta como rico espaço de troca de ideias e 
de aprendizagem.
Organize seus estudos de maneira que passem a fazer parte 
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Mantenha o foco! 
Evite se distrair com 
as redes sociais.
Determine um 
horário fixo 
para estudar.
Aproveite as 
indicações 
de Material 
Complementar.
Procure se alimentar e se hidratar quando for estudar; lembre-se de que uma 
Não se esqueça 
de se alimentar 
e de se manter 
hidratado.
Aproveite as 
Conserve seu 
material e local de 
estudos sempre 
organizados.
Procure manter 
contato com seus 
colegas e tutores 
para trocar ideias! 
Isso amplia a 
aprendizagem.
Seja original! 
Nunca plagie 
trabalhos.
UNIDADE Estudo de Caso com Análise de Dados
Introdução
Considerando uma empresa especializada em recuperação de crédito, que pos-
sui bases de dados com históricos de informações sobre os clientes.
O processo desta empresa funciona da seguinte forma:
O banco ou uma financeira envia os dados dos clientes a serem cobrados e eles 
são inseridos no sistema de cobrança, após a inserção os dados vão para uma fila 
de entrada para serem agrupados. Na prática, após importar os dados em uma 
tabela, é colocado um campo indicando a situação da conta e esse campo é deno-
minado “fila”.
Em seguida é elaborada uma estratégia para a central de telemarketing ativo de 
modo a fazer suas respectivas cobranças. De tempos em tempos os dados enviados 
são devolvidos e as contas não são mais cobradas. A Figura 1 mostra como esse 
processo funciona, a Imagem foi fornecida pela empresa que disponibilizou os da-
dos para a análise.
Figura 1 – Funcionamento do processo da organização
Fonte: Acervo do conteudista
O Discador é um software que faz as ligações para os devedores, com base nas 
informações presentes nas bases de dados. As ligações são feitas através de uma 
ordem pré-definida pelos gestores. Os gestores são pessoas responsáveis pela de-
finição da estratégia adotada e para as prioridades nas ligações. Diariamente são 
emitidos relatórios que mostram os resultados do trabalho realizado no dia.
Critérios e estratégia atual
A estratégia adotada seleciona as contas e determina sua prioridade, estas con-
tas selecionadas são passadas para o discador obedecendo as seguintes prioridades:
• Primeiramente se prioriza cobrança pelo número de dias em atraso, cobra-se 
seguindo uma ordem cronológica, dos mais novos para os mais antigos. Parte-se 
8
9
do princípio de que o indivíduo que tem dívidas vencidas em até 15 dias tem 
maior probabilidade de pagamento do que outro que está devendo a mais de 
1500 dias;
• Depois se prioriza pela faixa de valor, dos valores maiores para os menores. 
Essa estratégia garante a rentabilidade, pois quando é fechado um acordo de 
valor mais alto se consegue maior lucro do que quando são fechados acordos 
com valores baixos. Desta maneira o custo e benefício da tentativa de se nego-
ciar com esses indivíduos são melhores.
Quando se acabam as contas do discador, a fila é retomada novamente, reti-
rando apenas as contas que foram fechados os acordos, ou que tiveram devolução 
solicitada pelo cliente.
Modelagem do Estudo de Caso
O foco da proposta é analisar as bases de dados de acordos e traçar o perfil dos 
clientes que possuem mais chances de fechar acordo e cumpri-los e a partir desta 
seleção de clientes, definir novas estratégias para a central de telemarketing ativo, 
de modo a aumentar a rentabilidade do negócio da empresa.
Para isso, será usada uma base de dados de acordos gerados no passado para 
três clientes, com comportamentos diversificados.
Para esse estudo de caso optou-se por usar o algoritmo Apriori com as bases de 
dados, com o intuito de se gerar regras de associação com ordens de importância 
diferentes, tendo em vista que na revisão de literatura foi observado que largamente 
as empresas utilizam a tecnologia de Redes neurais artificiais para isto e não foram 
encontrados testes e experimentos mostrando a eficiência do algoritmo Apriori
para este fim.
A partir das novas regras serão criadas novas estratégias e em seguida será medi-
do se, com a aplicação das novas estratégias foram obtidos benefícios ou prejuízos.
O processo de formulação de estratégias como um todo, passa pelas seguintes 
etapas e farão parte da análise:
• As características atuais da empresa: descrição do negócio e estratégias 
atuais adotadas pela organização, que representa, a análise da situação atual 
da organização que forneceu os dados, mencionados na descrição de “Estudo 
de caso” , na descrição do “Critério atual” e “Caracterização dos clientes”;
• Definição das metas e objetivos da aplicação no estudo de caso: represen-
ta a etapa de definição dos objetivos das novas estratégias;
• O desenvolvimento da análise feita sobre os dados fornecidos para a 
determinação das estratégias: esta etapa representa o tratamento dos dados 
9
UNIDADE Estudo de Caso com Análise de Dados
e execução do método de extração de informação usado para a criação das 
novas estratégias;
• Implementação ou aplicação prática das estratégias desenvolvidas: esta 
etapa representa a aplicação prática das novas estratégias no negócio da or-
ganização; e
• O acompanhamento, controle e aperfeiçoamento das estratégias desen-
volvidas: neste caso será feita uma análise dos retornos obtidos através da 
aplicação das novas estratégias adotadas;
Segue a caracterização dos clientes.
Caracterização dos clientes
Os clientes escolhidos são de três segmentos diferentes, isso é bom para o estu-
do de caso, pois, serão analisados 3 tipos de comportamentos existentes. Segue a 
descrição de cada dos clientes.
• Caso 1: Este cliente é uma loja que atua em todo o Brasil, fornece diversos 
produtos para uso residencial, como eletrodomésticos, artigos de cama, mesa 
e banho e roupas masculinas e femininas.
 O principal meio de pagamento deste cliente é um boleto que é feito na 
loja no ato da compra. O que é cobrado desse cliente é o boleto atrasado a 
partir de 15 dias. A partir desse ponto este cliente será chamado apenas de 
CLIENTE A;
• Caso 2: Este cliente é uma loja de roupas para homens e mulheres. No ato da 
compra é feito um cartão de crédito e com esse cartãoo cliente ganha crédito 
para efetuar a suas compras naquele momento. O que é cobrado deste cliente 
são os cartões emitidos na loja. A principal diferença deste cliente é faixa de 
atraso que está sendo cobrada, que é a partir de 1500 dias de atraso. A partir 
daqui este cliente será chamado apenas de CLIENTE B;
• Caso 3: Este cliente é uma financeira que atua na cidade de São Paulo, onde 
fornece empréstimos mediante a emissão de boletos para pagamento. Para 
este cliente serão cobrados os boletos que não foram pagos. A partir daqui este 
cliente será apenas de CLIENTE C.
Pré-tratamento dos dados
A base de dados selecionada é de novembro de 2017 a maio de 2018. Entretan-
to, foi feito um pré-agrupamento para normalizar a base de dados em seu início e 
corrigir alguns problemas como:
10
11
• Agrupamento dos valores;
• Agrupamento dos atrasos;
• Correção das Regiões;
• Agrupamento de faixa de idade;
• Estado Civil;
• Desprezo de alguns registros sem o Sexo;
• Armazenamento dos dados em tabelas temporárias.
• Depois do pré-tratamento foram selecionados os seguintes atributos:
• UF;
• Faixa de atraso;
• Faixa de valor;
• Quantidade de Contatos Efetuados;
• Sexo;
• Idade;
• Ocupação;
• Estado civil;
• Quantidade de Boletos Enviados;
• Quantidade de SMS enviados .
A partir deste tratamento inicial dos dados é possível a aplicação de algoritmos 
para extração de informação.
Implementação do algoritmo Apriori clássico
Os dados já foram agrupados no pré-processamento, não será necessário 
usar o algoritmo Apriori group, será utilizado algoritmo Apriori Clássico, ou 
seja, sem nenhuma variação. Como a base de dados era muito grande, não 
seria possível a utilização do software WEKA, optou-se então por implementar 
uma Stored procedure no SQLSERVER que gerará as regras da mesma forma 
que o Apriori geraria no WEKA, porém funciona com escala maior, para mi-
lhões de registros e diretamente integrado ao sistema de discagem automática 
do telemarketing ativo.
Para funcionar os dados precisam ser importados em uma tabela chamada A. 
O  código implementado na Stored procedure é apresentado logo em seguida, 
porém não se preocupe em conhecer todos os comandos aqui descritos, atente-se 
apenas na estrutura montada de execução do algoritmo.
11
UNIDADE Estudo de Caso com Análise de Dados
Código fonte da Stored Procedure
12
13
13
UNIDADE Estudo de Caso com Análise de Dados
A ideia de fazer esta stored procedure é ganhar desempenho ao se trabalhar 
com base de dados muito grandes. Fazendo algumas comparações com o WEKA 
foram geradas as mesmas regras, porém com um desempenho muito superior 
usando a base de dados.
Não foi possível se fazer uma comparação gráfica de desempenho entre a stored 
procedure criada e a execução do WEKA tendo em vista que ele não consegue 
trabalhar com milhões de registro.
Geração das regras
A partir da Base de Dados com todos os dados existentes, ao se executar a 
stored procedure criada, foram geradas as seguintes regras:
Regras geradas para o cliente A:
Tabela 1 – Regras gerada para o cliente A
Regra Qtde. Regra Qtde. Conf.
1. Valor= De 200 a 500 1719 Acordo=Sim 1462 0.85
2. UF=SP 3195 Acordo=Sim 2569 0.8
Regras geradas para o cliente B:
Tabela 2 – Regras geradas para o cliente B
Regra Qtde. Regra Qtde. Conf.
1. Atraso=De 2100 a 2200 1719 Acordo=Não 18165 0.93
2. Valor=1- De 200 a 500 11535 Acordo=Não 10268 0.89
Para o cliente B existem muitos registros de transações sem acordos portanto 
foram geradas somente regras para “acordos = não”.
Regras geradas para o cliente C:
Tabela 3 – Regras geradas pelo cliente C
Regra Qtde. Regra Qtde. Conf.
1. Sexo=M 3174 Acordo=Não 2562 0.81
2. Atraso de 181 a 240 2360 Acordo=Não 1900 0.81
2. Sexo=F 2819 Acordo=Não 2200 0.78
Para o cliente C existiam muitos atributos iguais, então foram geradas regras 
estranhas, como visto nas regras 1 e 3, “Pessoas do sexo masculino não fazem 
acordo e pessoas do sexo feminino também não fazem acordo”.
Fazendo uma análise mais apurada das bases e seguindo boas práticas de análi-
se, tendo em vista que o foco era o perfil de clientes que fechariam acordos, foram 
separados todos os dados que possuíam o atributo de “acordos=sim” e apenas estes 
casos passaram a ser analisados, o que faz sentindo, pois o que se busca com esta 
análise é traçar o perfil de clientes que fechem acordos, ou seja, os outros clientes 
não são relevantes para esta análise.
14
15
Devido aos resultados anteriores e uma análise mais apurada da base de dados 
percebeu-se que as seguintes variáveis eram irrelevantes:
• “faixa de valor”,
• “faixa de atraso”
• “faixa de idade”.
Uma exceção foi o cliente A, onde pode ser trabalhado o atributo “UF”.
Neste ponto pode-se perceber que o processo de tratamento dos dados para 
análise é uma iteração conforme se observa no processo de KDD como um 
todo. Com a nova análise dos dados as regras geradas pela stored procedure
foram as seguintes:
Regras geradas para o cliente A, as mais importantes são as regras destacadas:
1. Valor=0- De 0 a 200 UF=SP 843⇒ Acordo=Sim 747 conf:(0.89)
2. Valor=0- De 0 a 200 Atraso=6- acima de 120 839 ⇒ Acordo=Sim 742 conf:(0.88)
5. Valor=1- De 200 a 500 Atraso=2- De 31 a 120 738⇒ Acordo=Sim 643 conf:(0.87)
7. Atraso=6- acima de 120 1290⇒ Acordo=Sim 1109 conf:(0.86)
8. Idade=0- De 0 a 25 984⇒ Acordo=Sim 842 conf:(0.86)
10. Valor=1- De 200 a 500 1719⇒ Acordo=Sim 1462 conf:(0.85)
12. Idade=1- De 26 a 35 Valor=1- De 200 a 500 562 ⇒ Acordo=Sim 477 conf:(0.85)
13. Atraso=2- De 31 a 120 1566 ⇒ Acordo=Sim 1311 conf:(0.84)
14. Valor=1- De 200 a 500 UF=SP 1127 ⇒ Acordo=Sim 940 conf:(0.83)
15. Atraso=2- De 31 a 120 UF=SP 1064 ⇒ Acordo=Sim 879 conf:(0.83)
16. Idade=2- De 36 a 45 1110 ⇒ Acordo=Sim 913 conf:(0.82)
17. Idade=1- De 26 a 35 1534 ⇒ Acordo=Sim 1252 conf:(0.82)
Regras geradas para o cliente B:
1. Idade=1- De 25 a 30 774 ⇒ Valor=1- De 200 a 500 405 conf:(0.52)
2. Valor=1- De 200 a 500 1267 ⇒ Atraso=3- De 2100 a 2200 618 conf:(0.49)
3. Idade=2- De 30 a 35 631 ⇒ Atraso=3- De 2100 a 2200 306 conf:(0.48)
4. Idade=2- De 30 a 35 631 ⇒ Valor=1- De 200 a 500 296 conf:(0.47)
5. Idade=1- De 25 a 30 774 ⇒ Atraso=3- De 2100 a 2200 358 conf:(0.46)
6. Atraso=3- De 2100 a 2200 1355 ⇒ Valor=1- De 200 a 500 618 conf:(0.46)
7. Valor=2- De 500 a 1000 832 ⇒ Atraso=3- De 2100 a 2200 368 conf:(0.44)
8. Valor=1- De 200 a 500 1267 ⇒ Idade=1- De 25 a 30 405 conf:(0.32)
9. Atraso=3- De 2100 a 2200 1355 ⇒ Valor=2- De 500 a 1000 368 conf:(0.27)
10. Atraso=3- De 2100 a 2200 1355 ⇒ Idade=1- De 25 a 30 358 conf:(0.26)
11. Valor=1- De 200 a 500 1267 ⇒ Idade=2- De 30 a 35 296 conf:(0.23)
12. Atraso=3- De 2100 a 2200 1355 ⇒ Idade=2- De 30 a 35 306 conf:(0.23)
15
UNIDADE Estudo de Caso com Análise de Dados
Regras geradas para o cliente C:
1. Parcelas=4-acima de 7 324 ⇒ atraso=7-de 241 a 300 261 conf:(0.81)
2. Valor=5-acima de 2000 263 ⇒ atraso=7-de 241 a 300 152 conf:(0.58)
3. Valor=5-acima de 2000 263 ⇒ Parcelas=4-acima de 7 149 conf:(0.57)
4. Parcelas=3-de 6 a 7 381 ⇒ atraso=6-de 181 a 240 210 conf:(0.55)
5. Idade=2-de 31 a 40 318 ⇒ atraso=7-de 241 a 300 161 conf:(0.51)
6. Valor=3-de 1000 a 1500 288 ⇒ atraso=7-de 241 a 300 135 conf:(0.47)
7. Parcelas=4-acima de 7 324 ⇒ Valor=5-acima de 2000 149 conf:(0.46)
8. Atraso=7-de 241 a 300 571 ⇒ Parcelas=4-acima de 7 261 conf:(0.46)
9. Atraso=6-de 181 a 240 460 ⇒ Parcelas=3-de 6 a 7 210 conf:(0.46)
10. Idade=3-de 41 a 50 316 ⇒ atraso=6-de 181 a 240 135 conf:(0.43)
11. Idade=3-de 41 a 50 316 ⇒ atraso=7-de 241 a 300 129 conf:(0.41)
12. Valor=2-de 500 a 1000 314 ⇒ atraso=6-de 181 a 240 123 conf:(0.39)
13. Atraso=6-de 181 a 240 460 ⇒ Idade=3-de 41 a 50 135 conf:(0.29)
14. Atraso=7-de 241 a 300 571 ⇒ Idade=2-de 31 a 40 161 conf:(0.28)
15. Atraso=6-de 181 a 240 460 ⇒ Valor=2-de 500 a 1000 123 conf:(0.27)
16. Atraso=7-de 241 a 300 571 ⇒ Valor=5-acima de 2000 152 conf:(0.27)
17. Atraso=7-de 241 a 300 571 ⇒ Valor=3-de 1000 a 1500 135 conf:(0.24)
18. Atraso=7-de 241 a 300 571 ⇒ Idade=3-de 41 a 50 129 conf:(0.23)Os ganhos obtidos ao se executar o algoritmo com os novos conjuntos de atribu-
tos e instâncias da base de dados foram os seguintes:
• Foram geradas regras mais relevantes para as bases; e
• Foram encontrados valores de confiança das regras mais próximas da realidade.
Elaboração das Novas Estratégias
Baseando-se nas regras geradas foram criadas novas estratégias, para isto foram 
utilizadas as regras que tiveram maiores valores de confiança. O objetivo é verificar 
se os resultados operacionais serão melhores.
As estratégias elaboradas para os respectivos clientes ficaram da seguinte forma:
Estratégia elaborada para o Cliente A
A fila de discagem deverá obedecer às seguintes prioridades:
• Primeiramente débitos com valores de 0 a 200, independente da faixa de atraso;
• Valores entre 200 e 500, com atraso de 31 a 120 dias;
• Faixa etária entre 0 e 25 anos;
16
17
• Depois débitos acima de 120 dias;
• Depois faixa etária entre 26 a 35 anos; e
• Depois o restante total da base.
Estratégia elaborada para o Cliente B
Para o cliente B, o comportamento foi diferente, o que já era esperado, pois 
se tratam de produtos totalmente diferentes. Eliminando as regras aparentemente 
inúteis, ficaram as seguintes:
• Faixa de atraso de 2100 a 2200 com valores entre 200 e 500;
• Valores entre 200 e 500;
• Valores entre 500 e 1000; e
• Faixa etária ascendente, pelo que o algoritmo mostra, pessoas mais novas pagam 
melhor que as pessoas mais velhas.
Estratégia elaborada para o Cliente C
Com as regras expostas anteriormente, foi elaborada a seguinte estratégia:
• Maior Atraso para o menor atraso;
• Valor a partir de 500 reais, pois valores menores são menos rentáveis;
• Faixa etária acima de 31 anos.
Análise do estudo de caso
Os resultados de taxas de acerto anterior à análise de dados com as estratégias 
anteriores fornecidos pela empresa eram as seguintes:
Taxa de acerto Cliente A:
Figura 2 – Taxa de acerto Cliente A
Fonte: Acervo do conteudista
17
UNIDADE Estudo de Caso com Análise de Dados
Taxa de acerto cliente B:
Figura 3 – Taxa de acerto Cliente B
Fonte: Acervo do conteudista
Taxa de acerto Cliente C:
Figura 4 – Taxa de acerto Cliente C
Fonte: Acervo do conteudista
Os testes foram feitos durante uma semana do mês 06/2018.
A validação foi feita da seguinte maneira:
• Foram selecionados três operadores que tinham os piores resultados em cada 
carteira, ou seja, que fechavam poucos acordos em cada carteira;
• Foram aplicadas as novas estratégias somente a estes operadores durante 
uma semana;
• No final do teste foram contabilizadas as quantidades de acordos que foram 
fechados durante o período.
18
19
Com a nova estratégia foram obtidos os seguintes resultados, comparados com 
a média da Taxa de Acerto anterior, já mencionada:
Tabela 4 – Resultados
Cliente Taxa de Acerto Média da Taxa de Acerto Anterior
Cliente A 84,66% 77,92%
Cliente B 77,22% 43,27%
Cliente C 31,22% 16,81%
Comparando com o melhor resultado de todos os meses, no cliente A foram 
feitos menos acordos, no cliente B e no cliente C os resultados foram melhores.
Pelo pouco tempo que se pode observar as novas estratégias tiveram melhor de-
sempenho do que as anteriores, porém seria interessante aplicá-las com uma quan-
tidade maior de operadores e em um período maior de tempo, embora os gráficos 
obtidos mostraram melhor desempenho, mesmo com operadores que não tinham 
bom rendimento com os clientes analisados. A próxima etapa seria de refinamentos 
nas estratégias definidas.
Pode-se observar através do estudo de caso, que o uso de algoritmos de análi-
se de dados e mineração, obedecendo adequadamente os processos de análise e 
implementação de projetos dessa natureza, aliada ao conhecimento do negócio ao 
qual se está aplicando e, com a segurança de experimentação em menores escalas 
podem trazer ganhos reais para as organizações, sobretudo melhores desempe-
nhos operacionais. A correta escolha da técnica de mineração é extremamente 
importante para o projeto e negócio, por isso, um cientista de dados deve conhecer 
diversos algoritmos e técnicas de experimentações.
19
UNIDADE Estudo de Caso com Análise de Dados
Referências
AGRAWAL, R.; SRIKANT, R. Fast Algorithms for Mining Association Rules; 
IBM Almaden Research Center; California, USA, 1994.
GILLMEISTER, P. R. G., CAZELLA, S. C. Uma análise comparativa de algorit-
mos de regras de associação: minerando dados da indústria automotiva, Univer-
sidade do Vale do Rio dos Sinos – UNISINOS; Rio Grande do Sul, 2007.
OLIVEIRA, D. De P. R., Planejamento estratégico – conceitos, metodologia, 
práticas, 22.ed, São Paulo: Atlas, 2005.
RIBEIRO, M. X., VIEIRA, MARINA T.; TRAINA, AGMA, J. M., Mineração de 
Regras de Associação usando Agrupamentos, Universidade Federal de São 
 Carlos, São Carlos; Universidade de São Paulo, São Carlos; Universidade Meto-
dista de Piracicaba, Piracicaba, São Paulo, 2005.
SCHEFFER, T. Finding association rules that trade support optimally against 
confidence, In: PKDD 2001: principles of data mining and knowledge discovery, 
European conference on principles of data mining and knowledge discovery. 
N. 5, 20011973, v. 2168, pages. 424-435.
20