Você está na página 1de 142

Análise Preditiva e Data Mining

Brasília-DF.
Elaboração

Sylvia Emmanuelle Castelo Branco de Holanda Victor

Produção

Equipe Técnica de Avaliação, Revisão Linguística e Editoração


Sumário

Apresentação.................................................................................................................................. 5

Organização do Caderno de Estudos e Pesquisa..................................................................... 6

Introdução.................................................................................................................................... 8

Unidade I
Introdução........................................................................................................................................ 9

Capítulo 1
Definições acerca de data mining e análise preditiva................................................... 12

Unidade iI
Modelagem....................................................................................................................................... 24

Capítulo 1
Modelos de mineração de dados.................................................................................... 24

Capítulo 2
Modelagem preditiva.......................................................................................................... 31

Unidade iII
Processo deDescoberta de Dados (KDD)...................................................................................... 46

Capítulo 1
Entendendo o processo................................................................................................... 46

Capítulo 2
Transformação dos dados.............................................................................................. 63

Unidade iV
Algoritmos de Data Mining......................................................................................................... 71

Capítulo 1
Técnicas para encontrar padrões................................................................................... 71

Capítulo 2
Aplicação de ferramentas................................................................................................ 89

Unidade V
Aprendizado de Máquina (Machine Learning).............................................................................. 99

Capítulo 1
Sistema de aprendizado...................................................................................................... 99
Capítulo 2
Aplicações de classificação de textos........................................................................ 113

Unidade Vi
Estudo de Caso Prático................................................................................................................ 121

Capítulo 1
Fábrica de refrigerantes................................................................................................. 121

Referências ................................................................................................................................ 136


Apresentação

Caro aluno

A proposta editorial deste Caderno de Estudos e Pesquisa reúne elementos que se


entendem necessários para o desenvolvimento do estudo com segurança e qualidade.
Caracteriza-se pela atualidade, dinâmica e pertinência de seu conteúdo, bem como pela
interatividade e modernidade de sua estrutura formal, adequadas à metodologia da
Educação a Distância – EaD.

Pretende-se, com este material, levá-lo à reflexão e à compreensão da pluralidade


dos conhecimentos a serem oferecidos, possibilitando-lhe ampliar conceitos
específicos da área e atuar de forma competente e conscienciosa, como convém
ao profissional que busca a formação continuada para vencer os desafios que a
evolução científico-tecnológica impõe ao mundo contemporâneo.

Elaborou-se a presente publicação com a intenção de torná-la subsídio valioso, de modo


a facilitar sua caminhada na trajetória a ser percorrida tanto na vida pessoal quanto na
profissional. Utilize-a como instrumento para seu sucesso na carreira.

Conselho Editorial

5
Organização do Caderno
de Estudos e Pesquisa

Para facilitar seu estudo, os conteúdos são organizados em unidades, subdivididas em


capítulos, de forma didática, objetiva e coerente. Eles serão abordados por meio de textos
básicos, com questões para reflexão, entre outros recursos editoriais que visam tornar
sua leitura mais agradável. Ao final, serão indicadas, também, fontes de consulta para
aprofundar seus estudos com leituras e pesquisas complementares.

A seguir, apresentamos uma breve descrição dos ícones utilizados na organização dos
Cadernos de Estudos e Pesquisa.

Provocação

Textos que buscam instigar o aluno a refletir sobre determinado assunto antes
mesmo de iniciar sua leitura ou após algum trecho pertinente para o autor
conteudista.

Para refletir

Questões inseridas no decorrer do estudo a fim de que o aluno faça uma pausa e reflita
sobre o conteúdo estudado ou temas que o ajudem em seu raciocínio. É importante
que ele verifique seus conhecimentos, suas experiências e seus sentimentos. As
reflexões são o ponto de partida para a construção de suas conclusões.

Sugestão de estudo complementar

Sugestões de leituras adicionais, filmes e sites para aprofundamento do estudo,


discussões em fóruns ou encontros presenciais quando for o caso.

Atenção

Chamadas para alertar detalhes/tópicos importantes que contribuam para a


síntese/conclusão do assunto abordado.

6
Saiba mais

Informações complementares para elucidar a construção das sínteses/conclusões


sobre o assunto abordado.

Sintetizando

Trecho que busca resumir informações relevantes do conteúdo, facilitando o


entendimento pelo aluno sobre trechos mais complexos.

Para (não) finalizar

Texto integrador, ao final do módulo, que motiva o aluno a continuar a aprendizagem


ou estimula ponderações complementares sobre o módulo estudado.

7
Introdução
O estudo da mineração de dados é de extrema importância e tem um alto grau de
aplicabilidade dentro de quaisquer bancos de dados que possua uma grande quantidade
de dados. É possível afirmar que a mineração de dados se estende as áreas de Ciência de
dados, Análise de dados, Estatística, Arquitetura de sistemas, Administração de banco
de dados e Análise de negócios.

A técnica de Data Mining é considerada um dos novos contextos de computação de


dados. Todas as empresas que trabalham com dados digitais, cada vez mais sofrem
com o aumento exponencial da quantidade de dados contidos em seus bancos que
após minerados, geram informações – para tanto são aplicados recursos – e claro, é
preciso aproveitar todo e qualquer resultado. Os resultados obtidos são utilizados para
ajudar na tomada de decisões dentro do contexto de avaliação. É importante estudar as
possíveis maneiras de se aplicar os métodos, de acordo com os algoritmos propostos a
cada tipo de problema.

Objetivos
»» Explicar os conceitos e as técnicas de Data Mining e descrever os
benefícios da análise preditiva.

»» Compreender as atividades envolvidas em projetos de Data Mining.

»» Descrever os passos de um processo de mineração de dados.

»» Compreender como modelos preditivos podem ser usados para resolver


problemas de negócio.

8
Introdução Unidade I

Esta Unidade irá fazer uma introdução aos conceitos que serão vistos ao longo desta
apostila. Porém, antes mesmo de começar a discutir sobre Mineração de Dados (Data
Mining), Análise Preditiva, modelagem, Machine Learning, é sempre bom rever alguns
conceitos que serão interessantes para o entendimento do assunto em questão.

Assim, é possível conceituar três notações.

Dado

Significa que foi algo informado por alguém/alguma coisa, algo que representa
um documento, uma descrição de algo que possibilita atingir o conhecimento
ou inferir as verdadeiras consequências de um fato. Servindo como uma base
para afirmar uma informação.

Por exemplo, se for dito que o dado foi utilizado para ajudar a solucionar um problema,
é inferido que o dado, sozinho, não foi responsável pela solução do problema, somente
quando ele é utilizado na tomada de decisão.

Via de regra, o dado pode ser considerado como uma representação simbólica, ou
como é conhecido na programação, um atributo de uma entidade. Os dados retratam
características das entidades que são compostas pelos algoritmos. Em relação a outras
áreas do conhecimento, os dados podem ser descritos como uma expressão mínima de
conteúdo referente a um determinado tema. A soma de dados resulta na construção de
uma informação.

Se tratando de computação de dados, o próprio é considerado a expressão ideal para


ser processada em computadores. Consequentemente, os dados após o adequado
processamento, se transformam em informação.

Outro conceito que está contido é o de base de dados (Database), que não é nada mais
que um conjunto dos dados que fazem parte de um mesmo contexto. Além disso, é
normal que esses dados sejam armazenados de forma sistemática para que possam ser

9
UNIDADE I │ Introdução

claramente acessados posteriormente. Existem ainda dois conceitos atrelados, o de base


de dados estáticas (significa que os dados armazenados não irão mudar futuramente)
e base de dados dinâmicas (significa que os dados poderão ser modificados com o
passar do tempo. Então, neste caso, são necessárias atualizações a qualquer momento)
(SETZER, 1999; CONCEITOa, 2017).

Informação

Pode ser descrita como uma série de dados organizados, que ajuda a compor
uma mensagem, uma soma sobre um fenômeno. A partir de uma informação,
é possível resolver questões/problemas e então tomar decisões – desta forma,
a racionalização permite que a informação sirva de base para compor o
conhecimento.

Observando de maneira diferente, a informação pode ser vista como um fenômeno que
atribui significado, dá sentido às coisas. O pensamento humano, por exemplo, pode
ser considerado como o resultado de um processamento de um conjunto de dados,
em que os neurônios computam os dados, os tornando em informação. No mundo
animal, esse processamento também existe, mas imagine que existem vários níveis de
processamento de dados para obtenção de informação e, consequentemente, maneiras
de se obter benefícios decorrentes dessas informações.

A integração dos dados gera as informações, que por si só, computadas, irão gerar a
produção do conhecimento. Como pode ser notado pelo leitor, todos estes conceitos em
algum momento se transformam em outro. O conceito de sabedoria não será descrito
nessa apostila, mas vale salientar que esta é composta pela capacidade do ser humano
em julgar corretamente como, quando, com qual objetivo e onde é possível aplicar o
conhecimento que foi obtido por informações provenientes de dados.

Filosofando um pouco, alguns especialistas dizem que há uma relação que não pode ser
separada entre os dados, a informação, o conhecimento, a sabedoria, o pensamento e a
linguagem (SETZER, 1999; CONCEITOb, 2017).

Conhecimento

Conceituado como um conjunto acumulado de informações que foram


guardadas com o passar do tempo e das experiências pelas quais um indivíduo
passou. Da mesma forma, o conhecimento pode ser adquirido por meio da
aprendizagem de algo que foi induzido de acordo com as informações existentes.

10
Introdução │ UNIDADE I

A combinação de um conjunto grande de dados agrupados em informações que


relacionadas entre si, sem muita capacidade de processamento, não teria uma qualidade
de usabilidade válida. Fulaninho cita o filósofo Platão, dizendo que “o conhecimento é
aquilo que é necessariamente verdadeiro (episteme). Por sua vez, a crença e a opinião
ignoram a realidade das coisas, pelo que fazem parte do âmbito do provável e do
aparente”.

A percepção das informações é que dá origem ao conhecimento, se há conhecimento,


há o entendimento e também a compreensão da razão. Se não houver conhecimento
não é possível considerar um ser pensante. Existem quatro elementos que compõem o
conhecimento, que é o sujeito, o objeto, a operação e a representação interna.

A absorção do conhecimento na visão da ciência só é válida se for seguido um método, de


modo que o conhecimento científico não é puramente sólido e plausível na visão lógica
do processo, e sim, se certificar por meio de métodos científicos ou experimentais, suas
provas. Duas fases podem ser representadas para se obter o conhecimento, que seria
a pesquisa básica (relativa à teoria do experimento) e a pesquisa aplicada (relativa à
aplicação da informação) (SETZER, 1999; CONCEITOc, 2017).

11
Capítulo 1
Definições acerca de data mining e
análise preditiva

Vimos algumas definições anteriormente que podem ser úteis para o estudo desta
disciplina. O conceito de dados, que serão processados para se transformar em
informações, e informação em conhecimento, vai ser visto dentro do estudo de
mineração de dados. Além da mineração de dados, será abordada a técnica de análise
preditiva que também se relaciona à extração de informações dentro de um conjunto
de dados (ACADEMY, 2017).

O objetivo desta extração é para identificar padrões e resultados futuros. A precisão


plena dos eventos futuros não é uma aquisição simples, contudo, é realizável a aplicação
de técnicas (considerando cenários hipotéticos) que consistam em exercer as previsões
com um grau plausível de confiabilidade e considerando os riscos avaliados.

O que é Data Mining?


Do termo mais conhecido na língua portuguesa, mineração de dados pode ser definido
como o processo de descobrimento das informações disponíveis em um extenso
conjunto de dados. A execução deste modelo é feita por meio de análise matemática que
objetiva derivar as relações e os padrões que os dados contêm. Habitualmente, mesmo
que fosse cogitado, essa extração de dados não poderia ser feita de forma corriqueira,
até porque a quantidade de dados é, na maioria das vezes, muito grande e as relações
entre esses dados são extremamente complexas.

Outra definição que podemos atribuir à mineração de dados é de ser um processo


analítico arquitetado (com o intuito de explorar grandes quantidades de dados)
(MICROSOFT, 2017; RIBEIRO, 2010). O processo de análise dos dados é praticamente
cíclico, pois, após a identificação inicial dos padrões, estes são novamente aplicados a
outros conjuntos de dados, tanto para verificação como para validação dos mesmos.
Pode-se classificar este processo de detecção de padrões em três fases:

»» Exploração.

»» Construção de modelo.

»» Verificação/Validação.

12
Introdução │ UNIDADE I

Modelo de mineração de dados


Os contextos aplicados aos modelos de mineração podem ser específicos ou não.
O recolhimento e definição dos dados determina os padrões na mineração de dados
(MICROSOFT, 2017). Um exemplo de modelo pode ser visto a seguir:

»» Previsão – será feita a previsão de alguma informação coletada pelos


dados do banco. No caso, uma estimativa do que pode acontecer.

»» Risco e probabilidade – concedida a análise dos dados, é possível obter


a informação a respeito de algo para que seja calculada a melhor opção.

»» Recomendações – a partir de dados analisados, é possível fazer indicações.

»» Localizando sequências – dada a previsão da análise, possibilita agir


antes de um evento futuro acontecer.

»» Agrupamento – a seleção de grupos de dados de acordo com os dados


reais e as previsões.

Por que usar mineração de dados?

Como foi apresentado no tópico anterior, o intuito de se aplicar a técnica de mineração


de dados está ligado a facilitação da definição por meio do usuário, do problema. O
próprio modelo seleciona os dados e especifica os materiais que serão responsáveis pela
análise dos dados. A procura por relações entre os dados (agrupamento) ou até mesmo
a identificação de anomalias é feita de forma automática pela ferramenta, identificando
problemas que seriam mais complicados de serem vistos por um ser humano.

Se a ferramenta faz todo o trabalho pesado da análise dos dados, identificação dos
problemas, reconhecimento de padrões escondidos no oceano de dados e discernimento
do comportamento, no final, a mineração de dados proporciona ao usuário, o tempo
para se aplicar somente aquilo que lhe for mais útil na busca pelo conhecimento, assim
podendo ele desenvolver suas atribuições de forma mais eficiente.

A base para o funcionamento dessas ferramentas de mineração de dados é toda


em algoritmos que são compostos por uma série de etapas, como inteligência
artificial, redes neurais, regras de indução e lógica de predicados. Cada uma
dessas técnicas ajuda o usuário a ler os resultados. E, claro, se o assunto é
melhorar obtenção de dados para aplicar em regras de negócios, quanto melhor
o trabalho for feito melhor serão os resultados e mais lucrativos serão os retornos
(RIBEIRO, 2010; MICROSOFT, 2017).

13
UNIDADE I │ Introdução

Figura 1. Passos do Data Mining.

Fonte: Ribeiro, 2010 (modificado).

A figura 1 mostra uma imagem que apresenta os passos que a mineração de dados
executa em seu processo. Inicialmente, pela análise de dados da base de dados, até
chegar ao conhecimento esperado.

Aplicações de mineração de dados

É possível observar algumas áreas do conhecimento que podem usufruir as vantagens


do uso da mineração de dados. Algumas dessas áreas são exemplificadas a seguir:

»» Setor bancário – a mineração é feita em relação ao comportamento de


como estão sendo utilizados os cartões de crédito para dados grupos de
clientes de uma empresa; análise para possível detecção de roubo de
cartões de crédito; análise do comportamento do cartão de crédito que
foi roubado (dado que é sabido o que acontece com um cartão roubado,
é mais fácil identificar numa outra situação); reconhecimento de clientes
que sempre usam o cartão de crédito; identificação de padrões ocultos
entre diferentes índices financeiros para detectar problemas futuros com
clientes.

»» Marketing e comércio – detecção do padrão de reconhecimento de


compra dos clientes; previsão de respostas para propagandas de
marketing; definição de correlações entre objetos comprados e entre o
perfil demográfico dos clientes.

14
Introdução │ UNIDADE I

»» Seguros e planos de saúde – previsão para identificar possíveis grupos


de clientes que se interessariam em comprar planos de saúde ou
apólices de seguro; detecção de clientes/pacientes que tem algum risco;
detecção de clientes que possam dar calote na empresa de cartões de
crédito; averiguação do uso conjunto de procedimentos médicos e/ou
odontológicos.

»» Transporte – estudo de como estão sendo conduzidas as cargas; definição


da disposição de entregas de mercadorias a serem realizadas dentre
diversas distribuidoras de acordo com os cronogramas; identificação de
notas fiscais falsificadas.

»» Medicina – detecção da aplicação de diversas abordagens para


tratamento de doenças da melhor forma possível; identificação de como
é o comportamento dos clientes, para assim, prever a que horas do dia
é melhor para o paciente ir a uma consulta; definição dos padrões em
sequências de DNA; sequenciamento de genes.

»» Indústrias – definição da confiabilidade dos mais complexos produtos


que englobam a área industrial; confiabilidade dos softwares envolvidos;
administração e controle de qualidade de forma mais eficiente possível.

»» Meio Ambiente – definição da melhor forma, dos riscos atribuídos as


usinas nucleares; definição do quanto sofrerá uma região que receba a
instalação de uma fábrica, considerando os problemas ambientais que
podem acontecer; análise de dispersão de poluentes.

»» Internet – detecção de alguns padrões em home pages; a procura e a


agregação de documentos.

O que é Big Data?


O termo em inglês Big Data é descrito como um imenso volume de dados, sejam eles
organizados de forma estruturada ou não estruturada. Este tipo de dados normalmente
tem um grande impacto no mundo dos negócios a qualquer momento. O que é mais
lucrativo para as empresas que trabalham com um grande volume de dados é o
resultado que esses dados proporcionam e não exatamente a sua quantidade de dados. A
usabilidade desta técnica pode se abranger a análise para a conseguir ideias que podem
levar o responsável a detectar as melhores decisões e as melhores gestões estratégicas
de negócio (SAS, 2017).

15
UNIDADE I │ Introdução

O importante na análise de grandes quantidades de dados é guardar uma grande


quantidade de informações processadas, para que eventualmente serem reutilizadas.
A notação batizada, não é muito nova, e talvez não tão abrangentemente conhecida.
A utilização ficou mais conhecida há alguns anos, quando o analista, Doug Laney,
caracterizou o Big Data como: 

»» Volume – as empresas reúnem os dados de um imenso conjunto de


dados, que tenha uma enorme variedade. Atualmente, problemas de
armazenamento para esse tipo de técnica não influencia muito, porque
hoje, há uma gama de tecnologias que permitem o armazenamento de
um grande volume de dados.
»» Velocidade – assim como a nova tecnologia auxilia no armazenamento
de um grande volume de dados, a velocidade com que esses dados são
processados hoje em dia é incrível. Além de que, o processamento também
é feito com essa alta taxa de velocidade. Muitas vezes em tempo real.

»» Variedade – como é muito extensa a lista de base de dados, é frequente,


igualmente, o largo número de formatos dos dados (estruturados,
numéricos, documentos de texto, e-mails, áudios, vídeos, transações
financeiras).

A importância de Big Data


A quantidade de dados na maioria das vezes é muito grande, mas nem sempre pode-
se dizer que quanto maior a quantidade de dados melhor serão seus resultados. Na
verdade, o ideal é se ter um bom processamento dos dados que existem. Os dados a
serem analisados podem ser provenientes de qualquer fonte, contanto que o resultado
de seu processamento conceda decisões inteligentes, redução de tempo e custos,
desenvolvimento de produtos inovadores e ofertas otimizadas.

A junção de uma grande quantidade de dados, aliado a um eficiente sistema de análise


de dados, certamente irá resultar em uma ferramenta que cumprirá bem as tarefas
propostas. Uma das atividades relacionadas a negócios pode ser exemplificada a seguir:

»» Definição da base responsável pelos defeitos, para que, assim, os


problemas e as suas consequentes falhas sejam ajustados praticamente
em tempo real.

»» Analisar os costumes de compra dos clientes, para gerar gratificações e


incitar promoções.

»» Identificar problemas que possam afetar a empresa, por comportamentos


fraudulentos.
16
Introdução │ UNIDADE I

Tipos de análise de Big Data

Há uma grande gama de como se elaborar a análise de um Big Data. O conceito fica
em torno do entendimento do que pode ser aproveitado depois desta análise, como
já foi citado. Dentre essas possibilidades, existem quatro tipos de análise para o Big
Data que se sobressaem, dado seu grande potencial em gerar resultados e até mesmo a
usabilidade referente. Estas técnicas são as análises preditiva, prescritiva, descritiva e
diagnóstica.

Figura 2. Escala de valor extraído a partir das análises em Big Data.

Análise Prescritiva
Valor

Análise Preditiva

Análise Diagnóstica Prevenção

Análise Descritiva
Introspecção

Retrospecção

Dificuldade

Fonte: próprio autor.

A figura 2 apresenta uma escala mostrando exatamente as quatro principais análises e


qual o enfoque de cada uma.

Análise preditiva

Como os exemplos anteriores já mostraram, uma boa aplicação desta técnica é feita na
área dos negócios. Então, é afirmável que a análise preditiva geralmente é utilizada tanto
para analisar dados recentes, como também dados passados – sempre com o intuito de
entender da melhor forma possível os seus clientes, seus produtos, como também para
fazer previsões dos riscos existentes e aumentar o potencial de oportunidades para uma
organização.

Algumas ferramentas servem de auxílio para combinar os esforços e resultar bons


feedbacks. O uso de mineração de dados (já definido no tópico anterior), modelagem
estatística e aprendizagem de máquina (que serão explicados mais a frente) colaboram

17
UNIDADE I │ Introdução

com o processo de análise das previsões, para assim ter uma tomada de decisão bem
estruturada (ACADEMY, 2017).

Portanto, a responsabilidade da análise preditiva é em aplicar o uso dos dados,


concomitantemente com os algoritmos estatísticos – que estão contidos no modelo
escolhido, bem como a técnica de aprendizagem de máquina que tem um papel importante
nesse processo, pois ela auxilia na detecção dos cálculos de probabilidade dos resultados
referentes ao futuro tenham um bom suporte cedido pela base em dados prévia.

O objetivo, nesta técnica, é não ficar preso a estatística descritiva, nem aos relatórios
passados relativos a experiências anteriores, para então processar melhores previsões
do que irá acontecer posteriormente. Da mesma forma, o intuito é ter as tomadas de
decisões executadas de maneira mais simples possível, para então ter ideias que gerem
melhores ações, trazendo melhores resultados – ciclicamente.

A análise preditiva utiliza os modelos estatísticos para absorver as informações


existentes nos bancos de dados e, assim, treinar o algoritmo para que que este possa ser
aplicado a prevenção dos valores – sejam estes para dados antigos ou não. A aplicação
dessa modelagem para previsão de resultados, simbolizam a probabilidade da variável-
alvo referente a importância estimada, dado um conjunto de variáveis de entrada.

Mais à frente será apresentada a análise descritiva, contudo já é possível afirmar que elas
são modelos bem diferente, pois apoiam a compreensão do que houve. Outra diferença
está na análise de diagnósticos, porque estes auxiliam a compreender as principais
relações e a determinação da razão por ter acontecido algo (SAS, 2017).

O interesse das empresas em aplicar a técnica de análise preditiva está presente


principalmente para ganhar competitividade no mercado e, claro, sempre almejando
a expansão de seus lucros. O motivo para tal desejos pode ser evidenciado em algumas
razões como:

»» Aumento da quantidade de tipos de dados e o grande volume desses


dados, bem como o interesse de usar esses dados para transformar as
informações que são essenciais.

»» Avanço tecnológico que permite a aquisição de máquinas mais rápidas


com um custo abaixo de outras épocas, bem como softwares mais
elaborados e de fácil manipulação.

»» Aumento da competitividade entre as empresas, necessitando


assim, mostrar destaque e se adequar as condições do mercado –
economicamente.

18
Introdução │ UNIDADE I

O avanço e a facilidade no nível de interatividade software/usuário a sua usabilidade vem


crescendo de forma logarítmica e tornando-se cada vez mais dominante nos mercados.
Se antigamente ficava associado a análise preditiva ao domínio de matemáticos e
estatísticos, hoje é certo que não se pode pensar restritivamente. Na área dos negócios,
os especialistas aplicam a análise preditiva para realizar algumas atividades, como:

»» Identificar tendências.

»» Entender os clientes.

»» Melhorar o desempenho dos negócios.

»» Promover a tomada de decisão estratégica.

»» Prever o comportamento.

Análise prescritiva

A análise prescritiva para quem não conhece muito bem pode até ser entendida como
se fosse a análise preditiva – pelo fato de que as duas técnicas utilizam a mesma lógica,
contudo, o que as difere são os objetivos ao qual cada uma almeja. Como foi visto
anteriormente, a análise preditiva detecta como o modelo vai se comportar no futuro,
diferentemente da análise prescritiva, que tem como objetivo planejar as decorrências
das ações possíveis a serem tomadas.

A escolha entre os tipos de análise a serem utilizadas não estima superioridade, mas
sim a combinação do que se quer, do que se tem, e do que se precisa. Cada situação
envolvida será avaliada para se usar a melhor técnica. Porém, ainda assim, a análise
prescritiva não tem uma boa procura – muitas vezes por falta de conhecimento da
técnica. Segundo a Big Data Business, 2017, o autor Gartner, afirma que somente 3%
das empresas fazem uso da análise prescritiva.

Exemplos de como está técnica poderia ser aplicada, pode ser vista nas indústrias, por
sua capacidade de computar determinados padrões, assim como selecionar os padrões
por suas especificidades. Enfim, conseguindo adquirir um cenário da circunstância
extremamente confiável e resultados que estarão dentro do escopo esperado. Outro
exemplo bem pertinente, seria a aplicação na área de saúde, nos quais os administradores
de planos de saúde poderiam identificar padrões na análise de pacientes, para determinar
a existência de doenças (não conhecidas).

Em doenças como o câncer, por exemplo, para o paciente, como para o gestor um tipo
de análise de padrões que permita detectar a presença da doença só geraria “lucros”

19
UNIDADE I │ Introdução

– pois indicaria quais medidas poderiam ser tomadas para minimizar os problemas,
assim, o impacto a saúde do paciente e ao bolso do dono da empresa seriam reduzidos
de forma significativa.

Análise descritiva

Tempo real é o termo que define o diferencial da análise descritiva. Da mesma forma
que foi mencionado anteriormente, a aplicação de cada técnica vai de acordo com sua
usabilidade. A análise descritiva é a mineração de dados no Big Data – se há muitos
dados é necessário um processamento pesado e o quão rápido for feito e apresentado os
resultados, melhor. Esta técnica objetiva uma forma de analisar os dados, compreender
como é organizada uma base de dados e não exatamente fazer relações com dados atuais
e futuros – no caso dando mais ênfase no que está acontecendo no agora.

Exemplificando a aplicação da análise descritiva, pode-se imaginar uma organização


da área financeira responsável por análise de crédito. A função desta análise é pegar
as informações geradas pelos usuários individualmente ou até mesmo de um grupo
– identificado por um padrão, objetivando entender os seus perfis para então atribuir
os riscos existentes na concessão de crédito. As informações de quaisquer outras
atividades desses usuários podem indicar, mesmo que o próprio nunca tenha pedido
este crédito anteriormente, se é ou não indicado esta concessão. Além dessa análise
de aprovação ou não, pode-se intervir outros atributos, como o valor dado as taxas de
juros em financiamentos para clientes não muito confiáveis.

Análise diagnóstica

Por fim, a quarta e última técnica – a análise diagnóstica. Comparando essa com a
análise descritiva, podemos dizer que a descritiva  procura classificar uma base de
dados, diferentemente, a diagnóstica tem o intuito de entender de maneira mais formal
todas as suas possibilidades de quando, quem, por que, como e onde vai ser executada
a análise. Por exemplo, no caso de uma organização que trabalha com marketing, o
tipo de análise diagnóstica pode ser considerado a melhor opção a ser escolhida, pois
conseguirá atingir seu objetivo da melhor forma possível de modo eficiente, pois depois
de sua execução os analistas podem identificar da melhor forma os resultados e os
impactos positivos e negativos na técnica.

A sua aplicação também pode ser vista dentro de um conjunto de dados enorme (Big
Data), no caso, ela consegue gerar um tipo de relatório expandido – para poder resumir
os resultados. Outra coisa que a análise diagnóstica proporciona é a compreensão da
razão da existência de todos os acontecimentos e das ações que foram tomadas para

20
Introdução │ UNIDADE I

elas, assim, possibilitando a modificação das estratégias que não estão trazendo bons


resultados, bem como ter certeza da qualidade das suas funções.

Mais uma vez, é importante salientar que cada modelo tem a melhor forma de ser
utilizada pela técnica em questão. Foi mencionado que a análise descritiva usava o Big
Data, contudo não significa que esta seja uma técnica exclusiva – o Big Data pode ser
aplicado de diferentes maneiras. É fácil afirmar que os dados sem técnicas de análise
não rendem resultados significativos. O analista que irá analisar estes dados e que
escolherá a técnica para aplicar a base de dados é que fará a diferença no momento de
obter os resultados para auxiliar nas tomadas de decisões. O essencial é compreender
que conhecer bem cada técnica faz toda a diferença.

Data Mining x Machine Learning


A seguir, teremos um capítulo dedicado somente a aprendizagem de máquina. Como já
foi apresentado o conceito de mineração de dados, para ter uma noção da comparação
entre essas técnicas, esta seção apresenta uma breve descrição do que é a aprendizagem
de máquina.

Aprendizado de máquina é uma técnica bem conhecida mundialmente com o termo


Machine Learning, que representa um método de análise de dados que auxilia os modelos
analíticos – como foi dito nas seções anteriores – em relação ao seu desenvolvimento.
Desenvolvida há muitos anos, a aprendizagem de máquina é uma ciência largamente
utilizada, e ainda que já bem conhecida, ainda consegue se reinventar e ter sua aplicação
para apoio de diversos modelos.

O uso da aprendizagem de máquina é dado pela composição de algoritmos que aprendem


de forma recíproca as informações que eles podem obter a partir dos dados da base de
dados. O uso desta técnica habilita os computadores a descobrir ideias escondidas,
sem que ele seja programado especificamente para fazer ou achar algo exatamente
conhecido pelo desenvolvedor.

O que diferencia a técnica da aprendizagem de máquina é o fato de ela ser completamente


interativa, o que se destaca por que no momento que os modelos são apresentados a
dados mais recentes ao que ele já tinha anteriormente, a técnica proporciona uma forma
singular de ser adaptar as mudanças sem o esforço do analista. Essa forma de aprender
é baseada em cálculos referentes a execuções anteriores – previamente treinada – e
então, gerar novos resultados de maneira confiável, a partir da sua tomada de decisões.

21
UNIDADE I │ Introdução

