Extracção de Conhecimento em Bases de Dados Paulo Jorge Azevedo Departamento de Informática [email protected] 2006 - 2007 Abstract Disciplina de opção para o segundo semestre do Mestrado em Informática (e obrigatória para Curso de Especialização e para o Mestrado em Sistemas de Dados e Processamento Analítico). Extracção de Conhecimento em Bases de Dados (vulgo 1 Data Mining ). A Disciplina 1.1 Motivação A crescente necessidade de sistemas de informação cada vez mais sosticados motiva o surgimento de novas técnicas de tratamento elaborado de grandes volumes de dados. Vivemos a era do acesso às mega-fontes de informação. Hoje é fácil aceder a grande volumes de informação dos mais variados tipos. Veja-se o exemplo da internet, um fenómeno que permite o acesso a inúmeras mega- bases de dados criando um autêntico manancial de informação. No entanto, esta inundação de fontes de informação tem normalmente o efeito perverso de gerar um spaghetti de dados, contrariando a expectativa da esperada informação utilizável. Temos, assim, motivação para o surgimento de novas técnicas que permitam ltrar e depurar os dados em questão, levando a derivação de padrões descritivas das inter-relações entre dados. Este processo de ltragem, depuração e derivação de padrões é vulgarmente designado por Data Mining ou, mais correctamente, Knowledge Discovery in Databases. Entende-se por Knowledge Discovery in Databases o processo de encontrar estrutura nos dados, ou seja extrair informação útil e não trivial a partir de largas colecções de dados. Este conhecimento pode tomar a forma de 1 regras descritivas de propriedades dos dados, padrões frequentes ou relacionamentos entre atributos qualicadores dos dados em análise. 1.2 Objectivos Pretende-se que esta disciplina transmita os conhecimentos associados com os fundamentos das principais técnicas de extracção de padrões de uma base de dados. 2 Programa O programa da disciplina está dividido em duas componentes: uma componente teórica e outro prática. 2.1 • Componente Teórica Extracção de Conhecimento em Bases de Dados 1. O processo de Knowledge Discovery in Databases (KDD). Estudo de alguns casos. 2. Extracção de Dependências Funcionais e Dependências entre Atributos, 3. Pré-processamento de dados. Cleansing. noise). Análise de ruído ( Data Transformation. Data Reduction. Data Algoritmos de discretização e tratamento de valores nulos. 4. Modelos de Previsão (a) Classicação i. O algoritmo Naive Bayes. Variantes não tão naifes. ii. Score functions (quadráticas e do tipo 0-1 misclassication loss function). iii. Árvores de decisão - O algoritmo ID3. iv. Extracção de regras por árvores de decisão. v. Algoritmos de discretização e tratamento de valores nulos orientados à classe. vi. Melhorias nos algoritmos de classicação. Post-pruning e outras técnicas. Problemas de sobre-ajustamento. For- overtting). mas de evitar sobre-ajustamento ( vii. O algoritmo C4.5 2 viii. Classicação Cost-Sensitive. ix. Avaliação de Hipóteses. Matriz de Custos. Intervalos de conança. Cross Validation. (b) Previsão Numérica i. Regressão e tratamento de classes continuas, ii. Regression trees e Model trees, iii. Regras de Regressão. 5. Formação de Ensembles de Modelos (a) Combinação de múltiplos modelos. (b) Bagging (c) Post-Bagging, (d) Boosting. (e) Stacking. (f ) Decomposição Bias/Variance do erro para funções de custo (0-1). 6. Regras de Associação (a) Semântica das Regras de Associação. (b) Métricas de caracterização. Filtragem de Regras. (c) Algoritmos. O Apriori. (d) Outros algoritmos baseados na representaçcão vertical dos dados (e.g. bitmaps). (e) Itemsets frequentes. Outras representações de termos fre- quentes: closed-sets, maximal-sets, free-sets. (f ) Regras de Correlação (g) Métodos para dados não categoriais. (h) Distribution Rules. (i) Visualização de Regras de Associação. 7. Extracção de padrões em sequências. 8. Series Temporais. Extracção de Motifs. 9. Clustering. (a) noção de centroide. Medidas para distância para formaçcão de clusters. (b) O algoritmo K-means. (c) Clustering Hierárquico. 10. Estudo de várias ferramentas. CAREN, etc. 3 O sistema Weka, C4.5 e Cubist, 2.2 Componente Prática Na componente prática serão resolvidos vários exercícios que consideram os temas desenvolvidos anteriormente na componente teórica. Tipicamente fazse uso de software que implementa os métodos discutidos nas aulas teóricas, resolvendo alguns exercícios práticos. 2.3 Avaliação A ser determinado por comum acordo entre o docente e os alunos. 4 References [Azevedo05] Azevedo P., Extracção de Conhecimento em Bases de Dados Monograa da disciplina do Mestrado em Informática, 2005. [Witten&Frank05] Witten I., Frank E. Data Mining - Pratical Machine Learning Tools & Techniques Morgan Kaufmann 2005. [Han&Kamber2001] Han J., Kamber M. Data Mining - Concepts and Techniques Morgan Kaufmann 2001. [Hand et al.01] Hand D., Mannila H., Smyth P. Principles of Data Mining The MIT Press 2001. [Shapiro96] Piatetsky-Shapiro G., Advances in Knowledge Discovery and Data Mining AAAI/MIT Press, 1996. [Michalski et al99] Michalski R., Bratko I., Kubat M. Machine Learning and Data Mining John Wiley and Sons Ltd. 1999. [Abiteboul et al.95] Abiteboul S., Hull R., Vianu V., Foundations of Databases Addison-Wesley Publishing, 1995. [Ullman89] Ullman J., Principles of Databases and Knowledge Base Systems Volume I and II, Computer Science Press, 1989. [Mannila92] Mannila H., Raiha K. The Design of Relational Databases Addison-Wesley 1992. 5