TÓPICOS AVANÇADOS EM
ENGENHARIA DE SOFTWARE
Engenharia de Computação
Professor: Rosalvo Ferreira de Oliveira Neto
O processo de descoberta do
conhecimento - KDD
Roteiro





Introdução
Definição
Etapas
Desafios
Conclusão
Introdução
KDD envolve a interseção de várias áreas de pesquisas
tais como:
-
Bancos de dados
Aprendizagem de Máquina
Reconhecimento de padrões
Estatísticas
Inteligência artificial
Banco de Dados
A teoria e ferramentas de banco de dados fornecem a
infra-estrutura necessária para armazenar, acessar
e manipular dados.
Data warehousing referencia uma coleção de dados
transacionais para analises on-line e suporte a
decisão. Uma abordagem popular para análise de
data warehouses é chamada online analytical
processing (OLAP).
Banco de Dados
As ferramentas OLAP focam em prover analises multi
dimensional que é superior a linguagem SQL no
calculo de sumarizações e quebras de várias
dimensões.
Enquanto as ferramentas OLAP tem como objetivo
analise interativa dos dados, o processo de
descoberta do conhecimento KDD propõe
automação dos componentes de descoberta do
conhecimento.
Como o KDD difere dos outros campos?
KDD foca no processo geral de descoberta do
conhecimento, incluindo como os dados estão
armazenados e acessados, como os algoritmos
podem ser escaláveis para grandes massas de
dados e ainda executar de forma eficiente e como
os resultados podem ser interpretados e
visualizados.
Definição
"The nontrivial process of identifying valid, novel,
potentially useful, and ultimately understandable
patterns in data.“Fayyad et al.
Etapas do KDD
1- Aprender o domínio da aplicação: inclui o
conhecimento prévio relevante do domínio e os
objetivos da aplicação.
2- Criação de uma base de dados alvo: inclui
selecionar uma base de dados ou focar em um
subconjunto de variáveis ou amostra de dados
para desenvolvimento do projeto.
Etapas do KDD
3- Limpeza dos dados e pré-processamento: inclui
operações básicas, tais como remover ruídos ou
outliers se for apropriado, decidir estratégias para
manipulação de missing data.
4- Redução e projeção dos dados: inclui buscar atributos
úteis para representar os dados, dependendo do
objetivo da tarefa, e usar métodos para redução da
dimensionalidade dos dados ou transformações para
reduzir o número de variáveis.
Etapas do KDD
5- Escolher a função de mineração de dados: inclui
decidir o objetivo do modelo derivado pelo
algoritmo de mineração de dados (Sumarização,
Classificação, Regressão e Agrupamento).
6- Escolher o algoritmo de mineração de dados: inclui
selecionar o método que será utilizado na busca
por padrões nos dados, quais modelos e
parâmetros são apropriados para o objetivo do
projeto.
Etapas do KDD
7- Mineração de dados: inclui a busca por padrões de
interesse em uma forma particular de representação,
incluindo regras de classificação ou árvore, regressão,
clustering entre outros.
8- Interpretação: inclui a interpretação dos padrões
descoberto e possivelmente um retorno a qualquer
etapa anterior do processo, assim como a visualização
dos padrões extraídos, remoção de padrões
redundantes ou irrelevantes, e traduzir os padrões
úteis em termos compreensíveis pelos usuários
Etapas do KDD
9- Utilização do conhecimento descoberto: inclui
incorporar esse conhecimento dentro de um
sistema de desempenho, realizar ações baseada
neste
conhecimento,
ou
simplesmente
documentá-lo e reportar para as partes
interessadas.
Etapas do KDD
Desafios
•
•
•
•
•
•
•
Grandes bases de dados e alta dimensionalidade
Interação com usuário e conhecimento a priori
Overfitting
Valores ausentes
Compreensão dos padrões
Gerenciamento de mudanças dos dados e do
conhecimento
Integração
Grandes bases de dados e alta dimensionalidade
Bases de dados com Terabyte e milhões de registros,
com um grande número de campos (atributos e
variáveis) são comuns. Esses conjuntos de dados
criam uma explosão combinatória no espaço de
busca para a indução do modelo e aumentam as
chances de que um algoritmo de mineração de
dados encontre padrões irrelevantes. As soluções
possíveis incluem algoritmos muito eficientes,
amostragem,
métodos
de
aproximação,
processamento paralelo, técnicas de redução de
dimensionalidade,
e
incorporação
de
conhecimento prévio.
Interação com usuário e conhecimento a priori
Muitos dos atuais métodos de KDD e ferramentas
não são verdadeiramente interativa e não
disponibiliza meios para incorporar o
conhecimento prévio sobre um problema,
exceto em formas simples. Uso de
conhecimento de domínio é importante em
todas as etapas do processo de KDD.
Overfitting
Quando um algoritmo busca pelos melhores
parametros para um particular modelo
utilizando um conjunto limitado de dados, ele
pode memorizar os dados, resultando em um
desempenho pobre do modelo. Soluções
possíveis incluem validação cruzada e outras
sofisticas estratégias estatísticas
Valores ausentes
Este problema é bastante comum em bancos de dados
de empresas. Atributos importantes podem estar
faltando, se o banco de dados não foi projetado
para a descoberta do conhecimento ou um erro do
operador, falhas de medição, ou a partir de uma
revisão do processo de coleta de dados ao longo
do tempo (por exemplo, novas variáveis). As
soluções possíveis incluem mais sofisticadas
estratégias
estatísticas
para
identificar
variáveis ​ocultas e dependências.
Compreensão dos padrões
Em muitas aplicações, é importante tornar os
padrões descobertos mais compreensíveis por
seres humanos. As soluções possíveis incluem
representações gráficas, estruturação de regra,
geração de linguagem natural, e técnicas de
visualização de dados e conhecimento.
Gerenciamento de mudanças dos dados e do
conhecimento
Mudança rápida dos dados podem fazer padrões
previamente descobertos inválido. Além disso,
as variáveis ​medidas numa base de dados pode
ser modificada, eliminada ou aumentada com
novas medições ao longo do tempo. As
soluções
possíveis
incluem
métodos
incrementais para atualizar os padrões.
Integração
Há uma oportunidade em potencial e um desafio
para o desenvolvimento de técnicas para
integrar as ferramentas OLAP da comunidade
de banco de dados e as ferramentas de
mineração de dados de aprendizado de
máquina e modelos estatísticos.
Conclusão
Diante do rápido crescimento, o campo de KDD
ainda está na sua infância. Existem vários
desafios para serem superados, mas muito
sucesso já foi alcançado.
Download

Aula - Univasf