Com o passar dos anos, o aprendizado de máquina aplicado atualmente cresceu junto
com o avanço tecnológico na área da computação. Atualmente, é visto o desenvolvimento
de vários algoritmos de aprendizagem de máquina capaz de executar automaticamente
cálculos matemáticos complexos em um imenso conjunto de dados – mais uma vez
com o auxílio do crescimento tecnológico, esses avanços estão cada vez mais rápidos e
são aplicados a base de dados cada vez maiores.

A seguir, pode-se observar exemplos que são bem conhecidos hoje em dia da aplicação
de aprendizagem de máquina:

»» O Google já produziu carros que são guiados sozinho – sem que haja a
presença de uma pessoa.

»» O Netflix é um dos milhares de sites que faz recomendações on-line do


que uma pessoa pode querer assistir, de acordo com o que ela aprende do
gosto do seu usuário individual ou até mesmo de um grupo social.

»» O Facebook analisa a quantidade de curtidas, o tipo de reação, e até as


palavras que são escritas nos comentários para entender o que o usuário
dele quer ver no seu perfil, e mais importante, o que ele não quer, para
não perder o usuário.

»» Empresas de cartão de crédito por ser o meio mais utilizado como


pagamento, tem que tem controle extremo de conhecimento do seu
cliente para não cair em fraudes, inadimplência etc.

Assim como outras técnicas computacionais, a aprendizagem de máquina voltou ao


mercado, pois foi vista a necessidade de seu modelo no mundo atual. E o interesse no
seu ressurgimento pode ser atribuído a vários fatores, os mesmos que reaproximaram
a necessidade do uso da mineração de dados e da análise Bayesiana. O fato de haver um
crescente volume e variedade de dados a serem processadas, a diminuição nos custos
e o aumento do poder de processamento computacional em um computador melhor,
além da facilidade de acesso a uma grande quantidade de dados.

Resumidamente, o que foi dito significa que não só é possível, mas como já é
realidade o fornecimento de modelos, de forma rápida e automática, que são
hábeis a analisar uma grande base dados – sejam eles complexos ou não – de
maneira eficiente para produzir resultados mais precisos e bem mais rápidos
(independentemente de seu tamanho).

E novamente, como o objetivo do processo é analisar dados para auxílio do analista,


quanto melhor for realizado a inferência nos dados, mais inteligentes serão as ações
22
Introdução │ UNIDADE I

escolhidas nas tomadas de decisão e melhores retornos. A intervenção das pessoas em


situações como esta, em que há uma grande quantidade de dados, pode deixar brechas
para erros que, no caso, a máquina não deixaria passar – assim, é possível dizer que
quanto menor houver dependência de pessoas melhores serão os resultados (SASb,
2017).

A seguir é apresentada o quadro 1, que traz alguns pontos específicos mostrando bem a
diferença entre a mineração de dados e a aprendizagem de máquina.

Quadro 1. Mineração de Dados x Aprendizagem de Máquina.

Parâmetro Data Mining (Mineração de Dados) Machine Learning (Aprendizado de Máquina)


Processo de extração de informação de um
Tem como objetivo a construção e estudo de sistemas que podem
Definição conjunto de dados e transformação de uma
aprender com os dados.
estrutura entendível para posterior uso.
Tem o foco na descoberta de propriedades Tem foco na predição, baseado em características conhecidas e
Foco
desconhecidas dos nos dados. aprendidas pelos dados de treinamento.
É um processo automático ou semiautomático para
Tamanho da Base de É geralmente desempenhada em bases de dados pequenas para o
desempenhar em bases com grandes quantidades
Dados de dados.
aumento da acurácia.

Regras de Associação, Classificação, Clustering


Tipos (Agrupamento), Padrões Sequenciais, Sequência de Supervisionado, não supervisionado, reforço.
Similaridade.
A Mineração de Dados usa diversas técnicas O Aprendizado de Máquina também usa técnicas de mineração de
Relacionamento provenientes de Aprendizado de Máquina, mas com dados como “Aprendizado Não Supervisionado” ou como “Passo de
objetivos distintos. Pré-Processamento” para melhoria do modelo de aprendizado.
Automação de controle de acesso de funcionários, proteção da fauna,
Previsão, Classificação, Associação, Clustering
Aplicações predição de tempo de espera em salas de emergência, identificação
(Agrupamento), Geração de Sequências.
de falha cardíaca.
Exemplos de
Carrot2, GATE, UIMA, Weka, NLTK, Torch etc. Apache Mahout ,ELKI, H2O, OpenCV, OpenNN, Weka, MATLAB etc.
Softwares
Fonte: Clesio (2015).

Conclusão

Com o avanço tecnológico e o aumento exponencial da quantidade de dados que são


armazenadas todos os dias, a utilização de métodos e ferramentas que auxiliem na
análise e mineração desses dados é considerada essencial. Portanto, a mineração de
dados e a análise preditiva são aplicadas a grandes bases de dados para ajudar analistas
a encontrarem padrões e respostas que auxiliem na interpretação desses dados, a fim de
obter respostas que impliquem em tomadas de decisões corretas – objetivando sempre
o lucro e a diminuição do desperdício (financeiro, tempo etc.).

23
Modelagem Unidade iI

A Unidade II apresentará os conceitos relacionados as modelagens de mineração de


dados. No capítulo 1 é mostrada uma noção geral de modelagem para mineração de
dados, diferentemente do Capítulo 2 que aplica as técnicas de modelagem preditiva.

Capítulo 1
Modelos de mineração de dados

A base para se aplicar o conceito de modelo de mineração de dados é por intermédio


do uso de algoritmos de dados. Isso não significa que este algoritmo se resume a um
grande volume de meta dados, e sim um serie de dados, que podem ser aplicadas a
técnicas estatísticas e reconhecimento de padrões – e então poderem ser utilizadas a
outros novos dados, e claro, como objetivo obter previsões para assim realizar deduções
acerca das tomadas de decisões (MICROSOFT, 2017).

Arquitetura
Estruturas de mineração promovem dados aos modelos de mineração, como também
faz a análise desses dados utilizando algum algoritmo de mineração de dados. Nesta
frase, ficou bem claro que há uma diferença entre modelo de mineração e estrutura de
mineração.

»» Modelo de mineração – guarda informações provenientes do


processamento estatístico de dados que, no caso, seriam os padrões
descobertos por meio da análise dos dados.

»» Estrutura de mineração – mantém informações que determinam qual foi


a parte responsável por criar esses dados.

24
Modelagem │ UNIDADE II

Desta maneira, a estrutura de mineração provê os dados para o modelo de mineração


(que inicialmente não tem nenhum dado, porque está esperando receber da estrutura)
que, então, os processam e analisam. Esse processo serve para que após o processamento,
o modelo de mineração tenha a estrutura de mineração, mas também tenha resultados
e metadados1.

Figura 3. Conteúdo do modelo de mineração de dados.

Fonte: MICROSOFT (2017).

A figura 3 apresenta uma imagem que mostra como é composto o conteúdo de um


modelo de mineração de dados. No caso, ele tem os metadados, os padrões e as
associações que serão feitas entre eles.

Com o intuito de classificar o nome do modelo de mineração e relacioná-lo a um


servidor que os contém armazenados, os metadados igualmente determinam o modelo
de mineração – englobando as colunas da estrutura de mineração que foram utilizadas
na concepção do modelo – bem como as declarações dos filtros que necessitam ser
colocadas ao longo do processamento do modelo de mineração, assim como o algoritmo
utilizado para analisar os dados. O objetivo da utilização de todo esse processo, se
dá ao fato de que, no final, o resultado da análise terá sido influenciado pelos passos
escolhidos (tipos de dados, filtros e algoritmos).

É possível se utilizar os próprios dados para desenvolver uma serie de modelos, por
exemplo, para tal, é necessário usar algoritmos conhecidos para estas aplicações, como:

»» Algoritmo agrupamento.
»» Algoritmo de árvore de decisão.
»» Algoritmo de Naïve Bayes.

1 “Os metadados são marcos ou pontos de referência que permitem circunscrever a informação sob todas as formas, pode se
dizer resumos de informações sobre a forma ou conteúdo de uma fonte” (METADADOS, 2017).

25
UNIDADE II │ Modelagem

Os variados tipos de modelos geram diferentes séries de padrões, conjuntos de objetos,


regras, nas quais é possível fazer previsões para poder aplica-las. Na maior parte das
vezes, os algoritmos se comportam de maneira diferentes, se tratando de sua forma de
análise, e então, é afirmável que o resultado do conteúdo do modelo pode ser igualmente
organizado em diversas estruturas. Existem algumas maneiras de se trabalhar com
tipos diferentes de modelo de mineração, nos quais eles podem conter dados e padrões,
ou agrupamento em clusters, dados organizados em árvores.

Já vimos que o modelo recebe informações da estrutura de mineração, contudo,


mesmo tendo um mesmo modelo e uma mesma estrutura, é normal que estes modelos
processem resultados diferentes caso a maneira de filtrar os dados não seja padrão. Isso
se dá porque no momento do treinamento, os dados são usados e não necessariamente
convergem do mesmo jeito à análise dos dados.

Tentando conter estes possíveis problemas de divergência, os dados reais tendem a


não ser guardados, em si, no modelo. De modo que só é armazenada um apanhado
estatístico, que possui os dados reais que estão armazenados na estrutura de mineração.
Por conseguinte, as definições de filtros criados nos dados treinados no modelo ficaram
armazenada como item do modelo de mineração.

Se, hipoteticamente, o processo de associação de dado pelo modelo fosse apontado para
a estrutura de mineração, os dados que estão na memória cache – dados armazenados
na memória cache do modelo – permitiriam que a memória cache na estrutura de
mineração não for esvaziada depois do processamento, e os dados armazenados
poderiam servir de detalhamento para análise dos resultados (uma base que garante a
verificação da execução). No entanto, na realidade está suposição não acontece.

Definição de etapas
A elaboração de um modelo de mineração de dados pode ser seguida de acordo com
algumas etapas como:

»» Produzir a estrutura de mineração implícita e colocar colunas de dados.

»» Escolher o algoritmo – sempre verificando a compatibilidade do algoritmo


com a atividade que vai ser analisada.

»» Seleção das colunas da estrutura que serão utilizadas no modelo e


especificação da maneira que estas têm que ser aplicadas. No caso, é
preciso especificar as colunas que possuem a previsão dos resultados
desejados, identificar as colunas que são apenas para entrada de dados.

26
Modelagem │ UNIDADE II

»» Definição de parâmetros do algoritmo para adaptar ao processamento


dos dados.

»» Incluir dados no modelo para poder processar o próprio modelo e a


estrutura.

Serviços como o Analysis Services da Microsoft fornecem uma série de ferramentas


que ajudam a administrar os modelos de mineração.

Propriedades
Modelos diversos podem ter propriedades diferentes que determinam suas principais
características, para então, definir-se e determinar seus metadados, atributos como
nome, descrição, datas de última execução do modelo, permissões, filtros para
treinamento. Como foi citado anteriormente, as estruturas de mineração originam
propriedades dos modelos de mineração e, então, reproduzir as colunas de dados
utilizadas no modelo – caso seja aninhada a tabela, a coluna pode possuir a aplicação
de filtros separadamente.

É possível modificar o valor das propriedades de um modelo de mineração depois que


se cria um outro modelo, entretanto, se for realizada alguma modificação em algum
dos atributos já mencionados (nome, descrição etc.) é necessário que seja executada
novamente o processamento. E lembrando que mesmo com dados idênticos, o
reprocessamento de um modelo pode gerar diferentes resultados.

Tipos de modelos
Cada empresa que desenvolve serviços, ferramentas, aplicações tem uma maneira
diferente de abordar os fatos. Como exemplo, a seguir são apresentados dois tipos de
modelo que foram propostos pela IBM. Estes modelos podem ser usados para classificar
informações que o cliente pode ter interesse (GSI, 1998).

Modelo de verificação

Este modelo trabalha com o recebimento das conjecturas dos usuários, em sequência,
as testas para verificar se há válidos em relação aos dados. O ponto central deste modelo
está nas conjecturas formuladas pelos usuários, como também a execução das consultas
aos dados, assim podendo confirmar ou não essas conjecturas.

27
UNIDADE II │ Modelagem

Uma empresa que trabalha com um setor de marketing, serve bem como um exemplo
para essa situação. Se considerar que o orçamento atribuído ao setor é limitado para
uma campanha de lançamento de um produto inovador, um dos primeiros passos a
se analisar é a identificação de que parte do público deste novo produto irá chamar
a atenção e se interessaria em sua compra. O modelo de verificação faz com que o
usuário elabore sua conjectura e identifique os potenciais clientes compradores e o que
os caracterizam.

Maneiras possíveis de ajudar nessa busca por padrões podem ser vistas na análise de
dados antigos, referentes a compara anteriores, ou até mesmo a localização dos clientes
pode fazer a diferença nesse sentido. Informações como estas mostram características
que agrupam potenciais clientes e fazem com que o direcionamento do produto seja
feito para garantir um melhor retorno a empresa.

Como cada modelo tem suas vantagens e desvantagem, pontos que fixam melhor em
determinados problemas ou não, este modelo peca por não poder inserir nenhuma
nova informação durante o processo de procura aos clientes. Contudo, as consultas
continuarão retornando registros para afirmar ou não a conjectura. Assim como todo
processo cíclico, este modelo após receber seus resultados de saída, são direcionados
a uma nova série de proposições e outras conjecturas são atribuídas para melhorar a
busca – iterativamente. Algumas técnicas são utilizadas para auxiliar o processo por
completo, como a observação que suporta a exploração dos dados analisados, consultas
e análise multidimensional.

Modelo de descoberta

Diferentemente do modelo de verificação, o modelo de descoberta exalta o sistema


de descobrimento de informações (escondidas em dados) de maneira automática. O
interesse está na busca e identificação de padrões sucessivos, tendências e generalizações
em relação aos dados, neste caso, sem que haja interferência do usuário. Para tal, os
dados são investigados. Tempo, é uma questão relevante quando se trata de ferramentas
de mineração (descoberta) de dados, até por que quanto maior for o número de fatos
atribuídos a análise e menor for o tempo, mais lucrativos serão os resultados.

Exemplificando este tipo de modelo, pode-se imaginar um banco de dados de uma


empresa de cartão de crédito. São analisados um grande grupo de clientes, contudo,
os dados são buscados sem nenhuma conjectura (usada no modelo de verificação), o
propósito do modelo é simplesmente formar grupos de clientes de forma que sejam
postas características genéricas entre os mesmos.

28
Modelagem │ UNIDADE II

Colunas
Na composição do modelo de mineração, estão as colunas de dados. Estas colunas são
adquiridas de colunas determinadas na estrutura de mineração. Logo, é possível adotar
quais colunas da estrutura de mineração seria ideal para aplicar ao modelo escolhido,
assim como pode-se gerar duplicações (permitindo que estas sejam renomeadas e
alteradas) das colunas da estrutura de mineração. A identificação do que será aplicada
ao modelo também faz parte a classificação da necessidade do uso de previsões pelo
algoritmo, definição como vai ser o uso da coluna pelo modelo de mineração e atribuição
de informações, considerando a coluna como uma key.

Na criação de um modelo de mineração, é interessante revisar os dados meticulosamente


na estrutura de mineração, para colocar no modelo apenas as colunas ideais para a análise
em questão, ao invés de colocar cada coluna de dados acessível automaticamente. Evitar
a inclusão de um conjunto de colunas que contém os dados replicados, por exemplo,
bem como o uso de colunas que possuem uma grande parte de valores restritos.

Há um mecanismo de simplificar algumas ações, como o fato de não ser necessário a


remoção de uma coluna, caso ache que ela não será mais utilizada no modelo ou na
estrutura de mineração. Tal tarefa pode ser executada por um sinalizador que é definido
na própria coluna – portanto, ela especificará se a coluna será considerada ou ignorada
ao longo do processo de concepção. Já que a informação vai ficar contida, podendo ser
usada ou não, implica que se houve disposição do modelo para a estrutura de mineração
para a análise, é possível a qualquer momento, resgatar informações da coluna.

Já mencionamos que se pode avaliar os possíveis usos de algoritmos de acordo com


os modelos e os problemas relacionados. No caso das colunas, de acordo com o
algoritmo selecionado, a estrutura de mineração talvez não comporte algumas colunas
(incompatibilidade) com alguns tipos de modelos – se essa situação não for identificada
antes, o problema pode ser maior, porque essa discrepância de compatibilidade pode
gerar resultados ruins.

Exemplificando essa situação, em um problema clássico: se os dados possuírem atributos


numéricos contínuos, e o modelo de mineração escolhido precisar de valores discretos,
é certo a necessidade a conversão dos dados em valores discretos (assim perdendo
informação) ou deletar do modelo. Existem situações em que os algoritmos fazem a
conversão automaticamente – contudo, no final, os resultados ainda sim vão ter alguma
perda. Tentando solucionar este tipo de problema, é indicado elaborar duplicação das
colunas de dados para averiguar seu uso em mais de um modelo (literalmente testar a
compatibilidade).

29
UNIDADE II │ Modelagem

Lembrando que depois que o modelo for criado, qualquer modificação que seja feita
ao mesmo (incluir, deletar, alterar colunas ou até mesmo mudar o nome do modelo)
requisita que o processamento do modelo seja executado de novo.

Processamento
Como é possível visualizar um modelo de mineração de dados? É só tentar entendê-lo
como um objeto vazio, que só será preenchido após seu processamento. Na execução
do processamento de um modelo de mineração, os dados, se tiverem sido estabelecidos
pelo modelo, são percorridos por um filtro que foram armazenados em cache pela
estrutura de mineração, para então serem analisados pelo algoritmo. Este avaliação de
uma série de estatísticas que foram resumidas e que esclarecem a sua base de dados
utiliza padrões para completar o modelo e ainda identifica as regras nos dados.

Após o processamento, o modelo obtém o sumo das informações computadas por meio
de seus dados. Além das informações, o modelo depois de processado terá a estatística
relacionada, os padrões encontrados nas análises, as fórmulas de regressão e as regras.
Além de que é possível utilizar os visualizadores customizados para encontrar as
informações – inclusive pode-se aplicar consultas de mineração de dados para resgatar
essas informações e assim, poder utiliza-las para análise.

30
Capítulo 2
Modelagem preditiva

Na introdução desta apostila foi abordado o que é a análise preditiva. Relembrando, foi
mencionado que as técnicas de análise de dados visam o mesmo objetivo – que é de dar
suporte a análise de uma grande quantidade de dado. Entretanto, cada tipo de análise
tem um enfoque diferente, e a análise preditiva, especificamente, visa a observação dos
dados para saber o que irá acontecer no futuro.

O que é um modelo preditivo?

Segundo Guazzelli (2012), um modelo preditivo é

um modelo preditivo é simplesmente uma função matemática que é


capaz de aprender o mapeamento entre um conjunto de variáveis de
entrada de dados, geralmente agrupadas em um registro, e uma variável
de resposta ou de destino.

Usabilidade
Há alguns anos que a forma como a humanidade se comunica e armazena informações
vem se encaixando mais e mais com avanços tecnológicos. Logo, é extremamente real
o fato de que a quantidade de dados acumulados é absurdamente grande e continua
crescendo. Contida no contexto deste capítulo, a modelagem preditiva é uma das
técnicas atuais que ajudam no gerenciamento dos dados – que são utilizados para
computar todos esses dados e atingir o objetivo que é obter informações a partir dos
mesmos. Tais abordagens são pontuadas a seguir:

»» Redes Neurais.

»» Armazenamento em cluster.

»» Máquina de Vetores de Suporte (SVMs).

»» Regras de associação.

A maneira como esse processo ocorre é baseada no aprendizado de padrões escondidos


em um grande volume de dados armazenados. Após o termino do período de
aprendizagem, é possível afirmar que se tem um modelo preditivo. Como todo processo

31
UNIDADE II │ Modelagem

que precisa ser acompanhado em detalhes, é feita uma validação desse modelo, para
então o conhecimento adquirido ser difundido e aplicado em outras circunstâncias.

Objetivando o aprendizado do que vai acontecer no futuro – baseado no que


já foi aprendido no passado – a técnica de modelagem preditiva vem sendo
empregada a uma gama de problemas (risco de perda ou deserção de clientes,
risco de quebra de maquinário, fraudes em cartão de crédito, detecção de
doenças, previsão de mudanças). Com o crescente acesso ao Big Data e as
tecnologias de processamento a aplicação da técnica de modelagem preditiva
está sendo bem direcionada a diversos segmentos do mercado. A matemática,
tão temida por vários alunos, neste caso, está provando a sua eficiente aplicação
nas empresas para processamento de dados em poder.

Mundialmente, é vista o uso da análise preditiva por organizações, com o intuito


de obter valores de dados passados. Outro ponto importante para se discutir,
é como se é adquirido dados dos clientes das empresas? Classificadas de duas
maneiras, os dados podem ser estruturados – dados que são obtidos por meio
de informações dadas de forma “consciente” pelo cliente, como as compras on-
line – ou não estruturados – que são dados fornecidos pelos clientes de forma
não intencional, como em mídias sociais.

Aparentemente, esse tipo de obtenção de dados pode parecer um pouco


abusiva, dependendo de como essa maneira de aquisição dos dados é feita. Mas
sim, se tratando de mercado comercial, os modelos preditivos indicam produtos
e serviços baseados nos costumes dos seus usuários. Contudo, se aplicarmos
essa aquisição de dados de forma a justificar, por exemplo, casos vistos na área
de saúde, onde seus profissionais desenvolvem meios para prevenir doenças e
então salvar vidas.

Algumas outras características são vistas sendo aplicadas aos modelos de


predição como o risco existente no desenvolvimento de uma função de
regressão, ou até o cálculo da pontuação. Além destes, um modelo preditivo
pode igualmente usar em sua implementação, uma função de classificação que
é conhecida por agrupar os resultados de acordo com seus perfis.

Mais uma vez, é importante entender que mesmo com toda o enfoque dado ao modelo
de preditivo, é interessante sempre adequar a aplicação do modelo de acordo com o
problema real. E é possível concluir que as técnicas de modelagem utilizam os algoritmos
matemáticos para poder aprender – literalmente – como encontrar padrões que estão
escondidos em um grande volume de dados (GUAZZELLI, 2012).

32
Modelagem │ UNIDADE II

Fase inicial
O aparecimento dos modelos preditivos é visto quando os dados são aplicados a
treinamentos de uma técnica de modelagem preditiva. Talvez a figura 4 ajude a
representar melhor esse entendimento.

Figura 4. O que é um modelo?

Fonte: O autor (2017).

Resultante da integração dos dados e da matemática, o modelo preditivo é responsável


pelo aprendizado, no qual, este pode se tornar a concepção de uma função de
mapeamento entre uma variedade de campos de dados de entrada, como também em
uma única variável de resposta.

Os passos para se montar um modelo preditivo, inicialmente, dão-se por produzir a


base de dados que irá ser usada para compor a fase de treinamento. Então, uma série de
atributos de entrada é colocada a um registro (como as informações de um usuário, por
exemplo). O registro terá dados referentes ao usuário, de acordo com o que o sistema se
interessa (nome, idade, gênero, endereço, quantidade de itens comprados etc.).

Se tratando de uma aplicação computacional e matemática, podemos descrever o


registro de um usuário como um vetor multidimensional, uma vez que vários recursos
estão sendo usados para determinar o objeto do tipo de usuário. A combinação de todos
(até determinado ponto, até por que a quantidade de dados a serem armazenados é
ilimitada e pode ser bem grande dependendo do tamanho da necessidade) os registros
de usuários compõem uma base de dados.

A figura 5 apresenta um exemplo de dois atributos analisados em um registro de um


usuário, em um plano cartesiano bidimensional. No caso, os objetos dos usuários
analisados são idade por número de itens que foi comprado pelo mesmo – e cada um
dos objetos são representados por estrelas.

33
UNIDADE II │ Modelagem

Figura 5. Idade x Número de itens comprados.

Fonte: traduzido de Guazzelli (2012).

A aplicação da técnica de modelagem preditiva concede a concepção de modelos cada


vez mais exatos. A verdade contida nessa frase pode ser provada, se igualmente for
real a existência de dados em quantidades satisfatórias e que não haja nenhum tipo de
manipulação imprópria desses dados, assim certificando a sua qualidade.

A não probidade dos dados irão com certeza produzir modelos ilegítimos, o que tirará
toda e qualquer responsabilidade da qualidade da técnica de modelagem preditiva.

Técnicas gerais
Os modelos são desenvolvidos, recentemente, por uma grande variedade de técnicas
de modelagem preditiva. Desta forma, diversas técnicas são utilizadas por sistemas e
têm diferentes provedores, contudo existe um grupo de técnicas que são bem aplicadas
por numerosos ambientes de desenvolvimento de modelos, sendo eles, tanto para fins
comerciais quanto no uso de software livre.

SVMs

É sabido que é necessário a avaliação de cada problema separadamente, para aplicar


a melhor forma de o resolver. A classificação pode ser específica a uma única classe de
problemas, ou a problemas genéricos (qualquer tipo a solução se encaixa). No caso da
resolução de problemas genéricos, pode ser utilizada a SVMs.

Mas o que uma SVM faz? O intuito dela é mapear a construção de um espaço dimensional
maior de vetores de dados de entrada, no que diz respeito a um hiperplano que de forma
ideal afastaria os dados. Havendo um hiperplano central, dois outros hiperplanos são
criados paralelamente ao central.

34
Modelagem │ UNIDADE II

Como dito, a figura 6 tenta representar essa ideia de dois hiperplanos (ou um hiperplano
ideal), diferenciando dois tipos de categorias de dados – no caso desta imagem, tem-se
triângulos e quadrados). A separação proporcionada pelo hiperplano ideal maximiza a
distância que existe entre os dois hiperplanos paralelos, e que afirma que quanto maior
for a distância entre esses dois hiperplanos, maior será a precisão do modelo. Além da
noção dos hiperplanos paralelos, a figura também classifica os dados que estão nesses
hiperplanos paralelos como vetores de suporte.

Figura 6. Hiperplano ideal separando os dados e os vetores de suporte.

Fonte: traduzido de Guazzelli (2012).

Algumas técnicas genéricas como a SVM, as redes neurais e os modelos de regressão


são extremamente eficientes. A base que os define não necessariamente é igual –
matematicamente comparando – contudo, essas técnicas produzem resultados
compatíveis. Outra técnica de modelagem preditiva bem conhecida e utilizada é a de
árvores de decisão, a importância dessa técnica está atribuída a sua capacidade de
exprimir a lógica que foi usada para gerar as saídas.

Lembrando que mesmo com vários tipos de modelagem a serem aplicados a problemas,
o que se mais utiliza é a modelagem preditiva. O motivo responsável por essa escolha é
o fato de ser uma técnica fácil de compreender e manipular.

Armazenamento em cluster

De outro ponto de vista, há uma técnica de armazenamento em cluster que também


é bem conhecida e utilizada quando a variável de resposta não estiver disponível ou
se esta mesma não for importante. As técnicas de armazenamento em clusters, assim

35
UNIDADE II │ Modelagem

como a sua própria designação classifica, possibilita o armazenamento de dados de


entrada em cluster, de acordo com a sua afinidade. 

A figura 7 apresenta, a seguir, um exemplo, em que é representado dados de entrada


que foram separados em dois grupos. A imagem faz a distinção dos grupos pelo uso de
triângulos verdes e quadrados vermelhos.

Figura 7. Conjunto de dados de entrada em dois grupos (clusters).

Fonte: traduzido de Guazzelli (2012).

Regra de associação

No momento em que as ligações entre os itens de entrada forem relevantes, mas uma
variável de destino ou a sua medida de semelhança não for, é possível a aplicação da
técnica de regras de associação para conseguir encontrar as associações (como o nome
já propõe). Um modelo de exemplificar essa técnica é pela utilização na identificação de
pessoas que compram um produto ‘x’ sempre associado a um produto ‘y’.

Redes neurais

A técnica de redes neurais pode ser aplicada de diversas maneiras, contudo é sempre
ideal ter a noção da escolha da estrutura que a rede neural vai utilizar, assim resultando
bom desenvolvimento do modelo preditivo. A rede neural apresentada na figura 8 é
do tipo feedforward, no caso, estas são caracterizadas por uma camada de entrada
que contém nós e campos. Os recursos de entrada também serão considerados –
isso significa que, quando há uma função de regressão, irá haver somente um nó que
representará o campo esperado.

36
Modelagem │ UNIDADE II

Contudo, se tratando de camadas de entrada e saída, a modelagem que uma rede neural
pode ser atribuída, considerada um número qualquer de camadas e nós ocultos. Se for
exposto um baixo número de nós escondidos a uma rede neural, se caracterizará em
problema, porque pode ser que ela não consiga aprender a função de mapeamento entre
os campos de entrada e saída. A questão aqui é que quando há uma quantidade muito
grande de dados, considera-se que a rede neural está com excesso de entradas, fazendo
com que a carga de aprendizado seja grande na entrada, assim afetando a análise futura
dos dados.

A figura 8 mostra uma rede neural feedforward, que contém uma camada de entrada,
uma camada oculta, e uma camada de saída.

Figura 8. Rede neural feedforward.

Fonte: traduzido de Guazzelli (2012).

É necessário que a quantidade de clusters que as técnicas de armazenamento precisam


sejam disponibilizadas anteriormente a fase de treinamento. Quando se tem uma
quantidade de clusters inferior ao que seria considerado ideal para o problema, existe
a possibilidade de haver perdas relevantes em relação aos dados de entrada – isso
acontece porque o modelo acaba sendo forçado a colocar dados diversos (que fariam
partes de outros grupos se existissem) em um mesmo cluster.

Da mesma forma que, se houver uma quantidade muito pequena de clusters, o modelo
se prejudica, a existência de um modelo com uma grande quantidade de clusters
também não é ideal. O motivo é que havendo muitos clusters, a semelhança entre os
dados pode ser perdida. Uma maneira de enxergar esse excesso problemático pode ser
37
UNIDADE II │ Modelagem

vista na figura 7 que mostra um exemplo que tem dois grupos e que se fossem três
grupos o problema e não teria sido utilizado, ou obrigaria a referenciar outros dados
desnecessários.

É possível favorecer um modelo preditivo com a aplicação de várias técnicas de


modelagem sem que precise ser uma de cada vez. Esta composição – que pode ser vista
na figura 9 – é baseada no fato de que grande parte dos modelos preditivos podem se
unir e serem considerados um conjunto de modelos. Assim, a existência de diferentes
modelos e técnicas podem ser combinadas e aplicadas a saída do conjunto para que
tenha um rendimento nas questões mais importantes.

Ainda na figura 9, é possível observar que um conjunto de modelos é processado nas


