Mineração de Dados Dando Sentido à Informação
Jul 07, 2015
Dado, Informação e Conhecimento
● Dado - a mais elementar descrição de coisas, eventos, atividades e transações
● Informação – organização de dados com significado e valor
● Conhecimento - a concepção do entendimento da informação, baseado no reconhecimento de padrões de tal maneira que haja compreensão da mesma
1
O que é Mineração de Dados?
A habilidade de descobrir padrões interessantes de uma grande quantidade de Dados
DESCOBERTA DE CONHECIMENTO
O modelo tradicional para transformação de dados em informação (conhecimento), consiste em um processo manual de todas as informações por especialistas, que fazem relatórios para poderem ser analizados.
2
Na grande maioria dos casos, devido ao grande volume de dados, esse processo manual torna-se impraticável.
Segundo Fayyad, o KDD(Knowledge Dicovery in Databases ou Descoberta de Conhecimento em Banco de Dados) é uma tentativa de solucionar o problema causado pela “Era da Informação”: a sobrecarga de dados.
KDD X DATA MINING
Não é consenso a definição dos termos KDD e Data Mining. Grupo de autores consideram sinônimos os termos, para outro grupo KDD refere-se a todo o processo de descoberta de conhecimento, e a Mineração de Dados uma das atividades do processo.
PROCESSO DE KDD
“KDD é um processo, de várias etapas, não trivial, interativo e iterativo, para identificação de padrões compreensíveis, válidos, novos e potencialmente úteis a partir de grande conjunto de dados”(FAYYAD, 1996).
● Seleção dos dados– Escolha da base a ser minerada, podendo ser amostra de
dados, subconjunto de variáveis até grande massa de dados.
● Pré-processamento– Eliminar ruídos, tuplas vazias, valores ilegítmos.
● Transformação– Depende do objetivo da busca e do algoritmo a ser aplicado
pois eles possuem as limitações a serem imposta a base de dados.
● Mineração– É a fase mais importante sendo utilizado algum
algoritmo que utiliza uma determinda técnica, que tem por objetivo elaborar um modelo para representar um conjunto de dados.
● Avaliação– Fase que identifica os padroes extraídos na fase de
mineração. Essa fase envolve todos os participantesf que avaliam de forma criteriosa os resultados.
PREPARAÇÃO DOS DADOS
Em geral antes de se aplicar algoritmos de mineração é necessário explorar, conhecer e preparar os dados.
Nesse sentido, uma das primeiras atividades é obter uma visualização dos dados, de forma a se ter uma visão geral, para decidir quais técnicas mais indicadas.
Com visão inicial definida, é necessário explorar-los, buscando, além de mais conhecimento, encontrarmos valores que possa comprometer sua qualidade tais como:
3
● Valores em branco ou nulos;● Valores viciados;● Variáveis duplicadas;● Entre outras.
À medida em que os problemas vão sendo encontrados e o entendimento vão sendo obtido ocorre a preparação dos dados para a aplicação dos algoritmos de mineração de dados.
A preparação dos dados na maioria dos projetos pode compreender até 80%. O processo de preparação dos dados consiste principalmente em:
● Limpeza dos dados– Frequentemente os dados são encontrados com
diversas inconsistencias: registros incompletos, valores errados, e dados inconsistentes. Esta etapa visa eliminar estes problemas.
● Integração dos dados– É comum obter os dados a serem minerados de
diversas fontes: banco de dados, arquivos textos, planilhas, data warehouses, vídeos, imagens entre outras. Surge a necessidade de integração dos dados.
● Transformação dos dados– Alguns algoritmos trabalham apenas com dados
numéricos outros apenas com valores categoricos. Neste caso há necessidade de transformar valores numéricos em categóricos e vice-versa.
● Redução dos dados – O volume de dados usados na mineração
costuma ser alto. Alguns casos tão grande que torna a mineração impraticável. Neste caso, as técnicas de redução de dados podem ser aplicadas para que a massa de dados original seja convertida em uma massa menor sem perder a representatividade dos dados originais.
Tarefas
Descrição: É a tarefa utilizada para descrever os padrões e tendências revelados pelos dados
Classificação :
Determinar quando uma transação de cartão de crédito pode ser uma fraude;
Identificar em uma escola, qual a 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.
4.1
Estimação ou Regressão:
Estimar a quantia a ser gasta por uma família de quatro pessoas durante a volta às
aulas;
Estimar a pressão ideal de um paciente baseando-se na idade, sexo e massa corporal.
Predição:
Predizer o valor de uma ação três meses adiante;
Predizer o percentual que será aumentado de tráfego na rede se a velocidade aumentar;
Predizer o vencedor do campeonato baseando-se na comparação das estatísticas dos times.
Agrupamento:
Segmentação de mercado para um nicho de produtos;
Para auditoria, separando comportamentos suspeitos;
Reduzir para um conjunto de atributos similares registros com centenas de atributos.
Associação:
Determinar os casos onde um novo medicamento pode apresentar efeitos colaterais;
Identificar os usuários de planos que respondem bem a oferta de novos serviços.
Técnicas de MD
Harrison (1998) afirma que não há uma técnica que resolva todos os problemas de mineração de dados. Diferentes métodos servem para diferentes propósitos, cada método oferece suas vantagens e suas desvantagens. A familiaridade com as técnicas é necessária para facilitar a escolha de uma delas de acordo com os problemas apresentados. Durante o processo de mineração, diversas técnicas devem ser testadas e combinadas a fim de que comparações possam ser feitas e então a melhor técnica (ou combinação de técnicas) seja utilizada.
4.2
Associações● É uma das técnicas mais conhecidas de
mineração de dados, devido ao problema da Análise da Cesta de Compras. Consiste em identificar o relacionamento dos itens mais frequentes em um determinado conjunto de dados, e permite obter resultados do tipo: SE compra leite e pão TAMBÉM compra manteiga. Esta construção recebe o nome de Regra de Associação (Association Rules).
Raciocínio Baseado em Casos
● “O MBR procura os vizinhos mais próximos nos exemplos conhecidos e combina seus valores para atribuir valores de classificação ou de previsão”
● 1) escolher o conjunto de dados de treinamento; 2) determinar a função de
● distância; 3) escolher o número de vizinhos mais próximos; e 4) determinar a função de
● combinação.
Algoritmos Genéticos
● Um algoritmo genético é um procedimento iterativo para evoluir uma população de organismos e é usado em mineração de dados para formular hipóteses sobre dependências entre variáveis, na forma de algum formalismo interno.
● Exemplos: Algoritmo Genético Simples (Goldberg,● 1989), Genitor e CHC (Whitley, 1993), Algoritmo de
Hillis (Hillis, 1997), GA-Nuggets (Freitas, 1999), GA-PVMINER (Araújo et al, 1999).
Redes Neurais Artificiais
● As redes neurais são uma classe especial de sistemas modelados seguindo analogia com o funcionamento do cérebro humano e são formadas de neurônios artificiais conectados de maneira similar aos neurônios do cérebro humano.
● Exemplos de redes neurais: Perceptron, Rede MLP, Redes de Kohonen, Rede Hopfield, Rede BAM, Redes ART, Rede IAC, Rede LVQ, Rede Counterpropagation, Rede RBF, Rede PNN, Rede Time Delay.
Como Escolher a Técnica de Mineração de dados mais Adequada
● Segundo Harrison (1998), a escolha das técnicas de mineração de dados dependerá da tarefa específica a ser executada e dos dados disponíveis para análise.
● 1) traduzir o problema de negócio a ser resolvido em séries de tarefas de mineração de dados;
● 2) compreender a natureza dos dados disponíveis em termos de conteúdo e tipos de campos de dados e estrutura das relações entre os registros.
Áreas de Aplicação de Técnicas de Mineração de dados
● Marketing● Detecção de fraudes● Medicina● Instituições governamentais● Ciência● Controle de processos e controle de qualidade● Banco● Apólice de seguro● Transporte● C & T● Web
LIMITAÇÕES
Apesar da grande potencialidade oferecida pela Mineração de Dados, alguns fatores devem ser analisados. Veja alguns fatores que podem prejudicar as técnicas de mineração:
● As relações entre os atributos precisam ser muito bem definidas, caso contrário os resultados podem ser mal interpretados;
● Usar um grande número de variáveis.
5
● Permitir que o processo de treinamento execute por muito tempo, até que se consiga obter indícios que possam levar à conclusões factíveis;
● Gerar subsídios para uma conclusão errada tornando-a mais plausível. Porém, uma interpretação falha pode disfarçar as falhas nos dados;
Outra questão que trás grande impacto na utilização da Mineração de Dados refere-se à privacidade e à legislação. Trabalhar com dados sobre o indivíduo trás implicações que precisam ser consideradas e analisadas.
DESAFIOS DA MD.Veja alguns desafios que precisam ser superados:
● Técnicas para lidar com base de dados cada vez maiores, chegando a casa dos
Terabytes;● Cada vez mais as tabelas possuem mais atributos, aumentando o espaço de busca
(alta dimensionalidade);
● A velocidade com que os dados mudam faz com que os modelos gerem resultados inválidos;
● O problema da baixa qualidade dos dados;
● Complexidade dos relacionamentos entre os atributos;
● A baixa interação e a dificuldade de inserção de conhecimento prévio nos modelos;
● Os sistemas cada vez mais dependem de outros sistemas, gerando problemas de
integração.
MINERAÇÃO DE ESTRUTURAS COMPLEXAS
A Mineração de Dados foi inicialmente concebida para utilizar-se de repositórios estruturados de dados (Banco de Dados, Data Warehouse, Arquivos, etc). Porém, atualmente os dados são representados por diversos formatos: Não estruturado, Espacial e Temporal, entre outros. Com a necessidade da mineração nestes tipos de dados surge uma área que vem sendo bastante pesquisada que é a Mineração de Dados em estruturas complexas. Veja alguns exemplos desse tipo de Mineração.
Mineração de Fluxo de Dados: Algumas aplicações trafegam um volume altíssimo de dados, temporalmente ordenados, voláteis e potencialmente infinito. Minerar estas informações após terem sido armazenadas é uma tarefa inviável. Ao invés disso, a mineração ocorre à medida em que os dados são lidos.
6
Mineração de Séries Temporais: Bases de Séries Temporais são aquelas que armazenam informações de um certo evento em um intervalo de tempo definido. Por exemplo, bases que armazenam o valor das ações de um mercado, velocidade do vento, medidas da atmosfera.
Mineração de Grafos: Os grafos são muito importantes na modelagem de estruturas complexas, como circuitos, imagens, proteínas, redes biológicas, redes sociais, etc. E com isso surge novas variações de algoritmos tradicionais facilitar a mineração desses tipos de dados.
Mineração de Objetos: Diferente das bases relacionais, que armazenam os dados de uma forma estruturada (tabelas), as bases orientadas a objetos, guardam os dados em forma de objetos (formados por um identificador, atributos e métodos).
Mineração de Dados Espaciais: Bases espaciais envolvem um conjunto de dados relacionados às questões espaciais, tais como mapas. A mineração espacial visa identificar os padrões armazenados nesses dados de uma forma implícita.
Mineração de Textos Grande parte dos dados de uma instituição é armazenada de forma semiestruturada e não estruturada, através de textos, e-mail,, documentos (atas, memorandos, ofícios), etc. A busca de padrões e conhecimento nestes documentos é muito comum. Porém, na maioria das vezes, o resultado obtido é falho: A mineração de textos, visa ajudar neste processo.
Mineração da Internet: A mineração da Internet tem sido alvo de recentes pesquisas, pois ela reúne em seu ambiente, quase a totalidade dos tipos de estruturas complexas e simples que existem. Mineração da Internet (ou Web Mining), consiste em minerar as estruturas de ligação, o conteúdo, os padrões de acesso, classificação de documentos, entre outras.
Softwares para Mineração de Dados
WEKA É uma das melhores ferramentas livre. Possui uma série de algoritmos para as tarefas de mineração. Os algoritmos podem ser aplicados diretamente da ferramenta, ou utilizados por programas Java.
SAS Enterprise Miner Suite é uma ferramenta para a mineração de Dados desenvolvida pela Oracle para o uso em seu banco de dados ORACLE.
IBM Intelligent Miner Ferramenta de mineração da IBM para a mineração de dados no banco de dados DB2
7
Empresas de software para Data Mining
SAS
http://www.sas.com
Oracle
http://www.oracle.com
IBM
http://www.ibm.com/
WEKA
http://www.cs.waikato.ac.nz/ml/weka/
Clementine
http://spss-clementine.software.informer.com/