pontuações dos modelos e, então, há a determinação de uma previsão final, que é dada
pela média ou por um mecanismo de votação.

Figura 9. Diagrama de um conjunto de modelos.

Fonte: traduzido de Guazzelli (2012).

O fato de que as técnicas preditivas ostentam vantagens e desvantagens de diferentes


formas. Os dados que compõem a base de entrada e os recursos que serão usados para
executar a fase de treinamento do modelo preditivo é que ditarão quão preciso este
modelo é. O passo a passo do desenvolvimento de um modelo é sustentado por um
enorme número de manipulação e análise dos dados.

Normalmente, há uma escolha de um conjunto com uma grande quantidade de dados


acessíveis, no qual, assim, é realizado um pré-processamento desses dados, para que
então eles sejam manipulados por uma técnica de modelagem preditiva. Logo, mais
uma vez – como já foi mencionado anteriormente, a melhor forma de se escolher um
bom modelo preditivo está pautada na correta utilização dos dados.

38
Modelagem │ UNIDADE II

É possível considerar que este com manuseio dos dados seja mais eficiente do que a
escolha da técnica que será usada para executar o treinamento do modelo preditivo. Este
fato não anula a importância do estudo de qual técnica preditiva seria melhor aplicada.
Sempre é uma questão de achar a combinação perfeita da técnica com o conjunto de
parâmetros de entrada para haver um perfeito (ou quase) processamento dos dados.

Tipos de aprendizado
Mais à frente, na Unidade V, serão abordados os conceitos de aprendizagem de
máquinas. Dentro desse contexto, estão as noções de aprendizado supervisionado e
aprendizado não supervisionado. Para não fugir ao conceito que está sendo mostrado
nessa unidade, será explicada superficialmente este conceito, mediante as técnicas
vistas nos tópicos anteriores.

Todas as técnicas apresentadas anteriormente são classificadas como técnicas que


utilizam o aprendizado supervisionado. Portanto, ela permite a criação de uma função
de mapeamento dado um conjunto de dados de entrada e uma variável de destino. É
bem comum, pelo que o nome sugere, dizer que pode ser comparada essa supervisão
com a de um professor que fiscaliza o quanto seus alunos estão aprendendo.

Diferentemente do aprendizado supervisionado, a abordagem não supervisionada


não necessita de um professor. Das técnicas vistas anteriormente, a técnica de
armazenamento em cluster é que se encaixa nessa classe.

Melhorando a compreensão destas técnicas, são apresentados exemplos da aplicação


de técnicas de modelagem preditiva.

»» Exemplo 1: imagine uma empresa que usa a técnica de predição para


fazer a previsão da perda ou deserção de clientes, seja qual for a razão
para tanto.

›› Inicialmente, é preciso associar um conjunto de dados de entrada que


pode simbolizar um cliente em questão que desistiu dessa empresa e
foi, em outro momento, para uma outra empresa concorrente.

›› Uma série de dados como idade, gênero, satisfação e quantidade de


reclamações, serão analisadas.

›› Os dados analisados formam um conjunto de campos de dados, nos


quais este cliente é representado.

39
UNIDADE II │ Modelagem

›› Então, a rede neural absorve as informações dos conjuntos de


dados para que seja aprendido, na fase de treinamento, as razoes da
desistência do cliente.

›› O treinamento da rede neural não precisa ser contabilizado, pois ela


pode ler esses dados várias vezes até que aprenda a relação entre os
dados e o porquê da desistência do cliente.

›› O processo de aprendizagem da rede neural tem que ser aplicado a


todos os clientes que tem o mesmo perfil deste cliente exemplificado,
ou não.

›› Neste problema há duas respostas dada a análise dos dados – o cliente


permaneceu na empresa ou foi para outra. E, para fazer a diferenciação
desses resultados, a rede neural produz uma representação abstrata.

»» Exemplo 2: na área da saúde, podemos exemplificar uma provedora


de seguros de saúde que quer analisar o potencial perigo de interação
medicamentosa entre seus usuários (IBM, 2017).

›› Inicialmente, é necessário analisar um grande conjunto de dados sobre


medicamentos e suas relações com outros medicamentos, a relação
medicamento com doenças e medicamentos com interações alérgicas.

›› Após é preciso que cada paciente que está no banco tenha suas
informações analisadas, com seus dados genéricos como nome e
idade, bem como os dados de quais alergias a remédios ele tem, quais
doenças tem, quais medicamentos ele ingere e com qual frequência.

›› O banco possui dados que vão servir de referência para ajudar no


tratamento e evitar perturbações.

»» Exemplo 3: pense agora em uma empresa que quer criar um modelo


preditivo que está apto a analisar e identificar se os seus clientes estão
satisfeitos com o atendimento – e para amenizar as reclamações, ela decide
oferecer uma porcentagem de desconto aos insatisfeitos (IMASTERS,
2012).

›› Inicialmente, é preciso observar os dados históricos desses clientes,


procurando recursos (dados) a fim de serem utilizados para desenvolver
um modelo que cumpra com o objetivo.

›› Nesses dados já armazenados pode-se extrair uma série de dados,

40
Modelagem │ UNIDADE II

com vários recursos que, se forem relacionados, mostram algumas


informações sobre as reclamações dos clientes.

›› Para este caso, serão armazenadas informações comuns dos clientes


como idade, sexo e cidade.

›› Além disso, será analisado o número de reclamações nos últimos seis


meses, o número de chamados de suporte abertos nas últimas quatro
semanas, assim como quantas vezes e quanto dinheiro o cliente gastou
na compra de mercadorias ou serviços.

›› A figura 10 apresenta as informações de dois dos clientes, juntamente


com o conjunto de dados que foram selecionados para serem analisados
dos dois.

Figura 10. Dados do cliente 1 e cliente 2.

Cliente 1:
»» 58 anos.
»» Homem.
»» Vive em São Paulo.
»» Sem reclamações nos últimos 6 meses.
»» Abriu 1 chamado de suporte nas últimas 24
semanas.
»» Comprou 15 itens nas últimas 4 semanas.
»» Gastou R$ 2.043,00 comprando

Cliente 2:
»» 29 anos.
»» Homem.
»» Vive em Recife.
»» 4 reclamações nos últimos 6 meses.
»» Abriu 2 chamado de suporte nas últimas 4 semanas.
»» Comprou 3 itens nas últimas 4 semanas.
»» Gastou R$ 512,00 comprando produtos.
»» Gastou R$ 35,00 em serviços.

Fonte: próprio autor (2017); Imasters (2012); Gazin (2014).

»» Então são mostrados esses dados, como entrada para o modelo preditivo
– apresentado na figura 11 – para que seja feito o treinamento – tanto
os dados que compõem a entrada, como também o resultado associado
(satisfação ou não).

41
UNIDADE II │ Modelagem

Figura 11. Treinamento do modelo preditivo.

Fonte: O autor (2017); Imasters, 2012; Gazin, 2014.

Após o modelo preditivo passar pela fase de treinamento com os dados dos clientes, o
modelo tem que ser validado para saber se o resultado é positivo e o modelo é funcional,
e se ele for bom, é interessante saber o quão exato são suas previsões. Se estiver tudo
certo com a execução do modelo, é possível aplica-lo a outros clientes para ter uma
noção do risco existente de haver reclamações, como pode ser visto na figura 12.

Figura 12. Modelo de risco.

Fonte: próprio autor (2017); Imasters (2012); Gazin (2014).

Se aplicarmos a situação descrita no Exemplo 1, na técnica de armazenamento em


clusters, seria possível a escolha de diversos grupos para poder indicar diferentes
clusters a clientes que permaneceram na empresa ou saíram. A técnica não seria a ideal,
mas poderia ser aplicada, porque o resultado poderia não está disponível ao longo do
treinamento do modelo.

A execução do modelo de rede neural largamente conhecida e aplicada é um algoritmo


de aprendizado chamado Backpropagation. Este algoritmo faz com que o erro (ou
a diferença entre o destino e a saída), retorne à rede neural. Esse processo permite
que esses dados sejam usados para regular o valor dos pesos. O fato de sempre voltar,
ciclicamente, os dados entram na rede neural para que eles sirvam de base para o
aprendizado sem perdas. Entretanto, as vezes esses ciclos fazem desta tarefa um
processo bem lento.

Como já foi dito, as unidades a seguir irão abordar melhor a questão do aprendizado de
máquina, como também os algoritmos que são utilizados nas suas utilizações.

42
Modelagem │ UNIDADE II

Caixa preta

Vimos uma série de técnicas de modelagem preditiva que foram brevemente explicadas.
As técnicas que tem suas lógicas de processamento explícitas podem ser classificadas,
diferentemente das técnicas identificadas como caixa preta. As técnicas de Redes
Neurais e SVMs são surpreendentemente tão eficientes quanto as técnicas de lógica
explicita, mas são consideradas caixa preta.

O exemplo utilizado para explicar como funciona uma rede neural mostra um potencial
extremamente preciso, podendo, assim, identificar a diferença entre os padrões de
clientes que continuarão na empresa, e os que desertarão. A questão é que, em um
modelo como este, se por exemplo, ele classificar um cliente como sendo um provável
candidato a desistir da empresa, essa informação é tudo o que é recebida – a razão que
pode ser considerada base para a decisão não será conhecida pelo analista.

Logo, a escolha da técnica utilizada para modelagem preditiva, passa mais uma vez por
uma provação que irá avaliar o que é necessário em determinado tipo de problema –
caso o problema precise que a lógica usada para saber o que levou a decisão do algoritmo
for necessária, talvez, o analista não opte pela rede neural. Um bom exemplo para um
problema que precisa de um retorno do porquê aquela decisão foi tomada, pode ser
visto nas aplicações de empresas que liberam empréstimos a clientes.

Quando se há a opção de explicar ou não, a escolha da técnica ainda sim, pode ficar
em aberto. Entretanto, se há a obrigação de prestar contas do resultado analisado, é
necessário observar qual a usabilidade de cada uma das técnicas de modelagem preditiva
disponível. Os modelos de regressão têm uma técnica que se adequa perfeitamente a
esse tipo de situação: Scorecards.

Essa abordagem é bem conhecida e usada por instituições financeiras a fim de avaliar
os riscos. Assim, todos os campos de dados contidos em um registro de entrada irão
possuir um código (que indica a razão) constituinte. Ao longo da fase de processamento,
os campos de dados são analisados, para poderem ser comparados a uma base que
determina se estes campos de dados estão dentro de uma pontuação de risco. Realizado
todo o processamento, é identificado os campos que contém a maior pontuação de risco
e então é exatamente esse campo que fica indicado como razão de saída.

Além da técnica de scorecards, há nesta situação, a abordagem de árvores de decisão.


Como não são caixa preta, ela é uma técnica simples e fácil de se compreender e explicar.
Tudo que envolve o processo de decisão (como o nome já sugere), em uma árvore de
decisão, pode ser configurado por um conjunto de condições que podem ser analisadas
por pessoas responsáveis. Significa que as árvores de decisão são compostas por um

43
UNIDADE II │ Modelagem

conjunto de regras. A avaliação positiva de um conjunto de condições é o que serve de


base para que um nó folha, em uma árvore de decisão, seja formado.

A seguir, há uma estrutura de árvore de decisão representada na figura 13. A


imagem apresenta a classificação de um aluno de acordo com sua média final em uma
disciplina. As possíveis decisões a serem tomadas são:

»» Aprovado.

»» Recuperação.

»» Reprovado.

Perceba que a representação da árvore de decisão pode ser vista como um conjunto de
regras. Continuando a análise do exemplo, poderia ser dito que a regra para que o alune
passe por média é que a nota dele seja maior que 7.

Figura 13. Árvore de decisão (no caso, binária).

Fonte: próprio autor.

Fora o fato de que a lógica contida (mesmo que não explícita) nas decisões processadas
por técnicas de modelagem de caixa preta não sejam facilmente explicadas, os seus
modelos de decisão não acompanham a regra. A representação dos modelos preditivos,
assim como o pré-processamento de seus dados, pode ser feita diretamente com a
Predictive Model Markup Language (PMML). Este é um padrão largamente usado por
empresas que fazem a análise preditiva de dados, com o objetivo de gerar e beneficiar
das soluções obtidas.

PMML é uma criação do Data Mining Group (DMG), um grupo de


empresas que trabalham juntas para defini-lo. Todas as principais
ferramentas estatísticas e de mineração de dados, comerciais e de

44
Modelagem │ UNIDADE II

software livre, suportam PMML. Dessa forma, é possível desenvolver um


modelo no planeta Predicta e enviar diretamente ao planeta Engira para
implementação instantânea. Não é necessária tradução, recodificação
ou código customizado. Com PMML, a transferência de uma solução
preditiva do desktop do cientista para o ambiente operacional torna-se
uma tarefa muito simples. (IMASTERSB, 2012).

O padrão visa unificar as técnicas preditivas descritas. No caso, um arquivo representado


por esse padrão permite que o modelo preditivo possa ser alterado para um ambiente
operacional – por exemplo, no qual será acionado. Portanto, modelos atuais e modelos
antigos modificados poderão ser implementados de maneira operacional. A abertura
que se tem com um padrão aberto é de que este modelo pode ser utilizado como
um meio – não apenas entre os sistemas que implementaram o modelo e o próprio
desenvolvimento do modelo, assim como em relação a todos os analistas responsáveis
pelo processo de análise em uma empresa.

Conclusão

A análise dos dados é cada dia mais útil na vida dos analistas de dados, pelo fato de
ter cada vez mais um aumento – exponencial – da quantidade de dados, além do que
as técnicas de análise de dados proporcionam uma usabilidade melhor desses dados.
Com o passar dos anos, mais dados são absorvidos e utilizados como base para o
desenvolvimento de possíveis novos modelos, para que possam fazer previsões acerca
de um futuro próximo. Nada mais certo do que conceituar os modelos preditivos como
um produto aplicado a um grande volume de dados, baseado em técnicas matemáticas.

Técnicas de modelagem preditiva como SVMs, redes neurais, árvores de decisão,


armazenamento em cluster, regras de associação, scorecards etc., extremamente usadas
em ciência dos dados para conseguir aprender uma série de padrões ocultos em bases de
dados. Além do trabalho em analisar uma grande quantidade de dados, as técnicas de
modelagem preditiva precisam aprender, generalizar e gerenciar como serão realizados
os processamentos – pois eles demandam grande poder computacional.

45
Processo
deDescoberta de Unidade iII
Dados (KDD)

A Unidade II irá abordar os conceitos relacionados ao processo KDD, que representa a


descoberta do conhecimento dos dados que foram analisados em suas bases de dados,
mas que para gerar resultados precisam de um pré-processamento dos dados para que
eles estejam ideais para produzir bons resultados.

Capítulo 1
Entendendo o processo

A descoberta de padrões e relações em torno de uma grande quantidade de informações


que estão contidas em bases de dados não é exatamente o intuito final da descoberta
do conhecimento em bases de dados. Já foi visto que isso é função das análises, a
descoberta do conhecimento em base de dados tem o objetivo de arrancar a essência
do conhecimento perceptível para que eles sejam utilizados no suporte a tomada de
decisões (FERREIRA, 2005; PETERMANN, 2006).

As bases de dados são os meios pelos quais (como o nome já indica) todos os tipos de
dados estão contidos para serem, eventualmente, utilizados. Esses dados podem ter
sido recolhidos em quaisquer situações e em momentos distintos. É factível afirmar que,
no começo, há um grande esforço para coletar e agrupar todas as informações contidas
nesses dados. Lembrando que é sempre interessante entender como é composto o
ambiente de dados para entender o processo aplicado ao negócio.

É sabido que os dados são armazenados nas bases de dados de maneira independentes,
logo, há uma grande diversidade, como também heterogeneidade desses dados. O
processamento dos dados – se fossem feitos com eles assim – demandariam um esforço
maior, então há uma fase que antecede ao processamento dos dados, para que esses
sejam “limpos”. O pré-processamento dos dados objetiva a construção de dados que
serão usados para obter bons resultados futuramente.

46
Processo deDescoberta de Dados (KDD) │ UNIDADE III

Conjuntamente, é possível afirmar que é necessário a realização de análises, para


verificar a existência de inconsistências e/ou problemas causado por divergências nos
dados, tal qual a identificação dos atributos que não estão dentro do esperado – e assim,
poderem ser tratados.

Na posse de dados tratados e prontos para serem aplicados, a fase de mineração desses
dados tem início. A mineração como o nome propõe, procura dentro da base de dados,
por padrões e/ou ligações que tenham algum nexo, e obviamente que sejam pertinentes
a resolução do problema. A análise, o entendimento e a utilização dos resultados fazem
com que se ganhem conhecimento para tomar decisões ideais.

De acordo com a generalização do problema e de como vai ser escolhido seu tratamento,
há diversas formas de aplicar a mineração de dados e as atividades de descoberta
de conhecimento a uma base (CIOS, 2000; PETERMANN, 2006). Alguns tipos de
mineração são citados a seguir:

»» Mineração de dados pura – a maneira que normalmente é mais


aplicada. No caso, o problema é formulado de forma bem ampla, seria
o mesmo que dizer ao banco de dados para ele simplesmente conseguir
encontrar seus melhores resultados – sem se especificar. O sistema
não tem restrições, contudo, não há denominação do que o analista
responsável pode receber como resposta, e quais tipos de descoberta a
mineração pode retornar. Padrões sempre são os resultados procurados
na mineração de dados, porém, a expectativa em descobrir novos padrões
pode levar a uma busca malsucedida e se deparar com a possibilidade de
gerar padrões sabidos anteriormente, então, não acrescentará nada ao
processo.

»» Mineração de dados direcionada – diferentemente do modelo puro,


a mineração direcionada é mais específica em suas necessidades. No caso,
a pergunta é mais direcionada a um grupo de dados, seguindo o exemplo
de busca no banco, nesta abordagem a demanda já seria para encontrar
os melhores resultados dentro do grupo A.

»» Teste de hipóteses e refinamento – esta é a abordagem mais


específica das três, pois a questão é bem formulada com algumas
hipóteses, há uma espera para que haja validação dos dados no sistema,
para então ser realizado o refinamento das descobertas. Se o não tiver
uma resposta positiva na validação, é necessário modificar as hipóteses e
construir outro conjunto de hipóteses. Seguindo o mesmo exemplo, seria
pedir ao banco que encontrasse os melhores resultados dentro do grupo
A, daqueles membros que tem mais posses.

47
UNIDADE III │ Processo deDescoberta de Dados (KDD)

No processo de mineração de dados, é essencial que se encontre conhecimento


no mundo de dados existente e, para conseguir obter isso, é necessário a
aplicação dos conjuntos de hipóteses. A administração dessas tarefas pode
ser feita por diversos métodos, contudo é factível afirmar que as deduções
provenientes das hipóteses e suas verificações são uma pequena parte contida
no processo KDD (KLÖSGEN ET al., 2002; PETERMANN, 2006).

A figura 14 apresenta todo o processo/ciclo de descoberta de conhecimento em bases


de dados. É notável que ele comede diversas fases desde a base de dados, como
seleção, pré-processamento, transformação, mineração e interpretação, até chegar ao
conhecimento.

Figura 14. Ciclo de descoberta do conhecimento em bases de dados.

Fonte: Fayyad et al. (1996); Cabena et al. (1997); Cios (2000); Klösgen et al. (2001).

Quadro 2. Ciclo completo KDD.

1 Definição e análise do problema


2 Entendimento e preparação dos dados
3 Configuração da busca por conhecimento
4 Busca de conhecimento
5 Refinamento das descobertas
6 Aplicação do conhecimento na resolução do problema
7 Depuração e avaliação dos resultados

Fonte: Klösgen et al. (2002).

O modelo que será proposto irá conter o ciclo completo de descoberta do conhecimento
em bases de dados, e nele estão as seguintes etapas listadas na tabela 2.

48
Processo deDescoberta de Dados (KDD) │ UNIDADE III

Definição e análise
Há uma grande gama de aplicações para o KDD, dentre eles um caso bem aplicado
são os da área de marketing. O motivo é que o marketing, de certa forma, tem uma
das principais aplicações do KDD, tendo sempre um enfoque nas predições e análise
de como seus clientes se comportam. Os negócios têm uma essência que trabalha com
perfis de clientes que estão em busca de determinados produtos (clientes x produtos),
análise de previsões para saber se os seus clientes estão satisfeitos – e continuarão a ser
clientes, e análise de avaliação das vendas (KLÖSGEN, 2002; PETERMANN, 2006).

Atualmente, com toda a tecnologia que cerca a humanidade é possível dizer que houve
uma transição no mercado, que antes era caracterizado por uma competição por
qualidade em seus produtos/serviços. A competição por informações, hoje, é muito
mais importante pois representa uma grande pressão a concorrência por existir um
mercado bem estruturado e maduro na sua oferta de produtos e serviços – no caso, é
primordial ter o conhecimento conciso e minucioso do comportamento dos clientes e
até conhecer os erros da concorrência erra. Sem, claro, esquecer da tarefa básica de ter
o conhecimento para as tomadas de decisão.

Exemplos

Uns exemplos bem comuns para a utilização do processo KDD é na área financeira, em
que há necessidade da predição de resposta referente a um portfólio de investimento, a
determinação do valor de crédito que um cliente pode aplicar, a identificação de fraudes
em cartões de crédito, e até mesmo lucros financeiros ilegais.

Detectar e compreender comportamento dinâmico também é uma aplicação


bem utilizada em várias áreas. É possível verificar em trabalhos científicos como
informações genéticas, análise de estrutura de dados matemáticos, análises de clima
etc. Como também em situações mais palpáveis, como na detecção de defeitos em redes
de telecomunicações, na observação de como usuários se relacionam na internet, na
mineração dos dados contidos em texto (e-mails, mensagens de Whatsapp, mensagens
no Facebook) e áudio (arquivos/chamadas) (KLÖSGEN, 2002; PETERMANN, 2006).

Análise e processamento dos dados


O KDD é uma abordagem que resulta na dissolução de vários problemas quando usado
o conhecimento corretamente, contudo, esse conhecimento tem que ser provido pelos
dados contidos no banco de dados. Desta maneira, é sempre interessante ter certeza

49
UNIDADE III │ Processo deDescoberta de Dados (KDD)

se os dados que estão disponíveis são interessantes na visão do problema, bem como
se esses dados disponíveis são abrangentes para serem utilizados em outras situações.

Logo, é sabido que todas as tabelas de dados e todos os atributos precisam determinar
a relevância de cada um dos seus atributos. Simplificando a explicação, é possível dizer
que quando há uma predição a um certo atributo, esta predição deve estar apontada
neste atributo. É interessante também informar a quantidade de atributos de predição
potenciais nos quais os valores já tinham sido detectados antes mesmo de ser executado
o processo de predição. É importante descobrir um jeito de acumular tabelas ou
diversas fontes de dados comente em um conjunto – as razões para essas escolhas estão
atreladas a superioridade das ferramentas de descoberta, das quais mostram apenas
no momento que são usadas em uma tabela (KLÖSGEN, 2002; PETERMANN, 2006).

É preciso que a quantidade de dados possui uma cobertura em relação a variedade de


resultados das variáveis mais importantes assegurem o modelo. Inúmeras generalizações
(e grupos de controle pertinentes) têm sempre que estar presente para poder contrastar
com dos dados. A necessidade de dados tratados ou não, estão presentes se for
identificada a real existência de quaisquer tratamentos em casos pontuais.

Dados importantes têm que ser coletados, visto que o problema já está esclarecido.
Muitas vezes, são os Data Warehouses (teve sua criação baseada em resolver várias
questões analíticas), ou bancos de dados operacionais que obtém o conjunto de
informações. Desta forma, uma base de dados relacional retira as informações, para
então guarda-las em algum formato que possibilite o acesso e entendimento pelos
algoritmos de mineração de dados.

Isso mostra que a maneira como os dados são formados e obtidos é somente uma parcela
dos problemas que as ferramentas de mineração de dados contemporâneas têm para
que seja realizado acessos diretos os bancos de dados (JOHN, 1997). Certas situações
induzem a criação de uma base de dados inteiramente nova, como sendo a melhor
decisão a ser tomada, porém, esta solução pode acarretar aumento nas despesas.

Pré-processamento

Autores como Ferreira (2005) e Klösgen (2002) afirmam que o pré-processamento dos
dados está relacionado a uma uma investigação acerca da veracidade das informações
contidas no banco, assim como a retificação de quaisquer falhas e a remoção ou alteração
de valores duplicados e/ou inválidos – no caso, todos os dados que não são relevantes,
redundantes ou corrompidos são deletados. Em si, a etapa de pré-processamento serve
para fazer com que o banco não tenha dados desnecessários e então sejam evitadas

50
Processo deDescoberta de Dados (KDD) │ UNIDADE III

consultas que só afetariam a execução do modelo e diminuiria a efetividade do


desempenho do sistema.

É considerado ainda, que esta etapa de pré-processamento tem o objetivo de identificar


e remover irregularidades existentes nos dados para, desta maneira, ter um crescimento
em sua qualidade. O processo é caracterizado por não pode ser aplicado sem que haja
a presença de uma pessoa especializada no contexto referente aos dados, até porque,
para que seja feita a identificação desses problemas, o responsável tem que conhecer
muito bem os assuntos e seus possíveis problemas.

Há também as descrições de outros autores que interpretaram o conceito da fase de pré-


processamento cada um à sua maneira. A seguir está a citação de FERREIRA (2005)
segundo Batista (2003):

O pré-processamento de dados em um processo de KDD é frequentemente


tido como sendo uma fase que envolve uma grande quantidade de
conhecimento de domínio. Normalmente, dados coletados diretamente
de bancos de dados são de má qualidade, ou seja, possuem informações
incorretas e imprecisas, além de uma grande quantidade de valores
desconhecidos. Embora muitos dos algoritmos utilizados na fase
de mineração de dados tenham sido projetados para manipular os
dados em tais situações, pode-se esperar que esses algoritmos gerem
resultados mais precisos caso a maioria dos problemas presentes nos
dados tenham sido removidas ou corrigidas.

Exemplo

Comumente, é observado em banco de dados a necessidade do pré-processamento pela


existência de valores fora do contexto – que precisam ser ajustados ou removidos – e
como esses dados são inconsistentes não deveriam estar presentes na base de dados,
como já foi mencionado.

Pode-se exemplificar a situação com a relação de dados de clientes de uma empresa de


cartão de crédito que tem atributos como nome, idade, tempo de contrato do cliente
com a empresa etc. E a representação de problemas encontrados em bancos de dados
é pontuada a seguir:

»» Clientes que tem nomes inconsistentes.

»» Quantidade de números do CPF menor ou maior que o padrão.

»» Clientes que possuem 160 anos de idade.

51
UNIDADE III │ Processo deDescoberta de Dados (KDD)

»» Clientes que tem menos de 1 ano de idade.

»» Ano com valores irreais.

»» Clientes que tem 400 anos de contrato com a empresa.

Figura 15. Sistema de dados de armazenamento.

Fonte: Oliveira (2012).

A figura 15 apresenta um exemplo de um sistema que recebe os dados que serão


armazenados em um banco de dados. Esta é uma imagem que mostra a forma correta
de se encontrar os dados. Diferentemente da figura 16, que apresenta um banco de
dados cheio de inconsistências.

52
Processo deDescoberta de Dados (KDD) │ UNIDADE III

Figura 16. Banco de dados com algumas instâncias.

Fonte: HTML.NET (2016).

Ainda referente a figura 16, pode-se perceber que que a base de dados é extremamente
falha. Há somente três registros com dados completamente corretos. Dependendo do
sistema, e de como o analista deseje que o sistema trabalhe, o registro por completo
pode ser apagado, como somente os dados que não estão em consistência.

A razão para esses valores falhos, na maior parte das vezes, é por erro de digitação,
contudo pode haver pessoas que colocam no questionário dados falsos realmente. Para
que os dados sejam consultados no futuro, o pré-processamento faz a limpeza para que
esses dados inconsistentes sejam preenchidos com valores possíveis (por exemplo, o
telefone do quarto registro da figura 16 será preenchido por zeros, como está no terceiro
registro). Ou, ao invés de modificar, simplesmente o registro que contém o valor é
deletado.

Lembrando que o objetivo desse processo é fazer com que não exista valores
inconsistentes e que consequentemente atrapalhem o modelo de mineração de dados a
interpretar sua busca – podendo direcionar ao erro as tomadas de decisões (FERREIRA,
2005).

Caso os dados a serem analisados sejam considerados interessantes ao modelo de


mineração, geralmente, é realizado – fase iterativa, que terá laços e passos sequenciais –
uma preparação que seleciona a limpeza dos dados, a seleção do modelo que será utilizado
e a redução dos dados. As etapas a serem executadas podem produzir informações em
relação ao domínio que precisam de organizar bem os dados (KLÖSGEN et al. 2002;
FERREIRA, 2005).

É possível, de certa forma, classificar a fase de pré-processamento dos dados como sendo
um processo semiautomático. Isso quer dizer que esta abordagem necessita do analista
de dados para ajudar a encontrar os problemas existentes nos dados e, então, usar os
53
UNIDADE III │ Processo deDescoberta de Dados (KDD)

melhores métodos para conseguir resolver a maior parte dos problemas (BATISTA,
2003; FERREIRA, 2005)

Existe também duas tarefas que realizam a execução dos métodos na fase de pré-
processamento:

»» Tarefas fortemente dependentes de conhecimento de domínio


– o conhecimento do domínio é essencial para que seja realmente
feito a utilização dessa técnica. As tarefas fortemente dependentes
de conhecimento de domínio podem ser executadas por métodos
automáticos, porém a sua aplicação está sujeita a um conhecimento
específico que foi anteriormente atribuído. As concessões de crédito são
exemplos de necessidades de averiguação da legitimidade dos dados,
porque se é informado o valor que foi emprestado, não é possível contar
valores negativos no cadastro. Dentro dessa situação, pode também
acontecer da empresa receber informações sobre o produto/serviço que
foi comprado com esse empréstimo, e assim guardar a informação de
quanto ele realmente vale. O objetivo de se aplicar essas verificações é
saber se os atributos dos dados são íntegros, de acordo com a utilização
de um conjunto de regras dependentes de domínio.

»» Tarefas fracamente dependentes de conhecimento de domínio


– obtidas pelos dados, as informações existentes e que podem resolver as
dificuldades dos problemas de pré-processamento, as tarefas fracamente
dependentes de conhecimento de domínio são executadas por métodos.
É verídico que essas tarefas ainda precisam de conhecimento de domínio,
porque é preciso escolher o método certo para resolver o problema.
Contudo, pode-se dizer que essas tarefas são executadas por métodos
quase que inteiramente automáticos. A sua função pode ser vista, como
exemplo, no tratamento de dados que não existem ou que são estranhos
e a detecção de dados com valores fora do comum.

A maneira de se dividir as tarefas contidas no pré-processamento de dados fortemente


dependentes de domínio será apresentada nos tópicos a seguir.

Identificação de inconsistências

Na existência de representação de legenda de dados de forma similar, há a possibilidade


de acontecer ambiguidades. Na verdade, não só para legendas similares, mas pode
ocorrer quando elas são divergentes. Outra maneira de representar um atributo,

54
Processo deDescoberta de Dados (KDD) │ UNIDADE III

pode ser vista, no momento em que ele se encarregar de valores diversos, porém, que
contenham informações iguais (BATISTA, 2003; FERREIRA, 2005)

Um exemplo simples pode ser descrito para mostrar a ocorrência de inconsistências.


Como pode ser visto no quadro 3, um banco que guarda dados de usuários, contém
informações repetidas de um mesmo usuário, mas com identificadores diferentes. No
momento em que o usuário procura por suas informações e não as encontra, ou não
lembra – qualquer que seja a explicação para várias entradas no banco com dados
diversos – a criação de outros dados compatíveis são feitos e sobrecarregam este banco
de dados.

Quadro 3. Banco com inconsistências.

Nome Telefone
Carlos Eduardo Lins (81)98723 – 5478
Kadu Lins (81)98723 – 5478
Carlos Lins (81)98723 – 5478
Caarlos Eduardo Lins (81)98723 – 5478

Fonte: próprio autor.

Identificação de poluição

A poluição de dados já é uma notação diferente de duplicação de dados. O entendimento


do conceito de poluição pode ser definido de várias maneiras, contudo, o que importa
é compreender que a poluição representa a distorção dos dados – isso significa que os
dados que foram poluídos não condizem com os dados iniciais.

É possível afirmar, segundo Batista (2003), que os usuários são responsáveis por tentar
aplicar ao sistema algum tipo de recolhimento dos dados que não fazem parte da essência
do sistema, assim esses dados podem ser poluídos (corrompidos). Um problema de
coleta de dados por parte de sistemas que querem as informações de estado civil de seus
usuários, pode-se ter, como um exemplo, um atributo “Estado Civil” que pede para ser
escrito (Solteiro ou Casado), contudo, o banco de dados pode receber preenchimentos
de maneira diferente formas.

Um campo como este, deveria aceitar somente os valores propostos, sendo que as
opções que os usuários podem querer informar são mais abrangentes do que o banco
reconhece. Como o sistema foi inicialmente arquitetado para receber só essas duas
opções, a ausência de compatibilidade com as respostas pode ser criativamente proposta
pelos usuários, muitas vezes dificultando a leitura dos dados.

55
UNIDADE III │ Processo deDescoberta de Dados (KDD)

Além de dados corretos, mas não validados pelos bancos de dados, podem haver
dados que não são preenchidos, dados que não estão completos e até os dados que
são colocados errados. Estes são grandes motivos para o aparecimento das poluições
e, infelizmente, contrário ao objetivo de um banco de dados – que é reter informações
úteis – os usuários acabam por prejudicar o processo (BATISTA, 2003; FERREIRA,
2005).

Quadro 4. Banco com informações poluídas.

Nome Estado Civil Telefone


José Ferreira Viúvo (81)98723 - 5478
Maria da Silva Casada 98723 - 5478
Carlos Lins Solteiro (81)98723 - 5478
Marcos Pereira - (81)923 - 5478

Fonte: próprio autor.

O quadro 4 apresenta um exemplo de cada um dos exemplos que podem ocorrer em um


banco de dados que tem informações poluídas.

Verificação de integridade

A verificação em relação a integridade dos dados de um banco, está associada a uma


análise de todo e qualquer relacionamento existente entre os atributos dele. É possível
exemplificar com uma questão bem comum que acontece nos relacionamentos dos
bancos com dois atributos essenciais, como o nome e a chave primária. Em um banco
de dados, cada nome de um usuário está diretamente e exclusivamente ligado a uma
única chave primária, contudo, é possível ter vários nomes iguais neste mesmo banco.

A análise dos atributos é realizada mediante uma escala de valores válidos. Uma das
verificações a serem feitas para identificar a integridade dos dados, é por meio da
identificação de casos extremos – que são situações em que há validade na combinação
dos valores – no caso, os atributos estão dentro de uma faixa de valores que são aceitos.
Dentre a classificação de domínio, pode-se dizer que ela é fracamente dependente
porque a probabilidade de acontecer as combinações dos valores pode ser calculada de
acordo com os dados existentes.

Identificação de atributos duplicados e


redundantes

A identificação de atributos que são redundantes é fácil, até porque só é preciso investigar
se existem dados idêntico, em sua plenitude, contidos em atributos diferentes. Um bom

56
Processo deDescoberta de Dados (KDD) │ UNIDADE III

exemplo dessa redundância pode ser evidenciado em uma tabela que tem atributos
como: preço total da compra, preço por unidade e unidades compradas. A redundância
existe porque esta tabela não precisaria da informação como atributo do preço total
da compra – pois se há o preço por unidade e a quantidade de unidades compradas,
precisaria só calcular o total (BATISTA 2003; FERREIRA, 2005). Os malefícios da
redundância estão essencialmente ligados ao aumento do tempo de processamento dos
dados.

Quadro 5. Redundância em uma tabela.

Preço por unidade Unidades compradas Preço total da compra


R$45,68 82 R$3690
R$3,35 13850 R$46.397,50
R$238,76 395 R$94.310,20
R$0,23 274950 R$63.238,50

Fonte: próprio autor.

O exemplo citado é apresentado no quadro anterior, em que é possível ver os atributos


“Preço total da compra”, sem que houvesse necessidade de sua existência.

Apresentando mais um exemplo, pode-se observar, no caso, uma aplicação de mineração


de dados que existe um principal, que é a predição dos padrões de dados. Assim, as
informações dos clientes estão no mesmo registro da base de dados. Como situação
ideal, e dificilmente implementada, as entradas nos cadastros de dados de maneira
errada ocorre frequentemente e pode acarretar a duplicação dos dados para um mesmo
registro (KLÖSGEN et al. 2002; FERREIRA, 2005).

Acontece que tem algumas abordagens que são afetadas por uma grande quantidade de
atributos, fazendo com que o desempenho desses métodos sofra com a redundância dos
dados. Há, ainda, a probabilidade de que essas abordagens sejam inutilizadas na fase
de pré-processamento dos dados, por consequência da coleta de atributos redundantes
que não conseguiram ser tratados. O objetivo de haver a seleção dos atributos é fazer o
possível para identificar e deletar a redundância nos atributos.

Valores padrão

Dentro da definição de sistemas que administram e gerenciam os bancos de dados, há


uma liberdade para que haja valores que são comuns – mais conhecidos como valores
defaults – como também a existência de padrão em alguns atributos. O problema que
se deriva desses valores padrões está na desordem que o analista de dados não está
sabendo lidar bem com essas informações.

57
UNIDADE III │ Processo deDescoberta de Dados (KDD)

Pode existir a criação de padrões de forte impacto, se tratando de valores default


que estão atrelados a outros atributos. Os valores defaults que estão interligados
representam as informações ausentes no sistema. Uma vez que se há certeza de que
aquele atributo deve receber, há uma troca da informação default pela nova informação.
Exemplificando, é possível afirmar que, em situações de acompanhamento como o de
uma grávida em seu pré-natal, tem como atributos o período de gravidez – que será
associado a valores de outros atributos (consegue-se informar o sexo do bebê de acordo
com a quantidade de semanas que está a gravidez). Uma análise preditiva baseada em
dados que contenham informações provenientes de valores defaults poderia resultar
em problemas (BATISTA 2003; FERREIRA, 2005).

Quadro 6. Quadro com valores Default.

Semana da gestação Sexo do bebê


1 Não se sabe
5 Não se sabe
8 Não se sabe
14 Menino

Fonte: próprio autor.

Este quadro mostra os dados do exemplo apresentado, nele existe a existência de valores
default, que serão atualizados consequentemente.

Na fase de pré-processamento – que está contida na abordagem fracamente dependente


do domínio de aplicação – tem a possibilidade de resolver seus problemas por meio de
métodos que sugam informações de seu conjunto de dados.

Tratamento de valores desconhecidos

O tratamento que precisa ser realizado em valores desconhecidos é um problema


bem cotidiano na fase de pré-processamento de dados. Às vezes, uma singela técnica
é utilizada como algo que pode ser modificada e seus valores desconhecidos – seja
pelo cálculo da média ou da moda dos atributos. No entanto, existem outros modos de
implementar e avaliar as demais abordagens de forma experimental, como o fato de se
poder aplicar a substituição dos valores desconhecidos, utilizando os valores que foram
achados nas predições quando executado os algoritmos de aprendizagem.

Se for escolhido fazer as análises preditivas dos valores desconhecidos, é importante


se ter atenção, pois muitas vezes, os resultados apresentados pelas ferramentas e pelos
algoritmos de predição não apresentam resultados totalmente reais em relação as bases
de dado com valores que não são conhecidos (WEISS et al. 1998; FERREIRA, 2005).

58
Processo deDescoberta de Dados (KDD) │ UNIDADE III

Uma outra maneira de resolver este problema, pode na verdade trazer a configuração de
novos problemas. Se for feita a simples substituição por somente uma variável global,
em todos os valores que não são conhecidos, acarretará provavelmente em resultados
malquistos. Se essa manipulação é realizada, o processo de predição é afetado.

Tratamento de conjuntos de dados com classes


desbalanceadas

Quando existe uma grande divergência nos exemplos que tem em cada classe de valores
de atributos qualitativos, há uma série de dados que contém classes desbalanceadas.
É bastante complicado criar algoritmos, pois estes sentem a presença de obstáculos
quando se trata de desenvolver um modelo que identifique com exatidão os exemplos de
classes inferiores. Há algumas maneiras de resolver estes tipos de problema; uma delas
é a busca de uma distribuição das classes que ofereça um considerável desempenho
em relação as classificações para as classes inferiores. (BATISTA, 2003; FERREIRA,
2005).

Um conjunto de dados com classes desbalanceadas, pode ser visto como um caso prático,
elaborado por Ferreira (2005), em que uma base de telefonia celular possui uma base
de dados podendo conter variáveis que representem a determinação da continuidade
de um cliente ou não em uma organização. Se for considerado que esta variável guarda
a informação, de que via de regra 98% representam os clientes que continuam na
organização e 2% apenas dos clientes se desligaram da organização.

O envolvimento de variáveis com essas características é evidenciado no instante em


que é criado o modelo e precisa ser atribuída uma distribuição equilibrada as variáveis
em relação as classes. Desta maneira, o modelo só vai visualizar uma das classes,
dificultando ou incapacitando a distinção da classe com uma baixa quantidade de
registros. Nas avaliações de padrões, isso implica dizer que o modelo que reconhece na
maioria das vezes as classes com maior quantidade de registros, ele sempre irá acertar
a mesma porcentagem que a classe principal acerta (neste caso, os 98%).

O processo conhecido como oversampling tenta minimizar o problema de distinção de


classes. O entendimento desse processo se dá pela criação de uma base de dados recente
que irá processar a modelagem, escolhendo aleatoriamente uma grande quantidade de
registros que estão contidos na classe rara, como também, uma pequena quantidade de
ocorrências da classe que tem um comportamento comum.

O objetivo fica estabelecido em tentar combinar a proporção relevante entre os tipos


de classes existentes. Outro exemplo pode ser visto quando se tem o uso de variáveis
binárias, que geralmente quer que a classe rara possua uma variação de 10% a 40% da

59
UNIDADE III │ Processo deDescoberta de Dados (KDD)

base para aplicar a modelagem. Ocorrências que estão em torno de 20% a 30% são bem
quistas para resultados melhores.

Nem sempre a utilização do processo de oversampling é aplicada de qualquer forma –


sem delimitações. Pelo fato de se ter comente uma menor quantidade de interpretações
da classe rara na base de dados, a criação de uma base de dados para análise de tamanho
não determinado não é simples de se obter – até quando se há um Big Data.

Se existem uma base de dados, por exemplo, com uma quantidade de 100.000 registros,
porém, apenas 1% pertence a uma classe qualquer a ser analisada. A implicação, é que
somente 1.000 amostras estão acessíveis para observação dos dados. Então, pode-se
concluir que não é possível se modelar uma base que contenha uma grande quantidade
de dados, mas que tenha uma frequência superior a 4% em relação à classe rara
(FERREIRA, 2005).

Seleção de atributos

Além de todos os problemas já mencionados que são encontrados no KDD, há a seleção


de atributos, que equivale a descobrir um subconjunto de atributos. Os algoritmos que
implementam aprendizagem de máquina, junto com a mineração de dados, vão focar
nesse subconjunto. As amostras que foram retiradas dessas análises são combinadas
com o conhecimento obtido pelos algoritmos, assim aparentando ser uma boa opção a
ser seguida (BARANAUSKAS, 1998; FERREIRA, 2005).

Existem alguns motivos que podem ser apresentados para que seja explicado a
utilização da aplicação de métodos de seleção de atributos. A seguir são citados três
desses motivos:

»» Um grande número de atributos em um algoritmo de mineração de dados


nem sempre representa bom funcionamento, então, pode-se afirmar
que a seleção de atributos faz com que haja um melhor desempenho na
execução do modelo.

»» A execução e a compreensão geradas pelos algoritmos de mineração de


dados são melhor entendíveis quando se há uma pequena quantidade de
atributos.

»» É possível possuir métodos de escolha de atributos com um baixo custo


de aplicação em alguns domínios que têm um elevado custo para que seja
realizada a coleta dos dados.

60
Processo deDescoberta de Dados (KDD) │ UNIDADE III

Normalmente, é utilizada uma dimensão limitada para se aplicar a algoritmos de


escolha de atributos, nos quais se busca sempre as possíveis combinações, escolhendo
de forma elaborada, os algoritmos que fazem a melhoria das taxas de classificação dos
dados analisados. Na aprendizagem de máquina, é via de regra utilizado conjuntos de
dados que possuam um número reduzido de exemplos, e com a restrição da quantidade
de números de atributos.

[...] mesmo considerando o fato que os algoritmos de AM possam


ser utilizados com muitos atributos, sabe-se que o desempenho dos
indutores e redes neurais artificiais é prejudicado quando existem muitos
atributos irrelevantes. Além disso, estatisticamente, exemplos com
muitos atributos e ruídos fornecem pouca informação. (DIETTERICH,
1997; BARANAUSKA, 1988).

Há técnicas diversas que são pontuadas para ser utilizada na escolha do subconjunto de
atributos (BARANAUSKAS, 1998; FERREIRA, 2005). Essa fase de pré-processamento
que propôs a abordagem pode ser classificada em três classes:

»» Embutida – representa a escolha dos atributos, que corresponde a parte


do processo de elaboração do modelo.

»» Filtro – representa a aplicação de um método de escolha de atributos –


que normalmente é feita em conjunto com a análise das características do
conjunto de exemplos (e que pode representar as escolhas ou exclusão de
alguns atributos) – no momento que antecede utilização do algoritmo de
mineração de dados ou aprendizado de máquina.

»» Wrappers – representa a escolha de um subconjunto de atributos e


a medição em relação a precisão do classificador que está avaliando o
subconjunto de atributos. Assim, é feita uma procura por um subconjunto
de dados que produza um classificador mais otimizado (que gere menor
quantidade de erros). Então, a procura avalia cada subconjunto que
está contido no banco, para que seja determinado o critério de parada,
juntamente com o classificador alcance satisfação.

Construção de atributos

No momento em que os atributos são classificados como fracamente ou indiretamente


relevantes, condicionalmente relevantes estes mesmos são estipulados como não
adequados para a aplicação da tarefa de aprendizado. Isso pode acontecer também

61
UNIDADE III │ Processo deDescoberta de Dados (KDD)

se esses atributos forem medidos de maneira descabida (BARANAUSKAS, 1998;


FERREIRA, 2005).

Quando existe uma classificação que indica inadequação do conjunto de dados, o uso
dos atributos, da mesma forma do uso dos algoritmos de aprendizado que são aplicados
a mineração de dados, de certa forma, precisarão de desenvolver classificadores com
dificuldade de ter precisões e muitas vezes extremamente complexos.

Os atributos podem ser classificados como individualmente inadequados quando são


fracamente, indiretamente ou condicionalmente relevantes. Contudo, esses atributos
têm a capacidade de se corresponder, de certa forma, fazendo com que sejam criados
novos atributos que têm um alto potencial de representar a explicação dos conceitos.
Todo esse processo de elaboração de novos atributos pode ser tido como um processo
de indução construtiva (BLOEDORN et al. 1998; FERREIRA, 2005).

A composição da construção de um atributo tem como base atributos iniciais que ainda
não tinham sido processados. A intenção nessa etapa é que os atributos tenham um
maior destaque para a explicação de um conceito. Amplamente evidenciado, é possível
dizer que o processo de indução construtiva tem a capacidade de ser separado em duas
técnicas (automática e orientada pelo usuário).

A abordagem automática representa um processo de construção de atributos que é


orientada automaticamente pelo próprio método que aplica a construção. Na maior
parte das vezes, os atributos construídos passam por uma fase de verificação com
relação aos seus dados – isso significa que esses dados serão avaliados para assim, serem
considerados como descartados ou adicionados ao conjunto de dados. Diferentemente
da abordagem de indução construtiva automática, a orientada pelo usuário usa o que
ele ou o especialista aprendeu com as informações no domínio, para então orientar a
construção dos atributos (BATISTA, 2003; FERREIRA, 2005).

É possível verificar a aplicação dessas técnicas para a definição do conjunto de dados


final. Um bom exemplo para ilustrar essa abordagem pode ser visualizado num conjunto
de dados que possua uma variável que calcula um dado, de acordo com as informações
já existentes nos dados que dão base para que se obtenha essa informação.

62
Capítulo 2
Transformação dos dados

As transformações dos dados têm a intenção de mudar a forma como os dados são
pelo fato de que é preciso conter qualquer tipo de problemas que possam aparecer nos
algoritmos que são responsáveis por obter os padrões nos dados. A maneira como será
feita, ou decidida para indicar o tipo de transformação que irá acontecer nesses dados,
é determinada de acordo com as necessidades dos algoritmos que vão ser usados para
a mineração de dados.

Como todo bom problema de computação, nada irá fugir da aplicação matemática para
chegar a essa transformação nos dados. Será aplicado uma fórmula ao conteúdo das
variáveis, fazendo com que o modo de obtenção desses dados seja apropriado e constar
corretamente no modelo para, então, ter o maior número de informações possíveis e
satisfazer o que estava previsto no modelo. Essa estratégia também dá um bom suporte
a prevenção de erros (FERREIRA, 2005).

Fora essas aplicações, o processo tem como objetivo identificar e gerenciar as restrições,
por meio dos algoritmos, que não podem ser evitados na mineração de dados. Pode
haver uma restrição da maneira como as ferramentas são utilizadas, restringindo sua
aplicação somente a conjuntos de dados com atributos não numéricos. Da mesma forma
que há uma outra gama de algoritmos que não conseguem analisar para a descoberta de
padrões, essas informações nominais, mas sim variáveis numéricas.

Normalização
A primeira técnica que será explicada é a transformação de normalização, onde os
valores dos atributos têm intervalos originais modificados para um intervalo específico.

Quadro 7.. Exemplos de normalizações.

Atributo Atributo
Original Normalizado
( -10 ,10 ) (0,1)
( 1 , 100 ) ( -1 , 1 )
( -20 , 30 ) ( 1 , 50 )

Fonte: próprio autor.

63
UNIDADE III │ Processo deDescoberta de Dados (KDD)

º quadro anterior mostra exemplos de como pode ser visualizada as normalizações.


As transformações podem ser consideradas bem interessantes para serem aplicadas
aos métodos que fazem o cálculo das distâncias entre esses atributos. Na Unidade IV,
abordaremos melhor os algoritmos, mas pode-se dizer que técnicas como o K-vizinhos
mais próximos, geralmente, atribuem um interesse maior em relação aos os atributos
que contém um grande intervalo de valores (BATISTA, 2003; FERREIRA, 2005).

A abordagem em questão também é conhecida como padronização. O método de


padronizar os dados tem o objetivo de deixar os dados de um jeito comum para que o
algoritmo não tenha dificuldade em identificar a variabilidade dos atributos contidos
em uma base de dados. Se por exemplo, um banco tem valores diversos, mas o
algoritmo que irá rastrear os dados só aceitas valores em uma variação de um ponto
(exemplo visto no quadro 7), esses dados têm que ser transformados para que não haja
problemas. A maioria dos casos que são aplicados o método de normalização são para
dados extremamente heterogêneos ou variáveis diversas unidades (FERREIRA, 2005).

Tabela 7. Normalização de dados heterogêneos.

Atributo Atributo
Original Normalizado
( -10 ,10 ) (0,1)
( 1 , 100 ) ( 0, 1 )
( -20 , 30 ) (0,1)

Fonte: próprio autor.

Alguns registros já são bem comuns na hora de optar pelo método que irá treinar os
valores dos atributos. Quando estes estão em uma escala pequena, é sabido que são
bem treinados por redes neurais (WEISS et al. 1998; FERREIRA, 2005). Porém, nem
todos os tipos de aplicações são suportados por normalização, os métodos que induzem
representações simbólicas não têm uma boa representatividade. Bons exemplos disso
são as árvores de decisão e regras de decisão, desta forma, o modelo que provém desses
algoritmos tem uma baixa compreensão em relação a normalização.

A figura a seguir mostra a representação de duas formas de normalização bem comuns.


A normalização pelo desvio padrão e a normalização pela faixa de variação. O resultado
representado pela letra “y” nas duas equações representa o valor normalizado, o “x”
representa o valor atual, “μ” representa a média, “σ” representa o desvio padrão, “max”
representa o valor de máximo e “min” de mínimo.

64
Processo deDescoberta de Dados (KDD) │ UNIDADE III

Figura 17. Formas de normalização.

Fonte: Ferreira (2005).

Discretização de atributos quantitativos


Acontece em várias situações, a limitação de algoritmos que executam apenas atributos
qualitativos. No entanto, existe uma grande quantidade de conjuntos de dados que
têm atributos quantitativos. Mais uma vez é apresentada um método de transformação
de dados, pois os algoritmos vão precisar garantir um intervalo de valores para ter a
conversão de atributos quantitativo para atributos qualitativos.

Existem vários métodos que executam essa técnica de transformação de dados. Esses
algoritmos de discretização de atributos são largamente utilizados em trabalhos
científicos. Outras aplicações e descrições dos métodos mais utilizados serão vistos
na Unidade IV que trata de apresentar os algoritmos de mineração de dados em geral
(BATISTA, 2003; FERREIRA, 2005).

Transformação de atributos qualitativos em


quantitativos

Como foi mencionado, nem sempre os algoritmos conseguem lidar com atributos
qualitativos, assim, existe a necessidade de se transformar os atributos qualitativos
em atributos quantitativos. Também foi dito que há uma série de métodos para fazer
com que essa mudança ocorra de acordo com as características e quaisquer empecilhos
ligados aos algoritmos.

Um bom exemplo para mostrar as transformações de dados pode ser visto de duas
maneiras. A primeira seria de uma série de atributos qualitativos que não estão
ligados a nenhuma sequência, como pode ser observado na figura 18, em que se tem
três objetos representando cores diferentes: verde, amarelo e vermelho. Esses objetos

65
UNIDADE III │ Processo deDescoberta de Dados (KDD)

foram interligados a valores numéricos de forma podem ser mapeados aleatória e,


consequentemente, atribui uma relação fraca.

Figura 18. Atributos qualitativos transformados em quantitativos aleatoriamente.

Fonte: próprio autor.

A outra maneira de exemplificar, praticamente, o mesmo exemplo, é na aplicação


de um mapeamento de atributos qualitativos que podem ser associados a valores de
atributos quantitativos intuitivamente. Este exemplo é apresentado na figura 19, em
que há objetos de formas diferentes, mas que também tem tamanhos variados, assim
foi atribuído a transformação seguindo a lógica de valores e tamanhos (BATISTA, 2003;
FERREIRA, 2005).

Figura 19. Atributos qualitativos transformados em quantitativos seguindo uma lógica baseada no tamanho dos

objetos.

Fonte: próprio autor.

66
Processo deDescoberta de Dados (KDD) │ UNIDADE III

Atributos de tipos de dados complexos


Tipos de dados complexos, como o nome já propõe, são complicados de serem aplicados
a maioria dos algoritmos que fazem a análise de padrões. Isso pode ser visto em um
exemplo clássico na computação, que acontece quando se tem atributos do tipo data
e hora. Esses atributos, na maior parte dos casos, não conseguem ser avaliados por
muitos dos algoritmos que usam a mineração de dados. Não há muito o que se pensar
nestes casos, de forma que é preciso fazer a conversão desses atributos, data e hora,
para qualquer outro tipo de dado – assim o algoritmo pode tratar e analisar os dados.

É sabido que a melhor maneira de se aplicar a transformação desses dados complexos


é com o uso de um tipo de atributo bem simples e largamente utilizado, o tipo inteiro.
Essa conversão é realizada a partir do cálculo da diferença entre a unidade em questão
(dias, meses, anos etc.) e os valores da data desejada ou afixada. Um exemplo clássico é
o cálculo da idade de uma pessoa, baseada na data de nascimento do mesmo (BATISTA,
2003; FERREIRA, 2005).

Redução de dados
Já foi citado no início desta apostila as vantagens de se ter e se utilizar grandes conjuntos
de dados (Big Data). Para treinar dados e executar testes, essa grande quantidade de
dados é em teoria algo extraordinário. Entretanto, na prática um grande conjunto de
dados pode ser complicado de administrar e os dados se tornam excessivos. O problema
está em quanto as ferramentas de predição que recebem esses dados conseguem lidar
e, mais importante, quanto tempo vai ser preciso para processar e gerar os resultados.
Todos os problemas ligados ao excesso de capacidade e tempo se transformarão em
custos adicionais as empresas (WEISS et al., 1998; FERREIRA, 2005).

O exemplo proposto por Ferreira (2005) considera a metodologia de predição em


relação a base de dados de clientes da Brasil Telecom do Estado do Rio Grande do Sul.
No caso, o conjunto de dados que a empresa detém não está de acordo com o tamanho
ideal para o modelo que foi adotado e é utilizado. O motivo dessa incompatibilidade se
dá por causa do número de registros existentes que dificulta a análise dos resultados.
Se os dados fossem analisados de acordo com a base de dados pura, o tempo de
processamento e o custo seriam elevados.

Os dados são validados para que se ajustem e se tornem viáveis para a aplicação das
técnicas – na fase de pré-processamento – obter um conjunto de dados ideal. Desta
forma, o processo pode seguir com todas as suas fases para que se possua os resultados

67
UNIDADE III │ Processo deDescoberta de Dados (KDD)

e, assim, estimar as previsões, ter informações para as tomadas de decisões e ainda


calcular o custo real de processamento desta base de dados.

Figura 20. Modelo de redução de dados.

Métodos de
redução
de dados Conjunto de
treino final

Conjunto Conjunto de
Conjunto de de treino Redução de dados
dados inicial (C1) valores e reduzido (C2)
inicial (C1) funcionalidades

Conjunto
de teste final

Conjunto de
testes inicial

Fonte: modificado de Weiss et al. (1998).

Um exemplo de modelo de redução de dados pode ser visto na figura 20, em que cada
passo representa uma parcela para se atingir o objetivo.

A imagem apresenta um conjunto de dados original C1 no qual os dados sofrem uma


diminuição no número de atributos, para então ser criado um conjunto de dados atual
C2. Obviamente, se o modelo receber um conjunto de dados que tenha uma quantidade
de dados aceitável e compatível com o seu processamento, não será necessário que o
conjunto de dados passe por esta fase.

Após a fase de redução do conjunto de dados C1 em C2, os seus dados são separados em
dois grupos, que são para testes e treinamento desses dados. O primeiro, que seriam
os casos de testes, tem a função de avaliar os resultados que serão disponibilizados. Na
sequência, na mineração de dados preditiva, as fases serão iterativas. Se não houver
uma boa predição do desempenho, as estimativas poderão ser falhas (WEISS et al.,
1998; FERREIRA, 2005).

Quando é necessário que algo seja simplificado, como um conjunto de dados, tem-se a
certeza que a melhor forma é pela redução do seu tamanho. Sabendo da importância
de se reduzir uma grande quantidade de dados para agilizar processamento e reduzir
gastos as vezes influencia negativamente – se mal executada – na qualidade do conjunto
de dados resultante.

68
Processo deDescoberta de Dados (KDD) │ UNIDADE III

Uma abordagem de redução de dados com base em amostragem (ou


Sampling) é proposta por Klösgen (2002). Conforme o autor, o uso
de rotinas e métodos de amostragem, características de populações
podem ser estimadas de uma forma eficiente, com mínima distorção.
Por exemplo, uma amostra aleatória simples de 1500 registros de uma
população de milhões de pessoas pode estimar o percentual de opinião
sobre determinado tema, com margem de erro de 3%. (FERREIRA,
2005).

A descrição dos tipos mais utilizados para a técnica de amostragem foi considerada por
Klösgen (2002) e elas estão pontuadas a seguir:

»» Amostragem simples aleatória (abordagem direta) – dado um


conjunto de dados, qualquer, uma das amostras, dentro do tamanho
existente, tem oportunidades semelhantes de serem escolhidas. Por
mais improvável que seja, pode-se conseguir um conjunto de dados bem
exótico, no caso, é verdade afirmar que um conjunto de dados grande tem
uma maior quantidade de amostras e, então, o conjunto pode ter mais
representatividade.

»» Amostragem em cluster – como o nome já propõe, esta abordagem é


bem utilizada quando os elementos de um conjunto de dados representam
um cluster.

»» Amostragem sistêmica – a técnica é representada por uma


determinação aleatória de um membro da população do conjunto de
dados, desde que este valor esteja entre 1 e k. Todos os membros do
conjunto são adicionados a amostra. O fato de que essa abordagem
tem um lado meio determinístico, as suas amostras sistêmicas podem
representar uma população que não é bem escolhida. Por este motivo, é
interessante ter bastante atenção quando for utiliza-la. A aplicação dela
é bem vista quando há indivíduos contidos em uma população que são
representados de forma numerada.

»» Amostragem em duas fases – essa abordagem é usada quando o


objetivo é organizar amostras que são baseadas em valores de uma série
de variáveis, porém, não é possível afirmar a variação ou distribuição que
representam essas variáveis na sua população. Uma maneira de enxergar
melhor esta técnica, é vista no exemplo, onde há uma base de dados que
supostamente, determina a relação existente e que pode ser variável
em relação a função da faixa etária. Então, é realizada uma pesquisa

69
UNIDADE III │ Processo deDescoberta de Dados (KDD)

com o objetivo de procurar qual faixa etária, dentro desse grupo, que é
representa melhor a base de dados e, consequentemente, pode ajudar
no processo que toma as decisões para a aplicação de uma amostragem
aleatória ou justaposta, mas que sejam simples.

Conclusão
O KDD, como o nome já propõe, quer realizar a descoberta do conhecimento de dados.
Para tanto, foi visto que existem várias maneiras (técnicas, métodos, ferramentas etc.)
de se executar a obtenção deste conhecimento dentro das bases de dados para alcançar
o objetivo que são gerar bons resultados baseados em bons dados.

As técnicas apresentadas para utilização nas transformações de dados apresentaram


a mais pura realidade quando, utopicamente, é dito que o ideal é se ter uma base de
dados com uma enorme quantidade de dados – em que se imagina que por ter muitos
dados, não tem como haver falhas nas análises – pode em muitos momentos atrapalhar
o processor por necessidade de redução ou transformação desses dados.

70
Algoritmos de Unidade iV
Data Mining

A Unidade IV irá apresentar as noções e conceitos de alguns algoritmos de mineração


de dados que são utilizados na aplicação das técnicas para reconhecimento de padrões.
Os capítulos dessa unidade objetiva indicar a estrutura desses algoritmos para mostrar
como é possível identificar a melhor abordagem para ser escolhida de acordo com o tipo
de problema existente.

Capítulo 1
Técnicas para encontrar padrões

Este capítulo vai apresentar algumas funcionalidades que compõe a mineração de dados
e que são usadas para mostrar a melhor maneira de detalhar quais tipos de padrões
precisam ser achados dentro de um modelo de descoberta do conhecimento. De forma
abrangente, as atividades que passarão pelo processo de mineração de dados podem
ser divididas em duas etapas (que vão conter outras sub etapas), sendo descritiva ou
preditiva.

Resumidamente, pode ser dito que as atividades descritivas de mineração de


dados determinam uma noção global dos dados contidos em um modelo,
enquanto as atividades preditivas fazem uma análise para deduzir os dados,
com o objetivo de alinhar os passos da predição.

Nem sempre é fácil de se saber quais os tipos de padrões, contidos nos conjuntos de
dados, que representam o quão importante aquele reconhecimento tem. Não só a
determinação do tipo de padrão é essencial, em alguns casos o modelo precisa que
haja uma junção de alguns desses tipos para uma melhor execução. Essa é a forma de
afirmar a necessidade da definição do modelo de mineração ideal ao problema, pois ele
estará apto a procurar diversos tipos de padrões de acordo com o modelo.

71
UNIDADE IV │ Algoritmos de Data Mining

É possível que os modelos de mineração de dados consigam encontrar padrões em


vários níveis de abstração. O modelo também tem que conceber as especificações que
o analista irá apontar como regra, assim tendo um melhor resultado na procura por
padrões. Há uma medida de confiabilidade do modelo que é peculiar ao processo de
descoberta, no qual existe uma associação pelo modelo dos padrões encontrados (HAN,
2006).

As técnicas que estão contidas nas funcionalidades, e que ainda serão explicadas nessa
unidade, podem ser utilizadas para detalhar os tipos de padrões que vão ser achados
nas atividades da mineração de dados. Vale ressaltar que essas abordagens que visam
a descoberta de padrões têm a condição de serem aplicadas unicamente ou em grupo.

Conceitos
A notação de classes ou conceitos está associada aos dados existentes em um banco de
dados. Bem conhecidos, esses termos servem para fazer com que haja uma simplificação,
com clareza e precisão dos dados. Uma maneira bem simples de explicar essas definições
é com um exemplo de uma loja que vende computadores – imagine que as classes são
os itens representados pelos computadores que estão à venda, e os conceitos são os
tipos de clientes que podem que podem compra-los.

»» Caracterização de dados – quando há a simplificação dos atributos


de uma classe que vai analisar os dados de um banco. A análise das
propriedades de produtos de software, por exemplo, que tenham vendas
que aumentaram 10% no último ano.

»» Discriminação de dados – a diferenciação feita de acordo com os


atributos gerais dos objetos da classe em questão sendo comparados com
os atributos gerais de objetos de um conjunto ou uma única classe. A
análise comparativa dos atributos gerais de produtos de software que
tiveram vendas acima de 10%, por exemplo, com produtos cujas vendas
caíram 30 % durante o mesmo período dos anos anteriores.

Sintetizando, é possível dizer que a sumarização – ou simplificação – elabora descrições


bem simples e concisas das características de um subconjunto de dados. Essa
simplificação faz com que haja uma melhor observação das estruturas dos dados dos
conjuntos. Como existem vários métodos, alguns desenvolvem a derivação de regras
gerais, as técnicas para poder visualizar as variáveis múltiplas, bem como a descoberta
de associações que podem estar ligadas as variáveis (FAYYAD et al. 1996).

72
Algoritmos de Data Mining │ UNIDADE IV

Diferentemente da sumarização, as descrições discriminativas aplicam técnicas


comparativas com o objetivo de identificar as divergências entre as classes alvo e as classes
contrastantes. Métodos analisam o quão são importantes a dimensão e a generalização
síncrona, quando se precisa criar classes que têm o mesmo nível conceitual – levando
em consideração somente as dimensões mais relevantes.

A composição dos dois modelos pode ser igualmente aplicada, desde que seja necessária
a junção deles, para otimizar o objetivo.

Funcionalidades
Foi visto anteriormente que existem várias maneiras de se armazenar os dados para
que eles sejam usados no processo de mineração dos mesmos. A identificação dos tipos
de dados que foram armazenados e dos que estão disponíveis para serem acessados,
ajudam a determinar quais os tipos de padrões de relacionamento é essencial para ser
minerado. No caso, as funcionalidades – chamadas de tarefas ou resultados – existentes
na mineração de dados vão determinar quais os tipos de padrões e conexões entre as
variáveis.

Na maioria das vezes, os autores não especificam bem quais as divergências entre os
termos “funcionalidades” e “técnicas”. É possível imaginar, por exemplo, que existe
uma série de técnicas que podem ser usadas para executar a análise de um grupo de
produtos, dos quais há umas regras de associação. Nomeando a técnica como técnicas
de análise de grupo de produtos (CÔRTES, 2002).

Porém, pode ser considerada uma aplicação a análises aos grupos de produtos, como por
exemplo, identificar quais grupos de produtos são vendidos em conjunto. Com o intuito
de tentar quebrar os mistérios entre essas notações, a figura 21 apresenta, a seguir, as
fases que expressam as relações entre funcionalidades, técnicas e algoritmos. Sempre
tendo como objetivo a edificação da interatividade do reconhecimento de padrões e as
técnicas que podem ser aplicadas.

73
UNIDADE IV │ Algoritmos de Data Mining

Figura 21. Interatividade entre as técnicas de mineração e as funcionalidades.

Fonte: Côrtes (2002).

Observa-se que não existe uma conformidade em relação as funcionalidades tratadas


na mineração de dados. Entretanto, é factível a afirmação de que a existência de uma
boa estipulação dos conceitos das funcionalidades, relacionados aos resultados que são
desejados, será essencial para o processo em geral. Mais uma vez, mostra-se necessária
a determinação das funcionalidades para se ter uma melhor escolha das técnicas
que serão aplicadas para a obtenção dos resultados previstos. Desta forma, há uma
classificação das funcionalidades contidas na mineração de dados em análise descritiva
e análise de prognóstico.

A representação figurativa das técnicas que estão contidas nas funcionalidades de


mineração de dados pode ser vista na figura 22, que ainda mostra a interação entre as
funcionalidades e os usuários.

74
Algoritmos de Data Mining │ UNIDADE IV

Figura 22. Funcionalidades da mineração de dados: Descritiva e Prognóstico.

Fonte: Côrtes (2002).

A forma como as funcionalidades de mineração de dados é destacada, pode contribuir


para que sejam encontradas maneiras mais fáceis de se conseguir algo quando existe
algum tipo de necessidade para que seja realizada a análise desses dados. Isso é aplicado
diretamente quando se é conhecido o resultado desejado, assim, podendo focar a
escolha da melhor técnica.

As análises contidas na funcionalidade descritiva são:

»» Análise descritiva – faz a descrição da área de observação nas quais os


dados que querem mostrar a descrição dos elementos importantes, dos
fatos que não são triviais e aqueles que não são conhecidos dos usuários.
Além de objetivar a análise do banco de dados, sempre prevalecendo a
relevância as características que garantem a qualidade do conhecimento
resultante, fazendo com que o processo de mineração (junto com seus
resultados) seja completamente validado.

»» Análise prévia – é a técnica responsável pelo processo que analisa


um banco de dados objetivando a identificação dos resultados que não
estão de acordo com a maioria dos casos (anomalias), para que estes
não consigam interferir nos resultados encontrados com a mineração de
dados.

»» Descobrimento – é a técnica responsável pelo processo de examinar


um banco de dados objetivando a identificação dos padrões que não

75
UNIDADE IV │ Algoritmos de Data Mining

estão visíveis. Contudo, essa identificação não será realizada por meio de
hipóteses descritas anteriormente.

Figura 23. As funcionalidades contidas na análise descritiva e na análise de prognóstico.

Análise Descritiva

Análise Prévia Descobrimento

- Análise de outliers - Classificação

- Análise de associações
- Análise de desvios
- Agrupamento
- Visualização

- Otimização

- Análise evolutiva

- Análise em dados no formato texto

Fonte: modificado de Côrtes (2002).

A maneira de especificar e aplicar a técnica correta com o problema nos processos de


mineração de dados, tem-se uma série de sub funcionalidades que detalha as abordagens
da análise prévia e do descobrimento apresentadas na figura 23.

Análise de outliers

A palavra proveniente do inglês tem uma tradução que significa algo do tipo “fora de
série”. Sendo um contexto difícil de traduzir, o termo mais utilizado é mesmo “outliers”,
que são nada mais que um escopo fora do contexto – por exemplo, em um banco de
dados, atributos que não acompanham o modelo de dados.

É comum se observar métodos de mineração de dados que desconsideram os objetos


classificados como outliers (julgando-os como ruído ou exceções). Entretanto, existem
várias situações, eventos que assumem esses valores fora da curva interessantes de
serem analisados. O modo para se encontrar os outliers é dado pelos testes estatísticos
que consideram um modelo probabilístico para os dados, bem como a aplicação que
mensuram a distância existente entre os objetos mais afastados de qualquer conjunto
conciso de dados.

76
Algoritmos de Data Mining │ UNIDADE IV

Análise de desvios

A análise de desvios, como o nome já propõe, é uma funcionalidade que visa detectar
as mudanças que podem ocorre no comportamento de um padrão, em que as ações são
comparadas com os padrões (THURAISINGHAM, 1999). Uma maneira de exemplificar
é na análise do comportamento de clientes que tem um plano de saúde. A avaliação de
seu comportamento indica se houve algum tipo de mudanças, sendo verificado sempre
que possível. Outro exemplo pode ser visto em empresas de cartão de crédito, em que
pode ser analisado o comportamento de compra dos clientes – se houve uma mudança
significante dos padrões, o modelo vai detectar.

Visualização

A visualização é uma funcionalidade que aplicada a análise referente a observação e,


geralmente, é utilizada para as situações em que não é conhecida a distribuição dos
dados, entretanto, ainda sim deseja encontrar toda e qualquer diferenças que possam
existir nos dados. Um exemplo que pode ser utilizado para entender melhor essa sub
funcionalidade é descrito pela montagem de histogramas em relação ao espaço de tempo
em chamadas telefônicas. Desta forma, pode-se observar a identificação de localidades
geográficas em uma cidade e fazer as comparações em relações a outras localidades
afastadas. Assim que os dados são visualizados, o passo seguinte vai apontar o que
será feito após a análise, sendo necessário identificar exatamente a forma mais correta
de agrupar os dados ou também identificar os atributos que podem utilizar clustering
como técnica (CÔRTES, 2002).

Classificação

A classificação é considerada uma tarefa extremamente comum e largamente utilizada


pois tem como objetivo identificar de acordo com suas variáveis, quais vão fazer parte
de cada classe contida na base de dados. A execução da classificação é realizada da
seguinte maneira: o modelo faz uma análise da tarefa dentro do conjunto de variáveis
adotadas, com cada um dos registros encontrados, o modelo consegue classificar algum
tipo de indicação, que determina qual é a classe que melhor representa os registros
– sendo sempre, claro, o intuito de aprender a melhor forma de classificar um novo
registro (aprendizado supervisionado).

Os registros de um conjunto de dados, por exemplo, são selecionados de um conjunto


de dados que possuem as informações referentes aos colaboradores de uma empresa:
Perfil Técnico, Perfil Negocial e Perfil Gerencial. Então os registros são analisados pelo

77
UNIDADE IV │ Algoritmos de Data Mining

modelo que está apto a comunicar quais categorias um novo colaborador se encaixa. A
tarefa de classificação pode ser usada por exemplo para:

»» A empresa consegue distinguir a necessidade do acompanhamento para


pessoas que fazem comprar com cartão de crédito e conseguem identificar
fraudes.

»» A análise dos dados pode identificar na escola, qual seria a melhor turma
(mais indicada) para um determinado aluno.

»» Diagnosticar onde uma determinada doença pode estar presente.

»» Identificar quando uma pessoa pode ser uma ameaça para a segurança.

Análise de regras de associação

Está subfuncionalidade tem como objetivo fazer conexões entre os atributos que serão
associados para tentar apresentar suas características e predisposições (CABENA et
al.,1998; CÔRTES, 2002). Outra maneira de apresentar a análise de associação é pela
criação de redes de interações e conexões que existem nos conjuntos de dados utilizando
as associações de todos os atributos do banco.

Há um sentindo implícito nessa afirmação, no qual a associação de cada um dos itens vai
está associado a outro item desse mesmo banco, e, claro, contando que essa execução é
feita na mesma transação. Se for estabelecida um entendimento explícito das relações
que existe entre os objetos, pode garantir uma visão diferenciada da maneira na qual os
dados vão ser examinados, bem como os tipos de características que tem a possibilidade
de estar presente nesses dados e que ainda não foram encontradas.

Regras de associação

Um dos exemplos que foram utilizados na prática de análise de associação foi a aplicação
em investigação criminal. Como isso já faz muitos anos, atualmente, os sistemas
executam bastante essa aplicação investidas em uma grande quantidade de situações,
sejam eles comerciais ou não.

Se for imaginado um banco de dados que tem as informações de compras, no qual as


compras são consideradas transação e que contém uma larga gama de itens que podem
ser adquiridos por seus consumidores, a análise que avalia a associação dos produtos
que foram comprados é uma técnica que pode descobrir quaisquer padrões em relação
as escolhas dos consumidores.

78
Algoritmos de Data Mining │ UNIDADE IV

Os padrões que ligam os itens são vistos pelas regras que os associaram e que, no caso,
faz a essa descrição de maneira textual – identificando os itens vão puxar de certa forma
a compra de um ou uma série de outros produtos. A figura 24 apresenta uma exata
maneira de expressar uma regra que foi gerada a partir de uma análise de compras.

Figura 24. Regra de associação.

Fator de Corpo da
Confidência Regra

Quando um consumidor
compra arroz, em 80% dos
casos ele também compra
feijão. Isto acontece em 40%
de todas as compras.

Cabeça
Fator
da Regra
de Suporte

Fonte: baseado em Côrtes (2002).

Seria a mesma visão de expressar que se um fator “A” ocorrer, a sua afinidade “B”
também vai ocorrer. Ainda pode ser visto na figura que o fator “A” é nomeado como
“corpo da regra” e o fator “B” é nomeado como “cabeça da regra”. O uso dos algoritmos
que aplicam as técnicas de associação é extremamente eficiente na execução das ligações
entre as regras, fazendo com que o analista responsável precise somente verificar a
validade sobre o que foi processado pelo algoritmo para ter noção da importância das
regras que foram estipuladas. Desta forma, os outros dois fatores que aparecem na
figura têm sua importância justificada – fator de suporte e fator de confidência.

»» Fator de suporte – determina o acontecimento referente a regra de


associação encontrada dentro do conjunto de dados de transações. A sua
definição é dada pela razão entre a quantidade de transações (que são
a base da regra) e a quantidade total de transações (que é visto como a
medida relativa). O que faz com que a regra seja fortemente defendida é
o ato de uma transação (compra).

›› A representação dessa regra, ainda na figura 24, é em torno da questão


na qual a informação afirma que cerca de 40% dos registros do banco
de dados acontecem essa relação.

79
UNIDADE IV │ Algoritmos de Data Mining

»» Fator de confidência – é uma regra de associação que determina o


quanto a regra tem veracidade dentro dos registros individuais, de forma
que ela é calculada por meio da razão da quantidade de transações,
referente a regra, pela quantidade de transações referente somente ao
corpo da regra. Na figura 24, o fator de confidência é de 80%.

Ainda discutindo o exemplo anterior, é possível afirmar que as associações que


foram encontradas têm base na quantidade computada de ocorrências de todas as
combinações de itens que podem existir. A princípio, a mineração de dados que é
aplicada as associações fazia a identificação referente as compras de maneira ordenada.
Sequencialmente, a técnica de associação executa a contagem das ocorrências de todas
e quaisquer transações referentes a todos os itens para que seja criado um vetor no qual
cada posição (cela) possui a quantidade de ocorrências de cada um dos itens.

As celas onde a contagem está abaixo de um determinado nível de


sustentação são suprimidas. A seguir, uma matriz com duas colunas
é formada para estocar as contagens de ocorrências de cada item com
um dos outros possíveis itens e, novamente, as celas são tratadas
considerando um valor de corte. Quando a contagem é feita para um
possível terceiro item dentro da mesma transação, uma matriz com
três colunas é criada e o processo é repetido. Assim, a técnica envolve
a leitura de um conjunto de dados, sequencialmente, do alto a baixo
cada vez que uma nova dimensão é adicionada e é feita uma simples
contagem de ocorrências. (CÔRTES, 2002).

A análise feita considerando o desempenho computacional que a técnica apresenta


pode ser influenciado pela quantidade média de itens em cada transação. É um fato
irrefutável afirmar que o tempo computacional que se precisa para computar a associação
de apenas um item no corpo da regra e um item na cabeça da regra é extremamente
menor do que o tempo que se gasta para executar, por exemplo, regras com dez itens
no corpo e cinco na cabeça.

A forma de se apresentar os resultados que o algoritmo processa é aplicado realizando


a conexão entre o conjunto de transações. No caso, pode se dizer que há uma série
de características que determinam as ligações que existem entre os itens avaliados. A
demonstração desses resultados tem o mesmo formato que foi caracterizado na figura 24.

Resumidamente, tem-se que para cada regra existem a definição do fator de suporte e o
fator de confidência, além dos cálculos estatísticos que possam vir a aparecer – no caso,
o quociente existente entre o fator de confidência e o fator de suporte que é conhecido
como o índice relativo a associação dos itens.

80
Algoritmos de Data Mining │ UNIDADE IV

Mais uma vez retomando ao exemplo anterior, analisa-se que se o fator de sustentação
referente ao feijão é de 40% dentro da quantidade de transações totais – de todas as
pessoas que compram algo, 40% das compras tem o item feijões. Assim como o fator
de confidência que encontra a afinidade entre a compra do arroz e do feijão é de 80% –
então o cálculo do índice de associação é de 2,0 (a razão). Consequentemente, é possível
inferir que a ocorrência esperada de feijão em uma compra é duas vezes a ocorrência se
existir a compra de arroz associada.

É fato que os grandes fatores de suporte e de confidência se mostram extremamente


relevantes em relação a fatores mais baixos. Porém, se houver a necessidade da
aplicação de baixos fatores de sustentação e confidência pode resultar na absorção de
muita afinidade em produtos que não representam bem o propósito. Diferentemente
dos fatores de suporte e confidência que se tiverem um nível elevados de relação, vai
dificultar a computação para a descoberta das regras de associação (LOUZADA-NETO,
2002).

Quando se tem um conjunto de dados com um grande volume, existe uma possibilidade
alta de encontrar correlações. É quase uma associação dizer que, se o conjunto de dados
é grande, vai haver algum tipo de correlação nestes dados.

Como toda técnica, há os pontos positivos e negativos em suas aplicações. Para a análise
de associações, pode-se observar vantagens em relação a sua simplicidade no conteúdo
das regras. No entanto, a dificuldade de se considerar o valor comercial da associação –
isso quer dizer que quando se tem um produto com um elevado custo, em comparação
com um produto de baixo custo, o peso para diferencia-los não existe – de uma maneira
mais simples, é classificada como uma desvantagem da abordagem (CABENA et al.,
1998).

Característica sequencial

Se forem analisados um conjunto de dados, como o existente bno quadro a seguir,


nota-se que há uma série de transações, como também outras informações. O quadro
contém o nome do consumidor, data completa, a hora em que foi realizada a venda e
o(s) item(ns) comprado(s), em uma loja de bebidas (alcóolicas e não alcóolicas). Há
uma certa regra de ordenação – em relação aos consumidores e as datas em que cada
um comprou algum item. Se for analisado, por exemplo, o primeiro consumidor, pode-
se observar que ele compareceu a loja em dois dias subsequentes. E a regra de compra
dele foi de cerveja e depois vodka.

81
UNIDADE IV │ Algoritmos de Data Mining

Quadro 8. Banco de dados usados em compras.

Consumidor Período da Transição Itens Comprados


José Oliveira 25 de fevereiro de 2000, 16:26 Cervejas
José Oliveira 26 de fevereiro de 2000, 10:35 Vodka

João Soares 25 de fevereiro de 2000, 14:18 Guaraná, Suco


João Soares 25 de fevereiro de 2000, 15:48 Cerveja
João Soares 26 de fevereiro de 2000, 09:29. Água, Licor, Vinho
João Soares 26 de fevereiro de 2000, 15:11 Gin, Licor

Pedro Tenório 25 de fevereiro de 2000, 11:06 Cerveja


Pedro Tenório 26 de fevereiro de 2000, 17:45 Água, Gin, Vinho
Pedro Tenório 27 de fevereiro de 2000, 18:04 Vodka, Soda

José Zappa 25 de fevereiro de 2000, 08:55 Guaraná, Vodka

Fonte: Côrtes (2002).

Já º próximo quadro apresenta as sequências de compras dos consumidores de uma


maneira diferente de se organizar. No caso, é analisado pelo quadro conjuntos de dados
que contém as compras de um ou mais produtos.

Quadro 9. Sequência de compras dos consumidores.

Sequência de compras dos


Consumidor
consumidores
José Oliveira (Cervejas) (Vodka)
João Soares (Guaraná, Suco) (Cerveja) (Água, Licor e Vinho)
(Gin, Licor)

Pedro Tenório (Cerveja) (Água, Gin e Vinho) (Vodka, Soda)


José Zappa (Vodka)

Fonte: Côrtes (2002).

As buscas realizadas por técnicas que possuem características sequenciais conseguem


absorver as propriedades existentes nas transações. O modo como isso é feito é baseado
em um conjunto de itens que tem relação com um outro conjunto de itens em um
determinado banco de dados de que contém informações de compras, durante um
tempo específico. A abordagem é que vai identificar qual a frequência necessária para
cada combinação de transações que pode resultar, dada sua execução, de acordo com as
informações dos consumidores e possibilitar as características sequenciais que possuem
ocorrências referentes tem um nível de apoio superior ao mínimo pedido. Esses dados
podem ser vistos no quadro a seguir, o qual mostra as características sequenciais com
um dado suporte maior que 40% (LOUZADA-NETO, 2002).

82
Algoritmos de Data Mining │ UNIDADE IV

Qadro 10. Características sequenciais com suporte > 40%.

Características Sequenciais com Fator de Consumidores de Apoio


Sustentação > 40%
(Cerveja) (Vodka) José Oliveira, Pedro Tenório
(Cerveja) (Vinho, Água) João Soares, Pedro Tenório

Fonte: Côrtes, 2002.

É possível perceber que a característica sequencial referente ao item “Cerveja” é


adquirida em uma transação que antecede à transação em que é adquirida “Vodka”.
Nota-se também que esse padrão acontece em dois dos quatro consumidores.

Agora, verificando os pontos positivos e negativos dessa análise de associação que foi
apresentada anteriormente, de certa forma também podem se aplicar as características
sequenciais. Fora essa verificação, é preciso analisar alguns outros pontos novos que
necessitam de destacados. Então, é possível afirmar que o fator de sustentação deve ser
especificado.

Como já foi mencionada, a influência de um conjunto de dados extenso, se existir


um grupo grande de registros, faz-se necessário se certificar da representatividade
com a quantidade de transações por consumidor. Por fim, há uma procura por
um novo campo no banco de dados no qual será responsável pela identificação
do consumidor – até porque, nem toda empresa, principalmente as pequenas,
tem um bom modelo de para armazenar este campo guardados no banco de
dados de transações (LOUZADA-NETO, 2002).

Análise de clusters

Muitas aplicações necessitam que um conjunto de dados seja dividido em grupos


menores e que tem algum tipo de relação. Obviamente, a intenção é de possuir uma
estratégia de negócio – seja qual for o objetivo do processamento e a origem desses
dados – e poder analisar da melhor forma possível os grupos de clientes pontuais,
sempre buscando o crescimento da eficiência do contexto e da relação de consumo dos
clientes.

A técnica responsável por aplicar a análise de clusters tem como objetivo identificar
a existência de grupos diversos que podem estar presentes dentro de um conjunto de
dados qualquer. Se a análise conseguir detectar a existência desses padrões de grupos,
é preciso adequar o que foi achado no correto grupo (EVERITT, 1993).

83
UNIDADE IV │ Algoritmos de Data Mining

Partição

Tendo base na detecção de grupos de dados, a técnica de clustering executa a otimização


das funções objetivas, que foi nomeada como critério de partição (MICHAUD, 1997).
Partição é o nome usualmente utilizado no português para o conceito de cluster, e
significa um subconjunto existente dentro de todos os possíveis subconjuntos – sendo
cada um deles independentes dos outros e do todo.

Uma boa maneira de imaginar é pensando que a população total de dados é formada
por um cluster. Esse cluster é subparticionado em dois ou mais outros grupos, que
sucessivamente, também podem ser mais uma vez particionados em dois ou mais
outros grupos. O ciclo só acaba quando dentro de um grupo só é possível encontrar um
único elemento.

Figura 25. Conjunto de dados particionado em Clusters.

Cluster contido em Cluster com um


outros dois clusters único elemento Conjunto total
de dados

Cluster com vários


elementos
Cluster contido em
outro cluster
Fonte: próprio autor.

A figura 25 mostra um exemplo de conjunto de dados que possui elementos particionados


em clusters dos quais seus elementos podem formar outros clusters.

Mesmo com toda as possibilidades citadas, o processamento para agrupar todos esses
exemplos é impraticável. Então, o ideal é sempre ter uma abordagem que analise a
melhor maneira possível de se aplicar a estratégia de busca e agrupamento do cluster.
Há algumas perguntas que devem ser questionadas para avaliar esse contexto:

84
Algoritmos de Data Mining │ UNIDADE IV

»» Que critério de partição utilizar?

»» Que medida de similaridade aplicar?

Critérios da partição

Analisando matematicamente, tem-se uma população de n elementos com descrição de


m atributos. Desta forma, observa-se o espaço m-dimensional dos atributos, fazendo
com que a técnica que aplica a análise de clusters se baseie na condição que determina
que o critério para executar uma partição tem que associar a menor distância tanto
entre os elementos de um mesmo cluster – como exemplificado na figura 25 – quanto
a maior distância entre os elementos de diferentes clusters.

Resumidamente, pode ser dito que o critério para a execução da partição em questão,
conhecido como função objetivo, F(P), de acordo com uma partição P qualquer, é o
desenvolvimento numérico do que a teoria intui (MICHAUD, 1997; BUSSAB et al.,
1990). Nas bibliografias estatísticas que descrevem essa função, o termo nF(P) é
reconhecido como responsável pela soma de quadrados dentre grupos.

A distância euclidiana quadrática média é uma das maneiras de se aplicar o critério


de partição. Essa distância é calculada entre os n elementos do conjunto de dados
(JOHNSON; WICHERN,1982). Se for considerado um vetor com m atributos do
elemento i., tem-se como o vetor de médias da k-ésima classe de elementos, em que
existem elementos com formulação , onde , para α = 1, ..., m.

Logo, a formulação matemática da distância euclidiana quadrática média levando


em consideração todos os elementos (um de cada vez) e a classe média referente foi
elaborada por Michaud (1997) e tem essa notação:

Mais uma vez, vale lembrar que o objetivo primordial da análise de clusters está baseado
na aquisição de uma partição que faça a minimização da fórmula descrita anteriormente.

Técnicas de partição

Como foi mencionado na seção anterior, a busca por uma estrutura de partições
elaboradas da melhor forma possível é na maioria das vezes algo muito custoso dado
à grande quantidade de partições que podem ser encontradas. Existem alguns meios

85
UNIDADE IV │ Algoritmos de Data Mining

para se diminuir esses problemas, assim reduzindo a quantidade de partições em


unicamente:

»» Métodos hierárquicos.

»» Métodos não hierárquicos.

Métodos hierárquicos

Os métodos hierárquicos possuem técnicas que procuram – obviamente – os grupos


de dados de forma hierárquica. Pode-se considerar que é possível ter uma quantidade
máxima de n clusters, dos quais, cada um desses clusters é configurado com somente um
elemento, bem como o é realizado pelo agrupamento interativo de cada par de clusters
em um novo, desta forma, tentando diminuir a quantidade de clusters na ordem de
um. Essa abordagem é conhecida como método hierárquico aglomerativo (LOUZADA-
NETO, 2002).

Há igualmente a possibilidade de agrupar o conjunto de dados de acordo com outra


abordagem, conhecido como método hierárquico divisivo somente um cluster, que vai
conter todos os elementos do conjunto, para então, a partir desse conjunto, criar um
processo iterativo para encontrar sub partições.

O valor da função objetiva P(F) que será calculada é quem decidirá qual das duas
abordagens vai ser escolhida. O par de clusters agrupados – aglomerativo – ou o cluster
que vai ser particionado – divisivo.

A maioria dos procedimentos hierárquicos são diferenciados apenas pela forma como é
escolhido o critério de partição, assim como a hierarquia dos clusters é obtida a partir
do processo de fusão ou particionamento sucessivo. Então, a quantidade de clusters
existentes vai praticamente determinar o critério de parada do processo para os dois
tipos de hierarquias. Existem problemas que podem ser igualmente relacionados aos
métodos hierárquicos, como a possibilidade de serem inviáveis quando aplicados a
um conjunto de dados muito grande, por causa da alta complexidade computacional
(MICHAUD, 1997; LOUZADA-NETO, 2002).

Métodos não hierárquicos

Os métodos não hierárquicos buscam diretamente uma partição que seja considerada
boa o suficiente dentro dos n elementos, dessa forma, não é preciso aplicar as associações
hierárquicas. A princípio, tem que se considerar uma partição que possui um número k

86
Algoritmos de Data Mining │ UNIDADE IV

de clusters previamente estipulado. Dando sequência, faz-se a escolha da partição que


vai conter os n elementos nos k clusters, de modo a otimizar o critério em questão.

Por meio de um procedimento específico, se for realizada a escolha da melhor partição,


então, assim que todas as partições forem pesquisadas, o problema cresceria de forma
a classifica-lo como uma difícil solução – tendo partições que precisam ser buscadas
(BUSSAB et al., 1990; LOUZADA-NETO, 2002). O k-means é uma das abordagens
mais conhecidas entre os métodos não hierárquicos, que volta a ser mencionada como
um dos algoritmos de mineração de dados.

Apresentação dos clusters

A análise de clusters tem uma característica importante que é a apresentação dos clusters
resultantes provenientes da escolha da função objetivo – realizada anteriormente –
com o objetivo de minimizar e garantir a aquisição de uma partição que também vai
minimizar a função.

A descoberta de quatro clusters em um problema qualquer, exemplificado – os dados


utilizados para a obtenção do gráfico são aleatórios – é ilustrado na figura 26, que foi
inspirado em Bussab et al. (1990). Na área de estatística, esse tipo de gráfico é bem
conhecido e utilizado, chamado de dendograma, ele é a opção gráfica comumente
utilizada para representar clusters.

Figura 26. Dendograma representando quatro clusters.

Fonte: Louzada-Neto (2002).

Análise de padrões sequenciais

A análise de padrões sequenciais objetiva fazer o uso de algum padrão característico


aplicado ao conjunto de dados, para então identificar quais os tipos de sequências que
poderão ser determinadas (THURAISINGHAM, 1999). Se for suposta uma situação na

87
UNIDADE IV │ Algoritmos de Data Mining

qual clientes que adquirem um dado produto e, algum tempo depois, eles pela previsão
ele vai voltar e fazer uma nova compra que é de alguma forma associada a primeira
compra – por exemplo, se um cliente compra um celular (que somente ele estava dentro
do seu orçamento), um mês depois, ele pode voltar para comprar a película e a capa
para proteger este celular (CÔRTES, 2002).

Análise de evolução

A análise de evolução faz a descrição e a modelagem das tendências que podem estar
contidas nos dados e observa o comportamento dos objetos, quando há uma modificação
de padrão relativo ao passar dos anos. Caracterização, discriminação, associação,
classificação ou agrupamento de dados são mecanismos passíveis de serem relacionados
com o tempo, porém, essa análise de evolução tem a propriedade de adicionar a análise
de dados de séries temporais, pares de padrões de sequência ou periodicidade e análise
baseada em similaridades.

Análise em dados no formato texto

A análise em dados no formato texto tem como objetivo observar vários conjuntos de
dados que estão armazenados no formato de texto. Aplicações deste tipo podem ser
evidenciada com narrativas de processos judiciais que querem realizar a transformação
desses textos em alguma outra forma, assim os resultados seriam tratados e explorados
dados os textos iniciais (SHOLOM, 1999). Por exemplo, textos que fazem parte de
um processo criminal e que utiliza uma técnica para analisar os padrões podem ser
observados em diversos outros casos e indicar resultados que demonstrem qualquer
tipo de associação entre os crimes.

A comparação de imagens de satélites, mineração de banco de dados espaciais, sequências


de material genético, mineração de banco de dados multimídia, mineração de dados
na web, etc. são outros exemplos da aplicação de funcionalidades de descobrimento.
Algumas ferramentas já são disponibilizadas para serem aplicadas a problemas de
negócios que são bem comuns e que assumem a aplicação dessas técnicas.

88
Capítulo 2
Aplicação de ferramentas

Como foi mencionado na introdução desta apostila, os conceitos relativos aos métodos
de mineração de dados mais utilizados: análise preditiva e análise descritiva. Fazendo
a conexão desses métodos aos algoritmos que os representa, é sabido que a análise
preditiva utiliza os algoritmos de aprendizado supervisionado, enquanto a análise
descritiva usa os algoritmos de aprendizado não supervisionado (CIOS, 2007; FAYADD,
1996; HAN, 2006; CAMILO, 2009).

A teoria muitas vezes não consegue se conciliar a prática, e na prática alguns métodos
preditivos podem ser aplicados a métodos descritivos e o contrário também é válido,
bem como o conhecimento das possibilidades de utilização (FAYADD, 1996). Dada a
combinação dessas duas técnicas, alguns autores como Seliya (2007) e Wang (2005)
propuseram uma abordagem semissupervisionadas.

Os métodos de aprendizado supervisionado são divergentes dos métodos de aprendizado


não supervisionada no sentido que, como o nome já indica, o método não supervisionado
não necessita de uma categorização anterior para os dados. Isso significa que não é
preciso ter um atributo alvo. Para tanto, os métodos normalmente utilizam alguma
medida de similaridade em relação aos atributos (MCCUE, 2007; CAMILO, 2009).

Das funcionalidades vistas, classifica-se as tarefas de agrupamento e associação como


compatíveis com a abordagem não supervisionada. Diferentemente do aprendizado
supervisionado, os métodos são dotados de um conjunto de dados que contém uma
variável alvo previamente estabelecida, assim como os registros são classificados
em função da mesma. Então, as tarefas que fazem as classificações e as regressões
do conjunto de dados tem uma aplicabilidade maior para métodos de aprendizado
supervisionado – contudo, também há usabilidade para métodos não supervisionados.

Ao longo do processo de mineração de dados, é essencial testar e combinar várias


técnicas, visando que com comparações, o processo de escolha da técnica – ou conjunto
de técnicas – será mais bem realizado e trará melhores resultados (MCCUE, 2007;
CAMILO, 2009).

Há diversas maneiras nas quais são classificados todos esses métodos diferentes. Para
tentar explicar essas discrepâncias, Han (2006) faz a descrição dos principais métodos,
e tem os seus métodos taxados dada a série de tarefas que vai ser realizada.

89
UNIDADE IV │ Algoritmos de Data Mining

Vale salientar que as técnicas de classificação são utilizadas para fazer previsões
de valores de variáveis. Dado que a abordagem de classificação pode ser
aplicada ao método supervisionado ou não, pode se ter um exemplo (na área
de negócios) quando um modelo que executa a classificação dos clientes de um
banco é elaborado e é determinado se esses clientes são especiais ou clientes
de risco.

Um outro exemplo, no contexto da área médica, dado um laboratório é possível utilizar


a sua base de dados armazenada para ter noção e verificação de quais indivíduos podem
receber o uso de uma nova droga. Nos dois casos, o objetivo é ter um modelo criado que
faz a classificação da categoria a qual o registro pertence.

Árvores de decisão
Árvores de decisão são métodos de classificação que são descritos como um fluxograma
em seu funcionamento, de forma que sua estrutura é no modelo de uma árvore, no qual
cada nó dessa árvore representa um teste a ser realizado em relação a um determinado
valor. O conteúdo que fica entre os nós é conhecido como os valores estipulados para ser
classificado como o teste do nó superior, da mesma maneira que as folhas representam
a classe que é pertencido o registro. Se a árvore de decisão já tiver sido estruturada, e
já tem os nós que classificam novos registros, é importante seguir o fluxo na árvore de
acordo com as perguntas que foram programadas, sempre sendo um fluxo top-down –
onde de inicia o processo no nó raiz e desloca até uma folha (CAMILO, 2009).

O modo no qual uma árvore de decisão se estrutura é possível aplicar algum tipo de
conversão da árvore em Regras de Classificação. Talvez a afirmação de que as árvores
de decisão são uma técnica muito simples, é devido à falta de necessidade de uma
estrutura que tem parâmetros de configuração, como também pela frequência na qual
há um bom grau de assertividade.

Sempre é preciso uma análise bem específica dos dados que vão ser utilizados para
obter sucesso, mesmo que a técnica seja considerada extremamente poderosa. Autores,
como Quinlan (1986), mostram várias técnicas que podem ser aplicadas para conseguir
diminuir a complexidade de entendimento das árvores de decisão. Outros autores
como Yang et al. (2007) consideram algoritmos usados para intuir regras que são
extremamente úteis para se obter as tomadas de decisões. Para exemplificar, a figura
28 ilustra um exemplo de árvore de decisão.

90
Algoritmos de Data Mining │ UNIDADE IV

Figura 27. Árvore de Decisão.

Fonte: Han (2006).

J. Ross Quinlan foi o desenvolvedor do algoritmo ID3 (Iterative Dichotomiser), que


era responsável por executar a geração de árvores de decisão, entre a década de 1970
e 1980. Como todo desenvolvedor, J. Ross Quinlan continuou a otimizar o algoritmo
ID3 criando o C4.5, que ainda é um algoritmo utilizado em benchmarks para novos
métodos supervisionados (QUINLAN, 1992; CAMILO, 2009).

A época parecia inspiradora, até porque, mesmo sem ter conhecimento do trabalho
desenvolvido por Quinlan, um grupo de estatísticos – L. Breiman, J. Friedman, R.
Olshen e C. Stone – implementau outro algoritmo e publicau o livro “Classification and
Regression Trees” CART (BREIMAN, 1984). Atualmente, os algoritmos de de Quinlan e
o dos estatísticos são vistos como precursores e por essa razão deram seguimento para
vários outros. A estratégia que guia a estrutura dos algoritmos é baseada em dividir
para conquistar aplicada recursivamente e usando o método top-down.

Os algoritmos clássicos de árvore de decisão geralmente eram associados a necessidade


de conter todo o conjunto de dados em sua memória. Entretanto, foram desenvolvidos
algoritmos mais atuais e estão aptos a acessar os repositórios de forma persistentes –
SLIQ (MEHTA, 1996) e SPRINT (SHAFER, 1996).

Concomitantemente, houve o desenvolvimento de ferramentas que auxiliavam na


execução desses algoritmos, como Gehrke (2000) que implementou uma ferramenta
para ajudar na execução de algoritmos de classificação e deixar a parte as questões
relativas a escalabilidade. Chandra (2007) mostrou uma otimização do algoritmo BOAT
(Bootstrapped Optimistic Algorithm for Tree Construction) – que usa a estratégia
“bootstrapping” (GEHRKE, 1999) – aplicando uma variação utilizada na lógica nebulosa
para o algoritmo SLIQ (CHANDRA, 2008).

91
UNIDADE IV │ Algoritmos de Data Mining

Classificação bayesiana
A classificação bayesiana é uma técnica estatística, dessa forma, utiliza a probabilidade
condicional, e que tem seu desenvolvimento no teorema de Thomas Bayes. É possível,
de acordo com o teorema de Bayes, descobrir a probabilidade de algum evento que
possa ocorrer de acordo com a probabilidade medida em relação ao acontecimento de
um outro evento dada pela expressão:

Outra maneira bem conhecida de se referir aos algoritmos Bayesianos é pelo termo “Naïve
Bayes”. Os resultados realizados utilizando o algoritmo de Naïve Bayes foram avaliados
e tiveram respostas tão eficientes quanto os algoritmos de redes neurais e de árvore de
decisão. A popularização desse algoritmo se concretizou pelo fato de ser extremamente
simples e ter um grande poder de predição (ZHANG, 2004; CAMILO, 2009).

Inicialmente, o algoritmo de Naïve Bayes sustentava a o conceito da não existência


de relação de dependência entre os atributos. Porém, foi compreendido que, de fato,
isso não era verdade. Quando não há relação de dependência entre os atributos
pode ser utilizada uma variação chamada de Bayesian Belief Networks ou Bayesian
Networks. Nem sempre os algoritmos são perfeitos e alguns autores também estudam
as dificuldades e problemas que podem ocorrer com a escolha da utilização deste
algoritmo (MAZLACK, 2008).

Algoritmo genético
Os algoritmos genéticos são baseados na teoria da evolução e na maior parte do tempo,
é feito de forma aleatória a criação de uma população no início de sua execução. O termo
evolução é utilizado de acordo com a comparação de que na evolução o mais forte vai
vencer e evoluir, enquanto o mais fraco é eliminado. Assim, nos algoritmos genéticos,
uma população é criada baseada na população anterior, sendo que os indivíduos passam
por um processo de mutação e cruzamento. O processo é iterativo e tem seu término
baseado em um critério de parada ou até algum ponto em que várias iterações passem
e a população resultante seja considerada de bons indivíduos.

92
Algoritmos de Data Mining │ UNIDADE IV

Redes neurais
Originalmente baseada na psicologia e na neurobiologia, as redes neurais são abordagens
que tem um embasamento na simulação do comportamento dos neurônios. Geralmente,
as redes neurais são consideradas como um conjunto de unidades de entrada e saída
que tem conexões por camadas intermediárias – que no caso, cada uma dessas camadas
tem uma ligação a um peso. Um passo importante que as redes neurais apresentam é
que ao longo do processo de aprendizado é a combinada a rede os pesos, que ajuda no
processo de classificação de um objeto de maneira correta.

A rede neural é uma técnica que precisa de um grande período de treinamento, na


maioria das vezes, a modificação de alguns parâmetros e é considerada uma abordagem
de difícil interpretação, fazendo com que não seja possível realizar a detecção de maneira
mais eficiente a relação entre a(s) entrada(s) e a saída(s) (CAMILO, 2009).

Diferentemente de outras técnicas, as redes neurais têm o poder de realizar sua


execução de modo que não exista problemas em relação aos valores com erros. Da
mesma maneira que podem detectar padrões que não estavam dentro do quadro deles
de treinamento. O Backpropagation é considerado um dos algoritmos mais conhecidos
de redes neurais, no qual é responsável por fazer com que a fase de aprendizado do
algoritmo elimine os erros. A figura 28 ilustra um exemplo de uma rede neural.

Figura 28. Rede Neural.

Fonte: Camilo (2009).

93
UNIDADE IV │ Algoritmos de Data Mining

SVM (Support Vector Machines)

Existem algumas informações que dizem que o desenvolvimento do SVM foi antes da
data conhecida como desenvolvimento. Em 1992, foi apresentado por Vladimir Vapnik,
Bernhard Boser e Isabelle Guyon, um artigo que continha o SVM, e fora o fato de ser
uma técnica considerada nova, sua aplicação evidencia bons resultados:

»» Garante a aquisição de altos índices de assertividade.

»» Concede a modelagem de situações não lineares complexas (modelos de


simples interpretação).

»» Utilização para relações lineares e não lineares.

A sua flexibilidade permite que sua aplicação seja feita, tanto para abordagens de
classificação, quanto de predição. Assim como suas virtudes, a técnica de SVM também
tem algumas dificuldades, que está ligada ao tempo utilizado na fase de aprendizado,
do qual são bastante questionadas em pesquisas.

Métodos de particionamento
Dado um conjunto D de dados com n registros e k o número de agrupamentos desejados,
os algoritmos de particionamento organizam os objetos em k agrupamentos, tal que k
<= n. Os algoritmos mais comuns de agrupamento são: k-Means e k-Metodos.

K-means

Foi visto nas seções anteriores alguns dos conceitos do algoritmo K-means e agora
será apresentado como ele funciona em seu funcionamento. Primeiramente, precisa
se pensar, como objetivo, em agrupar dados de acordo com as suas similaridades –
imagine, por exemplo, um conjunto de dados que contém várias amostras distribuídas
nos eixos X e Y.

94
Algoritmos de Data Mining │ UNIDADE IV

Figura 29. Variações de como selecionar agrupamentos.

Fonte: Nogare (2015).

A quantidade de clusters escolhidos determina o valor de K – que representa a quantidade


de pontos centrais dos grupos (centroides), que ajudarão a descobrir a similaridade nos
dados. Esses pontos, no início, são colocados em qualquer lugar do plano de forma
aleatória para depois começar as iterações e encontrar os resultados. De acordo com
esses pontos, é calculada a distância que vai dividir o espaço em dois grupos e modificar
os pontos a cada interação, como mostra as figuras 29 e 30. Os passos do algoritmo são
resumidamente:

»» Escolha de um valor para k.

»» Plotagem dos pontos e calcula a distância entre eles.

»» Divisão dos grupos.

»» Cálculo da distância média de todos os pontos que estão atrelados


ao centroide.

»» Mudança da posição do centroide.

Figura 30. Ciclo de duas iterações.

Fonte: Nogare (2015).

95
UNIDADE IV │ Algoritmos de Data Mining

Naïve Bayes
Já foi dito, o motivo do algoritmo de classificação bayesiana ter essa nomeação é
dado ao teorema de probabilidade de Bayes. Como o algoritmo objetiva o cálculo da
probabilidade que uma dada amostra pertença as possíveis classes. A técnica leva em
consideração que a repercussão do valor de um atribuído em relação a uma determinada
classe não é relevante em comparação com os valores dos outros atributos, deixando o
processo mais simples. Quando se trata de probabilidade, fica claro que a classificação
Bayesiana terá melhores resultados aplicados a valores discretos ao invés de contínuos
(CAMILO, 2009).

É necessário também um conjunto de dados que já foi classificado – determinados


os clusters. De acordo com esse conjunto de dados, que na verdade é o conjunto de
treinamento, é recebido como entrada uma amostra diferente, que não é conhecida no
algoritmo e que não tem nenhum tipo de classificação, para então obter como saída
uma probabilidade de encontrar a melhor classe. Dado que é preciso ter uma fase de
treinamento dos dados, este algoritmo é classificado como um método de mineração de
dados supervisionado.

Tentando simplificar os detalhes, o algoritmo Naïve Bayes pode ser separado de acordo
com as seguintes etapas (PICHILIANI, 2006):

»» Etapa 1 – Cálculo das probabilidades das classes:

›› A etapa 1 é responsável por calcular a probabilidade de cada uma das


classes do conjunto de treinamento. Um exemplo que pode ser analisado
é aquele no qual uma classe vai apontar se um consumidor em questão
faz ou não compras de um produto fundamentado nas características
que determinam a origem local do consumidor. O processo é realizado
de acordo com a razão da quantidade de instâncias contidas em uma
classe pela quantidade total de instâncias que existem no conjunto de
treinamento.

»» Etapa 2 – Cálculo das probabilidades da amostra desconhecida:

›› Na segunda etapa, os valores de cada um dos atributos contidos


na amostra desconhecida têm executados os cálculos de sua
probabilidade para quaisquer classes. A demanda dessa etapa é maior
do que nas outras duas etapas, porque de acordo com a quantidade de
atributos, classes e instâncias do conjunto de treinamento, tem-se o

96
Algoritmos de Data Mining │ UNIDADE IV

poder de computação maior, assim podendo suportar os cálculos de


probabilidades.

›› Vale ressaltar que os cálculos são completamente dependentes dos


valores dos atributos da amostra que não é conhecida, isso é, a previsão
das classes baseadas nas amostras. Então, pode-se imaginar que, dado
um conjunto de treinamento com k classes e m atributos, o cálculo de
probabilidade será de k x m.

»» Etapa 3 – calcular a probabilidades da amostra desconhecida:

›› Na última etapa, as probabilidades que foram calculadas em relação


aos valores da amostra desconhecida em uma única classe vão
ser multiplicadas. Após esse cálculo, o valor que foi encontrado é
multiplicado pela probabilidade da classe que foi encontrada na
primeira etapa.

›› Assim que forem conhecidas todas as probabilidades das classes


existentes, é analisada dentre cada uma das classes, a que tem uma
maior probabilidade de conter uma amostra desconhecida. Finalizando,
o algoritmo vai retornar a essa classe que tem a maior probabilidade
de possuir a amostra desconhecida.

Softwares para Data Mining

Existem vários meios nos quais é possível se aplicar o uso de ferramentas Open Source de
modo a garantir vários recursos e funcionalidades, que podem muita vezes serem melhores
do que as ferramentas pagas em razão de sua flexibilidade de acordo com a possibilidade
total de customização dos casos, a robustez de soluções e as bibliotecas existentes, e,
obviamente, não menos importante, o preço de implementação (CLÉSIO, 2012).

O Projeto R (ou somente “R”) é software de estatística que contém diversos packages
(pacotes com diversas funções estatísticas, matemáticas e econométricas) e vem em um
ritmo de crescimento muito grande, em especial nos últimos 3 anos. Tem uma variedade
muito grande de recursos estatístico-computacionais e tem como vantagem a sua difusão,
e por ter uma linguagem de programação que tem uma curva de aprendizado média; o
que permite que estatísticos, economistas, médicos e cientistas da computação façam
interações sob um mesmo código; além de possuir uma bibliografia invejável em termos
de livros e materiais disponíveis na web. A desvantagem é que não há informações

97
UNIDADE IV │ Algoritmos de Data Mining

sobre as operações de background e como o software utiliza os recursos de máquina


disponíveis, como o funcionamento em relação a termos computacionais e até mesmo
formas de customização para rodar em ambientes com alto poder computacional; além
de ter uma interface de integração e pré-processamento de dados pobre em recursos de
transformação.

RapidMiner

O RapidMiner é uma suíte de mineração de dados que vem se consolidando a algum


tempo, e antes do R se tornar o software Open Source mais popular em análise de dados
era o software de mineração de dados mais popular. O RapidMiner tem como principais
diferenciais a parte de pré-processamento de dados, a baixa curva de aprendizado
para início dos trabalhos em mineração de dados, além de produzir gráficos de ótima
qualidade. O RapidMiner tem como desvantagem o “travamento” de diversos recursos
que são liberados somente com a versão paga, não ter uma comunidade tão ativa e
pouca documentação (livros) dirigidos para o seu uso prático.

WEKA 

O WEKA é uma suíte de mineração de dados desenvolvida pela Universidade de


Waikato na Nova Zelândia; e tem como principal diferencial ser uma ferramenta de uso
muito simples; o que não significa que seja de menor qualidade em relação as demais
ferramentas Open Source. O WEKA é praticamente a ferramenta inicial para quem inicia
os estudos em mineração de dados, e sem sombra de dúvidas é a ferramenta que tem a
menor curva de aprendizado, chegando às vezes até passar a impressão que a mineração
de dados é algo trivial; além de contar com um ótimo livro do FRANK, e WITTEN que
é um material muito precioso para trabalhar de forma prática com a ferramenta. A
principal desvantagem do WEKA é a difícil implementação de novas bibliotecas, o quase
que obrigatório conhecimento avançado em java para implementação de algoritmos,
ter algumas limitações sérias em relação à geração de gráficos, e a péssima conexão/
integração com bancos relacionais.

98
Aprendizado
de Máquina Unidade V
(Machine
Learning)

Nesta unidade, serão abordadas algumas questões que também fazem parte do conceito
de aprendizagem de máquina, diferentemente de conceitos que já precisaram ser
explanados nos capítulos anteriormente. A necessidade de compreender os métodos
mencionados faz com que os conceitos se misturem em várias fases.

Capítulo 1
Sistema de aprendizado

Este capítulo mostra um conceito relacionado a área de aprendizado de máquina. Desta


maneira, são citadas as características globais do sistema que gera o aprendizado.
Evidenciando de modo geral os paradigmas, as tarefas, os modos e as formas de como
o aprendizado sempre é usado nos sistemas. De certa forma, o capítulo atribui um
foco maior no aprendizado indutivo, fazendo a colocação de exemplos – que tem como
objetivo aprender conceitos por meio de exemplos e contraexemplos dos conceitos em
questão.

O que é aprendizagem de máquina?


O desenvolvimento de máquinas que conseguem aprender baseado em fatos já
vivenciados tem sido a muito tempo um motivo para discussões, sejam elas técnicas
ou filosóficas. Em se tratando de técnicas, neste sentido, acaba por adquirir muitos
incentivos de acordo com a chegada dos computadores eletrônicos. Pesquisas
significantes são realizadas na área e têm percebido que máquinas podem expor um
nível relevante de aprendizagem, estando essas máquinas bem definidas em relação à
habilidade de aprendizado ou não (PRATI, 2006).

99
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

Obviamente, há uma clara importância que deve ser atribuída aos sistemas de
aprendizagem por seus níveis de confiabilidade, porque há vários problemas que não
podem ser determinados sua resolução por meio de abordagens bem conhecidas na
programação. O motivo para tanto é que esse tipo de problema não tem uma modelagem
matemática ou algorítmica.

Um bom exemplo disso é a não existência de algoritmos que façam o reconhecimento de


letras escritas à mão. Como todo problema que ainda não foi solucionada pela tecnologia,
existe um tipo de leitura similar que tenta ajustar essa ausência, como a representação
dessa escrita com uma versão eletrônica parecida. Seria possível elaborar um algoritmo
que aprenda a reconhecer letras escritas a mão baseadas em dados iniciais? Refletindo,
pode se dizer que o processo de aprendizado seria semelhante as pessoas quando estão
aprendendo a escrever (PRATI, 2006).

Outros exemplos em diferentes contextos podem ser apresentados ao aprendizado de


máquina, como os seguintes:

»» Procura de genes em uma sequência de DNA.

»» Filtragem de correspondência eletrônica.

»» Detecção ou reconhecimento de objetos em visão computacional.

»» Processamento de linguagem natural.

»» Ferramentas de busca.

»» Diagnóstico médico.

»» Bioinformática.

»» Detecção de fraude em cartões de crédito.

»» Análise do mercado de ações.

»» Previsões financeiras.

»» Reconhecimento de voz e escritura.

»» Jogos de entretenimento.

»» Mineração de dados em grandes bases de dados.

»» Sistemas biométricos.

100
Aprendizado de Máquina (Machine Learning) │ UNIDADE V

A solução desses tipos de problemas mostra que existe uma necessidade real em relação
aos avanços em cada uma dessas áreas do conhecimento. Então, é fato afirmar que
se for possível a compreensão do desenvolvimento dos algoritmos baseados nestes
problemas. Fora que, não só nas áreas com aplicações práticas, como a área médica,
mas também bem relevante para os problemas na ciência da computação.

Infelizmente, ainda não se pode contar com esse tipo de solução em relação as habilidades
dos melhores profissionais responsáveis pelo desenvolvimento. Como qualquer outro
problema, a não habilidade de resolver da maneira ideal, faz com que outros meios
sejam aplicados – como a aprendizagem baseada nas experiências anteriores (PRATI,
2006).

Inferência lógica e aprendizagem


Todo o processo que envolve a aprendizagem de máquina está ligado à correta maneira
como o conhecimento anterior as execuções e as novas análises que descobrem os novos
conhecimentos. Essa questão pode ser nomeada de métodos de inferência lógica, no
qual, normalmente podem utilizar da abordagem de agrupamento de classes, que são
as deduções, as abduções e as induções.

Inferência dedutiva

A dedução tem um conceito que pode ser visto como uma forma de inferência logicamente
correta, que significa ter a conclusão calculada de acordo com um conjunto de dados
iniciais verdadeiros, para que a verdade sempre seja preserva. Porém, a inferência
dedutiva tem o poder de aplicar apenas para conseguir as informações escondidas no
modelo.

A aprendizagem utiliza os dados provenientes da aprendizagem por dedução; o aprendiz


adquire conceitos por meio da inferência dedutiva sobre as premissas. Logo, seria
aproximadamente correto dizer que a abordagem adiciona qualquer processo no qual o
conhecimento aprendido é o resultado de transformações em relação ao conhecimento
existente, vai preservar o quanto ele está sendo feliz. Assim, é fato afirmar que na
aprendizagem por dedução, precisa ser feita em uma sequência de deduções e cálculos
referentes as informações já existentes, para com isso, se conseguir obter a elicitação do
conhecimento oculto, mas já existente nessa fase.

101
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

Inferência abdutiva

Diferentemente do resultado da inferência dedutiva não vai além do que estava


previsto, na abdução o que é relevante é deduzir o conhecimento singular começando
por observações como também, algumas outras informações que já existam. Há uma
série de hipóteses abdutivas que podem ser elaboradas de acordo com um conjunto
de predicados específicos e que ainda não tinham sido analisados. Assim, hipóteses
abdutivas podem ser consideradas como aquelas que executam parte do conhecimento,
de forma que após esse conhecimento é completado em relação a uma situação específica,
de um determinado atributo.

Na inferência abdutiva, ainda é possível imputar-se que a descrição D referente ao


domínio de um problema, se considerando que dado o número de informação disponível
pode ser aplicada as inferências. Resumidamente, isso implica em dizer que o começo
(parte que não está completa) da teoria tem a capacidade de ser separada em alguns
predicados não analisados. Essa análise é conhecida como abdutível.

Para tanto, a compreensão da teoria da maneira como se fosse a representação de todas


as extensões abdutivas que existem, é dito que , isso se for executada para todas as
possíveis hipótese abdutiva . A teoria representa a contagem de todas as fórmulas que
proporcionam o conjunto das extensões adbutivas de existentes. Então é sabido que
dada a hipótese abdutiva em relação a é determinada por implicações dedutivas em
todas as extensões abdutivas. Logo, a condição de verdade referente a inferência está
completamente ligada as extensões.

Indução

A terceira forma é a inferência indutiva, que é uma maneira de inferir a lógica que
dá consentimento a extrapolação das premissas. Desta forma, é obtida as conclusões
genéticas em relação a exemplos em questão. Ainda assim, é possível caracterizar a
indução como uma maneira de raciocínio que tem um início em relação a um conceito
específico para então, pode generaliza-lo. Isso significa que a unidade vai se transformar
no todo, do mesmo jeito que o singular vai se transformar no geral.

A indução dedutiva tem como base as premissas válidas, diferentemente da inferência


indutiva, pois ela não retém o resultado da aplicação – mesmo que seja verdadeira
ou mesmo que haja a aplicação desse conjunto de premissas na inferência de forma
verdadeira. Em razão disso, o resultado da inferência indutiva é normalmente conhecido
como uma hipótese (PRATI, 2006).

102
Aprendizado de Máquina (Machine Learning) │ UNIDADE V

Caso não seja possível garantir a validade de uma hipótese, é feita uma ligação entre ela
e um certo grau de confiança, que tem como base a quantidade e qualidade presentes
nas premissas. Fazendo com que as premissas usadas em uma inferência indutiva
sejam consideradas verdadeiras, e ainda vai haver um número aceitável das mesmas,
que possibilite afirmar que uma hipótese de certa forma é verdadeira.

A importância relativa à indução, aplicada ao aprendizado de máquina, tem ligação com


a inferência “amostra para população”, que também é conhecido como generalização
indutiva e pode ter essas duas questões:

»» Se todos os objetos de uma amostra satisfazem a propriedade Р (x).

›› Todos os objetos na população satisfazem a propriedade Р (x).

Então, é dito que a inferência indutiva considera esse tipo de hipótese, considerando-a
como válida, assim como a inferência abdutiva faz a aplicação da inferência dedutiva
com objetivo de gerar novos conhecimentos. Contudo, pode ser vista as divergências
entre a abdução e a indução pelo fato de que as hipóteses não podem ser limitadas a
um subconjunto singular de predicados que não estão completamente especificados em
relação a representação do domínio do problema referente a teoria , entretanto, estas
mesmas hipóteses podem ser limitadas somente por sua própria linguagem da teoria .

Quando se coloca novas premissas a um argumento dedutivo considerado válido, não é


possível afetar a validade do argumento que foi utilizado. Porém, em relação à inferência
indutiva, se for acrescentada premissas a mais, há a possibilidade de acontecer uma
mudança no grau de confiança deste mesmo argumento. Logo, o acréscimo de uma
premissa diferente pode fazer com que cresça ou diminua o grau de confiança de um
argumento indutivo – a influência é tanta que é possível invalidar esse argumento.

Aplicação

Dos métodos mencionados anteriormente, a dedução é a abordagem mais utilizada no


contexto da inteligência artificial. Assim como a resolução é um dos meios de se aplicar
inferência lógica mais usados em shells relativos a sistemas especialistas. No entanto,
quando se tem uma teoria que não está completa ou vazia, presente nas utilizações de
mineração de dados, há oportunidades em que a inferência dedutiva não é considerada
bastante na resolução dos problemas. Desta forma, é possível dar destaque a duas
classes de tarefas existentes:

»» A busca pela parte referente a informação que pode ser verdadeira dada
uma teoria universal que descreve um domínio de interesse.

103
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

»» A produção de novas teorias que fazem a descrição do comportamento


existente em um determinado processo, para então ser possível prever
como vai ser o seu comportamento posterior.

Desta maneira, analisando as duas classes de problemas, pode-se inferir que a inferência
não dedutiva tem a necessidade de compensar o por que é preciso explicar a busca
por informações verdadeiras sendo generalizada pela produção de novas teorias do
comportamento do processo. Dada sua capacidade de explicar a usabilidade de uma
teoria e considerando a suposição , a inferência abdutiva geralmente é aplicada na fase
de planejamento e em desejáveis diagnósticos (PRATI, 2006).

Em contrapartida, mesmo não sendo o mais aplicável, o processo de inferência


indutiva é também é considerado uma das principais formas de se compreender novos
conhecimentos. Assim, sendo tido como indispensável no processo de obtenção e
descoberta do conhecimento. Se for levado em consideração essa observação, é possível
dizer que a indução é uma das abordagens de inferência mais aplicadas nas técnicas de
aprendizagem de máquina.

Características gerais de aprendizagem de


máquina

Mas o que se pode afirmar por ser um sistema de aprendizagem? A técnica nada mais
é do que um conjunto de algoritmos que são capazes de tomar decisões com base em
experiências reunidas, dada a solução de problemas em uma fase anterior. Esse tipo
de sistema tem características singulares e podem ser consideradas como constantes,
assim, possibilitando uma forma de classificação em relação à linguagem de descrição,
a tarefa, ao modo, ao paradigma e a forma de aprendizagem que foram aplicadas a esses
sistemas. Esses conceitos são apresentados na figura 31, em que há uma breve descrição
de cada um.

Figura 31. Particularidades de sistemas de aprendizagem de máquina.

Modos de Paradigmas de Linguagens de Formas de Tarefas de


Aprendizado Aprendizado Descrição Aprendizado Aprendizado
Supervisionado Simbólico - Exemplos ou Objetos Incremental Classificação
Não Supervisionado Estatístico - Hipóteses ou Conceitos Não Incremental Ordenação
Aprendidos
Semi Supervisionado Baseado em Protótipos - Teoria de Domínio ou Regressão
Conhecimento de Fundo
Por Reforço Conexionista
Genético

Fonte: Prati (2006).

104
Aprendizado de Máquina (Machine Learning) │ UNIDADE V

Os modelos de aprendizagem de máquina de acordo com alguns autores, alguns dos


sistemas de aprendizagem tem a necessidade de estabelecer previamente se uma certa
ação vai conseguir gerar alguma saída. Logo, há a classificação geral e bem conhecida –
e já mencionada nesta apostila – dos modelos (RUSSELL, 2003):

Supervisionado

Esse tipo de algoritmos de aprendizado faz algumas previsões baseadas em um


conjunto de dados que servem de exemplo. Imagine que é necessário saber as
cotações de preços futuros – as cotações que já foram analisadas anteriormente
são utilizadas para arriscar palpites em relação ao futuro. Todos os dados que
são utilizados, como exemplo, para a fase de treinamento é considerado com o
valor de interesse.

Dentre o exemplo citado, é possível identificar a aplicação do algoritmo de


aprendizado supervisionado na busca por padrões referente ao valor requerido.
A maneira como a informação está, é considerada importante para se analisar os
dados – ainda referente ao exemplo, seria como levar em consideração os dias
da semana, a temporada, os dados financeiros da empresa, o tipo de setor, a
presença de eventos geopolíticos que podem ter influenciado no resultado dos
dados etc.

Se pode afirmar também que cada algoritmo faz um tipo de busca diferente em relação
aos possíveis padrões. Então, logo após a descoberta do melhor algoritmo relativo
ao problema, que encontra o melhor padrão, é realizada as previsões referentes aos
dados de testes e que não possuem dados reais futuros. Na aprendizagem de máquina,
o aprendizado supervisionado é visto como bem comum e bem aplicável. Alguns dos
subtipos de aprendizado supervisionado são os seguintes:

»» Classificação – no momento em que os dados estão sendo utilizados


para realizar a previsão de uma categoria, o aprendizado supervisionado
é determinado como classificação. Há dois tipos de caracterizar as
classificações:

›› Classificação binomial ou de duas classes – é considerada como aquela


classificação baseada em somente duas classes. Por exemplo, tem-se
uma imagem e precisa-se saber se é real ou não.

›› Classificação multiclasse – diferentemente do tipo anterior, como


o nome já propõe, representa uma série de classes que pode ser
considerada para classificar um objeto.

105
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

»» Regressão – no momento da previsão de um valor, como o exemplo


apresentado da cotação de preços, o aprendizado vai ser tido como de
regressão (aquele que pondera as informações prévias).

»» Detecção de anomalias – muitas vezes, o intuito do algoritmo é


somente saber os pontos de dados que são não são vistos como comuns.
Um exemplo clássico é observado na detecção de fraudes, no qual é
identificado qualquer padrão fora do normal referente aos gastos no
cartão de crédito. Um dos problemas identificados é a existência de muitas
possibilidades de situações e poucos dados de treinamento, fazendo com
que não seja indicado aprender sobre as atividades fraudulentas. Assim,
o objetivo da detecção de anomalias, na verdade é aprender como o fluxo
se comporta em sua atividade normal e identificando aquilo que seja
significativamente divergente.

A figura 32 mostra um fluxo de decisão relativo a um processo de aprendizagem de


máquina, dentro do contexto de classificação.

.
Figura 32. Fluxo de classificação.

Nova ocorrência

Crie um grupo e a N S Inclua a ocorrência


Pertence a
coloque nesse grupo um grupo? no grupo apropriado

Extraia as características do
grupo

Classifique a instância

N S
Atualize a base de É um alerta?
dados Confirme o alerta

Atualize a base e retreine o modelo

Fonte: modificado de Chame (2015).

106
Aprendizado de Máquina (Machine Learning) │ UNIDADE V

Não supervisionado

Neste contexto, o aprendizado analisa os pontos de dados que não possuem rótulos
associados. No caso, o objetivo de um algoritmo de aprendizado não supervisionado
é fazer a organização dos dados de um jeito ou fazer a descrição de sua estrutura. A
maneira como pode ser observada essa aplicação é por meio dos algoritmos que
agrupam clusters ou quando conseguem descobrir diversas formas de consultar dados
complexos, deixando-os visualmente mais simples e organizados.

Semi supervisionado

As técnicas de aprendizagem semi supervisionada são consideradas uma maneira em


que existe um reduzido conjunto de dados para realizar as observações e um conjunto de
observações. No caso, é possível identificar que essa abordagem representa a soma do
aprendizado supervisionado e do não supervisionado, e tem como objetivo usar os dois
conjuntos com a intenção de descobrir uma hipótese suficientemente apta a classificar
as novas observações de acordo com as classes já presentes (ERICSON, 2017).

Por reforço

No aspecto referente ao aprendizado por reforço, a teoria indica que o algoritmo faz
uma opção; para cada ação há uma resposta para os pontos de dados. Adicionalmente,
o algoritmo obtém um sinal que vai representar uma recompensa algum tempo depois,
classificando como sendo uma boa decisão.

De acordo com esses dados, o algoritmo muda a estratégia de forma a sempre buscar
o retorno dessas recompensas cada vez mais e melhores. A aplicação desse tipo de
aprendizado é extremamente comum na área de robótica – do qual, um conjunto de
leituras de sensores em algum momento, é um ponto de dados – assim, o algoritmo tem
que optar pela ação que o robô vai executar em sequência. Outro exemplo é a aplicação
nos ajustes necessários na aprendizagem dos algoritmos da internet das coisas.

A figura 33 mostra a hierarquia na qual está estruturada a aprendizagem de máquina,


de acordo com seus tipo e subtipos.

107
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

Figura 33. Hierarquia do aprendizado de máquina.

Fonte: Barth (2013).

Paradigmas de aprendizagem

Existem alguns tipos de paradigmas que foram propostos em relação ao aprendizado de


máquina e alguns deles serão explicados a seguir.

Paradigma simbólico

Estes tipos de paradigma procuram aprender baseado na construção de representações


simbólicas referentes a um conceito de acordo com a análise de exemplos e
contraexemplos do mesmo conceito. A maneira como as representações simbólicas são
normalmente vistas é na configuração de alguma expressão lógica, árvore de decisão,
regras de produção ou rede semântica.

Atualmente, entre representações simbólicas mais estudadas estão as


árvores e regras de decisão. Métodos de indução de árvores de decisão a
partir de dados empíricos, conhecidos como particionamento recursivo,
foram estudados por pesquisadores da área de inteligência artificial
e estatística. Os sistemas ID3 (QUINLAN, 1986) e C4 (QUINLAN,
1987) para indução de árvores de decisão tiveram uma importante
contribuição sobre a pesquisa em IA. O sistema de classificação de
árvores de regressão CART (BREIMAN et al., 1984) foi desenvolvido
por estatísticos, durante praticamente o mesmo período que o ID3, no
final dos anos 70.

Os trabalhos com indução de regras de decisão surgiram com a família


de algoritmos AQ (MICHALSKI, 1969), e precederam algoritmos como

108
Aprendizado de Máquina (Machine Learning) │ UNIDADE V

o CN2 (CLARK; NIBLETT, 1989; CLARK; BOSWELL, 1991). Uma outra


abordagem surgiu da simples tradução das árvores de decisão para
regras, com um posterior refinamento (QUINLAN, 1987), resultando
no algoritmo C4.5rules (QUINLAN, 1993).

Paradigma estatístico

Existem constantes pesquisas na área de estatística que têm o objetivo de criar vários
métodos de classificação, a maioria tem algo em comum com os métodos aplicados
pela comunidade científica em aprendizado de máquina. Um dos exemplos que podem
ser vistos é o método CART (BREIMAN et al., 1984), citado anteriormente, no qual o
sistema é considerado como bem aplicável na construção de árvores de decisão, e que
foi implementado por estatísticos.

Na maioria das vezes, as técnicas estatísticas têm a tendência de especificar tarefas nas
quais todos os atributos possuem valores contínuos ou ordinais. Da mesma forma que a
maioria desses métodos são igualmente taxados de paramétricos, assim, apropriando-
se de algum modelo anteriormente estabelecido e, então, modificando os valores dos
parâmetros do modelo (de acordo com a necessidade) partindo dos dados.

Um modelo de classificação linear, por exemplo, considera que as classes podem ser
apresentadas como combinação linear dos valores dos atributos e, para isso, essas
classes buscam uma combinação linear singular responsável por contribuir com a
melhor aproximação em relação ao conjunto de dados.

Então, é visível que os modelos estatísticos normalmente consideram que os valores de


atributos estão com uma distribuição normal, assim, utilizam os dados atribuídos para
definir médias, variância e covariância da distribuição. Uma observação a ser feita é que
muitos autores estão dando importância mais as redes neurais como sendo os métodos
estatísticos paramétricos, dado que o treinamento de uma rede neural é baseado na
descoberta de valores próprios para os adequados pesos.

Paradigma baseado em protótipo

A classificação pode ser atribuída de uma maneira na qual há a lembrança de um caso


parecido, em que a classe já é existente e conhecida, para então considerar que a nova
situação vai fazer parte da mesma classe. Os sistemas baseados em protótipos são
exemplificados com esse tipo de estrutura, logo, eles fazem a classificação dos novos
casos usando os casos semelhantes já conhecidos.

109
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

Os sistemas têm a mais básica forma de empregar esses paradigmas, pois guardam
todos os exemplos que passaram pela fase de treinamento. Assim, a classificação é
realizada por meio da maior quantidade de exemplos relativos aos vizinhos que estão
contidos em uma mesma classe. Como já foi mencionado em outras seções a técnica do
K-Neasrest-Neighbours (KNN).

Não só ela, mas existem outras abordagens que fazem uso de heurísticas com o intuito de
selecionar os exemplos que estão guardados. É de suma importância também identificar
quais os casos de treinamento que precisam ser memorizados – desta forma, é possível
controlar quaisquer problemas ou dificuldades, bem como a lerdeza na manipulação do
modelo de classificação.

A melhor forma de se segurar somente os casos que sejam resumíveis em relação a


toda a informação presentes. Prati (2006) faz a descrição de algumas estratégias
com o objetivo de escolher quando um novo caso precisa ser armazenado ou não. A
similaridade referente aos casos em que todos os atributos são contínuos pode ser
medida em relação a alguma desistência entre os atributos.

Quando há atributos ordinais, a medida é considerada extremamente complicada,


assim como quando existem atributos irrelevantes. Isso significa que pode existir dois
casos semelhantes que vão ser analisado como se fossem completamente divergentes.
Segundo Prati (2006), os métodos sensíveis ao contexto podem modificar a escala dos
atributos, logo, melhorar as medidas.

Este paradigma baseado em protótipos também engloba os casos de algoritmos de


aprendizado. Entretanto, pode-se afirmar que essa abordagem é baseada em construções
de exemplos que são classificados com uma estrutura para a similaridade em relação a
outros casos que foram considerados protótipos.

Paradigma conexionista

É constantemente afirmado que as redes neurais são estruturas matemáticas


consideradas como simples, e que claro, tem como base os modelos biológicos do
sistema nervoso humano. Logo, é possível representar uma rede neural de acordo
com unidades extremamente interconectadas – por esta razão, é atribuído o nome de
paradigma conexionista – que servem para aplicar sua lógica.

De acordo com McCulloch e Pitts (1943), as pesquisas em redes neurais tiveram um


princípio por meio de seus estudos relativos a psiquiatria, no qual foi pesquisado por
duas décadas uma maneira de representar um evento da mesma forma que é realizada
no sistema nervoso. Com a ajuda do pesquisador Pitts, em 1942, desenvolveu-se a

110
Aprendizado de Máquina (Machine Learning) │ UNIDADE V

pesquisa após vários anos que deu origem a publicação dos dois em 1962. A pesquisa
mostrava a estrutura do perceptron, que foi considerado uma enorme contribuição
para provar o teorema de convergência.

Mas Minsky & Papert demostraram a existência de limites fundamentais


nos perceptrons de cada uma camada. A pesquisa na área ficou
praticamente estática até que Hopfield utilizou a ideia de uma função
de energia para formular uma nova forma de compreender os cálculos
realizados em redes recorrentes com conexões sinápticas simétricas. O
artigo de Hopfield em 1982 e o livro de Rumelhart & McClelland foram
as publicações que mais influenciaram no ressurgimento do interesse
sobre redes neurais na década de 80. Redes neurais tiveram um longo
caminho desde McCulloch e Pitts, e continuaram a crescer em teoria,
projetos e aplicações (BRAGA et al., 2003).

A aplicação das teorias metafóricas baseadas na biológica juntamente com as conexões


neurais do sistema nervoso possui um grande interesse de muitos pesquisadores, assim
como tem dado início a diversas discussões em relação aos méritos e as limitações
dessa técnica de aprendizagem. Resumidamente, as analogias realizadas no contexto
biológico vêm chamando a atenção de diversos pesquisadores, com relação a crença
de que as redes neurais têm um alto potencial para resolver problemas que necessitam
de um intenso processamento sensorial humano – exemplos já citados anteriormente
levantam pontos como o reconhecimento de voz e imagens.

Paradigma genético

O paradigma genético é uma forma de classificação baseado no modelo evolucionário


de aprendizagem (HOLLAND, 1975). Esse tipo de modelo de classificação genético
está de acordo com uma população de elementos que passarão pelo processo de
classificação, e assim, irão competir em relação a predição. O processo se estrutura
pela classificação do desempenho dos elementos, em que os mais fracos são deletados,
enquanto os mais fortes irão reproduzir filhos que contenham sua carga genética. Da
mesma forma que a ideia proposta no algoritmo de redes neurais foi baseado em fatores
biológicos, o paradigma genético é estruturado na teoria de Darwin – que determina
quais os indivíduos que sobrevivem – no caso, os indivíduos que são mais adaptados ao
ambiente (PRATI, 2006).

Existe vários operadores genéticos básicos que podem ser aplicados a uma dada
população para que sejam produzidos novos indivíduos com a reprodução, baseada
no cruzamento, e nas mutações. O objetivo desse método é que os operadores façam

111
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

um controle da quantidade de reproduções realizadas por meio dos indivíduos. Sejam


relativos a troca do material genético, a preservação de uma espécie, bem como a
manutenção de da diversidade que vai existir em uma nova população.

Aprendizagem incremental e não incremental

Em relação ao modo como os exemplos podem ser apresentados, os algoritmos de


aprendizagem de máquina são classificados de duas formas: aprendizagem incremental
e não incremental.

Não incremental

A aprendizagem não incremental precisa que todos os exemplos relacionados estejam


disponíveis a qualquer momento da sua execução, para então ser atribuído os conceitos.
O foco da usabilidade desse algoritmo é para o caso de problemas de aprendizagem em
que todos os exemplos estão acessíveis e que, de certa forma, não haverá modificações
em suas estruturas.

Incremental

A aprendizagem incremental é caracterizada por rever como foi feita a definição do


conceito atual, caso seja preciso quando é analisada uma nova resposta. Desta maneira,
cada exemplo analisado é considerado pelo sistema (um a um) – isso significa que o
sistema considera o primeiro exemplo, e é com base neste exemplo que é construída
uma determinada hipótese. Sequencialmente, é considerado um segundo exemplo,
que pode ou não mudar a proposição da primeira hipótese, até porque ela vai estar
baseada em como é realizada a classificação do segundo exemplo. Consequentemente,
o sistema vai continuar fazendo as mudanças necessárias no conceito sempre que haja
mais exemplos sendo recebidos.

É possível afirmar que uma das vantagens de utilizar um algoritmo incremental é dado
pelo fato de que o conhecimento tem a capacidade de ser rapidamente atualizado a cada
nova iteração. No entanto, algumas vezes, é considerado mais eficiente fazer a revisão
de uma hipótese já existente, ao invés de criar uma nova hipótese a cada vez seja criado
um novo exemplo (PRATI, 2006).

112
Capítulo 2
Aplicações de classificação de textos

Existem diferentes formas e objetivos que podem ser traçados para a aplicação da
classificação de elementos textuais realizados com o auxílio de algoritmos. Alguns
exemplos serão vistos a seguir.

Internet
Um dos veículos que podem ter como exemplo a clara aplicação de algoritmos de
classificação de textos é por meio das páginas que contém os dados de textos na internet.
Os textos que estão descritos de várias maneiras – sejam por tópicos que representam
a ideia central do assunto, os textos de conteúdo, em si, além do tipo de formatação que
é associada ao texto que influencia bastante no resultado da análise.

A classificação de textos pode ser aplicação em vários sentidos e com diversos


objetivos, dependendo, obviamente, somente da razão de sua necessidade. Na
web, há uma grande quantidade de informações que estão contidas nos diversos
sites, fóruns e blogs, entretanto, é sempre interessante utilizar algum tipo de filtro
para que se garanta, em uma busca, o resultado esperado.

Outra situação comum que a análise das informações textuais aplicadas a conteúdos
que nem sempre o usuário gostaria de ser incomodado com tais questões, no caso, os
spams. Da mesma maneira que essa análise negativa ao usuário pode ocorrer, existe o
retorno positivo, em que os dados dos usuários são classificados para indicar de acordo
com o que ele escreve na internet e vincular as preferencias e os desejos por produtos
em anúncios e ofertas que façam parte do interesse do mesmo.

Mensagem e textos formais


Ainda sim falando da utilização no meio web, mas com um enfoque diferenciado, as
aplicações de algoritmos que analisam textos podem ser aplicadas, por exemplo, as
mensagens nos e-mails (pessoais) e que o próprio usuário requer a avaliação para fazer
algum tipo de priorização dentre os seus e-mails em uma busca específica.

No mesmo contexto, tem a escolha do usuário de como será realizada a ordenação e


organização dos e-mails, no qual existe a classificação das pastas em que o assunto

113
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

irá especificar o seu conteúdo, e repetindo o que já foi mencionado e bem clássico
desse tipo de abordagem – os spams, que nos e-mails podem ser indicados a serem
automaticamente analisados e direcionados a pastas for serem o que são.

O uso da classificação automática, normalmente, é bem utilizado nas aplicações de


textos já formatados ou semiestruturados, para auxiliar na classificação de domínios
com uma pequena quantidade de classes, significando a simplicidade da aplicação. Os
exemplos dessas usabilidades podem ser exemplificados por meio da análise de artigos
acadêmicos – dos quais já se sabe a estrutura do onde está resumo, abstract, palavras-
chave etc.; as páginas da internet – que quando estão no padrão têm estrutura fixa e
melhores resultados nas páginas de busca; o próprio spam que tem uma estrutura pré-
estabelecida e que facilita sua identificação; artigos de jornal etc.

Representação de textos

O modelo mais usualmente utilizado é o Bag-of-Words (BOW), que representa


a conversão das palavras do texto em dados numéricos. A aplicação do BOW não é
feita de qualquer maneira, na etapa de pré-processamento dos dados, é preciso usar
métodos que auxiliem a identificar em reduzir a informação a ponto de ter resultados
mais precisos.

Dado uma série de documentos que serão analisados por um algoritmo de análise
textual, o padrão será baseado primeiramente, na fase de pré-processamento, no qual
cada um dos documentos é dividido para que as palavras sejam classificadas. Se houver
um número grande de repetições de alguns termos, o algoritmo pode identificar as
palavras que são comuns a todos os documentos, da mesma forma que se não tem essa
compatibilidade entre as palavras no texto, ele não vai achar que esses documentos são
da mesma classe.

Em um texto a ser avaliado, a ordem que as palavras estão sendo mostradas não é
relevante, então não faz diferença. Na procura por um termo em questão existe uma
opção de como a palavra que será representada por um atributo pode ser classificada:

»» Atributo do tipo booleano – representa a palavra em “0”, caso não esteja


contida no texto analisado ou “1” se a palavra existir.

»» Atributo do tipo numérico – vai representar a quantidade de vezes que


a palavra apareceu no texto (um contador que mostra a frequência com
que a palavra apareceu).

114
Aprendizado de Máquina (Machine Learning) │ UNIDADE V

Outro ponto relevante é a limpeza do texto em relação a termos que não são relevantes,
e que só aumentariam a demanda computacional se não fossem excluídos, como os
artigos, conjunções, pronomes etc.

A figura 34 mostra um exemplo do modelo Bag-of-Words onde o atributo escolhido é


representado pelo tipo numérico.

Figura 34. Modelo Bag-of-Words.

2 de

"Cada livro tem uma alma,


a alma de quem o tinha 1 cada
escrito e a alma de quem
o tinha lido e sonhado com
ele." 1 livro

Carlos Ruiz Zafon


3 alma

0 dito

“Bag of words” – vetores


de peso de palavras
Fonte: próprio autor.

Métodos de classificação de textos

Quando um texto é analisado inicialmente, a sua representação demanda uma dimensão


muito grande, pois cada palavra é conectada a um atributo. Essa é a razão para o
descarte do lixo que está presente nos textos. Os vetores têm que ser abrangentes, pois
não tem como determinar previamente o tipo de palavra que ele vai receber – para isso,
é utilizada a lei de Zipf.

A sua estrutura foi determinada por George Zipf e é considerada uma lei empírica que
é representada de acordo com a dimensão, a importância ou a frequência que estão
contidos em uma lista de elementos ordenada.  O enfoque da lei de Zipf está relacionada
as potências em razão da distribuição de valores baseados na posição da lista. A lei
ainda afirma que há uma relação entre o primeiro e o último valor da lista, a ponto de
se determinar a distribuição das palavras por meio de:

115
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

No qual,  é a frequência (o valor do atributo) da palavra contida no texto e ordenada


na última posição. No caso, a equação visa interligar o segundo elemento a uma certa
frequência de aparecimento equivalente à metade do valor que vai aparecer a primeira
palavra da lista, bem como o terceiro elemento terá uma frequência de aproximadamente
1/3 (ZIPF, 2017).

Muito dos algoritmos de classificação de textos tem problemas relacionados a contagem


dos atributos que são relevantes ao texto. Então, as abordagens que somam a existência
– como por exemplo, os algoritmos de Naïve Bayes, redes neurais, KNN e SVM – desses
vários atributos tem uma melhor aplicação em comparação com os algoritmos que,
simplesmente, separam os atributos significativos – por exemplo, as árvores de decisão
e a indução de regras.

Algoritmo Naïve Bayes para análise de textos


O modelo Naïve Bayes que analisa textos tem uma estrutura básica representada na
figura 35, no qual há classes e suas categorizações.

Figura 35. Modelo Naïve Bayes.

Fonte: adaptado de Bianca (2010).

A classificação composta pelo modelo Naïve Bayes avalia a informação dada, aquela
contida na categorização, como pode ser visualizada na figura 36.

116
Aprendizado de Máquina (Machine Learning) │ UNIDADE V

Figura 36. Classificação do Modelo Naïve Bayes.

Fonte: adaptado de Bianca (2010).

Fase de treinamento

Agora será abordada a aplicação do algoritmo em sua fase inicial – fase de treinamento,
em que pode ser considerado o seguinte pseudocódigo:

Seja D um conjunto de documentos

Seja V o vocabulário de todas as palavras nos documentos de D

Para cada classe ci ∈ C

Seja Di o subconjuntos de documentos D em que pertencem à categoria ci

Seja Ti a concatenação de todos os documentos em Di


Seja ni o número total de ocorrências de palavras em Ti
Para cada palavra wij ∈ C

Seja nij o número de ocorrências de em Ti

117
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

Fase de testes

Assim como na fase de treinamento, há seu código específico para indicar o que o
algoritmo precisa saber, a aplicação do algoritmo em sua fase de testes pode ser
observada de acordo com o seguinte pseudocódigo:

Dado um documento de teste x


Seja n o número de ocorrências de palavras em x
Retorne a classe:

Obs.: dado que é a palavra que ocorre na i-ésima posição de x.


Um dos problemas que podem surgir com as multiplicações de probabilidades –
considerando que há uma grande quantidade de dados, é o Underflow que significa a
aparição de um valor ponto flutuante.

Métricas de similaridade
Como já foi mencionado, a análise de textos que tem contextos semelhantes é bem
vista em relação aos resultados que podem ser encontrados. Por exemplo, a aplicação
de textos contidos numa prova, onde o professor quer avaliar se os alunos copiaram
as respostas uns dos outros. Ainda assim, esses valores textuais são convertidos em
dados numéricos pelo BOW na fase de pré-processamento, no qual é aplicado o modelo
vetorial de recuperação de informações.

Desta forma, se considera que após a validação das palavras na fase de pré-
processamento, continuaram termos que vão compor o vocabulário. Os termos são
vistos dentro de um espaço vetorial como termos ortogonais:

Logo, os termos () existentes no documento ( têm como o peso que é representado


por um número real. De forma que os documentos são visto por meio de vetores –
dimensionais:

118
Aprendizado de Máquina (Machine Learning) │ UNIDADE V

A representação dos vetores – dimensionais no gráfico, pode ser vista em torno do


exemplo ilustrado na figura 37, em que é possível questionar-se qual dos vetores ou é
mais similar a :

»» D1 = (2T1, 3T2, 5T3)

»» D2 = (3T1, 7T2, T3)

»» Q = (0T1, 0T2, 2T3)

Figura 37. Representação gráfica do cálculo de similaridade.

Fonte: Bianca (2010).

Coleção de documentos
A representação que pode ser atribuída a um conjunto de documentos () é de um
modelo vetorial visualizado por meio de uma matriz (figura 38) de pesos – que significa
ter em cada um de seus campos um valor atribuído a importância daquele termo em
questão. Se em uma matriz tiver, por exemplo, o peso na posição enquanto a posição ,
isso mostra que o terno na posição tem uma importância grande, enquanto na posição
não tem nenhuma – ou até mesmo significa que aquele documento não existe.

Figura 38. Matriz de pesos.

Fonte: Bianca (2010).

119
UNIDADE V │ Aprendizado de Máquina (Machine Learning)

Frequência dos termos x frequência inversa


dos documentos
Em textos que existem uma grande quantidade de termos que são vistos em uma alta
frequência, representa um diferencial para que seja identificado do que se trata o
documento em questão. A verificação de um termo dentro de um texto é feita por meio
de comparações do termo de interesse qualquer, juntamente como termo principal
(que tem uma maior frequência) daquele documento.

Diferentemente da semelhança dentro de um mesmo texto, os textos de vários


documentos quando são analisados têm uma avaliação de frequência inversa ao caso
anterior, dado que se o termo aparece em vários textos significa que aquele termo é um
termo com pouco significado.

Conclusão

A aplicação das inferências lógicas é um meio bastante utilizado na inteligência artificial,


com o objetivo de manipular o conhecimento. Assim pode haver a análise das diversas
formas de inferência. Como a indução que tem a capacidade de realizar partindo de
um conjunto de observações a especificação de um conhecimento que ainda não está
completo em relação as observações, e aplicar a generalização de novos conhecimentos
referentes as essas observações.

Juntamente com as noções apresentadas sobre os conceitos de análises de textos


para reconhecimentos de padrões de palavras que tem se mostrado um diferencial da
aplicação da aprendizagem de máquina em prol da tecnologia.

120
Estudo de Caso Unidade Vi
Prático

Esta unidade é baseada no estudo de caso apresentado por Batista (2009), em seu
trabalho denominado “Análise da Aplicação de Algoritmos de Data Mining em Bases
de Dados de Vendas de Produtos”. O estudo teve o apoio da ferramenta Microsoft
Excel 2007, com o objetivo de facilitar sua aplicação aos demais usuários, dado que a
ferramenta é bem difundida e acessível.

Capítulo 1
Fábrica de refrigerantes

O estudo de caso é estruturado de acordo com o exemplo de uma fábrica de refrigerantes


e que visa intensificar as vendas dos produtos relativos a esta fábrica. A razão foi fixada
pelo fato de que a quantidade de vendas de alguns desses produtos está abaixo da meta,
dado um certo tipo de cliente. Segundo Batista (2009), os dados foram coletados nas
tabelas do banco de dados da fábrica em questão, no final de 2008.

As tabelas utilizadas foram carregadas a partir do banco de dados da


fábrica (SQL Server 2000) para um servidor de testes (SQL Server
2008). Neste último também estava instalado o serviço de Analisys
Services, responsável por armazenar os modelos criados no Excel. O
Excel, por sua vez, para que tivesse acesso aos algoritmos do Analisys
Services e ao seu suporte para a análise dos dados, tinha instalado um
Add-in chamado SQL Server Data Mining Add-ins for Office 2007. Este
add-in adiciona duas abas às já existentes do Excel possibilitando a
análise dos dados. (BATISTA, 2009).

O foco da análise foi nas tabelas que tinham as informações dos pedidos e dos perfis
dos clientes, como também dos produtos. Cada pedido é representado pela tabela de
pedidos de forma única. A tabela de pedidos ainda armazena o cabeçalho e os detalhes
dos pedidos. Assim, é necessário, na maioria das vezes, aplicar filtros para se obter

121
UNIDADE VI │ Estudo de Caso Prático

somente os itens. As tabelas usadas neste estudo de caso são apresentadas nas figura 39
e 40, que foram divididas para melhor visualização da imagem.

Figura 39. Modelagem de algumas tabelas do banco de dados.

Fonte: Batista (2009).

Figura 40. Modelagem de algumas tabelas do banco de dados.

Fonte: Batista (2009).

122
Estudo de Caso Prático │ UNIDADE Vi

Etapas do KDD

As etapas desde a seleção de dados até a extração de dados são brevemente pontuadas
a seguir:

»» Seleção de dados – essa etapa é responsável por selecionar (como o


nome já propõe) os dados das tabelas, juntamente com as informações
de vendas dos produtos aos clientes. Para tanto, é preciso uma cópia do
banco de dados relacional da produção atualizados para um banco de
testes. Assim, são realizadas as consultas e alterações sem interferências.
Os produtos de clientes que não possuem informações são deletados.

»» Codificação – de acordo com as informações sobre os pedidos de


compras dos clientes, é viável analisar o perfil dos clientes e dos produtos
anteriormente vendidos. Somente os dados disponíveis são processados,
então, a codificação identifica quais os dados que vão ser representados.
Lembrando que não há transformações de dados nesta etapa.

»» Enriquecimento – assim que os dados de vendas são agregados as


informações de perfis do cliente. Segundo Batista (2009), não houve
disponibilização dos dados de dados geográficos, entretanto, foi aplicado
a informação de rota de venda do cliente, pois os que estão próximos vão
compor a mesma rota de vendas.

»» Normalização de dados – no problema em questão não foi preciso uma


normalização dos dados, visto que os dados já estavam normalizados. No
entanto, foi preciso a aplicação de um filtro na tabela de pedidos, causada
pelo excesso de informações no cabeçalho, e considerando que este não
representa informações importantes na análise.

»» Construção de atributos – é a etapa responsável pela geração de


atributos a partir dos dados presentes. No caso deste estudo, só houve o
acréscimo de um atributo novo em relação ao preço de venda do produto.
A sua solução foi baseada na divisão do preço de venda do produto por
sua quantidade vendida.

»» Correção de prevalência – alguns produtos têm um maior poder de


venda em comparação com outros. Por exemplo, nessa fábrica, a venda
de refrigerantes de cola é maior que qualquer sabor. Logo, é necessária
a aplicação de uma correção para que não haja tanto desequilíbrio entre
os dados.

123
UNIDADE VI │ Estudo de Caso Prático

Porém, não houve aplicação dessa técnica neste caso de uso, por parte do interesse do
autor.

»» Partição do conjunto de dados – os dados podem ser divididos


em conjuntos distintos para treinamento e testes (como foi visto ao
longo desta apostila). O algoritmo executa esta etapa, configurando os
parâmetros para que a porcentagem do total dos dados.

»» Extração de dados – sempre é necessário a extração dos dados de


acordo com sua importância. Para que fosse aplicado o processo dos
algoritmos de mineração de dados, Batista (2009) elaborou uma consulta
SQL, que é ilustrada na figura 41.

Figura 41. Imagem do código de consulta SQL.

Fonte: Batista (2009).

Algumas informações como as contidas na linha 16, em que é aplicado um filtro que
contém apenas os itens de cada produto, e na linha 17, há outro filtro para mostrar
somente os produtos “refrigerantes”, dado o grande número de produtos existentes –
bem como o foco da pesquisa.

Os dados adquiridos foram colocados em uma planilha para que houvesse a análise
deles. A figura 42 representa os dados contidos nessas planilhas, de acordo com a
consulta SQL anterior.

124
Estudo de Caso Prático │ UNIDADE Vi

Figura 42. Dados do banco filtrados em uma planilha.

Fonte: Batista (2009).

Alguns outros dados podem ser analisados como o valor do produto, no qual é feito o
acréscimo dos campos de descrição do produto, assim como o tamanho em somente
um campo. Essa segunda análise pode ser visualizada na figura 43.

Figura 43. Segunda visão dos dados da consulta.

Fonte: Batista (2009).

125
UNIDADE VI │ Estudo de Caso Prático

Aplicação de Clusters

A aplicação da técnica de clusters contribui com a visualização da distribuição das


características dos registros de venda, fazendo com que eles possam ser agrupados
de acordo com suas semelhanças. Essa utilização pode trazer bons retornos dado o
conhecimento do seu objetivo, como por exemplo, a diversificação dos produtos
vendidos para um determinado segmento de clientes. Foram citados vários métodos
e algoritmos para a execução desse objetivo e, neste caso, foi aplicado o algoritmo de
K-means.

É possível observar na figura 44 uma tela de parâmetros no qual foi optado o método
de clusters. A razão para a escolha do algoritmo de K-means é baseada no fato de que
ele consegue resumir a quantidade de subdivisões de categorias – no caso, se houver
informações bem definidas, é sabido que se obterá bons resultados na análise dos dados.

Figura 44. Tela para escolha de parâmetros.

Fonte: Batista (2009).

A medida em que o algoritmo é executado, é necessária a escolha da porcentagem dos


dados que vão ser escolhidos para sua aplicação a fase de treinamento do algoritmo
de forma aleatória. Após a fase de treinamento, este mesmo algoritmo vai executar a
segunda fase de testes. É obtido, como saída, um gráfico que é particionado as algumas
categorias de acordo com os seus atributos escolhidos. Para esse estudo de caso, os

126
Estudo de Caso Prático │ UNIDADE Vi

atributos selecionados foram: o produto, o tamanho da embalagem do produto, a classe


social, o segmento e o volume de clientes. O resultado encontrado em relação aos dados
dos pedidos pode ser visto na figura 45.

Figura 45. Análise resultante do algoritmo de clusters.

Fonte: Batista (2009).

Pontos podem ser analisados em relação aos resultados que foram apresentados na
figura 45. Tais resultados podem ser utilizados para melhorar quaisquer ponderações
ou constatações (como possíveis mudanças no conceito ou ações promocionais) que
foram vistas em relação ao processo atual da fábrica.

Analisando os clusters formados – dado que sua ordenação foi feita de acordo com a
quantidade de vezes que os dados são descobertos – a coluna “Population” mostra que a
empresa possui um particionamento preciso de vendas para parceiros e não parceiros.
É possível observar que há uma grande quantidade de diversidade de produtos, com
vários segmentos e tamanhos. Outro ponto é o particionamento entre altos e baixos
volumes de vendas. Uma análise diferente feita por Batista (2009) é descrita a seguir.

Em se tratando do mix de produtos (quantidade de produtos diferentes)


podemos notar que no cluster 2 temos um baixo mix, dando muita
ênfase ao refrigerante de cola. Vendo os outros atributos, vemos que
os clientes do cluster 2 em sua maioria são não parceiros e são de baixo
volume. Em se tratando do cluster 2, vemos que existe uma grande
quantidade, ou pelo menos a segunda mais significativa, de clientes
não parceiros, de baixo volume e com baixo mix de produtos, ou seja,
exatamente o que a empresa precisa mudar nos três atributos.

127
UNIDADE VI │ Estudo de Caso Prático

Temos que notar que para este cluster temos uma grande quantidade
de Segmento Bar-Lanchonete, que tradicionalmente, não apresenta
um alto volume. Portanto temos que ter em mente que quando uma
ação ou promoção foi feita para que estes índices apresentados no
cluster sejam alterados, provavelmente o atributo de volume pode não
ser alterado. Sem dúvida com o marketing agindo, pode-se aumentar
o mix de produtos, o que interessa ao fabricante, pois terá mais
produtos diferentes sendo consumidos por clientes e seu nome mais
conhecido. Também deve focar em tornar os clientes em parceiros, pois
desta forma, o cliente tem mais descontos na compra dos produtos e
consequentemente, aumentando o volume vendas. (BATISTA, 2009).

Aplicação do Shopping Basket (associação)

Técnicas como a associação também já foram mencionadas e vai ser a próxima aplicação
observada neste estudo de caso. Assim, o algoritmo de associação proporciona uma
correlação entre os produtos que foram comprados. A sua análise vai demonstrar quais
produtos é mais comprado juntamente com outros produtos.

O objetivo desse tipo de análise é, por exemplo, fazer com que o produto principal da
empresa seja associado a vários outros não tão bem classificados, aumentar a pretensão
de vendas e crescer os lucros. As planilhas que foram criadas possuem a informação
de distribuição dos produtos de acordo com sua quantidade de ocorrências nos dados,
realizada para cada conjunto de dados.

A figura 46 mostra a imagem de uma tela do SQL Server, em que é preenchido algumas
informações para executar o número de pedidos – destacando-se em que campo vai
estar o produto vendido, assim como o seu valor. Lembrando que para a execução desse
algoritmo, é necessário que os dados estejam ordenados pelo número do pedido.

128
Estudo de Caso Prático │ UNIDADE Vi

Figura 46. Preenchimento dos parâmetros do algoritmo de associação.

Fonte: Batista (2009).

O algoritmo igualmente permite que seja escolhido o valor de suporte e probabilidade


associado a ele. Batista (2009) optou por valores de 10 produtos para suporte e 50% de
probabilidade. A figura 47 ilustra a tela de acesso para ser realizada a configuração dos
valores suporte e probabilidade.

Figura 47. Configuração de parâmetros do algoritmo.

Fonte: Batista (2009).

129
UNIDADE VI │ Estudo de Caso Prático

Depois do processo de configuração, é executado o próprio algoritmo, no qual resulta


alguns dados, sendo eles apresentados a cada passo da execução como pode ser visto na
tela mostrada na figura 48.

Figura 48. Progresso de execução do algoritmo.

Fonte: Batista (2009).

Após a fase de execução, o algoritmo retorna duas planilhas que contém informações
relevantes. Uma das planilhas, apresentada na figura 49, mostra que o particionamento
das vendas com base nas regras encontradas até então.

Figura 49. Particionamento de vendas.

Fonte: Batista (2009).

Informações como o fato de que o refrigerante de cola é realmente o produto mais


vendido. É possível observar que este mesmo produto tem duas vezes mais vendas do
que o segundo produto mais vendido. A variação do maior dos produtos referente aos
pedidos também pode incluir a análise da coluna size. Segundo Batista (2009).

130
Estudo de Caso Prático │ UNIDADE Vi

Existe uma boa divisão entre os pedidos de tamanho 2 e 3. Também


é possível ver que os maiores valores alcançados são necessariamente
pelos refrigerantes de cola, mas que os de laranja, especialmente os de
tamanhos individuais tem grande potencial. Entretanto os de guaraná
não aparecem na parte de cima da lista. Isso se dá principalmente
pelo fato de que existe um grande concorrente neste sabor e vemos
que é necessária alguma ação no sentido de alavancar as vendas deste
refrigerante. (BATISTA, 2009).

Figura 50. Recomendações do algoritmo.

Fonte: Batista (2009).

A figura 50 apresenta uma tela em que o algoritmo promove um conjunto de


recomendações. Obviamente, o produto mais consumido, consequentemente, será
o mais recomendado – sempre tentando se beneficiar do produto principal, em prol
dos demais. Qualquer que seja a estratégia escolhida, o importante é sempre tentar
aumentar as vendas dos produtos para haver aumento nos lucros da empresa.

Vemos também que a maioria das regras sugere a venda associada de produtos de
mesmo tamanho ou próximo, ou seja, apenas individuais ou apenas familiares, mas
devemos dar atenção às sugestões para tamanhos diferentes também para que possam
ser difundidos mais tamanhos para o mercado, diversificando o mercado e atingindo
mais consumidores.

131
UNIDADE VI │ Estudo de Caso Prático

Aplicação do Naïve Bayes


O algoritmo Naïve Bayes vai determinar, nesse exemplo, quais são os atributos que mais
influenciam na compra dos produtos. O objetivo da aplicação desse tipo de algoritmo é
para ter algum retorno em relação a informações referentes as vendas dos produtos da
fábrica dado o tipo do perfil de seus clientes.

A escolha do foco no campo “Produto + Tamanho” foi utilizada no algoritmo com o


intuito de observar como o mesmo é influenciado por outros campos como segmento,
volume e classe Social. A maneira como esses dados são descritos é apresentada na
figura 51.

Figura 51. Parâmetros do algoritmo de Naïve Bayes.

Fonte: Batista (2009).

Posteriormente, o algoritmo é executado e, então, são disponibilizados os filtros


existente para que auxilie na compreensão dos resultados. A figura 52 ilustra a planilha
com essas informações.

132
Estudo de Caso Prático │ UNIDADE Vi

Figura 52. Resultado do algoritmo de Naïve Bayes pelo campo “BAR BOTECO”.

Fonte: Batista (2009).

A aplicação do filtro de acordo com a coluna values com o termo “BAR BOTECO”,
tem-se como análise que a maior parte das vendas é realizada em relação a produtos
individuais.

Figura 53. Resultados algoritmo Naïve Bayes por segmentos.

Fonte: Batista (2009).

133
UNIDADE VI │ Estudo de Caso Prático

O filtro que mostra os segmentos relativos ao “TRADICIONAL” são referentes a


supermercados e é possível analisar que ele não contém somente um tipo de produto
como venda principal. A figura 53 ilustra essa planilha filtrada.

A última análise é representada pelo volume de vendas dos produtos, o qual é apresentado
na figura 54, que não é possível um atributo sozinho determinar características. No
entanto, é observado que a presença de um produto pouco comprado aparece – sabor
UVA, para value = ALTO VOLUME.

Figura 54. Resultados algoritmo Naïve Bayes por volume para value = “ALTO VOLUME”.

Fonte: Batista (2009).

Se a pesquisa for o contrário e for analisado os clientes de value = BAIXO volume,


(como mostrado na figura 55), é observado que se tem predominância entre os produtos
individuais. O objetivo nesse caso é tornar esses clientes também para alto volume, seja
por se tornar parceiros, e dando descontos para que cresça o seu volume de compras.

134
Estudo de Caso Prático │ UNIDADE Vi

Figura 55. Resultados algoritmo Naïve Bayes por volume para value = “BAIXO”.

Fonte: Batista (2009).

Conclusão

Qualquer tipo de estudo de caso auxilia bastante o entendimento dos conceitos teóricos,
como os que foram estudados nas outras unidades desta apostila. Foi apresentado nesta
unidade um caso, no qual o algoritmo de mineração de dados cede somente informações
e permite que sejam buscadas inferências sobre a distribuição dos produtos, de acordo
com o perfil dos clientes. Dada uma equipe de marketing experiente, várias informações
podem ser extraídas da análise dos dados – sempre com o objetivo de crescimento dos
lucros e redução dos danos.

135
Referências

ACADEMY, DATA SCIENCE. Data Mining e Modelagem Preditiva. 2017.


Disponível em: <https://www.datascienceacademy.com.br/pages/curso-data-mining-
e-modelagem-preditiva>. Acesso em: 25 jul. 2017.

BARANAUSKAS, José Augusto; MONARD, Maria Carolina. Metodologias para


Seleção de Atributos Relevantes. 1998.

BARTH, Fabrício Jailson; Entendendo como funciona o algoritmo de


Cluster K-Means. 2013. Disponível em: <http://fbarth.net.br/materiais/docs/am/
aIntroducao.pdf>. Acesso em: 21 ago. 2017.

BATISTA, Alexandre da Costa. Análise da Aplicação de Algoritmos de Data


Mining em Bases de Dados de Vendas de Produtos. Escola politécnica de
Pernambuco – UPE, 2009.

BLOEDORN, Eric; MICHALSKI, Ryszard S.; 1998. Data-Driven Construtive Induction.


IEEE Intelligent Systems, vol. 13, n. 2, pp. 30-37.

BRAGA, A. P.; LUDIMIR, T. B.; CARVALHO, A. C. L. F. Redes neurais artificiais.


2003. Chapter 6, pp. 141-168. Manole, Barueri, SP, Brasil.

BREIMAN, L.; FRIEDMAN, J.; OLSHEN, R.; STONE, C. Classification and


Regression Trees. Chapman and Hall/CRC, 1984.

Bulletin of Mathematical Biophysics, 5:115-137.

BUSINESS, Big Data. Tipos de Análise de Big Data: você conhece todos os 4?.
2017. Disponível em: <http://www.bigdatabusiness.com.br/conheca-os-4-tipos-de-
analises-de-big-data-analytics/>. Acesso em: 26 jul. de 2017.

BUSSAB, W. O.; MIAZAKI, E. S.; ANDRADE, D. F. Introdução à Análise de


Agrupamentos. 1990. IX Simpósio Brasileiro de Probabilidade e Estatística. IME-
USP, São Paulo.

CABENA, Peter et al. Discovering Data Mining – From Concept to Implementation.


New Jersey, USA: Prentice Hall PTR, 1997.

136
Referências

CAMILO, Cássio Oliveira; DA SILVA, João Carlos. Mineração de Dados: conceitos,


tarefas, métodos e ferramentas. 2009. Instituto de Informática. Universidade Federal
de Goiás.

CHAME, Marcia Barbosa; HELIO J. C.; GADELHA, Luiz. Sistema de Informação


em Saúde Silvestre – SISS-Geo. 2015. Disponível em: <https://www.researchgate.
net/figure/281450192_fig1_Figura-1-Fluxo-relativo-a- aprendizagem-de-maquina-
do-SISS-Geo>. Acesso em: 25 ago. 2017.

CHANDRA, B.; VARGHESE, P. Fuzzy sliq decision tree algorithm. IEEE Transactions
on Cybernetics, n. 38, pp. 1294–1301, 2008.

______. On improving efficiency of sliq decision tree algorithm. International Joint


Conference on Neural Networks – IJCNN, p. 66–71, 2007.

CIOS, K. J; PEDRYCZ, W; SWINIARSKI, R. W.; KURGAN, L. A. Data Mining – A


Knowledge Discovery Approach. Springer, 2007.

CIOS, Krzysztof; PEDRYCZ, Witold; SWINIARSKI, Roman. Data Mining Methods


for Knowledge Discovery. Boston, USA: Kluwer Academic Publishers, 2000.

CLESIO, F. Diferença entre Data Mining (Mineração de Dados) e


Machine Learning (Aprendizado de Máquina). 2015. Disponível em: <https://
mineracaodedados.wordpress.com/2015/01/06/diferenca-entre-data-mining-
mineracao-de-dados-e-machine-learning-aprendizado-de-maquina/>. Acesso em: 27
jul. 2017.

______. Mineração de dados com software livre. 2012. Disponível em: <https://
mineracaodedados.wordpress.com/2012/07/12/mineracao-de-dados-com-software-
livre/>. Acesso em: 21 ago. 2017.

CONCEITOa. Conceito de dados. 2017. Disponível em: <http://conceito.de/dados>.


Acesso em: 25 jul. 2017.

CONCEITOb. Conceito de informação. 2017. Disponível em: <http://conceito.de/


informacao>. Acesso em: 25 jul. 2017.

CONCEITOc. Conceito de conhecimento. 2017. Disponível em: <http://conceito.


de/conhecimento>. Acesso em: 25 jul. 2017.

CÔRTES, Sérgio da Costa; Porcaro, Rosa Maria; Lifschitz, Sérgio. Mineração de


Dados – funcionalidades, técnicas e abordagens. 2002. Rio de Janeiro - PUC.

137
Referências

DIETTERICH, Thomas G. Machine Learning Research: Four Current Directions.


Draft os May 23, Oregon State University, 1997.

ERICSON, Gary; DENG, Sunny. Como escolher algoritmos de Aprendizado de


Máquina do Microsoft Azure. 2017. Disponível em: <https://docs.microsoft.com/
pt-br/azure/machine-learning/machine-learning-algorithm-choice>. Acesso em: 20
ago. 2017.

EVERITT, B. S. Clustering Analysis. 1993. Sevenoak: Edward Arnold.

FAYADD, Usama M.; PIATETSKY-SHAPIRO, Gregory; SMYTH, Padhraic. Asvances


in Knowledge Discovery and Data Mining. Menlo Park, USA: AAAI Press, 1996.

FERREIRA, Jorge B. Mineração de Dados na Retenção de Clientes em Telefonia


Celular. 2005. Faculdade de Engenharia, Pontifícia Universaidade Católica do Rio de
Janeiro, Rio de Janeiro.

GAZIN, Blog Gazin Atacado. 6 dicas para garantir a satisfação do cliente. 2014.
Disponível em <http://blog.gazinatacado.com.br/6-dicas-para-garantir-a-satisfacao-
do-cliente/>. Acessado em 02 de Agosto de 2017.

GEHRKE, J; GANTI, V; RAMAKRISHNAN, R; LOH,W.-Y. BoatU optimistic


decision tree construction. Proceedings of the 1999 ACM SIGMOD, pp. 169–180,
1999.

GEHRKE, J; RAMAKRISHNAN, R; GANTI, V. Rainforest Ua framework for


fast decision tree construction of large datasets. Data Mining and Knowledge
Discovery, 4:127–162, 2000.

GSI. Introdução a Mineração de Dados – o que é mineração de dados?.1998.


Grupo de Sistemas Inteligentes – Mineração de Dados. Din – Departamento de
Informática. Universidade Estadual de Maringá. Disponível em: <http://www.din.
uem.br/ia/mineracao/introducao/introducao.html>.

GUAZZELLI, Alex. Prevendo o Futuro, Parte 2: Técnicas de Modelagem Preditiva.


2012. Disponível em < https://www.ibm.com/developerworks/br/industry/library/
ba-predictive-analytics2/index.html>. Acessado em 30 de Julho de 2017.

HAN, Jiawei; KAMBER, Micheline. Data Mining Concepts and Techniques.


2006. University of Illinois at Urbana-Champaign. Second Edition Morgan Kaufmann.
ISBN 13: 978-1-55860-901-3, ISBN 10: 1-55860-901-6.

138
Referências

HOLLAND, J. H. Adaptation in natural and artificial systems. 1975. The


University of Michigan Press, Ann Arbor, MI, USA.

HTML.NET Lição 17: Banco de Dados. 2016. Disponível em <http://pt-br.html.net/


tutorials/php/lesson17.php>. Acessado em 19 de Agosto de 2017.

IBM, IBM Knowledge Center. Modelagem Preditiva. Disponível em <https://


www.ibm.com/support/knowledgecenter/pt-br/SSPT3X_4.1.0/com.ibm.swg.
im.infosphere.biginsights.product.doc/doc/bi_predictive_modeling.html>. Acessado
em 02 de Agosto de 2017.

IMASTERS, developerWorks Brasil. Prevendo o futuro, Parte 1: O que é a análise


preditiva?. 2012. Disponível em <https://imasters.com.br/desenvolvimento/
prevendo-o-futuro-parte-01-o-que-e-a-analise-preditiva/?trace=1519021197&source=
single>. Acessado: em 31 de Julho de 2017.

______. Prevendo o futuro – Parte 4. 2012. Disponível em: < https://imasters.


com.br/desenvolvimento/prevendo-o-futuro-parte-04/?trace=1519021197&source=si
ngle>. Acessado em: 02 de Agosto de 2017.

JOHN, George H. Enhancements to the Data Mining Process. Stanford, USA:


Stanford University, 1997.

KLÖSGEN, Willi (Org.). Handbook of Data Mining and Knowledge Discovery.


New York. USA: Oxford University Press. 2002.

LOURY, John. Envolving Analystics: From Descriptive to Prescriptive. 2014.


Disponível em: <http://www.growwithfarm.com/evolving-analytics-from-descriptive-
to-pr;escriptive/>. Acesso em 27 Julho de 2017.

LOUZADA-NETO, Francisco; DINIZ, Carlos Alberto Ribeiro. Técnicas Estatísticas


em Data Mining. 2002. Departamento de Estatística – Universidade Federal de São
Carlos – SP.

MAZLACK, L. J. Naive rules do not consider underlying causality. In: STUDIES IN


COMPUTATIONAL INTELLIGENCE, p. 213U229. Springer-Verlag, 2008.

MCCUE,C. Data Mining and Predictive Analysis - Intelligence Gathering and


Crime Analysis. Elsevier, 2007.

MCCULLOCH, W.; PITTS, W. A logical calculus of the ideas immanent in


nervous activity. 1943.

139
Referências

MEHTA, M; AGRAWAL, R; RISSANEN, J. Sliq: A fast scalable classifier for data


mining. Procs. of the 5th EDBT, p. 18-32, 1996.

METADADOS. O que são metadados? 2017. Disponível em: <http://www.


metadados.pt/oquesaometadados>. Acesso em: 28 jul. 2017.

MICHAUD, P. Clustering techniques. 1997. Future Generation computer Systems,


n. 13, pp. 135-147.

MICROSOFT. Conceitos de Mineração de Dados. 2017. Disponível em: <https://


msdn.microsoft.com/pt-br/library/ms174949(v=sql.120).aspx>. Acesso em: 25 jul.
2017.

NOGARE, Diego. Aprendizagem de Máquina. 2015. Disponível em: <http://www.


diegonogare.net/2015/08/entendendo-como-funciona-o-algoritmo-de-cluster-k-
means/>. Acessado em: 25 ago. 2017.

OLIVEIRA, João Paulo. Banco de Dados: Pra que serve? 2012. Disponível em:
<http://bloginformaticamicrocamp.com.br/office/conceitos-de-banco-de-dados/>.
Acessado em: 17 ago. 2017.

PETERMANN, Rafael Jordan. Modelo de Mineração de Dados para Classificação


de Clientes em Telecomunicações. 2006. Pontifícia Universidade Católica do Rio
Grande do Sul.

PICHILIANI, Mauro. Data Mining na Prática: Classificação Bayesiana. 2006.


Disponível em: <https://imasters.com.br/artigo/4926/sql-server/data-mining-na-
pratica-classificacao-bayesiana/?trace=1519021197&source=single>. Acessado em: 16
ago. 2017.

PRATI, Ronaldo Cristiano. Novas abordagens em aprendizado de máquina


para a geração de regras, classes desbalanceadas e ordenação de casos.
2006. Instituto de Ciências Matemáticas e de Computação – ICMC/USP.

QUINLAN, J. R. C4.5: Programs for Machine Learning. Morgan Kaufmann


Publishers Inc., 1992.

______. Simplifying decision trees. Technical report, Massachusetts Institute of


Technology, 1986.

RIBEIRO, Jefferson. Conceitos e Técnicas sobre Data Mining. 2010. Disponível


em: <http://www.devmedia.com.br/conceitos-e-tecnicas-sobre-data-mining/19342>.
Acesso em: 26 jul. 2017.

140
Referências

Russell, S.; NORVIG, P. Artificial Intelligence - a modern Approach. 2003. Prentice


Hall, 2 edition.

SAS. Big Data – O que é e o que é importante? 2017. Disponível em: <https://www.
sas.com/pt_br/insights/big-data/what-is-big-data.html>. Acesso em: 26 jul. 2017.

SASb Machine Learning – O que é e o que é importante?. 2017. Disponível em:


<https://www.sas.com/pt_br/insights/analytics/machine-learning.html>. Acesso em:
27 Julho de 2017.

SELIYA, N.; KHOSHGOFTAAR, T. M. Software Quality Modeling with Limited


Apriori Defect Data, chapter Chapter 1, p. 1-16. Idea Group Publishing, 2007.

SETZER, Valdemar W; Dado, Informação, Conhecimento e Competência.


DataGramaZero. Revista de Ciência da Informação – n° zero. São Paulo, dez. 1999.

SHAFER, J.; AGRAWAL, R.; MEHTA, M. Sprint: A scalable parallel classifier for data
mining. Procs. of the 22nd VLDB, p. 544-555, 1996.

SHOLOM, M. Weis; INDURKHYA, Nitim. Predict Data Mining. 1999. Morgan


Kaufmann Publishers, Inc.

THURAISINGHAM, Bhavani. Data Mining. CRC Press, 199.

WANG, J. Encyclopedia of Data Warehousing and Mining. Idea Group


Reference, 2005.

WEISS, Sholom M.; INDURKHYA, Nitin. Predictive Data Mining – a practical


guide. San Francisco, USA: Morgan Kaufmann Publishers Inc., 1998.

YANG, Q.; YIN, J.; LING, C.; PAN, R. Extracting actionable knowledge from decision
trees. IEEE Transactions on Knowledge and Data Engineering, vol. 19, n. 1, pp.
43-56, 2007.

ZADROZNY, Bianca Aprendizagem de Máquina. 2010. Disponível em: <http://


www2.ic.uff.br/~bianca/aa/aulas/AA-Aula12.pdf>. Acesso em: 15 ago. 2017.

ZHANG, H. The optimality of naive bayes. In: 2004 FLAIRS Conference - AAAI,
2004.

ZIPF; Lei de Zipf. 2017. Disponível em: <https://pt.wikipedia.org/wiki/Lei_de_


Zipf>. Acessado em: 17 ago. 2017.

141
Referências

142

Você também pode gostar