Você está na página 1de 151

0

UNIVERSIDADE METODISTA DE PIRACICABA


FACULDADE DE CINCIAS EXATAS E DA NATUREZA MESTRADO EM CINCIA DA COMPUTAO

UMA ONTOLOGIA PARA INSERIR CONHECIMENTO HUMANO EM FERRAMENTAS


DE MINERAO DE DADOS

EDMAR AUGUSTO YOKOME

ORIENTADORA: PROFA. DRA. FLVIA LINHALIS ARANTES

PIRACICABA, SP 2011

UNIVERSIDADE METODISTA DE PIRACICABA


FACULDADE DE CINCIAS EXATAS E DA NATUREZA MESTRADO EM CINCIA DA COMPUTAO

UMA ONTOLOGIA PARA INSERIR CONHECIMENTO HUMANO EM FERRAMENTAS


DE MINERAO DE DADOS

EDMAR AUGUSTO YOKOME ORIENTADORA: PROFA. DRA. FLVIA LINHALIS ARANTES

Dissertao apresentada ao Mestrado em Cincia da Computao, da Faculdade de Cincias Exatas e da Natureza, da Universidade Metodista de Piracicaba UNIMEP, como parte dos requisitos para obteno do Ttulo de Mestre em Cincia da Computao.

PIRACICABA, SP 2011

2 II

UMA ONTOLOGIA PARA INSERIR CONHECIMENTO HUMANO EM FERRAMENTAS


DE MINERAO DE DADOS

Autor: Edmar Augusto Yokome Orientadora: Profa. Dra. Flvia Linhalis Arantes

Dissertao de Mestrado apresentada em 01 de junho de 2011, Banca Examinadora constituda dos Professores:

________________________________________________ Profa. Dra. Flvia Linhalis Arantes UNICAMP

________________________________________________ Prof. Dr. Ivan Rizzo Guilherme UNESP

________________________________________________ Profa. Dra. Marina Teresa Pires Vieira UNIMEP

3 III

DEDICATRIA

Gostaria de dedicar este trabalho primeiramente a Deus, a fora maior, que me deu a vida, sade e fora para cursar o mestrado e me abenoou na grande quantidade de viagens que fiz ao longo desses dois anos. Aos meus pais e irmos que sempre estiveram presentes em todos os momentos. Cincia da Computao que me fez refletir o tanto que esta rea complexa e diversificada. Aos meus amigos que de certa forma fiquei afastado neste perodo que me dediquei ao mestrado. s minhas sobrinhas (Myallyn, Mayumi e Ana Heloisa), em especial a Aninha que foi meu escape do stress. s Artes Marciais e aos esportes que tanto gosto, mas que por uma causa maior fiquei afastado. Aos ex-coordenadores (Eleonilda, Rogrio e Vivian) da UEG UnU Santa Helena de Gois no perodo de 2007 a 2008, no qual fiz parte dessa equipe. Trabalhamos e divertimos muito, foi um bom perodo que no votar mais.

4 IV

AGRADECIMENTOS Primeiramente gostaria de agradecer professora Dra Flvia Linhalis Arantes pela orientao, que aceitou ser a minha orientadora em um perodo complicado, me introduziu uma nova rea da Cincia da Computao e mesmo depois de deixar de ser professora do programa de mestrado, continuou a me orientar, sempre me apoiando e incentivando, gostaria de registrar minha eterna gratido. Gostaria de agradecer ao programa de mestrado em Cincia da Computao da UNIMEP por ter sido um dos escolhidos. Aos professores (Dr Plnio, Dra Marina, Dr Victor, Dr Luiz Eduardo, Dra Ana Estela e Dra Ceclia), pelas suas aulas super proveitosas (foi de longe a melhor coisa que fiz para minha vida profissional, em especial as professoras Marina e Ana Estela que contribuiram muito com o crescimento deste trabalho ao participarem da minha banca de qualificao), aos colegas de mestrado (Rodrigo, Etianne, Jos Edielson, Carlos, Joo Paulo, Ku Hai Chiang, Mrcio, Isaias e Regina) pelos momentos difceis e alegres; s funcionrias (Rosa e Dulce) que sempre estavam disposio para nos atender. E aluna de iniciao cientifica (Mirela) da UNIMEP pela grande ajuda que me deu na ferramenta Kira. s diversas instituies de ensino por onde passei e a seus funcionrios, professores e colegas, que foram responsveis pela minha formao, entre as instituies esto: Colgio Modelo (Ensino Fundamental), Colgio Vital de Oliveira (Ginsio), Escola Paroquial de 10 e 20 Grau (Colegial), UEG (Curso Superior) e Faculdade FAR (Ps-Graduao Latu Sensu), onde tambm fiz grandes amizades. Gostaria de fazer um agradecimento especial instituio UEG UnU de Santa Helena que, alm de permitir que eu fizesse um curso superior, me deu oportunidade de trabalho. E seus funcionrios, professores e alunos, em especial a professora Dila (Coordenadora do Curso) que aceitou a ser coordenadora para que eu pudesse cursar o mestrado e sempre me apoiou e incentivou. As ex-Diretoras Ereni (em especial, por ter me chamado para fazer parte do grupo de funcionrios da UEG) e Maria Lcia e o atual Diretor prof Dr Luis Carlos pelo incentivo. E por fim ao corpo docente e discente do curso de Sistemas de Informao que entenderam minha constante ausncia ao longo desses anos. E por fim ao meu ex-orientador de especializao o prof Msc. Fabian e a profa Msc. Dulcinia que fizeram a carta de recomendao para o mestrado.

5 V

O valor das coisas no est no tempo em que elas duram, mas na intensidade com que acontecem. Por isso existem momentos inesquecveis, coisas inexplicveis e pessoas incomparveis". (Fernando Pessoa)

Faa da pedra de tropeo, um degrau de subida. Transforme cada fato negativo, em uma experincia positiva. Bruce Lee

Quando algum est querendo aprender, o conselho de uma pessoa experiente vale mais do que anis de ouro ou jias de ouro puro. Pv 25:12

6 VI

RESUMO

Ontologias vm sendo utilizadas amplamente em pesquisas na rea da Cincia da Computao, inclusive na minerao de dados. Este trabalho apresenta o desenvolvimento de uma ontologia para o domnio de minerao de dados, cujo objetivo fornecer uma terminologia comum que pode ser compartilhada e processvel por ferramentas de minerao de dados. O principal diferencial da ontologia desenvolvida identificar pontos onde o conhecimento humano se torna necessrio, onde a partir desta caracterstica possvel utilizar metodologias orientadas ao domnio, como a D3M, e com a utilizao desta metodologia possvel obter uma minerao mais interativa entre a mquina e o minerador de dados. Como produto gerado a partir desta ontologia proposto uma arquitetura para ferramentas de minerao de dados, levando em considerao a metodologia D3M, onde a partir desta possvel desenvolver ferramentas de minerao de dados orientadas ao domnio.

Palavras-Chaves: Ontologia de Domnio, Minerao de Dados, Metodologias para Minerao de Dados, Conhecimento de Domnio, Ferramentas de Minerao de Dados.

7 VII

ABSTRACT

Ontologies have widely been used in Computer Science research, including data mining. This works presents the development of a domain ontology for data mining, which aims to provide a common terminology that can be shared and computed by data mining tools. The main feature of the ontology is to identify where human knowledge is required. With this feature it is possible to use domain-oriented methodologies, such as D3M, to obtain a more interactive data mining between the machine and the data miner expert. As product generated from this ontology we proposed an architecture for data mining tools. The architecture takes into account the D3M methodology, aiming the developement of domain-oriented data mining tools.

Key Words: Domain Ontology, Data Mining, Data Mining Methodologies, Domain Knowledge, Data Mining Tools.

8 VIII

SUMRIO

LISTAS DE FIGURAS .............................................................................................. XI LISTA DE QUADROS...............................................................................................XIII LISTA DE SIGLAS E ABREVIATURAS..................................................................XIV 1 INTRODUO .......................................................................................................16
1.1 CONTEXTUALIZAO ........................................................................................................ 16 1.2 MOTIVAO ..................................................................................................................... 18 1.3 OBJETIVOS ...................................................................................................................... 18 1.4 METODOLOGIA................................................................................................................. 19 1.5 TRABALHOS RELACIONADOS ............................................................................................ 20 1.6 ORGANIZAO DO TRABALHO ........................................................................................... 23

2 MINERAO DE DADOS ......................................................................................25


2.1 CONSIDERAES INICIAIS................................................................................................. 25 2.2 DESCOBERTA DE CONHECIMENTO EM BASE DE DADOS ...................................................... 25

2.2.1 Arquitetura Tpica de um Sistema de MD.........................................................28 2.2.2 Tarefas da Minerao de Dados .....................................................................29 2.2.3 Tcnicas de Minerao de Dados ....................................................................31 2.2.4 Algoritmos para minerao de dados ...............................................................37
2.3 METODOLOGIAS PARA MINERAO DE DADOS ................................................................... 39

2.3.1 CRISP-DM........................................................................................................39 2.3.1.1 O Modelo de Referncia CRISP-DM ............................................................ 41 2.3.2 Minerao de Dados Orientada ao Domnio (DM) ..........................................44
2.4 FERRAMENTAS PARA MINERAO ..................................................................................... 46

2.4.1 A Ferramenta WEKA ........................................................................................47 2.4.2 Ferramenta de Minerao de Dados Kira.........................................................49


2.5 CONSIDERAES FINAIS .................................................................................................. 53

3 ONTOLOGIAS .......................................................................................................54
3.1 CONSIDERAES INICIAIS................................................................................................. 54 3.2 DEFINIES .................................................................................................................... 54 3.3 CLASSIFICAO DAS ONTOLOGIAS .................................................................................... 55 3.4 METODOLOGIAS PARA DESENVOLVIMENTO DE ONTOLOGIAS ............................................... 57

9 IX

3.5 LINGUAGENS PARA REPRESENTAO DE ONTOLOGIAS ....................................................... 60 3.6 FERRAMENTAS PARA DESENVOLVIMENTO E VISUALIZAO DE ONTOLOGIAS ....................... 66 3.7 CONSIDERAES FINAIS .................................................................................................. 70

4 DESENVOLVIMENTO DE UMA ONTOLOGIA PARA O DOMNIO DA MINERAO DE DADOS.........................................................................................72


4.1 CONSIDERAES INICIAIS................................................................................................. 72 4.2 DOCUMENTAO DO CICLO DE VIDA DA ONTOLOGIA META-DM .......................................... 72

4.2.1 Especificao ...................................................................................................73 4.2.2 Aquisio de conhecimento..............................................................................74 4.2.3 Conceituao ...................................................................................................74 4.2.4 Integrao ........................................................................................................83 4.2.5 Implementao.................................................................................................83 4.2.6 Avaliao..........................................................................................................87 4.2.7 Documentao .................................................................................................90
4.3 CONSIDERAES FINAIS .................................................................................................. 90

5 DEFINIO DE UMA ARQUITETURA PARA FERRAMENTAS DE MINERAO DE DADOS COM BASE NA ONTOLOGIA META-DM E NA METODOLOGIA D3M .91
5.1 CONSIDERAES INICIAIS................................................................................................. 91 5.2 IDENTIFICAO DAS TAREFAS DA METODOLOGIA D3M NA ONTOLOGIA META-DM.................. 91

5.2.1 Dados ...............................................................................................................92 5.2.2 Entendimento do Problema ..............................................................................93 5.2.3 Preparao dos Dados Para a Minerao de Dados .......................................95 5.2.4 Tarefa de Minerao de dados.........................................................................96 5.2.5 Padres ............................................................................................................98
5.3 UMA ARQUITETURA PARA FERRAMENTAS DE MINERAO DE DADOS BASEADA NA METODOLOGIA D3M E NA ONTOLOGIA META-DM ..................................................................... 99

5.3.1 Interface com o usurio ..................................................................................101 5.3.2 Processo de Descoberta de Conhecimento ...................................................101 5.3.3 Repositrio de Informao .............................................................................103
5.4 CENRIO DE EXECUO DE UM PROJETO DE MINERAO DE DADOS .................................. 104

5.4.1 Execuo do cenrio no entendimento do negcio........................................105 5.4.2 Execuo do cenrio no entendimento dos dados.........................................107 5.4.3 Execuo do cenrio na preparao dos dados ............................................109

10 X

5.4.4 Execuo do cenrio na definio e aplicao da tarefa de minerao de dados ......................................................................................................................112 5.4.5 Execuo do cenrio na avaliao dos padres gerados ..............................116 5.4.6 Execuo do cenrio na aplicao dos padres gerados ..............................118
5.5 CONSIDERAES FINAIS ................................................................................................ 118

6 CONCLUSES ....................................................................................................119
6.1 INTRODUO ................................................................................................................. 119 6.2 CONTRIBUIES ............................................................................................................ 120 6.3 TRABALHOS FUTUROS.................................................................................................... 121

REFERNCIAS.......................................................................................................122
ANEXO 1..................................................................................................................126

APNDICE 1 ...........................................................................................................128 APNDICE 2 ...........................................................................................................138

11 XI

LISTA DE FIGURAS
FIGURA 1: ONTOLOGIA DE SHARMA E OSEI-BRYSON.......................................... 21 FIGURA 2: PARTE DA ONTOLOGIA DE PINTO E SANTOS...................................... 23 FIGURA 3: PROCESSO DE DESCOBERTA DO CONHECIMENTO (KDD) ............... 26 FIGURA 4: ARQUITETURA TPICA DE UM SISTEMA DE MD ................................... 28 FIGURA 5: AS TAREFAS CENTRAIS DA MD............................................................. 30 FIGURA 6: RVORE DE DECISO............................................................................ 32 FIGURA 7: PROCESSO DE INDUO DE REGRAS DE ASSOCIAO................... 33 FIGURA 8: REDE NEURAL ARTIFICIAL .................................................................... 34 FIGURA 9: MODO DE OPERAO DOS ALGORITMOS GENTICOS..................... 35 FIGURA 10: PROCESSO DE IDENTIFICAO DOS SEGMENTOS ......................... 36 FIGURA 11: QUATROS NVEIS HIERRQUICOS DA METODOLOGIA CRISP-DM . 40 FIGURA 12: FASE DO MODELO DE REFERNCIA DO CRISP-DM..........................42 FIGURA 13: MODELO DO PROCESSO DDID-PD .....................................................46 FIGURA 14: TELA INICIAL DA FERRAMENTA WEKA...............................................47 FIGURA 15: AMBIENTE DE DESENVOLVIMENTO WEKA........................................48 FIGURA 16: ARQUITETURA DA FERRAMENTA KIRA..............................................50 FIGURA 17: TELA DA FERRAMENTA KIRA ..............................................................51 FIGURA 18: IDENTIFICAO DA TAREFA DE MINERAO ...................................52 FIGURA 19: CLASSIFICAO DE ONTOLOGIAS.....................................................56 FIGURA 20: GRAFO REPRESENTANDO UMA TRIPLA............................................62 FIGURA 21: HIERARQUIAS DE ESPECIALIZAO/GENERALIZAO .................. 63 FIGURA 22: AMBIENTE DE DESENVOLVIMENTO DO PROTG 4.1.0.................. 69 FIGURA 23: DIAGRAMA DA ONTOLOGIA NO SEU MAIS ALTO NVEL.................... 75 FIGURA 24: CLASSE DATA ....................................................................................... 78 FIGURA 25: ENTENDIMENTO DO PROBLEMA ........................................................ 79 FIGURA 26: PROCESSAMENTO DOS DADOS......................................................... 81 FIGURA 27: PS-PROCESSAMENTO ...................................................................... 82 FIGURA 28: UTILIZAO DO PELLET DENTRO DO PROTG .............................. 87 FIGURA 29: ELEMENTOS VERIFICADOS E NO VERIFICADOS............................ 88 FIGURA 30: RESULTADO DA VERIFICAO DO PELLET....................................... 88 FIGURA 31: EXEMPLO DE INSTANCIAO ............................................................. 89

12 XII

FIGURA 32: DADOS DA ONTOLOGIA META-DM COM A METODOLOGIA D3M ...... 92 FIGURA 33: ENTENDIMENTO DO PROBLEMA COM A METODOLOGIA D3M......... 94 FIGURA 34: PREPARAO DOS DADOS COM A METODOLOGIA D3M ................. 95 FIGURA 35: DEFINIO DA TAREFA DA MD COM A METODOLOGIA D3M ............ 97 FIGURA 36: RESULTADOS DA MD COM A METODOLOGIA D3M ........................... 98 FIGURA 37: ARQUITETURA PARA FERRAMENTAS DE MINERAO DE DADOS....... ............................................................................................................100 FIGURA 38: EXECUO DO CENRIO - ENTENDIMENTO DO NEGCIO ............. 106 FIGURA 39: EXECUO DO CENRIO - ENTENDIMENTO DOS DADOS ............... 108 FIGURA 40: EXECUO DO CENRIO - PREPARAO DOS DADOS................... 111 FIGURA 41: EXECUO DO CENRIO - DEFINIO E APLICAO DA TAREFA DE MINERAO DE DADOS...................................................................................115 FIGURA 42: EXECUO DO CENRIO - AVALIAO DOS PADRES GERADOS.... ........................................................................................................... 117 FIGURA 43: MODELAGEM DA BASE DE DADOS DO CONGRESSO....................... 126 FIGURA 44: INTEGRAO DA BASE DE DADOS PARA A MD................................. 127

13 XIII

LISTA DE QUADROS

QUADRO 1: DESCRIO DAS FASES DO PROCESSO DE KDD...............................27 QUADRO 2: DESCRIO DAS TAREFAS DE MINERAO DE DADOS....................31 QUADRO 3: ALGUNS ALGORITMOS PARA MINERAO DE DADOS ......................37 QUADRO 4: DESCRIO DAS FASES DA METODOLOGIA CRISP-DM. ...................40 QUADRO 5: TAREFAS EXECUTAS EM CADA ETAPA DO CRISP-DM .......................43 QUADRO 6: DESCRIO DOS TIPOS DE ONTOLOGIAS, GUARINO .......................56 QUADRO 7: ETAPAS DA METODOLOGIA METHONTOLOGY ...................................58 QUADRO 8: LINGUAGENS PARA REPRESENTAR ONTOLOGIAS . ..........................60 QUADRO 9: CLASSES ESSENCIAIS DO RDF-S .........................................................64 QUADRO 10: RELACIONAMENTOS .........................................................................64 QUADRO 11: CARACTERSTICAS DAS FERRAMENTAS PARA A CRIAO DE ONTOLOGIAS............................................................................................................67 QUADRO 12: DESCRIO DOS COMPONENTES DA ONTOLOGIA OWL ................69 QUADRO 13: DICIONRIO DE DADOS DAS CLASSES..............................................76 QUADRO 14: DICIONRIO DE DADOS DOS RELACIONAMENTOS ..........................77 QUADRO 15: DICIONRIO DE DADOS DOS ATRIBUTOS .........................................78

14 XIV

LISTA DE ABREVIATURAS E SIGLAS

CRISP-DM: Cross-Industry Standard Process for Data Mining Processo Padro Intersetorial para Minerao de Dados D3M: Domain Driven Data Mining - Minerao de Dados Orientada ao Domnio

DAML: DARPA Agent Markup Language Linguagem de Marcao para Agentes da DARPA

DDID-PD: Domain-driven in-depth pattern discovery Descoberta de Padres em Profundidade Orientada ao Domnio

DM: Data Mining - Minerao de Dados

DMO: Data Mining Ontology Ontologia de Minerao de Dados KDD: Knowledge Discovery in Databases - Descoberta do Conhecimento em Bases de Dados KIF: Knowledge Interchange Format Formato de Troca de Conhecimento OCML: Operational Conceptual Modeling Language Linguagem de Modelagem Conceitual Operacional ODE: Ontology Design Environment Ambiente para Projeto de Ontologias OIL: Ontology Interchange Language Linguagem para Intercmbio de Ontologias OKBC: Open Knowledge Based Connectivity Conhecimento Aberto Baseado em Conectividade OWL: Ontology Web Language Linguagem de Ontologias para Web RDF: Resource Descriptor Framework Framework para Descrio de Recursos

XV
15

SWRL: Semantic Web Rule Language Linguagem de Regras para Web Semntica WEKA: Waikato Environment For Knowledge Analysis - Ambiente Waikato para Anlise do Conhecimento XML: eXtensible Markup Language - Linguagem de Marcao Extensvel

16

1 INTRODUO

1.1 Contextualizao

A computao nos ltimos anos evoluiu de maneira surpreendente. Uma das consequncias dessa evoluo foi que as bases de dados cresceram de forma inimaginvel e ficaram tambm mais heterogneas (por exemplo: banco de dados multimdia, de texto, temporais e outros (HAN & KAMBER, 2006). Com essa diversidade e aumento de volume nas bases de dados, ficou praticamente impossvel fazer uma anlise de forma manual nos dados. Devido a essa questo, surgiu um novo ramo na cincia da computao chamado minerao de dados (DM, do ingls Data Mining), cujo propsito encontrar padres interessantes em bases de dados. Essa necessidade de encontrar padres interessantes nas bases de dados uma tentativa de descobrir algo que possa auxiliar o analista de dados em uma tomada de deciso. Por exemplo: quais produtos podem ser vendidos em conjunto em um supermercado, dado o histrico de vendas realizadas? Se o processo de minerao de dados conseguir chegar a um determinado padro, poder ajudar a definir uma estratgia de marketing para o supermercado. A tarefa de descoberta de conhecimento em base de dados conhecida como KDD (Knowledge Discovery in Databases). A minerao de dados uma das etapas que faz parte do processo de KDD. Esse processo consiste de uma srie de passos de transformao, pr-processamento e ps-processamento dos resultados da minerao de dados (TAN et al., 2009). Na tentativa de disciplinar o processo de KDD, surgiram algumas metodologias, dentre elas a CRISP-DM (Cross-Industry Standard Process For Data Mining). De acordo com essa metodologia, o ciclo de vida de um projeto de minerao de dados dividido em seis fases: entendimento do negcio, entendimento dos dados, preparao dos dados, modelagem, avaliao e desenvolvimento (CHAPMAN et al., 2000). CRISP-DM uma metodologia bem ampla e detalhada, e usada para fornecer orientaes em relao a como as vrias fases de um projeto de minerao de dados podem ser executadas (SHARMA & OSEI-BRYSON, 2008).

17

Ao seguir CRISP-DM ou outras metodologias orientadas aos dados, constatado que o processo de KDD realizado de forma sistematizada. Isto , o usurio escolhe, prepara e entra com os dados, adota um algoritmo de minerao de dados e define como ser a visualizao dos padres gerados, porm no h uma interferncia durante o processo de aplicao das tcnicas de minerao de dados, onde so feitas somente nas fases anteriores e posteriores a esta aplicao (CAO & ZHANG, 2006). Metodologias orientadas aos dados como CRISP-DM tratam o processo de minerao como algo isolado e baseado na tentativa e erro. Nessas metodologias, questes relacionadas ao objetivo do negcio e a aplicao de tcnicas de minerao de dados tm pouco apoio durante seu processo, sendo tratados de maneira isolada. Como resultado, o conhecimento descoberto com a minerao pode no ser interessante para o negcio (ou problema) em questo. Metodologias orientadas ao domnio do negcio, como D3M, vem, aos poucos, sendo utilizadas na minerao de dados. O objetivo da metodologia D3M diminuir a distncia entre a minerao realizada na academia e na indstria, onde so retratadas partes do mundo real. Na academia so elaborados estudos sistemticos com o objetivo de aumentar a eficincia dos resultados produzidos com a minerao de dados e na indstria necessrio que os resultados gerados forneam resultados satisfatrios que possam ser aplicados (CAO & ZHANG, 2006). Esta metodologia se baseia em elementos chaves como restries de contexto; integrao do conhecimento do domnio do negcio; cooperao entre humanos e mquinas durante o processo de minerao; e refinamento iterativo dos resultados. Para concretizar um projeto de minerao de dados h vrias ferramentas, entre elas esto: Kira (Mendes, 2009), WEKA1, Bramining2, dentre outras. Estas ferramentas permitem fazer uma anlise de forma automtica, algo que se fosse feito manualmente tornaria um projeto de minerao de dados invivel. Porm, por mais que estas ferramentas sejam eficientes, o conhecimento humano exigido em vrias fases do processo de minerao de dados. Para possibilitar a utilizao de conhecimento humano ou

conhecimento de domnio, preciso representar formalmente a terminologia do domnio. O conceito de ontologias se adequa bem a esse propsito.
1 2

www.cs.waikato.ac.nz. Acesso: 09 jun. 2011. www.graal-corp.com.br. Acesso: 09 jun. 2011.

18

Uma ontologia comumente utilizada como uma estrutura que representa o conhecimento sobre uma determinada rea (ou domnio) por meio de conceitos relevantes e relacionamentos entre eles (FALBO et al., 1998). Em outras palavras, as ontologias podem representar a semntica necessria para descrever determinado domnio de aplicao. Portanto, as ontologias podem ser peas fundamentais para viabilizar metodologias de minerao de dados orientadas ao domnio, como D3M, e inserir conhecimento humano durante o processo de minerao de dados.

1.2 Motivao Apesar da existncia de metodologias e ferramentas para auxiliar na tarefa de descoberta de informao, esse processo no simples, pois h vrias etapas a serem seguidas, e muitas das vezes so encontradas barreiras difceis de serem solucionadas, como, por exemplo, a melhor forma de fazer a limpeza de dados, que tarefa de minerao de dados utilizar, como analisar os resultados produzidos, entre outros. Essas barreiras se tornam ainda maiores e mais evidentes diante da necessidade de se inserir conhecimento de domnio no processo de minerao. A motivao deste trabalho aliar ontologias ao processo de minerao de dados para guiar o processo de minerao de dados, onde considerado as fases do KDD e tambm a semntica do domnio do problema. Com isso, pretende-se ajudar a inserir conhecimento humano no processo de minerao de dados realizado por ferramentas de minerao.

1.3 Objetivos

O objetivo deste trabalho criar uma ontologia para o domnio de minerao de dados que ir guiar o minerador de dados durante o processo de KDD em ferramentas de minerao de dados. A ontologia dever servir de base para uma arquitetura para ferramentas de minerao de dados onde levado em considerao a metodologia DM.

19

Os resultados e contribuies esperadas com o desenvolvimento desse trabalho so: Desenvolver uma ontologia de domnio para minerao de dados, chamada daqui por diante de Meta-DM, cujo objetivo guiar o processo de descoberta do conhecimento nas diversas etapas desse processo; Identificar as etapas onde o conhecimento humano se torna necessrio e inserir tarefas da metodologia DM, cujo objetivo uma minerao de dados mais interativa; e Propor uma arquitetura para ferramentas de minerao de dados, com base na ontologia desenvolvida e na metodologia D3M. A arquitetura baseada em ontologias e na metodologia D3M vem contribuir com o estado da arte na rea de semntica em minerao de dados no sentido de inserir conhecimento humano e de domnio durante o processo de minerao de dados realizado em ferramentas de minerao.

1.4 Metodologia

Para o desenvolvimento deste trabalho foram realizadas as seguintes tarefas: Estudo das principais etapas do processo de KDD e da metodologia CRISP-DM; Realizao de minerao de dados em ferramentas desse domnio; Classificao das tarefas essenciais na minerao de dados que devem fazer parte da ontologia Meta-DM; Utilizao de metodologias para construo de ontologias, como Noy e McGuiness e METHONTOLOGY para o desenvolvimento da ontologia; Implementao da ontologia proposta em uma ferramenta de desenvolvimento de ontologias Protg;

20

Verificao e avaliao da ontologia por meio da mquina de inferncia Pellet e instanciao da ontologia; Identificao dos pontos onde o conhecimento humano se torna necessrio na ontologia; Estudo e identificao das tarefas da metodologia DM; Proposta de uma arquitetura para ferramentas de minerao de dados, baseado na ontologia Meta-DM e na metodologia DM.

1.5 Trabalhos Relacionados

Para o desenvolvimento da ontologia Meta-DM foram pesquisados outros trabalhos existentes na literatura, que tratam do desenvolvimento de ontologias para o domnio da minerao de dados. Uma das ontologias encontradas foi parcialmente utilizada na elaborao da ontologia proposta. A seguir apresentada uma breve descrio desses trabalhos e tambm feito um comparativo com a proposta da ontologia Meta-DM. Com a ontologia de Sharma e Osei-Bryson (2008) representada a fase de entendimento do ngcio, uma das etapas da metodologia CRISP-DM (Chapman et al., 2000). De acordo com anlise feita nesta ontologia, os autores fizeram o levantamento de questes relacionadas ao entendimento do negcio cujo objetivo ajudar o minerador no entendimento do negcio. Diferente da ontologia proposta por Sharma e Osei-Bryson (2008), a Meta-DM tem como objetivo representar todas as etapas de um projeto de minerao de dados. A Figura 1 apresenta o diagrama da ontologia de Sharma e Osei-Bryson (2008).

21

Figura 1: ONTOLOGIA DE SHARMA E OSEI-BRYSON Fonte: Sharma e Osei-Bryson (2008)

Sharma

Osei-Bryson

(2008)

identificam

que

fase

de

entendimento do negcio composta por 67 fases, a Figura 1 apresenta uma viso parcial da ontologia de Sharma e Osei-Bryson. Esta uma ontologia interessante para restringir o contexto do domnio do problema. Ela novamente mencionada no Captulo 5, onde h mais discusso sobre o assunto. A DM Ontology, desenvolvida por Zheng e Li (2008), uma

ontologia que contempla a minerao de dados aplicada ao negcio de marketing para uma empresa de financiamento, isto , essa ontologia foi desenvolvida para um problema especfico de minerao de dados. O propsito da ontologia Meta-DM contemplar as etapas da minerao de dados como um todo, sem se voltar a um problema de minerao em particular. Entretanto, outras ontologias podem ser utilizadas juntamente com a Meta-DM para prover conhecimento de domnio necessrio para resolver determinado problema de minerao de dados.

22

A ontologia DMO proposta por Brezany, Janciak e Tjoa (2008) foi desenvolvida com o intuito de guiar um projeto de minerao de dados em grade. Seu maior objetivo realizar a minerao de dados utilizando servios semnticos espalhados pela web. Para isso, utiliza a ontologia OWL-S para descrever servios web semnticos. A ontologia utiliza os conceitos das fases do KDD, entretanto tem objetivos diferentes da ontologia Meta-DM. A ontologia DMO descreve servios semnticos com OWL-S, enquanto a ontologia Meta-DM tem o objetivo de guiar o processo de minerao de dados em uma ferramenta de minerao, sem considerar a existncia de servios. A ontologia OntoDM de Panov et al. (2008) tem como objetivo criar um conjunto de definies de termos para o domnio de minerao de dados, como, por exemplo, tipo de dados, conjunto de dados, tarefas de minerao de dados, algoritmos de minerao de dados, dentre outros. Desse modo, projetos de desenvolvimento de ontologias para esse domnio podem utilizar suas definies, onde evitado ambiguidades na interpretao de alguma definio do domnio. O objetivo de servir como terminologia comum para o domnio de minerao de dados tambm contemplado na Meta-DM, entretanto, a OntoDM no representa, formalmente, a necessidade de conhecimento humano no processo de KDD, caracterstica essencial para a utilizao da metodologia D3M, abordada neste trabalho. A ontologia de Pinto e Santos (2009) utiliza alguns conceitos da ontologia DMO de Brezany, Janciak e Tjoa (2008) e foi desenvolvida com o intuito de contemplar exclusivamente as fases do KDD seguindo a metodologia METHONTOLOGY de Fernandez-Lopez et al. (1997). O trabalho de Pinto e Santos foi o que mais se assemelhou com a ontologia proposta neste trabalho, tanto que alguns conceitos dessa ontologia foram utilizados na Meta-DM. Entretanto, a ontologia Meta-DM leva tambm em considerao a metodologia CRISP-DM (Chapman et al., 2000) e tem o objetivo de ser uma ontologia para ferramentas de minerao de dados, onde so identificados os momentos onde o conhecimento humano se faz necessrio, com o intuito utilizar metodologias orientadas ao domnio como a D3M, com o objetivo de buscar resultados mais significativos em um projeto de minerao de dados. A Figura 2 apresenta uma ilustrao parcial da ontologia de Pinto e Santos (2009).

23

hasAlgorithm is-a

Resources is-a

hasData Modeling Algorithm Data

is-a is-a is-a Algorithm Parameter Algorithm Type is-a Structure Type Information Type

is-a Source

Figura 2: PARTE DA ONTOLOGIA DE PINTO E SANTOS Fonte: Pinto e Santos

1.6 Organizao do Trabalho

Esta monografia est estruturada da seguinte forma: O Captulo 2 apresenta uma reviso bibliogrfica sobre descoberta de conhecimento em bases de dados (KDD do ingls Knowledge Discovery in Databases), algumas metodologias para o desenvolvimento de um projeto de minerao de dados e algumas ferramentas para auxiliar esse processo. O Captulo 3 faz um estudo bibliogrfico do tema ontologias, onde so descritos alguns pontos que foram essenciais para desenvolver este trabalho. O Captulo 4 sobre o desenvolvimento da ontologia Meta-DM, onde feito uma descrio detalhada do ciclo de vida utilizado para o desenvolvimento da ontologia; O Captulo 5 faz a descrio da proposta de uma arquitetura para ferramentas de minerao de dados, onde levado em considerao a ontologia Meta-DM e as tarefas da metodologia

24

DM. Neste captulo apresentado ainda um cenrio de uso da arquitetura, que procura ilustrar sua utilizao para solucionar um problema de minerao de dados; O Captulo 6 apresenta as concluses, contribuies e trabalhos futuros.

25

2 MINERAO DE DADOS

2.1 Consideraes Iniciais

A minerao de dados uma rea da cincia da computao que tem como objetivo encontrar padres interessantes em bases de dados. O surgimento dessa rea justificado pela necessidade de encontrar informaes teis em bases de dados de forma eficiente, onde so utilizados em conjunto tcnicas, mtodos e ferramentas desse domnio. Este captulo tem o intuito de abordar alguns conceitos desse domnio que so considerados importantes para o desenvolvimento do tema proposto neste trabalho. Assim, no decorrer deste captulo so abordados os seguintes assuntos: O processo de descoberta do conhecimento em base de dados, onde so expostos: caractersticas, fases, tarefas, tcnicas e algoritmos de minerao de dados; Metodologias para elaborao de projetos de minerao de dados, em especial as metodologias CRISP-DM e D3M, que so as mais importantes para o desenvolvimento deste trabalho; e Ferramentas utilizadas na minerao de dados.

2.2 Descoberta de Conhecimento em Base de Dados

A humanidade presencia a era da informao, ou seja, quem detm o conhecimento tem uma ampla vantagem em relao aos outros. Para poder buscar cada vez mais eficincia em suas atividades, as empresas e instituies de vrios setores ao longo do tempo (desde quando a informtica conquistou espao nas diversas reas do conhecimento) tm investido em sistemas de informao para poder otimizar e agilizar as atividades rotineiras. Com o desenvolvimento de sistemas de informao cada vez mais complexos, o barateamento no

26

armazenamento de dados e computadores cada vez mais poderosos, foi gerado grandes bases de dados, e a cada dia crescem ainda mais. A Cincia da Computao est em constante busca para empregar recursos computacionais nas mais diferentes reas, do modo mais rpido e confivel possvel. Ao constatar o crescimento acentuado nas bases de dados e a necessidade de analisar essas bases, foi desenvolvida uma ramificao da computao chamada minerao de dados (no final da dcada de 80), cuja idia principal seria descobrir padres interessantes nas bases de dados. Han e Kamber definem minerao de dados como: extrao ou minerao do conhecimento em um grande amontoado de dados. (HAN & KAMBER, 2006, p. 05, traduo nossa). Assim, a minerao de dados foi desenvolvida com a finalidade de analisar e retirar padres interessantes a partir de uma base de dados, pois para o ser humano seria praticamente invivel fazer uma anlise manualmente. A Figura 3 ilustra as etapas do processo de descoberta de conhecimento em bases de dados (KDD do ingls Knowledge Discovery in Databases).

Figura 3: PROCESSO DE DESCOBERTA DO CONHECIMENTO (KDD) Fonte: Han & Kamber (2006, pg: 6, traduo nossa)

27

O Quadro 1 descreve brevemente cada uma das fases do processo KDD segundo Han & Kamber (2006, v.2 p.7, traduo nossa):
Quadro 1: DESCRIO DAS FASES DO PROCESSO DE KDD (HAN & KAMBER, 2006) Fase Descrio da fase Limpeza Dados Integrao dados Seleo dados Transformao de dados Minerao dados Padro avaliao Apresentao do conhecimento Tcnicas de visualizao e representao so usadas para apresentar o conhecimento minerado para o usurio. de de de Dados relevantes para a tarefa de anlise so selecionados da base de dados. Dados so transformados ou consolidados dentro das formas apropriadas para minerao. Aplicaes de mtodos inteligentes so utilizadas para extrair padres dos dados. Identificar os padres verdadeiramente interessantes. dos Combinao de mltiplas fontes de dados. de Remover rudos e inconsistncias dos dados.

As etapas citadas consistem em trabalhar a base de dados de modo que possa ser empregado o processo de KDD. Em resumo, as atividades a serem seguidas so: obter uma base de dados, preparar os dados, aplicar a MD e por fim mostrar e avaliar os padres encontrados. A minerao de dados um campo interdisciplinar que envolve vrias cincias do conhecimento, entre elas esto: tecnologia de banco de dados, aprendizagem de mquina, estatstica, cincia da informao, entre outras. Dessa forma, para conseguir atingir um determinado objetivo essencial que a equipe envolvida na tarefa de encontrar padres interessantes a partir da base de dados tenha diferentes habilidades; alm de ser essencial o trabalho em equipe. Entre as aplicaes que podem se beneficiar com a realizao da minerao de dados esto: Planejar instalao de novas filiais de empresa/lojas; Realizar promoes; Combinar itens de propaganda;

28

Planejar estratgias de peridicos de campanhas de marketing.

2.2.1 Arquitetura Tpica de um Sistema de MD Uma arquitetura tpica de um sistema de MD apresentada na Figura 4, segundo Han & Kamber (2006):

Interface com o usurio

Padres de avaliao

Base de conhecimento

Engenharia de minerao de dados

Servidor de banco de dados ou data warehouse

Limpeza de dados, integrao, e seleo

Banco de dados

Data Warehouse

World Wide Web

Outros Repositrios de Informao

Figura 4: ARQUITETURA TPICA DE UM SISTEMA DE MD Fonte: Han & Kamber (2006, pg: 08, traduo nossa)

A descrio para essa arquitetura feita da seguinte forma, segundo Han e Kamber (2006): Banco de Dados, Data Warehouse, Word Wide Web e outros

repositrios de informao: um ou um conjunto de banco de dados, data warehouse, planilhas, ou outros repositrios de

29

informao. A limpeza de dados ou tcnicas de integrao de dados pode ser executada sobre esses dados; Servidor de banco de dados ou data warehouse: responsvel

por gerenciar os dados, com base na solicitao do usurio de minerao de dados; Base de Conhecimento: Este o domnio do conhecimento que

usado para guiar as pesquisas ou avaliar os interesses dos padres resultantes. Tais conhecimentos podem incluir conceitos hierrquicos, usados para organizar atributos ou valores dos atributos dentro de diferentes nveis de abstrao; Engenharia de minerao de dados: um conjunto de mdulos

funcionais para tarefas tais como caracterizao, associao e anlises de correlao, classificao, predio, anlise de cluster, anlise de outilier3 e anlise de evoluo; Mdulo de avaliao de padres: Este mdulo emprega medidas

de interesse e interao com os mdulos de minerao de dados; Interface com o usurio: Este mdulo faz a comunicao entre

usurios e a execuo do processo de minerao de dados, onde permitido ao usurio interagir com este processo, e especificar uma consulta de minerao de dados ou tarefa.

Ao realizar uma tarefa nesta arquitetura tpica de um sistema de minerao de dados procura-se empregar as tcnicas de minerao de dados e assim poder encontrar informaes valiosas para uma determinada tarefa, conforme a necessidade a ser suprida.

2.2.2 Tarefas da Minerao de Dados

A Figura 5 apresenta as tarefas que so realizadas na minerao de dados:

Anomalias

30

de lise o An socia As

Figura 5: AS TAREFAS CENTRAIS DA MD Fonte: Tan et al. (2009, pg: 9)

Conforme apresentado na Figura 5 as tarefas de minerao de dados so: anlise previsiva, anlise de agrupamento, anlise de associao e deteco de anomalias. O Quadro 2 faz uma breve descrio para cada uma dessas tarefas segundo Tan et al. (2009):

Mod elag em Pre visiv a

to en am rup Ag de se li An

de o s lia ec a et m D no A

31

Quadro 2: DESCRIO DAS TAREFAS DE MINERAO DE DADOS, (Tan et al. 2009) Tarefa de Minerao de Descrio Dados Modelagem Previsiva Refere-se tarefa de construir um modelo para a varivel alvo como uma funo das variveis explicativas. H dois tipos de tarefas de modelagem de previso: classificao, a qual usada para variveis discretas, e regresso, que usada para variveis alvo contnuas. Exemplo: na Figura 6 apresentada uma rvore de deciso onde dada uma informao no banco de dados, estes dados poderiam ser classificados at chegar a uma informao desejada. Anlise de Associao usada para descobrir padres que descrevam caractersticas altamente associadas dentro dos dados. Exemplo: Na Figura 5 h uma associao entre {Fraldas} ! {Leite}, que sugere que os clientes que compram fraldas tendem a comprar leite. Anlise de Agrupamento Procura encontrar grupos de observaes intimamente relacionadas de modo que observaes que pertenam ao mesmo grupo sejam mais semelhantes entre si do que com as que pertenam a outros grupos. Exemplo: na Figura 5 compras que tenham semelhanas umas com as outras, poderiam ser agrupadas assim como as pessoas que compraram leite e fralda. Deteco de Anomalias a tarefa de identificar observaes cujas caractersticas sejam significativamente diferentes do resto dos dados. Exemplo: na Figura 5 dados que no pertence a nenhuma caracterstica estabelecida seriam considerados anomalias.

Para cada tarefa de minerao de dados h um conjunto de algoritmos especficos a ser aplicado, e estes utilizam determinadas tcnicas de minerao de dados que so abordados na seo 2.2.3.

2.2.3 Tcnicas de Minerao de Dados Ao utilizar-se uma tarefa de MD, algumas tcnicas so usadas para concretiz-las. Entre estas tcnicas, Santos e Ramos (2009) destacam as seguintes: rvores de deciso, regras de associao, regresso linear, redes neurais, algoritmos genticos e vizinhos mais prximos. A seguir feita uma breve descrio de cada uma delas.

32

rvores de Deciso: Santos e Ramos (2009, p. 132) definem essa tcnica da seguinte maneira.
As rvores de deciso, como o prprio nome indica, so constitudas por estruturas em rvores que representam um conjunto de decises. Os algoritmos dessa tcnica permitem gerar regras de classificao dos dados, baseados nas informaes armazenadas na base de dados. A Figura 6 apresenta um exemplo dessa estrutura.
"em #inanciado

%letrodom&stico

M'veis $arro

%stado $ivil

Tipo $ontrato

$onceder

$asado

Solteiro

(easing

Rendimento "ruto

$onceder

Idade

--./-./-+ - /--) o $onceder ) o $onceder

/--+ - +---

*+-,-

$onceder

) o $onceder

Figura 6: RVORE DE DECISO Fonte: Santos e Ramos

Na Figura 6 apresentado um exemplo prtico da utilizao de uma rvore de deciso, cujo objetivo conceder ou no crdito a uma determinada pessoa, onde levado em considerao o tipo de bem a ser financiado, o estado civil, o tipo de contrato, o rendimento bruto e a idade. Santos e Ramos (2009) abordam que as rvores de deciso podem ainda ser representadas por um conjunto de regras, como apresentado a seguir:

Se

Bem

Financiado

Eletrodomstico

Estado

Civil

Casado

Rendimento Bruto = 5001 10000 Ento Conceder.

Santos e Ramos (2009) destacam que cada folha da rvore d origem a uma regra, sendo o seu contedo apresentado na parte consequente da regra.

33

Regras de Associao: Santos e Ramos (2009, p. 135) definem esta tcnica da seguinte maneira.
O objetivo dessa tcnica identificar regras que relacionam uma concluso (por exemplo, a compra de um produto) com um conjunto de condies (por exemplo, a compra de outros produtos), permitindo encontrar relacionamentos entre os atributos existentes numa base de dados, sendo representado na forma de uma regra: Se X ento y ou X => Y.

A Figura 7 apresenta um exemplo de uma base de dados e a utilizao de regras de associao para gerar associao entre os elementos.

Figura 7: PROCESSO DE INDUO DE REGRAS DE ASSOCIAO Fonte: Santos e Ramos (2009)

A Figura 7 apresenta um conjunto de dados associado compra de produtos, estes produtos so agrupados por compra e a partir desse agrupamento so geradas regras. No exemplo foi gerada a regra: Po & Manteiga => Leite (2:50%,1) indica que os clientes que compram o produto Po juntamente com o produto manteiga, tende a comprar o produto Leite, esta regra apresenta um suporte de 50%, o que significa que metade dos registros analisados pertencem a referida regra. Regresso Linear: Santos e Ramos (2009, p. 136) definem esta tcnica da seguinte maneira.

34

Esta tcnica utilizada sempre que se pretende prever uma varivel com valores contnuos. Os dados so modelados aproximando-os a uma linha reta. A forma mais simples de regresso apresentada atravs de uma equao com duas variveis, X e Y, tal que: Y = 0 + 1X, onde X representa a varivel independente, Y a varivel dependente calculada a partir de X, e 0 e 1 os coeficientes da regresso.

Redes Neurais Artificiais: Santos e Ramos (2009, p. 138) definem esta tcnica da seguinte forma.
Redes neurais artificiais so sistemas classificatrios modelados segundo o funcionamento do sistema nervoso humano. Estes sistemas so compostos por um conjunto de unidades, organizadas em nveis. As unidades (ns) encontram-se conectadas atravs de ligaes, nas quais tm associado um peso. As unidades que constituem uma rede encontram-se agrupadas em trs grupos: unidades de entradas encarregadas de receber os dados (atributos) a analisar; unidade de sada que transmitem os sinais sada da rede; e um nmero ilimitado de nveis intermedirios (ou nveis ocultos) que contm as unidades intermedirias.

A Figura 8 apresenta um exemplo de uma rede neural artificial.

Figura 8: REDE NEURAL ARTIFICIAL Fonte Ramos e Santos (2009)

35

Santos e Ramos (2009) destacam tambm que existem dois estgios na utilizao de uma rede neural artificial. O primeiro diz respeito aprendizagem, no qual a rede treinada para a execuo de determinada tarefa. No segundo acontece a previso, na qual a rede utilizada para classificar registros desconhecidos. Estes conceitos tambm so aplicados em rvores de deciso. Algoritmos Genticos: Segundo Santos e Ramos (2009) a tcnica de algoritmo gentico utiliza princpios da biologia e da cincia da computao. Esta tcnica inicia com um conjunto de regras, as quais so submetidas a operadores de seleo e reproduo, de forma a desenvolverem regras mais apuradas, e ento so etiquetadas com determinado valor de utilidade, que facilita a seleo das mesmas. A Figura 9 apresenta um modelo de algoritmo gentico.

Figura 9: MODO DE OPERAO DOS ALGORITMOS GENTICOS Fonte: Santos e Ramos (2009)

Santos e Ramos (2009, p. 142) fazem a seguinte descrio para o funcionamento dessa tcnica.
A Figura 9 (a),representa a amostra inicial dos dados, um conjunto com quatros regras. Para cada uma das regras identificado o valor de utilidade, atravs da funo de avaliao (Figura 9 (b)). Por exemplo, a primeira regra foi classificada com 8, o que significa que apresenta uma probabilidade de 32% de ser selecionada. Na Figura 9 (c), apresentada a identificao dos pares e a definio do ponto de cruzamento, o que conduz construo de novas regras, apresentadas na Figura 9 (d). O ltimo passo est associado mutao (Figura 9 (e)), no qual verificada a mutao aleatria de dois caracteres.

36

Vizinhos mais Prximos: Santos e Ramos (2009, p. 143) definem esta tcnica da seguinte maneira.
A segmentao de dados atravs dos vizinhos mais prximos integra um conjunto de tcnicas que se baseiam no princpio de que registros semelhantes esto prximos uns dos outros, quando analisados numa perspectiva espacial. A verificao da localizao dos registros, interpretados como pontos no espao, permitem a identificao de regies denominadas classes (ou segmentos), que apresentam caractersticas comuns para os registros que representam.

A Figura 10 exemplifica a funcionalidade dessa tcnica.

4a5 $entr'ides Iniciais

465 Primeira divis o

4c5 Reposicionamento dos centr'ides

4d5 )ovos segmentos

Figura 10: PROCESSO DE IDENTIFICAO DOS SEGMENTOS Fonte: Santos e Ramos (2009)

37

Santos e Ramos (2009, p. 144) fazem a seguinte descrio para o funcionamento da Figura 10.
Na Figura 10 (a) apresentado o conjunto inicial dos dados, onde so selecionados trs pontos aleatrios, o cinzento, como sendo o centride do segmento. Para estes pontos, e na Figura 10 (b), verificam-se quais os registros (pontos) que integram cada um dos segmentos. No passo seguinte (Figura 10 (c)), so ajustados os centrides, atravs da verificao do ponto mdio dos elementos de um dado segmento. Para as novas posies dos centrides verificado a que segmento cada registro pertence, atendendo s alteraes observadas na posio dos centrides (Figura 10 (d)). Este processo sucessivamente repetido at que no sejam verificadas quaisquer mudanas na posio dos centrides e, como tal, nos registros que integram cada segmento.

2.2.4 Algoritmos para minerao de dados

Conforme as tarefas de minerao de dados (apresentado na seo 2.2.2) e as tcnicas (apresentado na seo 2.2.3) os algoritmos so construdos e ento implementados em uma ferramenta de minerao de dados. Nos prximos pargrafos so apresentados alguns algoritmos de minerao de dados, e tambm feita uma breve descrio de um algoritmo para cada tarefa de minerao de dados apresentada. Segundo Santos e Ramos (2009) as tcnicas de minerao so concretizadas atravs de diferentes algoritmos. Na seo 2.4 so apresentadas algumas ferramentas de minerao de dados, onde as mesmas so desenvolvidas para contemplar um algoritmo ou um conjunto de algoritmo de minerao de dados de acordo com o propsito da ferramenta. O Quadro 3 apresenta alguns algoritmos que so utilizados na ferramenta de minerao de dados WEKA.
Quadro 3: ALGUNS ALGORITMOS PARA MINERAO DE DADOS, WEKA verso 3.7.1 (2010)
4

Tarefa de Minerao de Dados Agrupamento

Algortimo OPTICS SimpleKMeans K Means

http://www.cs.waikato.ac.nz/ml/weka. Acesso 30/12/2010

38

J48 RAndomTree Classificao UserClassifier Apriori HotSpot Associao GeneralizedSequentialPatterns

A tarefa de classificao exemplifica atravs do algoritmo J48. Esse algoritmo gera uma rvore de deciso. Segundo Tan et al. (2009) este algoritmo consiste na entrada de registros de treinamento E e o conjunto de atributos F. Ento o algoritmo funciona selecionando recursivamente o melhor atributo para dividir os dados e expandir os nodos da folha da rvore at que o critrio de parada seja satisfeito. A Tarefa de Associao exemplificada atravs do algoritmo Apriori. Segundo Tan et al. (2009) este algoritmo faz uso de poda baseada em suporte para controlar de forma sistemtica o crescimento exponencial dos conjuntos de itens candidatos. Inicialmente, cada item considerado como um conjunto candidato de item 1. Aps a contagem de seus suportes, os conjuntos de itens candidatos com menos transaes so descartados. Para a tarefa de agrupamento o algoritmo K-means exemplificado. Tan et al. (2009) abordam que esse algoritmo primeiro escolhe K centrides iniciais, onde K um parmetro especificado pelo usurio (o nmero de grupos desejado). Cada ponto atribudo ao centride mais prximo, e cada coleo de pontos atribudos a um centride um grupo. O centride de cada grupo ento atualizado baseado nos pontos atribudos ao grupo. feita a repetio desses passos at que nenhum ponto mude de grupo. Nesta seo foram apresentados alguns algoritmos para concretizar uma tarefa de minerao de dados, as quais podem utilizar uma ou mais tcnicas para a minerao de dados. Os algoritmos: J48, Apriori e K-Means foram abordados devido ao fato de muitos algoritmos de minerao de dados serem baseados nesses algoritmos.

39

2.3 Metodologias para Minerao de Dados A partir do momento que a minerao de dados passou a ser utilizada por empresas e a academia conseguiu comprovar sua eficincia, a mesma foi alvo de uma nova necessidade, que a criao de metodologias para definir o ciclo de vida de um processo de minerao de dados. Este trabalho aborda duas metodologias para a construo de um projeto de minerao de dados a CRISP-DM e a D3M.

2.3.1 CRISP-DM

Segundo Chapman et al. (2000) a metodologia CRISP-DM foi concebida no final dos anos de 1996 pelas empresas NCR (Estados Unidos da Amrica e Dinamarca), Daimler-Chrysler AH (Alemanha), SPSS Inc. (Estados Unidos da Amrica) e OHRA (Grupo Bancrio Holands). Essas empresas reuniram suas experincias para o desenvolvimento de um processo padro para minerao de dados e o batizaram de CRISP-DM. Segundo Chapman et al. (2000) CRISP-DM uma metodologia para as diferentes fases na implantao de um projeto de MD. Esta metodologia definida em termos de um processo hierrquico, que constitui em um conjunto de tarefas descritas em quatro nveis de abstrao (do geral para o especfico). A Figura 11 apresenta os quatro nveis de abstrao que so: fases, tarefas genricas, tarefas especficas e instncias do processo com seus respectivos conjuntos de tarefas.

40

Figura 11: QUATROS NVEIS HIERRQUICOS DA METODOLOGIA CRISP-DM Fonte: Chapman et al. (2000, pg. 9, traduo nossa)

A Figura 11 mostra que para cada uma das fases superiores h um conjunto de tarefas na prxima fase, havendo uma hierarquia entre as tarefas, onde as tarefas gerais esto em um nvel superior e as mais especficas so uma ramificao das superiores. O Quadro 4 apresenta uma descrio para cada uma dessas fases, segundo Chapman et al. (2000):
Quadro 4: DESCRIO DAS FASES DA METODOLOGIA CRISP-DM (CHAPMAN et al., 2000) Nvel Tarefa Fases O processo de minerao de dados organizado dentro de um nmero de fases; cada fase consiste de vrias tarefas do segundo-nvel. Exemplo: a tarefa Compreenso do Negcio.

Tarefas Genricas

chamado genrico, porque suficiente para cobrir todas as possibilidades da situao da minerao de dados. A tarefa genrica tem como pretenso ser completa e estvel. Exemplo: Identificar Objetivos do Negcio.

Tarefas Especficas

o nvel das tarefas especializadas, o lugar para descrever como as aes nas tarefas deveriam ser executadas em certas situaes especficas. Exemplo: Informao do Negcio.

41

Instncias Processo

A instncia do processo um registro de aes, decises e resultados de uma atual funo da minerao de dados. Exemplo: Registrar os resultados da compreenso do negcio.

O Quadro 4 fez uma breve descrio das tarefas existentes na metodologia CRISP-DM sob uma viso hierrquica. Como exemplo, foi apresentada uma das fases dessa metodologia com algumas de suas tarefas, onde a tarefa de Compreenso do Negcio contm a tarefa de Informao do Negcio, e esta contm o Registro dos Resultados da compreenso do Negcio. A prxima seo descreve cada fase dessa metodologia e suas respectivas tarefas.

2.3.1.1 O Modelo de Referncia CRISP-DM

Segundo Chapman et al. (2000), o ciclo de vida de um projeto de minerao de dados consiste em seis fases, que so: Entendimento do Negcio (Business Understanding), Entendimento dos Dados (Data Understanding),

Preparao dos Dados (Data Preparation), Modelagem (Modeling), Avaliao (Evaluation) e Aplicao (Deployment). A Figura 12 apresenta essas fases e o relacionamento entre elas. A sequncia das fases no rgida, pode acontecer das tarefas posteriores voltarem para as fases anteriores, isso depende dos resultados de cada fase. As setas indicam as mais importantes e frequentes dependncias entre as fases.

42

Figura 12: FASE DO MODELO DE REFERNCIA DO CRISP-DM Fonte: Chapman et al. (2000, pg. 13, traduo nossa)

Chapman et al. (2000) faz a seguinte descrio para cada uma dessas fases: Entendimento do negcio: esta fase foca no entendimento dos

objetivos e requisitos do projeto sob uma perspectiva de negcio; Entendimento dos dados: esta fase tem como objetivo um

entendimento inicial dos dados, e logo em seguida possui atividades que permitem um entendimento dos dados, identificar problemas em alguns dados, e encontrar subconjuntos de dados interessantes para o projeto; Preparao dos dados: A fase de preparao dos dados cobre

todas as atividades para preparar os dados para a realizao das atividades; Modelagem: Nesta fase, vrias tcnicas de modelagem so

selecionadas e aplicadas e seus parmetros so calibrados para obter valores otimizados;

43

Avaliao: Esta fase consiste em criar um modelo de alta

qualidade a partir da anlise dos dados, e certificar que os objetivos sero alcanados na primeira fase onde foram estabelecidos. Alm disso, ser levantado se alguma questo importante do negcio no foi suficientemente considerada. No final dessa fase, uma deciso sobre a utilizao dos resultados da minerao dever ser avaliada; Aplicao: Esta fase consiste em estruturar e apresentar os

resultados obtidos com a aplicao da tarefa da minerao de dados de modo que o cliente possa utilizar.

Cada uma dessas fases possui um conjunto de atividades a serem realizadas. O Quadro 5 apresenta as fases com suas respectivas tarefas a serem executadas, segundo Chapman et al. (2000):
Quadro 5: TAREFAS EXECUTAS EM CADA ETAPA DO CRISP-DM, (CHAPMAN et al., 2000) Fase Tarefas Entendimento do negcio Entendimento dos dados Preparao dos dados Modelagem Avaliao Determinar os objetivos do negcio Avaliar a situao Determinar as metas de minerao de dados Produzir o plano do projeto Coletar os dados iniciais Descrever os dados Explorar os dados Verificar a qualidade dos dados Selecionar os dados Limpeza de dados Construir dados Integrar os dados Formatar os dados Selecionar as tcnicas de modelagem Gerar o teste padro Construir o modelo Avaliar o modelo Avaliar os resultados Rever os processos Determinar os passos seguintes

44

Aplicao

Plano de Aplicao Plano de modelagem & manuteno Produzir relatrio final Rever o projeto

Alm da Metodologia CRISP-DM h outras metodologias que podem ser aplicadas em projetos de minerao de dados, entre estas metodologias a DM, que ser abordada na prxima seo, onde algumas dos seus propsitos foram utilizados com a ontologia desenvolvida, para criar uma arquitetura orientada ao domnio para ferramentas de minerao de dados.

2.3.2 Minerao de Dados Orientada ao Domnio (DM)

Segundo Cao e Zhang (2006) a minerao de dados realizada atualmente baseada em metodologias orientadas aos dados, onde a viso dos resultados feita de forma isolada, e tem como consequncia a gerao de muitos resultados que no interessam s necessidades dos negcios. Neste contexto, a metodologia DM veio para propor que o processo de minerao de dados seja baseado em conhecimento do domnio do negcio e na cooperao entre humanos e mquinas durante a minerao. Os fatores que justificam a criao e desenvolvimento da metodologia DM, que as metodologias atuais de minerao de dados apresentam as seguintes caractersticas, segundo Cao e Zhang (2006): Padres que so interessantes para os negcios

frequentemente esto ocultos em grande quantidade de dados com estruturas de dados complexas, dinmicas, e origem distribuda; Distanciamento entre o meio acadmico e o interesse do

negcio; Padres interessantes frequentemente no podem ser

implementados na vida real, se eles no so integrados com regras do negcio, regulamentos e processos.

45

Para a metodologia DM foi criado um framework chamado DDID-PD (domain-driven in-depth pattern discovery), que considera os seguintes

componentes chaves, segundo Cao e Zhang (2006): Restries baseadas em contexto: A descoberta de padres envolve uma profunda compreenso do ambiente em torno do domnio do problema, dos seus dados e da anlise de seus objetivos. Integrao do domnio de conhecimento: A integrao de conhecimentos de domnio est sujeito forma como ele pode ser representado e preenchido para o processo de descoberta de conhecimento. Ontologia baseada em

representao do conhecimento de domnio uma das abordagens adequadas para o modelo de conhecimento do domnio. Cooperao entre homem e mquina: consiste em haver uma minerao de dados cooperativa entre especialistas e sistemas de minerao em todo o processo. Minerao em profundidade: consiste em avaliar e refinar conhecimento acionvel, na tentativa de buscar resultados mais interessantes para o objetivo do negcio. Descoberta de regras ou padres mais interessantes para o negcio (o que chamado de conhecimento acionvel): consiste em disparar regras quando forem descobertos dados que satisfaam um determinado conhecimento acionvel. Processo do refinamento iterativo dos resultados: consiste em criar sub-cenrios a partir do cenrio principal e ento refinar os padres gerados a partir do sub-cenrio criado. Suporte de minerao paralela e interativa: consiste em obter pedidos dos usurios, gerenciar informaes e usar

algoritmos para process-los em mquinas distintas.

46

A Figura 13 apresenta o framework DDID-PD, onde as tarefas da metodologia DM apresentada nos pargrafos anteriores so combinadas com as tarefas tradicionais da minerao de dados.

Entendimento do Problema & Definio Integrao do domnio de conhecimento Restrio baseada em contexto Minerao em profundidade

Suporte de Minerao paralela e interativa

Cooperao entre homem e mquina

Desenvolvimento

Entendimento dos Dados

Modelagem

Resultados da Avaliao

Descoberta de regras ou padres mais interessantes para o negcio

Processo do refinamento Interativo dos resultados

Figura 13: MODELO DO PROCESSO DDID-PD Fonte Cao e Zhang (2006, pg 53, traduo nossa)

Segundo Cao e Zhang (2006), a sequncia apresentada na Figura 13 no rgida; algumas fases podem ser descartadas ou deslocadas para uma fase frente ou atrs em uma aplicao real. Cada passo do processo DDID-PD pode envolver conhecimento de domnio e auxilio de especialistas do domnio. Esse framework tem os componentes chaves de suporte para minerao de dados orientada ao domnio, que so crticas para o sucesso de um processo de minerao de dados no mundo real.

2.4 Ferramentas para Minerao

Atualmente h vrias ferramentas de minerao de dados que executam um ou vrios processos na descoberta de padres a partir dos dados. Algumas dessas ferramentas foram desenvolvidas em trabalhos de concluso de mestrado e doutorado nas faculdades onde h cursos nesses nveis; outras so de propriedades de empresas j consagradas no mercado. Dentre algumas dessas

47

ferramentas esto: Bramining5, Pacote Weka6, DBminer7, Oracle Data Mining8 e Kira (Mendes, 2009). Cada uma dessas ferramentas tem uma ou mais funes dentro do campo de minerao de dados. As subsees a seguir apresentam uma breve descrio da ferramenta Weka, por sua grande popularidade, e da ferramenta Kira, ter sido desenvolvida com o diferencial de ser amigvel para o usurio.

2.4.1 A Ferramenta WEKA

Weka uma abreviatura para Waikato Environment for Knowledge Analysis. Segundo Witten & Frank (2006) essa ferramenta contm um pacote de algoritmos para minerao de dados e ferramentas de pr e ps-processamento. Weka foi desenvolvida na Universidade de Waikato na Nova Zelndia. Ela foi desenvolvida em Java e distribuda sobre os termos de licena GNU. Pode ser executada em vrias plataformas, como o caso do Windows, Linux e Macintosh. Fornece uma interface uniforme para a aplicao de vrios algoritmos de aprendizado, juntamente com os mtodos de pr e ps-processamento. A Figura 14 apresenta a interface inicial da ferramenta Weka.

Figura 14: TELA INICIAL DA FERRAMENTA WEKA Fonte: Ambiente de Desenvolvimento do WEKA

5 6

www.graal-corp.com.br. Acesso: 16 jun. 2010. www.cs.waikato.ac.nz. Acesso: 16 jun. 2010. 7 http://db.cs.sfu.ca/DBMiner. Acesso: 16 jun. 2010. 8 www.oracle.com. Acesso: 16 jun. 2010.

48

A partir da interface da Figura 14, possvel acessar as funcionalidades da ferramenta. Segundo Witten & Frank (2006), Weka fornece implementaes de algoritmos de aprendizagem que podem ser aplicadas no conjunto de dados; isto inclui uma variedade de ferramentas para transformao de conjuntos de dados, tais como algoritmos para discretizao. Pode-se fazer o prprocessamento de um conjunto de dados e analisar os resultados de classificao e sua performance, isso sem escrever qualquer cdigo de programa. A Figura 15 mostra um dentre os ambientes de trabalho da Weka.

Figura 15: AMBIENTE DE DESENVOLVIMENTO WEKA Fonte: Ambiente de Desenvolvimento do WEKA

A utilizao dessa ferramenta por meio de abas e seleo do que o usurio deseja, conforme apresentado na Figura 15. Entre as vantagens encontradas ao utilizar esta ferramenta est o fato de dar suporte a vrios algoritmos de minerao de dados consagrados tanto no meio acadmico como em aplicaes de negcio; o ambiente de trabalho totalmente grfico, h livros e outras publicaes que servem como manuais de referncia para realizar o processo de descoberta de informaes a partir de uma base de dados, como, por exemplo: livro

49

de Witten e Frank (2005) e no stio www.cs.waikato.ac.nz/ml/weka/ onde podem ser obtidos vrios artigos relacionados aplicao da ferramenta Weka em projetos de minerao de dados. Algumas dificuldades foram levantadas ao utilizar esta ferramenta: dificuldades na fase de preparar os dados de maneira que a ferramenta possa trabalhar; o usurio deve ter um bom conhecimento de minerao de dados para definir o que se deseja fazer e interpretar os padres gerados. Estas dificuldades foram constatadas ao realizar projetos fictcios de minerao de dados.

2.4.2 Ferramenta de Minerao de Dados Kira

A ferramenta de minerao de dados Kira foi desenvolvida por Mendes (2009), como parte de um trabalho de mestrado. A inteno dessa ferramenta abstrair grande parte do

conhecimento exigido do analista de dados para executar a tarefa de minerao de dados. possvel realizar um projeto de minerao de dados a partir das orientaes que so descritas em cada uma das telas dessa ferramenta. A Figura 16 apresenta a arquitetura da ferramenta KIRA, que possui trs camadas. Estas camadas so descritas nos prximos pargrafos. A Camada 1 est relacionada com a interface do usurio, onde o usurio pode ver e inserir informaes para realizar um projeto de minerao de dados, entre estas operaes esto definir o problema e objetivo da minerao de dados e ser orientado pela a ferramenta nas diversas operaes a serem realizadas durante o projeto de minerao de dados, como preparar os dados, definir a tarefa de minerao de dados e visualizar os resultados produzidos. Na Camada 2 ocorre as operaes lgicas da ferramenta, onde os dados so preparados, feito a anlise dos dados, e realizado a execuo da minerao de dados, alm disso nesta camada foi implementado um sistema especialista desenvolvido por Silva et al. (2009) para definir qual tarefa de minerao a mais adequada para o projeto de minerao de dados que est em execuo. A Camada 3 est relacionada com o repositrio de informaes, onde esto os diferentes tipos de dados, como, por exemplo: a base de dados a ser

50

minerada, dados prontos para ser minerados, repositrio de informaes entre outros.

Figura 16: ARQUITETURA DA FERRAMENTA KIRA Fonte: Silva et al. (2009, pg 13)

Segundo Mendes (2009), cada mdulo da Camada 1 (Interface do Usurio) tm como objetivo oferecer facilidades para o usurio preparar os dados, executar o algoritmo de minerao e avaliar os padres obtidos. Inicialmente, o usurio tem acesso s funes para ajustar os parmetros das fontes de dados a serem usadas. Depois o usurio orientado a oferecer informaes especficas, escolher e estruturar os dados destinados, escolher e executar um algoritmo de minerao de dados e analisar os resultados gerados. No final de cada fase, o usurio informado sobre o prximo passo do processo. Estes processos guias acompanham o usurio na execuo de cada etapa no tendo a necessidade de conhecimentos detalhados sobre o processo de minerao de dados. A Figura 17 apresenta uma das interfaces da ferramenta Kira, onde mostra uma viso geral dos passos a serem seguidos para a realizao da minerao de dados.

51

Figura 17: TELA DA FERRAMENTA KIRA Fonte: Ambiente de desenvolvimento da Ferramenta Kira

Entre os componentes da interface desta ferramenta esto: O diagrama de blocos: demonstra cada passo que a ferramenta

ir executar; No canto direito inferior existe uma legenda que identifica a

representao de cada um dos itens que compem o diagrama de blocos; A paleta esquerda est dividida da seguinte forma: o Fontes de dados, onde indicada a fonte de dados utilizada; o Projetos, nome atribudo ao projeto de minerao de dados; o Etapas da minerao indicam cada uma das etapas a ser realizadas.

52

A Figura 18 apresenta uma das intefaces da ferramenta Kira para executar a atividade de definir o problema e objetivo de um projeto de minerao de dados.

Figura 18: IDENTIFICAO DA TAREFA DE MINERAO Fonte: Ambiente de Desenvolvimento da Ferramenta

A partir da Figura 18, o minerador de dados faz uma anlise do propsito do projeto de minerao de dados e auxliado pela a guia de descrio do que deve ser feito no lado esquerdo da ferramenta defini o objetivo e o problema do projeto de minerao de dados a ser realizado. O funcionamento desta ferramenta consiste em chamar a tela com o diagrama de blocos apresentada na Figura 17, e ento indicado o prximo processo a ser executado e logo, em seguida, uma outra tela exibida com campos a serem preenchidos auxiliados por mensagens, como apresentado na Figura 18. O funcionamento desta ferramenta resumidamente consiste em executar as seguintes etapas: Escolher uma base de dados, Atribuir um nome ao projeto, Descrever o problema a ser resolvido e objetivo a ser cumprido,

53

Fazer a preparao dos dados, Selecionar a tarefa de minerao de dados. Avaliar os resultados da minerao de dados.

Na etapa final a ferramenta mostra o resultado dos padres gerados. Em todas as etapas, no lado direito h uma tag que indica ao usurio o que fazer.

2.5 Consideraes Finais

Um projeto de minerao de dados envolve vrias fases. A metodologia CRISP-DM foi desenvolvida para elaborao de projetos de minerao de dados orientados a dados onde disciplina e descreve o que o minerador deve fazer no conjunto de etapas da metodologia. A metodologia DM foi desenvolvida para tornar a minerao de dados mais interativa, cujo propsito uma minerao feita a partir do conhecimento do domnio, onde suas tarefas so combinadas com as tarefas de uma metodologia orientada a dados na tentativa de buscar resultados melhores. As fases da CRISP-DM e a necessidade do conhecimento humano no processo de minerao de dados so a base para o desenvolvimento da ontologia META-DM. Porm para realizar esta tarefa foi necessrio fazer um levantamento bibliogrfico sobre ontologias, que abordado no prximo captulo.

54

3 ONTOLOGIAS

3.1 Consideraes Iniciais

Ontologias vm sendo aplicadas em vrios domnios da computao (Web Semntica, Segurana da Informao, Minerao de Dados entre outros) como forma de representar determinado domnio por meio de conceitos e relacionamentos entre eles. Neste captulo descrito alguns aspectos sobre ontologias, considerados importantes, que so necessrios para o desenvolvimento da ontologia de domnio proposta. Entre estes aspectos esto: conceito e classificao de ontologias, metodologias para criar ontologias, linguagens para implementao de ontologias e ferramentas para desenvolver ontologias. As subsees abaixo detalham cada um desses itens com o objetivo de levantar informaes bibliogrficas suficientes para o desenvolvimento da ontologia de domnio proposta.

3.2 Definies Um projeto, independentemente de sua natureza (seja

computacional, de engenharia, mdica e outros), tem vrias pessoas envolvidas. Dessa forma, h necessidade que os envolvidos em um determinado projeto entendam o que os outros fizeram na fase anterior, para que possam comear uma funo da melhor forma possvel. Diante da necessidade de um constante entendimento de uma situao surgiu o termo ontologia. H diversas definies para o termo ontologia, como a utilizada por Falbo et al. (1998, p. 2) a seguir:
Uma ontologia uma especificao de uma conceitualizao que uma descrio de conceitos e relaes que podem existir para um agente de software ou um agente da comunidade. Basicamente, uma ontologia consiste de conceitos e relaes, e suas definies, propriedades e restries so expressas como axiomas. Uma Ontologia no somente uma hierarquia de termos, mas uma estrutura falando sobre um domnio. (traduo nossa)

55

A maioria das definies para o termo ontologia, inclusive a utilizada por Falbo et al. (1998), so extenses da definio de Gruber (1993), que amplamente aceita na comunidade cientfica. Segundo Gruber (1993), uma ontologia uma especificao explcita de uma conceituao, ou seja, uma representao de um determinado conhecimento de maneira formal. Neste trabalho, ser adotada a definio feita por Falbo et al. (1998), pois ela se mostra completa e deixa explcito o uso de ontologias para expressar conhecimento sobre determinado domnio, o que vai ao encontro, ao objetivo deste trabalho. Segundo Noy & McGuinness (2001) a primeira aplicao de ontologias, na rea de Cincia da Computao, foi no campo da inteligncia artificial em meados dos anos 90. Desde ento, as ontologias tm sido aplicadas em vrios ramos da Cincia da Computao, como, por exemplo: web semntica, engenharia de software, arquitetura da informao, dentre outros, como uma forma de representar conhecimento sobre o mundo ou parte desse mundo.

3.3 Classificao das Ontologias

De acordo com Linhalis (2007), ontologias podem ser classificadas sob diversos aspectos, como, por exemplo, o grau de formalismo do vocabulrio, a estrutura, o contedo da conceituao, dentre outros. Uma das classificaes mais citadas na literatura a feita por Guarino (1998), que classifica as ontologias segundo sua funo e as divide em trs nveis. A Figura 19 apresenta essa diviso e a inter-relao dos tipos de ontologias.

56

Figura 19: CLASSIFICAO DE ONTOLOGIAS Fonte: Guarino (1998, pg: 9, traduo nossa)

O Quadro 6 faz uma breve descrio dos nveis que compem a classificao de ontologias de acordo com Guarino (1998).
Quadro 6: DESCRIO DOS TIPOS DE ONTOLOGIAS, GUARINO (1998) Tipo de Ontologia Descrio Alto Nvel Descreve conceitos gerais, como espao, tempo, ao e outros; que so independentes de um problema ou domnio especfico. Exemplo: Cyc , WordNet e SUMO Domnio e Tarefa
9 10 11

Refere-se, respectivamente, a um vocabulrio relacionado a um domnio (como medicina ou automveis) ou a uma tarefa ou atividade (como diagnstico e venda), que especializa os termos introduzidos na ontologia de alto nvel. Exemplo: ontologia de veculos, documentos e computadores.

Aplicao

Descreve conceitos que dependem de domnios e tarefas particulares, que so frequentemente especializaes das ontologias relacionadas. Exemplo: Uma ontologia que trabalhe com carros de luxos, que especializar conceito da ontologia de veculos (que uma ontologia de domnio).

http://www.cyc.com/. Acesso em: 03 set. 2010. http://wordnet.princeton.edu/. Acesso em: 03 set. 2010. 11 http://ontology.teknowledge.com/. Acesso em: 03 set. 2010.
10

57

3.4 Metodologias para Desenvolvimento de Ontologias

Vrios autores desenvolveram etapas a serem seguidas para construir ontologias, organizadas de modo que fornea suporte para que os envolvidos em um determinado projeto saibam que tcnicas so mais apropriadas e o que cada um vai produzir. Ao conjunto dessas etapas deu-se o nome de

metodologias. Este trabalho utiliza duas metodologias para o desenvolvimento de ontologias: a metodologia de Noy e McGuiness (2001) e a Metodologia METHONTOLOGY. Na metodologia desenvolvida por Noy e McGuiness (2001) propem-se as seguintes fases: 1) Determinar o domnio e o escopo da ontologia: consiste em verificar o que a ontologia ir cobrir e assim limitar o escopo do modelo. Ao longo do desenvolvimento esta fase pode ser alterada de acordo com o amadurecimento dos reais propsitos da criao da ontologia; 2) Considerar a reutilizao de outras ontologias: consiste em verificar o que j foi criado e refinar ou estender para o domnio ou tarefa no qual se deseja trabalhar; 3) Enumerar termos importantes para a ontologia: consiste em encontrar os termos mais comuns no domnio e as propriedades que eles possuem; 4) Definir as classes e a hierarquia entre elas: consiste em observar a clareza e a consistncia da hierarquia ao serem criadas subclasses. Isto , deve-se observar se uma classe tem subclasses a mais ou a menos; 5) Definir as propriedades das classes: consiste em criar alguns conceitos na hierarquia, e, logo em seguida suas propriedades; 6) Definir as facetas das propriedades: consiste em descrever os valores de tipos, valores permitidos, nmero mximo e mnimo (cardinalidades) para os valores das propriedades, e outros;

58

7) Criar instncias: consiste em escolher a classe para a qual se deseja criar as instncias, criar uma instncia e preencher os valores das propriedades para cada instncia.

Linhalis (2007) ressalta que a metodologia de Noy e McGuinness se concentra principalmente na fase de conceituao, que a mais crtica no desenvolvimento de uma ontologia, pois a mais ligada definio do conhecimento. A metodologia de Noy e McGuiness (2001) foi adotada com o objetivo de definir conceitos, propriedades e relacionamentos para o domnio de minerao de dados. A metodologia d nfase fase de conceituao, e por isso se mostra bem adequada para este propsito. A proposta da metodologia METHONTOLOGY, segundo Fernndez et al. (1997), baseia-se na construo de ontologias a partir do ponto zero, e podem ser utilizadas outras ontologias ou no. Os autores fazem uma comparao do ciclo de vida de uma ontologia com o processo de desenvolvimento de um software tradicional e ressaltam que bem complicado levantar todos os requisitos necessrios antes de comear o processo de desenvolvimento. As fases do ciclo de vida de uma ontologia para esta metodologia so: especificao, aquisio do conhecimento, documentao. Para documentar o ciclo de vida do desenvolvimento da ontologia a metodologia METHONTOLOGY foi adotada. O Quadro 7 faz uma descrio de cada uma dessas fases:
Quadro 7: ETAPAS DA METODOLOGIA METHONTOLOGY, Fernndez et al. (1997) Fases Descrio Especificao A meta dessa fase produzir um documento de especificao da ontologia, escrito em uma linguagem natural, onde usado um conjunto de representao intermediria ou questes de competncia. Nesta fase proposto que no mnimo as seguintes informaes devem ser includas: O propsito da ontologia: incluindo usurio, cenrios de uso, usurios finais, etc. Nvel de formalidade da ontologia implementada: depende da formalidade que ir ser usada para codificar os termos e seus significados. O grau de formalidade pode ser altamente formal, semi-

conceituao,

integrao,

implementao,

avaliao

59

formal ou rigorosamente formal. Escopo que a ontologia ir cobrir: inclui um conjunto de termos a ser representado, suas caractersticas e granulosidade. Aquisio de Esta fase realizada simultaneamente com a fase de especificao, e est relacionada a adquirir conhecimentos necessrios para comear o processo de criao da ontologia, um processo independente do desenvolvimento da ontologia, no entanto coincide com outras atividades. Para adquirir o conhecimento necessrio so utilizadas consultas a especialistas, livros, manuais, figuras, tabelas e mesmo outras ontologias como fonte de conhecimento. Esses elementos podem ser usados em conjunto com: brainstorming, entrevistas, anlise de texto formal e informal e ferramentas de aquisio de conhecimento. Conceituao Nesta fase ser estruturado o conhecimento de domnio em um modelo conceitual que ir descrever o problema e suas solues em termos do vocabulrio de domnio identificado na atividade de especificao da ontologia. A primeira atividade a ser realizada construir um completo Glossrio de Termos (conceitos, instncias, verbos e propriedades), que ir resumir tudo o que til e potencialmente utilizvel no conhecimento de domnio e seu significado. Uma vez completado o glossrio de termos, devese agrupar os termos em conceitos (dicionrio de dados que descreve e rene tudo o que til e potencialmente usado no conceito de domnio, seus significados, atributos e instncias) e verbos (aes no domnio). No final dessa fase ser produzido um modelo conceitual expresso como um conjunto de conceitos bem definidos, que permitir ao usurio final: verificar se a ontologia ser ou no til e utilizvel para uma aplicao sem inspecionar seu cdigo fonte; e comparar o escopo e plenitude de vrias ontologias, sua reusabilidade e compatibilidade pela anlise do

conhecimento

conhecimento. Integrao Como meta de acelerar o processo de desenvolvimento de uma ontologia, pode-se considerar o reuso de definies j desenvolvidas, dentro de outras ontologias, ao invs de comear a construo do seu incio. Implementao Consiste em implementar a ontologia em uma linguagem formal, tais como: CLASSIC, OWL, LOOM, Ontolingua, ou uma outra linguagem de

programao. Nesta fase requerido um ambiente de desenvolvimento de ontologias e que deve pelo menos incluir: uma analise lxica e sinttica, um tradutor, um editor, um navegador, realizar pesquisa de termos e apresentao dos resultados produzidos. Avaliao Realizar um julgamento tcnico da ontologia, seu ambiente de software e documentao. A avaliao inclui os termos de verificao e validao. Verificao refere-se ao processo tcnico que garante a correo de uma

60

ontologia e validao garante que a ontologia desenvolvida representa o domnio do conhecimento definido na fase de especificao. Documentao Para cada uma das fases anteriores feito um documento descrevendo o que foi realizado. A documentao parte integrante do desenvolvimento da ontologia. Assim esta etapa est presente em todas as anteriores.

O conjunto dessas etapas forma o ciclo de vida de desenvolvimento de uma ontologia. Esta metodologia foi adotada neste trabalho para registrar cada um dos passos do desenvolvimento da ontologia.

3.5 Linguagens para Representao de ontologias

Segundo Linhalis (2007), no incio dos anos 90 um conjunto de linguagens para implementao de ontologias foram desenvolvidas a fim de formalizar as informaes nas ontologias. Essas linguagens utilizam um ou mais formalismos para representar conhecimento, tais como regras de produo, lgica de primeira ordem, lgica de segunda ordem, frames, redes semnticas e lgica de descries (Russel & Norving, 2003). O Quadro 8 mostra algumas das linguagens para implementao de ontologias (Linhalis, 2007).

Quadro 8: LINGUAGENS PARA REPRESENTAR ONTOLOGIAS (LINHALIS, 2007) Linguagem Caracterstica Ontolingua
12

Foi desenvolvida em 1992; Combina frames e lgica de primeira ordem para representar conhecimento; Apresenta taxonomia de conceitos, relaes n-rias, funes, axiomas, instncias e procedimentos; O grande poder de expressividade dessa linguagem dificulta o

desenvolvimento de inferncia. LOOM


13

Foi desenvolvida no mesmo perodo da Ontolingua; Inicialmente, no foi criada para representar ontologias, mas bases de conhecimentos genricas; baseada em lgica de descries e regras de produo;

12 13

http://ontolingua.stanford.edu/. Acesso: 16 jun. 2010 http://www.isi.edu/isd/LOOM/. Acesso: 16 jun. 2010.

61

Fornece a classificao automtica de conceitos e pode representar taxonomias de conceitos, relaes n-reas, funes, axiomas e regras de produo.

OCML

14

Foi desenvolvida em 1993; considerada uma Ontolingua operacional; A maioria das definies que so representadas em OCML. So similares a Ontolingua e alguns componentes adicionais podem ser definidos, como regras dedutveis e de produo.

F-Logic

15

Combina frames e lgica de primeira ordem, permite a representao de taxonomias de conceitos, relaes binrias, funes, instncias, axiomas e regras dedutveis;

16

Sua mquina de inferncia, Ontobroker, pode ser utilizada para a verificao de restries e para deduzir novas informaes.

KIF

Foi uma das primeiras linguagens criadas especificamente para representar informaes a serem transmitidas de um programa a outro; Utiliza lgica de primeira ordem e representa objetos, funes e relaes. Herda primitivas baseadas em frames RDF(S) , mas sua semntica formal baseada em lgica de descries.
18

OIL

17

19

DAML+OIL

Incorpora aspectos tanto da linguagem DAML (DARPA Agente Markup Language) quanto da linguagem OIL; Tanto OIL quanto DAML+OIL permitem a representao de taxonomias, relaes binrias, funes e instncias.

OWL

20

Esta linguagem se consolidou como padro da web semntica; Foi criada a partir da DAML+OIL; Mais detalhes dessa linguagem so abordados a seguir.

Para a implementao deste projeto foi utilizada a linguagem OWL, que utiliza recursos das linguagens RDF e RDFS. A escolha da linguagem OWL se justifica pelo fato de ser um padro amplamente recomendado para a codificao de ontologias no apenas para a Web Semntica. A seguir feita uma breve descrio de cada uma delas. Segundo Manola e Miller (2004) RDF uma linguagem para representar
14 15

informao

sobre

recursos

na

World

Wide

Web.

Destina-se

http://technologies.kmi.open.ac.uk/ocml. Acesso: 16 jun. 2010. http://semanticweb.org/wiki/KWTR:_f-logic. Acesso: 16 jun. 2010. 16 http://www-ksl.stanford.edu/knowledge-sharing/kif/ Acesso: 16 jun. 2010. 17 http://xml.coverpages.org/oil.html. Acesso 16 jun. 2010. 18 Combinao de RDF e RDF esquema. 19 http://www.daml.org/2001/03/daml+oil-index.html. Acesso: 16 jun. 2010. 20 http://semantic-web.indelv.com/web-ontology-language-owl.html. Acesso: 16 jun 2010.

62

particularmente a representar metadados sobre recursos da Web, como o ttulo, autor e data de modificao de uma pgina Web, copyright e licena de informaes sobre um documento da Web, ou o cronograma de disponibilidade de algum recurso compartilhado. Segundo Breitman (2005) o RDF possui trs elementos

fundamentais que so: sujeito, predicado e objeto. Sujeito um elemento que expressa algo, predicado o que se fala de um elemento (so os relacionamentos) e objeto (pode ser uma URI ou uma string) uma descrio expressa a partir do sujeito e predicado. Ao conjunto desses trs elementos dado o nome de tripla. A Figura 20 apresenta a representao de uma tripla sob forma de um grafo dirigido.

Figura 20: GRAFO REPRESENTANDO UMA TRIPLA

Fonte: Linhalis (2010) A Figura 20 poderia ser interpretada da seguinte forma: Daniel conhece Juliana. Segundo Breitman (2005) esta representao da Figura 20 pode ser representada por sintaxe XML, onde um documento RDF representado utilizando-se um elemento XML com a etiqueta rdf:RDF. O contedo desse elemento um conjunto de descries que utilizam a etiqueta rdf:description. Entre as descries existentes esto: about (faz referncia a um recurso existente), ID (cria um novo recurso) e se no atribuir nenhuma descrio cria-se um atributo annimo. Assim a Figura 20 poderia ser representada da seguinte forma:

<rdf:RDF> <rdf:Description about: Daniel> <f:knows> Juliana </f:knows> </rdf:Description> </rdf:RDF>

63

Mais detalhes da linguagem RDF podem ser encontrados em Manola e Miller (2004). Segundo Linhalis (2010) esta linguagem, se usada sozinha, no representa a semntica por trs das descries. Essa capacidade de descrever semntica fornecida pelas Linguagens RDF Schema e OWL. Segundo Brickley e Guha (2003) a linguagem RDF Schema uma extenso semntica do RDF, que fornece mecanismos para descrever grupos de recursos e as relaes entre esses recursos. De acordo com Linhalis (2010) com a linguagem RDFS possvel organizar as classes e propriedades em hierarquias de

generalizao/especializao, definir domnios e conjuntos de valores esperados para propriedades, definir membros de classes, especializar e interpretar tipos de dados. A Figura 21 apresenta um exemplo de hierarquias de

generalizao/especializao.

Figura 21: HIERARQUIAS DE ESPECIALIZAO/GENERALIZAO

Fonte: Guedes (2009)

Na Figura 21 h a relao de hierarquia onde as duas classes mais abaixo herdam caractersticas da classe mais acima, e especializam-se em alguma coisa que as difere das demais, enquanto que a classe acima tem suas caractersticas prprias e est compartilhando estas caractersticas com as que esto abaixo dela. Dessa forma na relao de hierarquia as classes mais embaixo so classes mais especficas e a mais acima so mais genricas. Nos Quadros 9 e 10 Breitman (2005) resume as classes essenciais do RDF Schema e tambm os relacionamentos.

64

Quadro 9: CLASSES ESSENCIAIS DO RDF-S, (BREITMAN 2005) Classe Descrio rdfs: Resource rdfs: Class rdfs: Literal rdfs: Property Classe de todos os recursos. Classe de todas as classes. Classe de todos os literais. Classe de todas as propriedades

QUADRO 10: RELACIONAMENTOS, (BREITMAN, 2005) rdfs: subClassof Define um relacionamento de herana entre duas classes. rdfs: subPropertyof Define um relacionamento de herana entre duas propriedades.

Um exemplo da utilizao da linguagem RDF-S apresentado a seguir.


1 2 3 4 5 :Abrir_Conta_Comum rdf:type owl:Class . :Abrir_Conta_Especial rdf:type owl:Class ; rdfs:subClassOf :Abrir_Conta_Comum . :Abrir_Conta_Poupanca rdf:type owl:Class ; rdfs:subClassOf :Abrir_Conta_Comum .

Na linha 1

do exemplo apresentado criada uma classe geral

chamada Abrir Conta Comum e nas linhas 2 a 5 so criadas e especificadas classes que possuem caractersticas da primeira classe, mas que possuem alguma caracterstica que justifica sua criao. Segundo Breitman (2005) utiliza-se o RDF-S em conjuno com o RDF, onde o RDF-S pode ser considerado um tipo de dicionrio que pode ser lido por mquinas. Mais detalhes da linguagem RDF-S so apresentados pelos autores Brickley e Guha (2003). McGuinness e Harmelen (2004) fazem a seguinte definio para a linguagem OWL: uma linguagem que foi projetada para facilitar o processamento de informaes por mquinas, pois fornece vocabulrio adicional com uma semntica formal. De acordo McGuinness e Harmelen (2004) a OWL pode ser utilizada para representar explicitamente o significado dos termos em vocabulrios e as relaes entre estes termos. Esta representao dos termos e suas inter-relaes so chamadas de ontologia.

65

Segundo Linhalis (2010) a linguagem OWL estende o vocabulrio de RDFS com recursos adicionais que podem ser usados para construir ontologias mais expressivas. Entre os elementos presentes nesta linguagem esto: cabealho da ontologia, anotaes, classes e indivduos, definio e uso de propriedades, descrio das propriedades, afirmao negativa da propriedade, restries de propriedades, descries avanadas de classes e equivalncia. Mais detalhes da linguagem OWL apresentado pelos autores McGuinness e Harmelen (2004). O cdigo apresentado a seguir mostra um exemplo da linguagem OWL associada com a linguagem RDF e RDF-S.
:Value rdf:type owl:Class ; rdfs:subClassOf :Data .

A interpretao dessa codificao seria que Value uma classe e que esta classe uma sub-classe de Data. Mais detalhes sobre codificao de ontologias so apresentadas no Captulo 5 e nos Apndices 1 e 2. Para tornar a visualizao da codificao produzida a partir da OWL mais intuitiva possvel utilizar serializaes, como, por exemplo, a serializao21 RDF chamada Turtle. Segundo Beckett e Berners-Lee (2008) Turtle permite que grafos RDF possam ser totalmente escritos em um texto de forma natural e compacta, com abreviaes para os padres de uso comum e tipos de dados. O formato de serializao Turtle foi adotado por ser bem intuitivo para leitores humanos. Para exemplificar o quanto a serializao Turtle torna mais intuitiva a codificao apresentada abaixo a definio de uma classe serializada em RDF/XML.
1 2 3 <owl:Class rdf:about="&mineracao;Source"> <rdfs:subClassOf rdf:resource="&metadm;Data"/> </owl:Class>

Agora apresentado o mesmo cdigo na serializao Turtle.

1 2

:Source rdf:type owl:Class ; rdfs:subClassOf :Data .

Segundo Linhalis (2009) A serializao fornece uma maneira de converter o modelo abstrato para um formato concreto, tal como um arquivo ou stream de bytes.

21

66

Estes cdigos apresentados tm um mesmo propsito que definir uma classe e defini-la como sub-classe de outra. Porm o segundo exemplo torna bem mais fcil a leitura e entendimento do cdigo. Mais detalhes de Turtle podem ser obtidos em Beckett e Berners-Lee (2008).

3.6 Ferramentas para Desenvolvimento e Visualizao de Ontologias

Ferramentas para o desenvolvimento de ontologias so bem convenientes, pois agilizam a formalizao de determinados domnios e do suporte para a sua codificao em diversas linguagens. Segundo estudos realizados por Linhalis (2007), os fatores que influenciam na escolha de uma ferramenta de desenvolvimento de ontologias so: facilidade de uso, entendimento intuitivo da interface, visibilidade da ontologia, interfaces grficas, conexo a repositrios, portabilidade, organizao dos arquivos gerados, documentao de alteraes, suporte a trabalho cooperativo, extensibilidade e ferramentas de apoio que facilitam o desenvolvimento. Dentre as ferramentas para o desenvolvimento de ontologias que merecem destaque, so citadas as seguintes: o Servidor Ontolingua22, o Ambiente WebODE23, o OntoEdit24, o Pacote de Ferramentas KAON25, o Protg26 e o Swoop27. O Quadro 11 apresenta as principais caractersticas de cada uma das ferramentas citadas no pargrafo anterior.

22
23

http://www.ksl.stanford.edu/software/ontolingua/. Acesso em: 03 jun. 2010 http://webode.dia.fi.upm.es/WebODEWeb/index.html. Acesso em: 03 jun. 2010 24 http://www.ontoknowledge.org/tools/ontoedit.shtml. Acesso em: 03 jun. 2010 25 http://kaon.semanticweb.org/. Acesso em: 03 jun. 2010 26 http://protege.stanford.edu/. Acesso em: 03 jun. 2010 27 http://code.google.com/p/swoop/. Acesso em: 03 jun. 2010

67

Quadro 11: CARACTERSTICAS DAS FERRAMENTAS PARA A CRIAO DE ONTOLOGIAS, LINHALIS (2007) Ferramentas Caractersticas Servidor Ontolingua Foi a primeira ferramenta criada para trabalhar especificamente com ontologias; No incio, o principal mdulo era o editor de ontologias, depois foram acrescentados outros mdulos como o OKBC (Open Knowledge Based Connectivity) e Chimaera ; Ambiente WebODE Foi criado para trabalhar com a linguagem Ontolingua . o sucessor do ODE (Ontology Design Environment); A base do ambiente WebODE o servio de acesso ontologia, o qual utilizado por todas as aplicaes cliente conectadas ao servidor, especialmente pelo editor de ontologias; H servios para importar e exportar linguagens (XML, RDF(S), OIL, DAML+OIL, F-Logic, JESS, Prolog), editar axiomas, documentar, avaliar e fazer merging de ontologias; O ambiente apia a maioria das atividades do processo de desenvolvimento de ontologias proposto por METHONTOLOGY; mas pode tambm ser usado com outras metodologias ou com nenhuma metodologia. OntoEdit similar ao WebODE; Alm dos servios fornecidos pela ferramenta WebODE tambm suporta: edio, navegao, exportao e importao de diferentes formatos; Pacote de Ferramentas KAON
30 29 28

H duas verses de OntoEdit: OntoEdit Free e OntoEdit Professional; Recentemente, o pacote KAON incorporou OntoEdit. Foi desenvolvido pela Universidade de Karlsruhe e pela empresa Ontoprise;

Alm de OntoEdit como editor de ontologias, o pacote possui diversas ferramentas comerciais para a aplicao de ontologias em comrcio eletrnico, gesto de conhecimento e web semntica;

O projeto KAON trabalha com ontologias em OWL-DL, SWRL e FLogic.

Protg

uma ferramenta de cdigo aberto com uma arquitetura extensvel; O ncleo de seu ambiente o editor de ontologias, mas possvel acrescentar mais funcionalidade por meio de uma grande gama de plugins, dentre eles importao e exportao de linguagens, criao e

28 29

Uma ferramenta para fazer o merging de ontologias Uma linguagem para implementar ontologias 30 The KArsruhe ONtology and semantic web tool suite

68

execuo de restries; Pode utilizar as linguagens: OWL, JESS, F-Logic, Prolog, RDF, OIL, XML com a adio de plugins apropriados; Na busca de aumento de usurios passou por vrias reengenharias, provendo ferramentas simples e configurveis; Pode ser adaptada a diversos usos; Como consequncia de possuir cdigo aberto surgiu uma arquitetura integrvel a diversas aplicaes, via componentes que podem ser conectados ao sistema. Swoop Possui um navegador de ontologias inspirado em hipermdia e um editor baseado em OWL, que permite extensibilidade por meio de adio de plugins; a nica ferramenta a trabalhar especificamente com OWL e seu projeto reflete isso; Contm duas mquinas de inferncia adicionais RDF-like e Pellet.

A seguir apresentado com mais detalhes a ferramenta Protg, onde a mesma possui uma srie de caractersticas que permite um rpdido desenvolvimento de ontologias. Alm disso, h uma srie de materiais que podem ser usados para consultas, plugins que podem ser instalados dentro da ferramenta e suporte para fazer a serializao dos cdigos gerados por esta ferrramenta. Dessa forma bem conveniente o desenvolvimento de ontologias a partir dessa ferramenta. A verso que ser feita uma breve descrio a 4.1.0. A Figura 22 apresenta uma viso geral dessa ferramenta. Os principais componentes neste ambiente segundo HORRIDGE et al (2009) so: Individual, Properties e Classes. No Quadro 12 feita uma breve descrio de cada um desses itens segundo os autores.

69

Figura 22: AMBIENTE DE DESENVOLVIMENTO DO PROTG 4.1.0 Fonte: Software Protg

Quadro 12: DESCRIO DOS COMPONENTES DA ONTOLOGIA OWL, HORRIDGE ET AL. (2009) Componentes Descrio Classes So conjuntos que contm indivduos. Exemplo: A classe gato poderia conter todos os indivduos que so gatos em seu domnio de interesse. Properties So relaes binrias entre indivduos. Exemplo: A ligao entre dois indivduos. Individuals Representa objetos no domnio, tambm conhecidos como indivduos ou instncias.

Estes componentes so implementados no Protg atravs das vrias abas que compe a ferramenta, conforme mostra a Figura 22. Entre os items a serem implementados para a construo de uma ontologia esto:

Classes: Para definir as classes da ontologia proposta; Object Properties: Para definir as relaes entre as classes;

70

Data Properties: Para definir os atributos pertencentes a determinadas classes; Individuals: Para definir a instancias das classes; e OWLViz: Para a vizualizao da ontologia gerada.

Para a visualizao grfica de uma ontolgia pode ser utilizado o visualizador OwlViz31, onde possvel ver graficamente todas as classes e relacionamentos criado durante o processo de desenvolvimento. Outro item a ser destacado so raciocinadores e mquinas de inferncia32. Segundo Martimiano (2006) mquinas de inferncia normalmente

oferecem diferentes servios de consultas que podem ser utilizados para questionar uma ontologia. Entre as mquinas de inferncia existentes h a Pellet33, onde a mesma pode ser utilizada para verificar se uma ontologia possui inconsistncia ou no. A mquina de inferncia Pellet pode ser instalada dentro da ferramenta Protg por meio de um plugin.

3.7 Consideraes Finais

Este

captulo

fez

uma

introduo

sobre

alguns

conceitos

relacionados a ontologias. As subsees 3.2 e 3.3 tiveram como objetivo fazer uma conceituao sobre este tema. A subseo 3.4, apresentou metodologias para criar ontologias, em especial a metodologia METHONTOLOGY onde, a partir de seus conceitos, foi documentado o ciclo de vida da ontologia de domnio proposto neste trabalho e a metodologia de Noy e McGuiness onde, a partir de seus passos foram definidos os conceitos, propriedades e relacionamentos que devem constar na ontologia proposta. Na subseo 3.5 foram abordadas algumas linguagens para implementao de ontologias, em especial a linguagem OWL que foi utilizada para a
31 32

http://www.co-ode.org/downloads/owlviz/ Segundo Martiniano (2006) Mquina de Inferncia um programa que possibilita a gerao de hipteses a partir das informaes na base de conhecimento 33 Segundo Martiniano (2006) Pellet uma mquina de inferncia que possui uma implementao completa para linguagem OWL/DL, incluindo anlise das instncias da ontologia, dos tipos de dados e das restries.

71

implementao da ontologia proposta. E por fim na seo 3.6 so abordadas ferramentas para o desenvolvimento de ontologias, onde no caso deste projeto foi utilizada a ferramenta Protg. O prximo captulo apresenta o ciclo de vida da ontologia proposta, feito com base no levantamento bibliogrfico desse Captulo, sobre o domnio de conhecimento levantado no Captulo 2.

72

4 DESENVOLVIMENTO DE UMA ONTOLOGIA PARA O DOMNIO DA MINERAO DE DADOS

4.1 Consideraes Iniciais

Conforme apresentado nas sees anteriores uma ontologia uma forma de compartilhar informaes e reusar conhecimento sobre um domnio especfico. Uma boa maneira de permitir que terceiros entendam a proposta da ontologia criada ter documentos que registram todo o processo de

desenvolvimento da ontologia. Fernndez et. al. (1997) ressaltam que muitos desenvolvedores de ontologias no documentam o que foi feito, provocando dificuldades de terceiros no entendimento e reuso da ontologia. Assim, quanto mais detalhada for a documentao de desenvolvimento de uma ontologia melhor ser para seu entendimento, manuteno e crescimento. Conforme Martimiano (2006) uma ontologia evolui constantemente, principalmente para atender a mudanas ocorridas com o domnio de conhecimento que ela representa. O objetivo deste captulo documentar a ontologia desenvolvida, onde expresso a sua motivao e seu processo de desenvolvimento. Assim possvel, por meios dos documentos criados, ter uma melhor compreenso do que foi feito, permitindo um melhor suporte para uma possvel manuteno e crescimento da ontologia Meta-DM.

4.2 Documentao do Ciclo de Vida da Ontologia Meta-DM

A ontologia Meta-DM, alm de ter o propsito de guiar o processo de minerao de dados (onde identificada a necessidade de conhecimento humano), tm como propsito adicional poder ser re-utilizada por outros desenvolvedores de ontologias e sofrer constantes alteraes de acordo com novos propostos que possam ser adicionados. Assim foi necessrio utilizar alguma metodologia de

73

desenvolvimento de ontologias, que pudesse registrar cada uma das fases de desenvolvimento da ontologia para ento ter documentos suficientes, que facilitasse a realizao de possveis operaes sobre a ontologia. Nesta seo apresentada a documentao do ciclo de vida da ontologia, onde foi utilizada a metodologia de Fernndez et. al. (1997), tambm conhecida como METHONTOLOGY, para documentar cada uma das etapas. A metodologia de Noy e McGuiness (2001) foi utilizada na fase de formalizao. Nas prximas sees so apresentadas as fases da metodologia METHONTOLOGY e sua aplicao no desenvolvimento da ontologia Meta-DM.

4.2.1 Especificao

Nessa etapa so apresentados os levantamentos iniciais para o desenvolvimento da ontologia, onde foram abordadas questes sobre o domnio da ontologia; seus objetivos, usurios, tarefas a serem realizadas e os recursos necessrios.

Definio

do

domnio:

Processo

de

descoberta

de

conhecimento em bases de dados (Minerao de Dados); Definio do objetivo principal: criar uma ontologia para guiar o processo de minerao de dados e para servir de terminologia comum para ferramentas de minerao de dados em geral. Tambm procurou-se identificar a necessidade de interveno humana em algumas etapas da minerao de dados; Definio dos usurios: Os potenciais usurios da ontologia so os mineradores de dados, as ferramentas de minerao de dados e possveis interessados no desenvolvimento de ontologias para o domnio da minerao de dados; Definio das tarefas: As principais tarefas realizadas para o desenvolvimento da ontologia consistem em seguir as metodologias de Noy e McGuinnes e METHONTOLOGY, conforme apresentado no incio da seo 4.2.

74

Definio dos recursos: Os recursos necessrios para o desenvolvimento da ontologia so: ferramenta computacional para modelar a ontologia, linguagem para formaliz-la, e recursos humanos para desenvolv-la, o que inclui um especialista no domnio de minerao de dados.

4.2.2 Aquisio de conhecimento

Aps ter definido o domnio e os objetivos da ontologia, foi necessrio fazer a aquisio de conhecimento necessrios para o desenvolvimento da ontologia proposta. Para adquirir conhecimento a respeito do domnio de minerao de dados, foram consultados livros, artigos, tutoriais, ferramentas de minerao de dados e especialistas da rea. Esta etapa foi realizada constantemente durante a elaborao do ciclo de vida da ontologia, pois conforme ocorre o amadurecimento da ontologia verificada a necessidade de buscar outras definies.

4.2.3 Conceituao

Aps as fases de Especificao e Aquisio de Conhecimento foi iniciada a conceituao da ontologia, onde foi adotada a metodologia de Noy e McGuiness (2001) para definir as classes e relacionamentos que iriam ser representados na ontologia de domnio. Vale ressaltar que esta etapa passou por constantes mudanas conforme surgiam novas necessidades e outros conceitos necessitavam ser abordados. Como mencionado antes, o processo de

desenvolvimento de uma ontologia dinmico. A ideia base utilizada para definir os conceitos da ontologia constitui em seguir as etapas para o processo de minerao de dados conforme definido na metodologia CRISP-DM: Definir o objetivo e o problema do projeto de minerao de dados;

75

Fazer um entendimento inicial dos dados; Preparar os dados; Definir uma tarefa de minerao de dados; Gerar um padro; E por ltimo interpretar os padres gerados.

Na Figura 23 so apresentados os conceitos identificados na forma de um diagrama que representa a ontologia.

Figura 23: DIAGRAMA DA ONTOLOGIA NO SEU MAIS ALTO NVEL

Este diagrama constitudo por quatro elementos que so: as classes, os relacionamentos entre as classes, os atributos e os relacionamentos entre classes onde necessrio conhecimento humano. H tambm na ontologia de domnio partes que esto representados ao mesmo tempo por setas azuis e vermelhas tracejadas, onde h tanto a necessidade de representar a ligao entre as classes como tambm a necessidade de representar conhecimento humano.

76

Os Quadros 13, 14 e 15 fazem uma breve descrio de cada um desses elementos identificados na elaborao da ontologia.
Quadro 13: DICIONRIO DE DADOS DAS CLASSES Significado N Classe 01 Data Classe responsvel por organizar as classes referentes aos dados a serem minerados. 02 03 Value Source Representa os dados a serem minerados. Refere-se ao caminho da fonte da base de dados.

04 05

Structure Table for Analyis

Contm a estrutura da base de dados a ser minerada. Responsvel por abrigar os dados que sofrero alterao para realizar a minerao de dados. Isto , so os dados que sero minerados.

06

Problem Understanding

Classe

responsvel

por

organizar

as

classes

Data

Understanding e Business Understanding. 07 Data Understanding Consiste no entendimento inicial da base de dados a ser minerada. 08 Business Understanding Consiste no entendimento do que a minerao de dados se prope a resolver sob uma perspectiva de negcio. 09 Objetive Define o objetivo a ser alcanado com o processo de minerao de dados. 10 Problem Define o problema que a minerao de dados deve solucionar. 11 12 Task Association Define a tarefa de minerao de dados. uma tarefa de minerao de dados. Associa campos de uma base de dados. 13 Classification uma tarefa de minerao de dados. Classifica campos de uma base de dados, conforme rtulos pr-estabelecidos. 14 Clustering uma tarefa de minerao de dados. Agrupa campos de uma base de dados, conforme um critrio pr-estabelecido pelo usurio. 15 16 Technic Decision Tree Define a tcnica de minerao de dados a ser adotada. uma tcnica de minerao de dados que utiliza rvore de deciso. 17 Association Rule uma tcnica de minerao de dados que utiliza

relacionamentos entre os elementos de uma base de dados. 18 Linear Regression uma tcnica de minerao de dados que utiliza valores contnuos.

77

19

Neural Network

uma tcnica de minerao de dados que utiliza redes neurais.

20

Genetic Algorithm

uma tcnica de minerao de dados que utiliza algoritmos genticos.

21

Nearest Neighbor

uma tcnica de minerao de dados que utiliza os valores prximos de um dado para definir seu valor.

22 23

Algorithm Algorithm Parameter

Algoritmo selecionado para a tarefa de minerao de dados. Parmetros que devem ser definidos conforme o algoritmo selecionado.

24

Algorithm Type

Identificao do tipo de algoritmo, que pode pertencer a uma das tarefas de minerao de dados (associao, classificao e agrupamento).

25

Pattern

Gera

um

determinado

padro

conforme

as

tcnicas

aplicadas. 26 Result Contm uma descrio da anlise feita sobre os padres encontrados com a minerao de dados.

Quadro 14: DICIONRIO DE DADOS DOS RELACIONAMENTOS Significado N Relacionamento 01 02 is-a Defines Indica que uma classe subclasse de uma outra. Indica que uma classe define um determinado conceito de uma outra classe. 03 04 is-PartOf hasAlgorithm Indica que uma classe parte ou extenso de uma outra. Indica que uma classe obtm um determinado tipo de algoritmo de uma outra classe. 05 Discovers Indica que uma classe descobre um determinado padro a partir de uma outra classe. 06 07 08 09 isDone hasValue hasColumn hasIntegration Indica que uma determinada operao ser realizada sobre os dados. Indica que uma classe obtm valores de uma outra classe. Indica que uma classe contm colunas de uma outra classe. Indica que uma tabela ou mais tabelas de dados so integradas a uma determinada tabela. 10 hasTransformation Indica que um conjunto de dados transformado para uma melhor adequao realizao da minerao de dados. 11 hasSelection Indica que um conjunto de dados selecionado para a realizao da minerao de dados. 12 hasCleaning Indica que a partir de um conjunto de dados analisados feito tratamentos, conforme a necessidade de adequao dos dados para a minerao de dados.

78

13 14

Uses hasAnalysis

Indica que uma classe utiliza os elementos de uma outra classe. Indica que feita uma anlise do que foi gerado em uma determinada classe.

Quadro 15: DICIONRIO DE DADOS DOS ATRIBUTOS Significado N Atributo 01 02 Path Measures interest of Contm o caminho de uma base de dados. Medidas de interesses de acordo com os resultados geradas com a aplicao da minerao de dados.

Alm dos elementos descritos nos quadros, h um outro elemento que se encontra na cor vermelha e tracejada que indica os pontos em que h a necessidade de insero de conhecimento humano para realizar o processo de minerao de dados. O Captulo 5 aborda esse assunto com mais detalhes. Para uma melhor descrio da ontologia desenvolvida, apresentado na Figura 23, mesma pode ser particionada. Dessa forma os prximos pargrafos apresentam a ontologia dividida em partes, conforme as principais atividades realizadas. A Figura 24 apresenta a parte da ontologia referente aos dados.

is-a 7alue Source path Structure is-a has isDone

defines Data

hasIntegration

defines uses

hasTransformation Ta6le for Analyis

has$leaning

hasSelection

Figura 24: CLASSE DATA

79

Esta parte refere-se obteno e ao tratamento dos dados a serem minerados, onde so considerados: a estrutura da base de dados constituda pela classe Structure; o caminho da base de dados representado pela classe Source; os dados armazenados na base de dados representados pela classe Value. A classe Table for Analyis responsvel por representar a tabela que contm os dados prontos para serem minerados, porm para que esta tabela seja gerada necessrio que ocorra s aes: hasIntegration, hasTransformation, hasCleaning e hasSelection, que so os relacionamento de classes que representam a fase de pr-processamento dos dados. Todas estas informaes esto organizadas pela classe Data que serve como uma classe abstrata para as demais. H ainda os relacionamento isDone, uses e defines com seta em vermelho pontilhado que aparece sem relacionamento que indica que existe uma ligao com outras classes da ontologia de domnio. O primeiro relacionamento indica que a partir da classe Data possvel fazer o entendimento dos dados, o segundo relacionamento indica que os dados prontos para ser minerados so utilizados pela a classe Task e o relacionamento defines indica que a partir da classe Data possvel definir qual a tcnica de minerao de dados mais adequadada. A Figura 25 apresenta parte da ontologia responsvel pela definio do entendimento do problema da minerao de dados.

Figura 25: ENTENDIMENTO DO PROBLEMA

80

Esta parte constituda pela classe Data Understanding que responsvel por representar o entendimento dos dados a serem minerados, e pela classe Business Understanding que responsvel por representar o entendimento do negcio. A partir dessa ltima classe so definidos o objetivo e o problema do projeto da minerao de dados. Por fim, a classe Problem Understanding serve como uma classe abstrata para definir o entendimento do problema a partir das classes Data Understaning e Business Understaning. Nesta seo vale ressaltar que o relacionamento is-PartOf indica que as classes Data Understanding e Business Understanding fazem parte da classe Problem Understanding. A relao defines indica que com o entendimento do negcio possvel definir o objetivo e o problema de um projeto de minerao de dados. Nesta parte da ontologia h dois relacionamentos defines que saem das classes Problem Understanding e objective e fazem o relacionamento dessas classes com a classe Task. No primeiro relacionamento indicado que a partir do ententimento do negcio possvel definir uma tarefa de minerao de dados e no segundo relacionamento indicado que com a definio do objetivo possvel definir a tarefa de minerao de dados mais adequada. Por fim h ainda um relacionamento defines que sai da classe objective que indica que a partir da definio do objetivo da minerao de dados possvel preparar os dados para a minerao de dados. Na Figura 26 apresentada a fase de processamento dos dados para a obteno de um determinado padro.

81

Figura 26: PROCESSAMENTO DOS DADOS

Esta parte da ontologia tem trs classes essenciais para que ocorra o processo de minerao de dados. A primeira delas a classe Algorit m, que representa o algoritmo de minerao de dados a ser utilizado, nesta classe h ainda duas subclasses onde so definidos os parmetros do algoritmo e o tipo de algoritmo a ser utilizado. A classe Tec nic representa a tcnica de minerao de dados a ser utilizada, que pode ser: rvore de deciso, regras de associao, regresso linear, redes neurais, algoritmos genticos ou o vizinho mais prximo. Vale ressaltar que foram definidas apenas as tcnicas base da minerao de dados. Por fim, na classe Task representado as tarefas de minerao de dados que podem ser: agrupamento, classificao ou associao. O relacionamento hasAlgorithm define que uma tarefa de minerao de dados ter um algoritmo. O relacionamento defines indica que a tcnica a ser utilizada ser definida de acordo com a tarefa de minerao de dados. O relacionamento uses indica que um algoritmo usa uma determinada tcnica de minerao. O relacionamento is-PartOf indica que as classes Algorit m Parameter e Algorit m Ty!e so parte da classe Algorit m. E por fim o relacionamento is-a indica que rvore de deciso, regras de associao, regresso linear, redes neurais, algoritmo gentico e vizinho mais prximo so tcnicas e

82

tambm que agrupamento, classificao e associao so tarefas de minerao de dados. H tambm trs linhas vermelhas tracejadas, que chegam classe Task. Isso indica que com a definio do entendimento do problema possvel definir a tarefa de minerao de dados mais adequada, com a elaborao do objetivo do projeto de minerao de dados definida uma tarefa de minerao de dados e os dados prontos para ser minerados so utilizados pela a classe Task. Um quarto relacionamento chega a classe Technic, que representa que a partir dos dados possvel identificar qual seria a tcnica de minerao de dados mais adequada. Por fim h o relacionamento discovers que sai da classe Task e que indica que a partir da execuo dos procedimentos de uma tarefa de minerao de dados so gerados alguns padres. Na Figura 27 a fase de ps-processamento apresentada.

Figura 27: PS-PROCESSAMENTO

A fase de ps-processamento constituda de duas classes: a primeira Pattern, responsvel por representar os padres gerados a partir da execuo do processo de minerao de dados. Nesta classe h o atributo chamado de medidas de interesses que a porcentagem mnima de valores que devero ser gerados em uma determinada aplicao de uma tarefa de minerao de dados. A outra classe, "esult, representa os resultados definidos pelo o minerador de dados. Nesta parte da ontologia encontram-se dois relacionamentos: o primeiro, discovers, indica que a partir da classe Task descoberto um ou vrios padres durante o processo de minerao de dados. O segundo relacionamento, hasAnalysis, define que a partir dos padres encontrados o minerador de dados pode realizar uma anlise dos mesmos.

83

4.2.4 Integrao

O desenvolvimento da ontologia Meta-DM utilizou alguns conceitos de uma ontologia desenvolvida por Pinto e Santos (2009), entre estes conceitos utilizados esto a classe Data e as suas subclasses Source e Structure e tambm a classe Algorit m e as suas subclasses Algorit m Parameter e Algorit m Ty!e. A reutilizao da ontologia desenvolvida por Pinto e Santos (2009) foi feita a partir da disposio das classes mencionadas no pargrafo anterior, onde estas classes foram readaptadas conforme os requisitos levantados para a construo da ontologia. Os relacionamentos foram modificados por no apresentarem o mesmo significado requerido para a ontologia. Foram feitas anlises em outras ontologias desenvolvidas para o domnio da minerao de dados, conforme apresentado na seo 1.5, porm foi constatado que as mesmas no se enquadravam no propsito de desenvolvimento da ontologia proposta neste trabalho.

4.2.5 Implementao

A ontologia foi implementada utilizando a linguagem OWL e a ferramenta Protg 4.1. A metodologia de Noy e McGuiness (2001) foi utilizada nesta fase, pois mostra como definir uma ontologia na ferramenta Protg, utilizando a linguagem OWL. A implementao foi feita a partir da ontologia apresentada na Figura 23, onde as classes, relacionamentos e atributos foram definidos, graficamente, na Protg 4.1. Entre os itens que foram gerados a partir da ferramenta Protg 4.1 esto: Namespaces: Indicao de um conjunto de vocabulrios

especficos que precisam ser utilizados; Classes: Representaes das classes da ontologia;

84

Object Properties: Relacionamentos entre as classes; Data properties: Atributos de uma determinada classe; Individuals: Descrio de seus membros; General axioms: Representao das classes disjuntas.

A seguir so apresentados alguns exemplos do cdigo que foi gerado para implementar alguns conceitos da ontologia: O cdigo a seguir mostra o cabealho da ontologia:

1 2 3 4 5 6

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix mdm: <http://www.semanticweb.org/ontologies/meta-dm.owl#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix xml: <http://www.w3.org/XML/1998/namespace> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix owl: <http://www.w3.org/2002/07/owl#> .

A linha 1 define o names!ace da linguagem RDF para que seja possvel utilizar essa linguagem nas declaraes da ontologia. Na linha 2 definido o names!ace da ontologia Meta-DM; caso terceiros queiram fazer o reuso da ontologia basta chamar incluir o namespace e usar o prefixo mdm. As linhas 3 a 6 tambm indicam names!aces para que seja possvel utilizar as definies de XML Esquema, XML, RDFS e OWL, respectivamente. O cdigo a seguir mostra a formalizao da classe #olumn da ontologia.

1 2 3

:Column rdf:type owl:Class ; rdfs:subClassOf :Structure ; owl:disjointWith :Table .

A linha 1 indica que o elemento #olumn uma classe, na linha 2 que uma sub-classe de Structure e na linha 3 que uma classe disjunta de Table. O cdigo a seguir mostra a formalizao do relacionamento defines, entre as classes Business Understanding, $bjective e Problem. Em OWL, esses relacionamentos so implementados com o elemento $bject Pro!erty.

85

1 2 3 4 5

:defines rdf:type owl:ObjectProperty ; rdfs:domain :Business_Understanding ; rdfs:range :Objective , :Problem ; rdfs:subPropertyOf owl:topObjectProperty .

A linha 1 indica que defines um tipo de Object Property (relacionamento), na linha 2 indica que a classe Business Understanding o domnio desse relacionamento, nas linhas 3 e 4 indica que as classes $bjective e Problem so o range (alcance) dessa relao. Por fim, a linha 5 indica que esse relacionamento uma sub-propriedade da propriedade objeto, ou seja, um $bject Pro!erty pai que abriga os demais. O cdigo a seguir exemplifica o uso de um Data Property (atributos) da ontologia Meta-DM.

1 2 3 4

: measures_of_interest rdf:type owl:DatatypeProperty ; rdfs:domain :Pattern ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

A linha 1 indica que measures_of_interest um tipo de Dataty!e Pro!erty (atributo), nas linhas 2 e 3 indica que este atributo tem como domnio a classe Pattern, na linha 3 indica o range (alcance) desse atributo um valor do tipo string. A linha 4 indica que o atributo uma sub-propriedade de to!DataPro!erty, ou seja, um Dataty!e Pro!erty pai que abriga os demais. O cdigo a seguir exemplifica a implementao de um Individual (valor) atribudo para a classe Value da ontologia. Ao atribuir valores para a ontologia possvel instanciar a mesma e verificar como as informaes se comportam na ontologia.

1 2

:val034 rdf:type :Value , owl:NamedIndividual ;

86

:data "Televisao"^^xsd:string .

A linha 1 indica que o elemento val%&' (um elemento criado para apoiar o processo de instanciao) foi criado para a classe Value, a linha 2 indica que este elemento um indivduo e a linha 3 que o valor Televiso, do tipo string, foi atribudo ao indivduo, que no caso deste exemplo o val034. O cdigo a seguir exemplifica a implementao de um General axioms (classes disjuntas, neste caso), atribudo ontologia:

1 2 3 4

[ rdf:type owl:AllDisjointClasses ; owl:members ( :Association :Classification :Clustering ) ] .

A linha 1 indica que todos os elementos so classes disjuntas, as linhas 2, 3 e 4 indicam que os membros dessa classe disjunta so: Association, #lassification e #lustering. O Apndice 1 apresenta a ontologia completa formalizada em OWL e serializada em Turtle. No Anexo 1 deste trabalho referenciado uma base de dados, onde a mesma possui informaes sobre um congresso de tecnologia que aconteceu na cidade de Mococa-SP no ano de 2007. Parte das informaes dessa base de dados foi utilizada para fazer a instanciao da ontologia, que abordada com mais detalhes nos prximos pargrafos. Durante o processo de implementao da ontologia foi feita tambm a sua instanciao. No Protg tem uma aba chamada de (ndividuals onde so atribudos valores aos elementos da ontologia. O objetivo de instanciar a ontologia verificar se os dados ou informao de um domnio esto de acordo com os conceitos, relacionamentos e atributos da ontologia. O Apndice 2 apresenta esta instanciao da ontologia para o problema do congresso de acordo com o Anexo 1, tambm formalizada em OWL e serializada em Turtle, onde foram utilizados alguns registros para instanciar a ontologia.

87

4.2.6 Avaliao

A avaliao da Meta-DM foi realizada em duas etapas (verificao e validao) conforme a metodologia METHONTOLOGY, onde foi utilizado o Pellet na fase de verificao com o intuito de verificar se a ontologia tinha ou no alguma inconsistncia e a validao foi realizada atravs da instanciao da ontologia. Os pargrafos abaixo fazem uma breve descrio do que foi realizado nestas duas atividades. O Pellet foi inicialmente instalado no Protg, atravs de um plugin disponvel pela prpria ferramenta. Dessa forma, a verificao da ontologia foi mais fcil, pois ao inserir algum elemento na ontologia basta ir ao menu "easoner e escolher Pellet para verificar inconsistncias. A Figura 28 apresenta esse menu.

Figura 28: UTILIZAO DO PELLET DENTRO DO PROTG Fonte: Ferramenta Protg

O desenvolvimento da ontologia Meta-DM foi realizado em partes conforme apresentado na seo 4.2.3, ao termino de uma das partes ento era feita a verificao da ontologia. A Figura 29 apresenta dois conjuntos de elementos, um na cor preta representa os elementos j verificados e outro na cor vermelha que indicada que ainda no foi submetido a verificao.

88

Figura 29: ELEMENTOS VERIFICADOS E NO VERIFICADOS Fonte: Ferramenta Protg

Aps a aplicao da mquina de inferncia nas classes inseridas, caso no haja inconsistncias as partes em vermelho geradas a partir da insero de novas classes mudada para preto, porm caso haja alguma inconsistncia apresentado uma mensagem de erro. Aps o desenvolvimento da ontologia e a verificao de todos os elementos dispostos na ontologia, possvel comprovar que todos os elementos esto declarados de forma correta conforme apresentado na Figura 30.

Figura 30: RESULTADO DA VERIFICAO DO PELLET Fonte: Ferramenta Protg

89

Para uma melhor avaliao da ontologia foi necessrio verificar como os dados se comportariam nela durante o processo de minerao de dados, por isso foi realizada a instanciao da ontologia. A ferramenta Protg permite fazer a instanciao a partir da aba (ndividuals onde ento possvel representar as instncias de cada classe e os relacionamentos entre elas. A Figura 31 apresenta um exemplo da instanciao da classe #olumn da ontologia.

Figura 31: EXEMPLO DE INSTANCIAO Fonte: Ferramenta Protg

No Apndice 2 apresentada toda a instanciao da ontologia realizada.

90

4.2.7 Documentao

Na metodologia METHONTOLOGY (Fernndez et al, 1997), a documentao um processo dinmico, ou seja, conforme algo mude na construo da ontologia necessrio fazer as adequaes na documentao. A fase de documentao deve estar presente em todas as fases anteriores. O processo de documentao da ontologia Meta-DM gerou os seguintes documentos, de acordo com as sub-sees 4.2.1, 4.2.2, 4.2.3, 4.2.4, 4.2.5 e 4.2.6: Diagrama da ontologia; Dicionrio das classes, relacionamentos e atributos; Descrio do que foi reutilizado na ontologia; A codificao gerada com a implementao da ontologia; Instanciao da ontologia Documento de avaliao.

4.3 Consideraes Finais

Este captulo descreveu e documentou o processo de criao da ontologia Meta-DM. Para definir as etapas a serem seguidas foi utilizada a metodologia METHONTOLOGY, e para ajudar na fase de formalizao foi utilizada a metodologia de Noy e McGuinness. Para fazer a formalizao foi utilizada a ferramenta Protg 4.1, que gera automaticamente o cdigo OWL. O processo de desenvolvimento da ontologia foi feito atravs de pesquisas em manuais, artigos, livros, ferramentas de minerao de dados, ontologias j desenvolvidas para este domnio e consulta a especialistas da rea, onde eram definidos conceitos e como esses conceitos se encaixavam (ou no) na proposta da ontologia. O prximo captulo apresenta tarefas da metodologia D3M que podem ser inseridas na ontologia, com o intuito de gerar resultados mais eficientes em um projeto de minerao de dados. Tambm apresentada uma arquitetura para ferramentas de minerao de dados que utilizam esta ontologia.

91

5 DEFINIO DE UMA ARQUITETURA PARA FERRAMENTAS DE MINERAO DE DADOS COM BASE NA ONTOLOGIA META-DM E NA METODOLOGIA D3M

5.1 Consideraes Iniciais

Na ontologia desenvolvida foram detectados alguns pontos onde essencial o conhecimento humano para que possa ocorrer o processo de minerao de dados. Entre os componentes esto classes e relacionamentos, conforme ilustrado por linhas pontilhadas na Figura 23. A metodologia D3M foi desenvolvida para melhorar a eficincia no processo de minerao de dados por meio de informao de contexto e interao humana durante a minerao de dados. Neste captulo definida uma arquitetura para ferramentas de minerao de dados, onde so inseridas tarefas da metodologia D3M nos pontos onde h necessidade do conhecimento humano, identificados na ontologia Meta-DM.

5.2 Identificao das tarefas da metodologia D3M na ontologia Meta-DM

Esta seo tem como objetivo apresentar as tarefas da metodologia D3M que podem ser inseridas na ontologia, conforme os pontos em que foi identificada a necessidade de conhecimento humano. Para isso foi inserido um retngulo, alm dos elementos que pertencem ontologia (classe, relacionamentos e atributos), para identificar a tarefa da metodologia D3M que pode ser inserida. A ontologia constituda por cinco partes principais, que so: dados, entendimento do problema, tratamento dos dados, identificao da tarefa da minerao de dados e padres gerados. Com base nessas partes apresentada nas subsees seguintes a ontologia particionada, com as tarefas da metodologia D3M inseridas.

92

5.2.1 Dados

A parte de Dados da ontologia est relacionada com a base de dados e sua estrutura, que ser utilizada em um projeto de minerao de dados. Nessa etapa praticamente no h participao humana, uma vez que, a ontologia representa apenas uma estrutura tpica de uma base de dados. Esta parte da ontologia fornece informaes e dados para as outras partes, que por sua vez necessitam da interveno humana, conforme mostram as linhas pontilhadas em vermelho; h tambm linhas pontilhadas de preto que fazem a separao entre as partes da ontologia, onde as classes de outras partes da ontologia esto diferenciadas por cores distintas. A Figura 32 apresenta as partes da ontologia onde so identificados pontos onde o conhecimento humano est presente.

Figura 32: DADOS DA ONTOLOGIA META-DM COM A METODOLOGIA D M

De acordo com a metodologia D3M a tarefa Restrio Baseada em Contexto do framework DDID-PD pode ser aplicada nos trs pontos onde o conhecimento humano se faz necessrio. O minerador de dados deve-se restringir ao contexto de domnio do projeto de minerao de dados para ento fazer: o entendimento dos dados, pr-definir quais dados so mais convenientes para

93

trabalhar a minerao de dados e pr-definir qual a tcnica de minerao mais adequada segundo as caractersticas dos dados. Uma outra tarefa da metodologia D3M indentificada nesta parte da ontologia Cooperao entre Homem e Mquina, onde o humano poderia atravs de seu conhecimento de domnio influenciar a execuo das tarefas: entendimento dos dados, definio dos dados que sero trabalhados, e definio de qual tcnica de minerao de dados a mais adequada. Por fim, nesta etapa ainda foi identificado presena da tarefa Integrao de Conhecimento de Domnio, onde para ser feito o entendimento dos dados, definir quais dados so os mais adequados ao projeto de minerao de dados e pr-definir uma tcnica de minerao de dados, o minerador de dados poderia ser apoiado por diferentes conhecimentos de domnios levantados por ele e tambm por ontologias de apoio a este processo.

5.2.2 Entendimento do Problema

Nessa parte da ontologia esto as seguintes classes: Problem Understanding, Data Understanding, Business Understanding, $bjetive e Problem, onde estas classes so responsveis respectivamente por definir o entendimento do problema, o entendimento dos dados e o entendimento do negcio, e tambm o objetivo e o problema de um projeto de minerao de dados. Nessa parte da ontologia o minerador tem uma grande influncia no processo de minerao de dados, pois cabe a ele fazer um estudo do propsito do projeto de minerao de dados e ento caracterizar cada um desses itens. A Figura 33 apresenta a etapa do entendimento do problema da ontologia e as tarefas da metodologia D3M que podem ser inseridas.

94

Figura 33: ENTENDIMENTO DO PROBLEMA COM A METODOLOGIA D M

Nesta parte da ontologia, ao invs de classificar o conhecimento humano de acordo com os relacionamentos, foram classificados de acordo com as classes, uma vez que as classes iro influenciar diretamente a definio da tarefa da metodologia D3M. Umas das tarefas da metodologia D3M identifcada nesta parte da ontologia a Restrio Baseada em Contexto, onde para se definir o entendimento do negcio o minerador de dados poderia utilizar uma ontologia especfica para este fim. Um exemplo de ontologia que poderia ser utilizada a de Sharma e Bryson (2008), que define o entendimento do negcio em um projeto de minerao de dados. Na etapa de entendimento dos dados o minerador de dados tambm deve se restringir ao contexto de acordo com os objetivos e problemas do projeto de minerao de dados e ento a partir das tarefas pr-estabelecidas na metodologia CRISP-DM (Chapman et al., 2000) realizar o entendimento dos dados. Uma outra tarefa da metodologia D3M identificada nesta parte da ontologia foi Cooperao entre Homem e Mquina, onde o minerador de dados atravs de seu conhecimento de domnio poderia responder a questes essenciais do projeto de minerao de dados, nas etapas de entendimento dos dados e entendimento do negcio, e assim cooperar para a definio do objetivo e problema do projeto de minerao de dados e por fim com base nessas informaes levantadas fazer o entendimento do problema. E na tarefa Integrao de Conhecimento de Domnio seria realizado a integrao do conhecimento do minerador de dados sobre o projeto, possivelmente por meio de ontologias de domnio.

95

Nesta subseo no foram descritos dois relacionamentos: isDone, e um relacionamento defines que foi abordado na Seo 5.2.1, e dois

relacionamentos defines que so abordado na Seo 5.2.4.

5.2.3 Preparao dos Dados Para a Minerao de Dados

Esta parte da ontologia est relacionada ao tratamento necessrio da base de dados em um projeto de minerao de dados. A Figura 34 apresenta a classe responsvel por representar os dados para a minerao de dados, os relacionamentos, hasIntegration, hasCleaning, hasSelection e hasTransformation,

representam os tratamentos que podem ser feitos, e o retngulo representa as tarefas da metodologia D3M que podem ser inseridas na etapa.

Figura 34: PREPARAO DOS DADOS COM A METODOLOGIA D M

Conforme apresentado na Figura 34 foram identificadas trs tarefas da metodologia D3M nessa fase. A primeira Restrio Baseada em Contexto, onde para o minerador de dados integrar a base de dados, selecionar os dados, transformar os dados, limpar rudos e inconsistncias na base de dados deve se restringir ao contexto do problema e ento realizar estas operaes. A segunda Cooperao entre Homem e Mquina, onde o minerador de dados por meio do seu conhecimento de domnio do projeto poderia auxiliar o processo de tratamento da base de dados, como, por exemplo, definir regras para realizar tratamentos dos dados. Por fim nesta etapa a tarefa Integrao de conhecimento de domnio, poderia

96

integrar o conhecimento do minerador de dados sobre o projeto com ontologias de apoio a esta etapa. Alm dos tratamentos de dados, nesta parte da ontologia h o relacionamento uses que indica que os dados prontos para a minerao de dados so usados na classe Task. Dessa forma as tarefas da metodologia D3M identificadas nesta etapa teriam as seguintes funes: na tarefa de Restrio de Conhecimento de Domnio, o minerador a partir das restries das caractersticas dos dados seria capaz de definir quais dados seriam utilizados no projeto de minerao de dados, na tarefa Cooperao entre Homem Mquina o minerador de dados iria definir quais dados seriam utilizado no projeto de minerao de dados, apoiado pelo sistema, e na tarefa Integrao de Conhecimento de Domnio haveria a integrao do conhecimento do minerador de dados com outros conhecimentos de domnio definido nesta etapa. O relacionamento defines indica que o objetivo de um projeto de minerao de dados pode ser definido a partir dos dados prontos para a minerao de dados. Dessa forma as tarefas da metodologia D3M identificadas nesta etapa teriam as seguintes funes: a partir da tarefa Restrio de Conhecimento de Domnio o minerador de dados poderia definir o objetivo do projeto de minerao de dados restringindo-se ao contexto de domnio. A partir da tarefa Cooperao entre Homem-Mquina, o sistema de minerao de dados apresentaria as caractersticas dos dados prontos para a minerao de dados, onde seria permitido fazer uma anlise desses dados. E a Integrao de Conhecimento de Domnio o minerador de dados poderia integrar diferentes conhecimento de domnio para definir o objetivo.

5.2.4 Tarefa de Minerao de dados

Esta etapa envolve a escolha da tarefa de minerao de dados que ser utilizada, e o algoritmo e a tcnica que sero utilizados para concretizar a tarefa de minerao de dados, as classes Task, Algorit m e Tec nic representam respectivamente cada uma dessas etapas. A Figura 35 apresenta essas classes e as tarefas da metodologia D3M que foram detectadas nesta etapa.

97

Pro6lem 8nderstanding

Restri o "aseada em $onte<to= $oopera o >omem - M?uina e Integra o de $onhecimento de Dom@nio

96:ective defines

defines

hasAlgorithm Algorithm uses is-Part9f Algorithm Parameter Algorithm Type Technic Minera o em Profundidade defines Tas; discovers Pattern

measures of interest

defines uses Data Ta6le for Analyis Desco6erta de Regras ou PadrAes Mais Interessante para o )eg'cio

Figura 35: DEFINIO DA TAREFA DA MD COM A METODOLOGIA D M

Nesta etapa da ontologia foram detectadas cinco tarefas da metodologia D3M que so: Restrio Baseada em Contexto, Integrao de Conhecimento de Domnio, Cooperao entre Homem e Mquina, Minerao em Profundidade e Descoberta de Regras ou Padres mais Interessante para o Negcio. A seguir descrita a influncia que essas cinco tarefas tm nesta fase da ontologia. Com relao Restrio Baseada em Contexto esta tarefa da metodologia D3M tem um papel fundamental para definir a tarefa de minerao de dados, pois o minerador a partir do entendimento dos dados, com os dados prontos para serem minerados e com o entendimento do problema e objetivo, com base na restrio de contexto poderia definir qual seria a tarefa de minerao de dados mais adequada. Com relao Cooperao entre Homem e Mquina o minerador de dados juntamente com o sistema de minerao de dados poderia definir a tarefa de minerao de dados, tcnica e algoritmo para um determinado projeto de minerao de dados, onde o sistema por meio de interfaces mostraria o que precisa ser realizado e o minerador com seu conhecimento de domnio poderia inserir informaes sucintas, como, por exemplo, o minerador de dados poderia definir campos chaves para a descoberta de padres.

98

Com relao Integrao de Conhecimento de Domnio o minerador de dados poderia utilizar seu conhecimento de domnio a cerca do projeto de minerao de dados e ainda utilizar ontologias de apoio para esta etapa e ento definir qual a tarefa de minerao de dados mais apropriada para um determinado projeto de minerao de dados, alm de poder definir um algorimo e seus parmetros e a tcncica de minerao de dados mais apropriada. Com relao Descoberta de Regras ou Padres mais Interessantes para o Negcio, o minerador de dados poderia avaliar regras acionveis que seriam disparadas quando dados que as satisfaam fossem identificados. Com relao Minerao em Profundidade o minerador de dados poderia avaliar uma regra acionvel e refin-la para atender aos objetivos do negcio. O relacionamento discovers no foi mencionado nesta etapa por pertencer etapa seguinte da ontologia e os outros relacionamentos foram descritos nas sees anteriores.

5.2.5 Padres

Esta etapa representa os padres que foram gerados a partir da execuo do algoritmo de minerao de dados e que resultados foram obtidos com sua anlise. Esta etapa representada por duas classes: Pattern e "esult. A Figura 36 apresenta essas classes, seus relacionamentos e as tarefas da metodologia D3M identificadas.

Figura 36: RESULTADOS DA MD COM A METODOLOGIA D3M

99

Nesta etapa ocorrem quatros tarefas da metodologia D3M, que so: Processo do Refinamento Interativo dos Resultados, Restrio Baseada em Contexto, Cooperao entre Homem e Mquina e Integrao de Conhecimento de Domnio. A seguir feito uma breve descrio da presena dessas quatro tarefas na ontologia. Com relao tarefa Processo do Refinamento Interativo dos Resultados o minerador de dados a partir dos padres gerados com a aplicao do algoritmo de minerao de dados poderia refinar estes padres na tentativa de buscar resultados mais interessantes. Para realizar a operao descrita no pargrafo anterior poderia haver uma cooperao entre o minerador de dados e o sistema de minerao de dados e ainda o minerador de dados utilizar seu conhecimento para refinar os resultados produzidos com a aplicao do algoritmo de minerao de dados. Com relao tarefa Restrio Baseada em Contexto o minerador de dados poderia classificar os resultados gerados e concluir se estes padres gerados de alguma forma atendem aos objetivos dos negcios e se sero utilizados ou no para o objetivo que foi estabelecido. Para realizar a operao descrita no pargrafo anterior o minerador de dados poderia fazer uso do sistema de minerao de dados e utilizar o conhecimento de domnio juntamente com outros conhecimentos para ento definir se os resultados produzidos sero utilizados ou no.

5.3 Uma Arquitetura para Ferramentas de Minerao de Dados Baseada na Metodologia D3M e na ontologia Meta-DM

A partir da ontologia desenvolvida e da insero das tarefas da metodologia D3M apresentada na Seo 5.2 uma arquitetura para ferramentas de minerao de dados foi proposta e ilustrada na Figura 37. Para o desenvolvimento da arquitetura, a ontologia desenvolvida teve o papel de definir as tarefas essenciais para haver a minerao de dados, alm de identificar pontos onde essencial o conhecimento humano. A Seo 5.2 teve como objetivo identificar quais tarefas da metodologia D3M seriam inseridas em quais pontos na arquitetura.

100

A arquitetura possui trs camadas, onde a primeira est relacionada interao do minerador com o sistema. A segunda est relacionada parte lgica, onde so executadas as operaes do processo de KDD. E na terceira camada est o repositrio de informaes. As subsees a seguir fazem uma descrio dessas camadas e dos elementos que as compem.

Figura 37: ARQUITETURA PARA FERRAMENTAS DE MINERAO DE DADOS

101

5.3.1 Interface com o usurio

A primeira camada est relacionada com a interao entre o minerador de dados e o processo de descoberta de conhecimento, atravs de interfaces grficas, onde o minerador interage com o sistema visualizando e inserindo informaes necessrias. Basicamente nessa camada o minerador realiza as seguintes operaes: define um objetivo e um problema para o projeto de minerao de dados, faz o entendimento dos dados, faz a preparao dos dados, define a tarefa mais adequada ao projeto, define e avalia regras, define e refina conhecimento acionvel e faz refinamentos nos padres gerados a partir da execuo de um algoritmo de minerao de dados. Foi constatado que durante o processo de minerao de dados a tarefa Restrio Baseada em Contexto estava presente em todas as fases. A arquitetura retratou esta situao colocando as demais tarefas dentro do seu submdulo como apresentado na Figura 37. Conforme a Figura 37, a tarefa de Cooperao entre Homem e Mquina tambm est presente entre todos os mdulos, dessa forma os mdulos foram colocadas tambm em uma subcamada chamada de Cooperao entre Humano-Sistema de Minerao de Dados. Por exemplo, em Preparao de Dados o minerador pode definir regras ou outro conhecimento de domnio para tratar os dados, havendo cooperao entre o humano e o sistema de minerao de dados. Uma ontologia do domnio do problema de minerao foi posicionada na camada de Restrio Baseada em Contexto, pois, alm de auxiliar o minerador de dados na definio do objetivo e do problema de minerao, ela pode auxiliar o minerador de dados nas diversas operaes que podem ser realizadas na arquitetura.

5.3.2 Processo de Descoberta de Conhecimento

Na segunda camada ocorrem todas as operaes lgicas da arquitetura, onde basicamente so realizadas as seguintes tarefas: so aplicadas anlises sobre os dados, dados so preparados, so executadas regras, so

102

executados conhecimentos de domnio, so aplicados parmetros dos algoritmos, so descobertos padres ao executar um algoritmo de minerao de dados e estes padres podem ser refinados. O funcionamento dessa camada est resumido nos prximos pargrafos desta seo. Nesta camada h um mdulo chamado de Aplicao de Regras, onde sua funo executar regras definidas pelo o minerador de dados e que pode tanto ser aplicadas nas subcamadas Preparao dos Dados e Descoberta de Padres. Na subcamada Processo para Preparao dos Dados obtida a base de dados que ser trabalhada, esta base de dados analisada e tratada de acordo com o projeto de minerao de dados. Para o tratamento dos dados o minerador de dados pode definir regras para trat-los, com a utilizao do mdulo Aplicao de Regras, mas para realizar esta operao o minerador de dados ir antes realizar a operao de anlise dos dados, a qual realizada no mdulo Anlise dos Dados. Na subcamada Descoberta de Padres onde ser realizado o processo de descoberta de padres com a aplicao da minerao de dados. Entre as operaes que sero executadas nesta camada esto: execuo de um sistema especilista para definir a tarefa de minerao de dados (Silva et al. 2009) e tambm regras que possam auxiliar a descoberta da tarefa, execuo de conhecimento acionvel, aplicaodos parmetros do algoritmo definido, execuo do algoritmo de minerao de dados que pode sofrer interferncia de um conhecimento acionvel, e por fim os padres gerados com a aplicao do algoritmo podero ser refinados. Os mdulos das camadas 1 e 2 esto relacionados, pois para cada tarefa da camada 2 existe a necessidade de interao com o minerador de dados. Para facilitar a visualizao dessa relao entre as duas camadas, os mdulos da camada 1 foram enumerados para indicar se possuem relacionamento com os mdulos da camada 2. Os mdulos das duas camadas esto relacionados da seguinte maneira: O mdulo Anlise dos Dados da camada 2 est relacionado com o mdulo Entendimento dos Dados da camada 1, onde o minerador de dados far o entendimento dos dados a serem minerados.

103

O mdulo Pr-processamento dos Dados da camada 2 est relacionado com o mdulo Preparao dos Dados da camada 1, onde o minerador de dados far todo o processo de preparao dos dados para aplicar a minerao de dados.

Os mdulos Configurao do Algoritmo de Minerao de Dados e Descoberta de Padres da camada 2 esto relacionados com o mdulo Definio da Tarefa de Minerao de Dados da camada 1, onde o minerador de dados ir executar o processo de descoberta de padres a partir de uma base de dados.

O mdulo Aplicao de Regras da camada 2 relaciona-se com os mdulos Preparao dos Dados, Definio da Tarefa de Minerao de Dados e Definio e Avaliao de Regras da camada 1, onde o minerador de dados define regras a serem executadas durante o processo KDD.

O mdulo Aplicao de Conhecimento Acionvel da camada 2 est relacionado com o mdulo Definio e Refinamento do Conhecimento Acionvel da camada 1, onde o minerador de dados ir definir, refinar e aplicar conhecimento acionvel durante o processo KDD.

O mdulo Aplicao do Refinamento Interativo dos Resultados da camada 2 est relacionada com o mdulo Refinamento Interativo dos Resultados da camada 1, onde o minerador de dados poder refinar os padres gerados com a aplicao do algoritmo de minerao de dados.

5.3.3 Repositrio de Informao

Esta camada est relacionada s informaes e aos dados a serem utilizados ou modificados durante o processo de minerao de dados. Nesta camada h uma subcamada chamada Fonte de Dados, constituda por arquivos simples, base de dados e repositrio de informao. Esta

104

camada responsvel por abrigar os dados de sistemas de informao convencionais, que precisam ser adequados para o processo de minerao de dados. Nesta camada h ainda a representao de Regras e Conhecimento Acionvel definidos pelo minerador de dados. A camada ainda possui os dados prontos para passar pelo o processo de minerao de dados, representados por Dados Processados. A Base de Conhecimento tambm est nesta camada; ela tem como intuito armazenar as informaes a serem utilizadas durante o processo de minerao de dados, as quais esto estruturadas de acordo com as ontologias. A Base de Conhecimento formada, portanto, por instncias das classes das ontologias.

5.4 Cenrio de execuo de um projeto de minerao de dados

O objetivo desta seo apresentar um cenrio de execuo de um projeto de minerao, levando em considerao a arquitetura proposta, que est baseada em ontologias e interao humana, conforme a metodologia D3M. Em

resumo, o cenrio mostra a necessidade do conhecimento do problema para definir os objetivos do projeto de minerao, o que pode ser auxiliado por uma ontologia de domnio. O cenrio mostra tambm como o minerador pode fazer restries baseadas em contexto e aplicar conhecimento acionvel. O conhecimento acionvel pode consistir em regras que podem ser definidas pelo minerador antes de comear a minerao dos dados, as quais so acionadas se um padro casar com a regra. Este conhecimento acionvel pode, ento, ser refinado para melhorar os resultados da minerao. Este projeto de minerao utiliza na descrio do cenrio uma base de dados de um congresso de tecnologia que ocorreu na cidade de Mococa SP no ano de 2007, mais detalhe dessa base de dados apresentado no Anexo 1. Para apresentar as fases de execuo do projeto de minerao de dados o cenrio foi dividido de acordo com as fases da metodologia CRISP-DM Chapman et al. (2000), as subes a seguir apresentam com mais detalhes essas fases.

105

5.4.1 Execuo do cenrio no entendimento do negcio

A inteno da arquitetura proposta tornar o processo de minerao de dados o mais automtico possvel. No processo de execuo foi levado em considerao o fluxo corrente das tarefas, dessa forma, a primeira etapa a ser realizada o entendimento do negcio, conforme a metodologia CRISP-DM de Chapman et al. (2000). A proposta da arquitetura que o entendimento do negcio seja feito a partir de uma ontologia de domnio desenvolvida especificamente para o problema do congresso. As definies dessa ontologia poderiam ser feitas a partir da ontologia proposta por Sharma e Bryson (2008), na qual eles tratam o entendimento do negcio. Nesse contexto, a ontologia do domnio do problema dever auxiliar o minerador a definir o objetivo do projeto que : Definir a melhor forma de divulgao do congresso conforme o perfil do congressista. A ontologia tambm dever ajudar o minerador a definir o problema a ser abordado no projeto: A divulgao do congresso gera custo alto e nem sempre eficiente. Na Figura 38 so destacados os pontos em que so executadas as tarefas de entendimento do negcio na arquitetura.

106

Figura 38: Execuo do cenrio - Entendimento do Negcio

107

5.4.2 Execuo do cenrio no entendimento dos dados

A prxima etapa o entendimento dos dados, onde a partir de alguns resultados produzidos na fase anterior so definidass tarefas a serem trabalhados nesta fase. Na etapa de entendimento dos dados conforme o Quadro 5 so definidas 4 tarefas, que so: recolher os dados, descrever os dados, explorar os dados e verificar a qualidade dos dados. O entendimento do negcio, realizado na fase anterior, deve trazer resultados importantes para o mdulo Entendimento dos Dados da arquitetura. O objetivo desse mdulo obter informaes sucintas sobre as caractersticas da base de dados a ser minerada. Na fase entendimento dos dados, conforme proposto na arquitetura, as tarefas Restrio Baseada em Contexto e cooperao entre o humano-sistema de minerao de dados podem ser utilizadas. O minerador de dados, de acordo com o entendimento do negcio (definido com a ontologia de domnio) e com as tarefas da metodologia D3M pode fazer uma anlise da base de dados. Uns exemplos das informaes que podem ser obtidas com esta base de dados so: A base de dados possui cinco tabelas (Alunos, Cidades, Empresas, Inscries e Instituies), foi constato que a maioria das informaes armazenadas so do tipo literal, a quantidade de registros 2662. Como o objetivo saber a melhor forma de divulgar um congresso a partir do perfil dos congressistas, a ontologia de domnio pode indicar que os campos: data de nascimento, sexo, e-mail, telefone, escolaridade, cidade e ficou_sabendo so os que melhor caracterizam o perfil dos congressistas e dizem como eles ficaram sabendo do congresso. Esses so, portanto, os campos que podem gerar padres que podem vir ao encontro do objetivo estabelecido. Por fim, o minerador de dados verificaria a qualidade dos dados. Na Figura 39 so destacadosos pontos em que so executadas as tarefas de entendimento dos dados na arquitetura.

108

Figura 39: Execuo do cenrio - Entendimento dos Dados

109

5.4.3 Execuo do cenrio na preparao dos dados

A etapa seguinte preparar os dados para a minerao de dados. Esta etapa feita a partir do levantamento da qualidade dos dados obtidos na etapa de entendimento dos dados. Esta etapa deve estar presente no mdulo Preparao dos Dados e na subcamada Processo de Preparao dos dados da arquitetura proposta. A etapa constituda das seguintes tarefas de acordo com a ontologia desenvolvida: integrao e remoo de dados ruidosos e com inconsistncias, transformao e seleo. Como exemplo, o minerador pode definir as seguintes regras para transformao nos dados:

if campo = email then return string among (@ and . )

if campo = telefone then return string among ( ( and ) )

Na primeira regra seria retornado o provedor de e-mail do congressista, por exemplo, no e-mail: edmar.yokome@gmail.com a regra

apresentada retornaria gmail. Na segunda regra seria retornado o cdigo postal do congressista, por exemplo, no telefone (64) 3614 2552 seria retornado o cdigo 64. Exemplos de regras para tratar dados ruidosos e com inconsistncias seriam:

if campo = idade then idade vlida >=15 e <=30

if campo = estado B de {So Paulo e Minas Gerais} then replace (outros estados)

110

A primeira regra estabelece uma idade estimada dos congressistas, onde valores diferentes do estabelecido seriam considerados uma anomalia. Na segunda foi verificado que apenas os estados de Minas Gerais e So Paulo so interessantes para gerar padres, uma vez que so raros os participantes de outros estados. Para a tarefa de seleo dos dados a ontologia Meta-DM poderia induzir o minerador de dados a definir que os campos nascimento, sexo, email, telefone, escolaridade da tabela Alunos; nome da tabela Cidades; ficou_sabendo da tabela Inscries so interessantes para o projeto de minerao de dados, estabelecidos de acordo com a restrio de contexto e com o objetivo do negcio e apoiado com a tarefa cooperao entre humano-sistema de minerao de dados. A tarefa de integrao dos dados consiste em, a partir dos dados selecionados, fazer a integrao desses dados em uma tabela de modo que as informaes de cada campo das tabelas no se misturem, ou seja, o campo 1 de uma tabela X ser integrado com o campo 1 da tabela Y e assim por diante. Esta tarefa feita automaticamente pela ferramenta de minerao, porm cabe ao minerador de dados com base na restrio de contexto e cooperao entre humano e sistema de minerao de dados definir quais campos de tais tabelas ou base de dados externas devero ser integradas. Na Figura 40 so destacados os pontos em que so executadas as tarefas de preparao dos dados na arquitetura.

111

Figura 40: Execuo do cenrio - Preparao dos Dados

112

5.4.4 Execuo do cenrio na definio e aplicao da tarefa de minerao de dados

Feito o tratamento da base de dados, a prxima etapa definir a tarefa de minerao de dados. Conforme mostra a Figura 34, nessa fase foram identificadas vrias tarefas da metodologia D3M que podem auxiliar o minerador de dados, entre estas tarefas esto: Restrio Baseada em Contexto, Integrao de Conhecimento de Domnio, Cooperao entre Homem e Mquina, Minerao em Profundidade, Descoberta de Regras ou Padres mais Interessante para o Negcio. Por meio da cooperao entre homem e mquina e restringindo-se ao contexto do problema o minerador de dados poderia definir as seguintes regras para definir qual a tarefa mais adequada ao projeto de minerao de dados.

se (h relao entre os campos) e (campos so mais literais) e (h um atributo que est diretamente relacionado com o problema) ento tarefa = = associao

Seno se (os atributos podem ser organizados em categorias pr-definidas) e (rotulados) e (campos so mais numricos) ento tarefa = = classificao

seno se (pode-se dividir os dados em grupos de modo significativo) e (grupos compartilham caractersticas semelhantes) ento tarefa == agrupamento

seno No foi possvel definir a tarefa de minerao com esta regra!

Estas regras devem estar no mdulo Descoberta de Padres e foram desenvolvidas com base em um sistema especialista descrito em Silva et al. (2009), cujo objetivo definir uma tarefa de minerao de dados de acordo com a base de dados e os padres que se deseja gerar. Antes de ocorrer a aplicao do algoritmo de minerao de dados o minerador pode definir conhecimentos acionveis, cujo objetivo encontrar padres

113

mais interessantes para o negcio. Por exemplo, ele concluiu que o campo ficou_sabendo um campo chave para gerar padres interessantes, dessa forma poderia gerar o seguinte conhecimento acionvel.

se campo = ficousabendo ento cidade = ? and sexo = ? and estado = ? and nascimento = ? and escolaridade = ? and profisso = ?

Onde com a aplicao do algoritmo de minerao de dados seria gerado apenas padres que contemplassem os campos definidos com a elaborao do conhecimento acionvel. O conhecimento acionvel deve ser elaborado no mdulo Definio e Refinamento de Conhecimento Acionvel e ficar armazenado no repositrio Conhecimento Acionvel. Caso sejam encontrados dados que casam com este conhecimento acionvel, ele ser acionado no mdulo Descoberta de Padres. O minerador de dados pode avaliar o retorno do conhecimento acionvel conforme o objetivo do negcio, no mdulo Definio e Refinamento de Conhecimento Acionvel. Na tentativa de atender melhor os objetivos do negcio o minerador de dados ainda pode refinar esse conhecimento neste mdulo. Conforme a regra acionvel exemplificada, a mesma ser acionada quando o campo ficou_sabendo encontrar os campos (cidade sexo estado

nascimento escolaridade e !rofiss"o) onde sero gerados padres entre estes campos. Caso o minerador de dados queira refinar esta regra, pode excluir ou inserir novos campos, bem como mudar o campo chave na tentativa de gerar outros padres que possam vir ao encontro aos objetivos do negcio. Depois de definida a tarefa de minerao de dados, definido o algoritmo de minerao de dados, bem como seus parmetros de execuo. O minerador, de acordo com a restrio baseada em contexto e com o objetivo que espera obter, induzido pela a ontologia Meta-DM a definir que algoritmo Apriori o mais adequado para gerar os padres desejados, onde sero geradas associaes entre os campos escolhidos. Nesse exemplo, ser gerado o relacionamento entre o campo ficou_sabendo com os demais, conforme definido pelo o minerador de dados.

114

As etapas referentes a definir a tarefa de minerao de dados e seus algoritmos devem estar presentes nos mdulos Definio da Tarefa de Minerao de Dados da Camada 1 e ser aplicado nos mdulos Configurao do Algoritmo de Minerao de Dados e Descoberta de Padres da Camada 2. Depois de definida a tarefa de minerao de dados, o algoritmo a ser utilizado, a aplicao ou no de um conhecimento acionvel e/ou seu refinamento, a prxima etapa a gerao de padres a partir dessas definies. Com a aplicao do algoritmo de minerao de dados ser gerado um conjunto de padres, no mdulo Descoberta de Padres, conforme apresentado a seguir:

Cidade = Piracicaba => Ficou Sabendo = Televiso {suporte 25% confiana 40%} Estado = So Paulo => Ficou_Sabendo = Televiso {suporte 35% confiana 84%} Idade >20 e < 30 => Ficou_Sabendo = Televiso {suporte 40% confiana 86%} Sexo = Masculino => Ficou_Sabendo = Jornal {suporte 30% confiana 76%} Idade < 19 => Ficou_Sabendo = Televiso Jornal {suporte 40% confiana 86%} Idade >= 30 => Sexo = Masculino {Suporte 45% confiana 89%} Estado = So Paulo => Sexo = Masculino {Suporte 45% confiana 89%} Estado = So Paulo => Escolaridade = Ensino Mdio {Suporte 35% confiana 81%} Escolaridade=Curso Superiro=>Ficou_Sabendo= Rdio {suporte 30% confiana 76%} Na Figura 41 so destacados os pontos em que so executadas as tarefas de preparao dos dados na arquitetura.

115

Figura 41: Execuo do cenrio - Definio e Aplicao da Tarefa de Minerao de Dados

116

5.4.5 Execuo do cenrio na avaliao dos padres gerados

Aps a gerar os padres com a aplicao do algoritmo de minerao de dados ilustrado na seo 5.4.4, estas regras devem ser analisadas e avaliadas pelo minerador de dados, onde o minerador pode classificar as como ruim, regular ou boa, de acordo com o objetivo do projeto de minerao de dados. Com o intuito de descobrir padres mais interessantes do que o produzido pelo algoritmo de minerao de dados, o minerador pode refinar algumas regras classificadas como boas, na tentativa de buscar resultados mais satisfatrios. Essa etapa contempla no mdulo de Refinamento Interativo dos Resultados. Por exemplo, suponha que das regras apresentadas, o minerador de dados verificou que as seguintes poderiam ser refinadas:

Estado = So Paulo => Ficou_Sabendo = Televiso {suporte 35% confiana 84%} Idade >20 e < 30 => Ficou_Sabendo = Televiso {suporte 40% confiana 86%} Idade < 19 => Ficou_Sabendo = Televiso Jornal {suporte 40% confiana 86%} Estado = So Paulo => Sexo = Masculino {Suporte 45% confiana 89%} Estado = So Paulo => Escolaridade = Ensino Mdio {Suporte 35% confiana 81%}

Uma das formas de refinar estas regras seria criar um micro-cenrio a partir do cenrio principal e ento refinar os padres gerados de acordo com o micro-cenrio elaborado. Por exemplo, o minerador de dados estabeleceu que para o objetivo do projeto de minerao de dados os padres que devem ser considerados so congressistas que so do estado de So Paulo, tm idade entre 20 e 30 anos e so do sexo masculino. Ao estabelecer estas restries seriam retornados apenas os padres que contemplam estas informaes. Nos padres considerados bons pelo o minerador de dados e com as restries estabelecidas, seriam retornados os seguintes padres:

Estado = So Paulo => Ficou_Sabendo = Televiso {suporte 35% confiana 84%} Idade >20 e < 30 => Ficou_Sabendo = Televiso {suporte 40% confiana 86%} Sexo = Masculino => Ficou_Sabendo = Televiso {Suporte 45% confiana 89%}

117

Na Figura 42 so destacados os pontos em que so executadas as tarefas de avaliao dos resultados gerados com a aplicao da minerao de dados na arquitetura.

Figura 42: Execuo do cenrio - Avaliao dos Padres Gerados

118

5.4.6 Execuo do cenrio na aplicao dos padres gerados

Por fim o minerador de dados ir definir se o que foi gerado atende os objetivos do negcio e se os padres gerados sero utilizados. Como exemplo, a partir do refinamento dos padres gerados na seo 5.4.6 o minerador definiu que para o pblico que mora no estado de So Paulo, tem idade entre 20 e 30 anos, e do sexo masculino a melhor forma de divulgar o congresso atravs de televiso. De posse dessa informao o minerador de dados, juntamente com os envolvidos no projeto de minerao de dados, vai decidir se este resultado interessante ou no ao objetivo do negcio.

5.5 Consideraes Finais

A minerao de dados orientada ao domnio ainda est dando seus primeiros passos, mas tem mostrado que pode gerar resultados mais eficientes, pois leva em considerao uma minerao de dados mais interativa, onde o minerador de dados acompanha mais de perto todo o processo, restringindo-se a um determinado contexto, e insere informaes de apoio ao processo. Este captulo definiu quais tarefas da metodologia D3M esto presentes em cada fase da ontologia onde o conhecimento humano foi identificado. A partir dessa identificao uma arquitetura para ferramentas de minerao de dados foi proposta. A arquitetura leva em considerao as tarefas de uma metodologia orientada aos dados como a CRISP-DM, representadas na ontologia Meta-DM, e as tarefas da metodologia D3M, tendo como intuito ser uma arquitetura para ferramentas de minerao de dados orientadas ao domnio. Para ilustrar a utilizao da arquitetura proposta foi apresentado um cenrio, que mostra a influncia que o minerador de dados tem durante o processo de minerao de dados, quando trabalha em conjunto com minerao orientada ao domnio.

119

6 CONCLUSES

6.1 Introduo

Neste trabalho, uma ontologia para o domnio de minerao de dados foi desenvolvida com a utilizao de duas metodologias: Noy e McGuiness (2001) e METHONTOLOGY de Fernndez-Lpez (1997). O levantamento dos requisitos para seu desenvolvimento foi feito a partir da metodologia CRISP-DM de Chapman et al. (2000), e tambm foram considerados livros, artigos e especialistas da rea. A ontologia Meta-DM oferece uma terminologia comum, que pode ser compartilhada e compreendida por ferramentas de minerao de dados. Diferente de outras ontologias para o domnio de minerao de dados encontradas na literatura, a Meta-DM identifica e formaliza em quais fases da minerao de dados o conhecimento humano deve ser inserido durante o processo de KDD. Esse diferencial importante para que o conhecimento humano e de domnio possa ser inserido em ferramentas de minerao e, consequentemente, ajudar ou guiar o minerador de dados durante o processo de descoberta de conhecimento. Uma das formas de se obter resultados mais satisfatrios durante o processo KDD a partir dos pontos onde foram identificados conhecimento humano na ontologia inserir tarefas da metodologia D3M, visando uma minerao de dados mais interativa entre a mquina e o minerador de dados. Com essa interao, possvel obter melhores resultados da minerao de dados. Por isso, com base no desenvolvimento da ontologia Meta-DM, foi proposta uma arquitetura para ferramentas de minerao de dados levando-se em considerao a metodologia D3M.

120

6.2 Contribuies

Uma contribuio deste trabalho foi desenvolvimento de uma ontologia que oferece uma terminologia comum para ferramentas de minerao de dados. Diferente de outros trabalhos encontrados na literatura, a ontologia Meta-DM especifica pontos em que so essenciais o conhecimento humano, que uma tendncia na rea de minerao de dados, como evidencia metodologias como D3M; Outra contribuio deste trabalho foi a proposta de uma arquitetura para ferramentas de minerao de dados levando em considerao a metodologia D3M e a ontologia Meta-DM. A arquitetura baseada em ontologias vem contribuir com o estado da arte na rea de semntica em minerao de dados, uma vez que insere conhecimento humano e de domnio durante o processo de minerao de dados realizado em ferramentas de minerao.

Com o desenvolvimento desse trabalho tambm foram produzidos alguns artigos cientficos: Desenvolvimento de um Metamodelo Baseado em Ontologias para o Domnio de Minerao de dados, este artigo foi apresentado no 8 Congresso de Ps-Graduao da Universidade Metodista de Piracicaba, ano 2010; Ontologias para o Domnio de Minerao de dados, este artigo foi apresentado na 4 JORNADA ACADMICA: EM DEBATE: CINCIA, TECNOLOGIA E INOVAO na Universidade Estadual de Gois UnU Santa Helena de Gois, ano 2010; Meta-DM: Uma ontologia para o domnio de minerao de dados, submetido para Revista de Sistemas de Informao da Faculdade Salesiana Maria Auxiliadora (FSMA), ano 2011. Um artigo abordando a arquitetura baseada em ontologias est sendo escrito.

121

6.3 Trabalhos Futuros Com a ontologia Meta-DM formalizada e avaliada, e com a arquitetura proposta, trabalhos futuros podem focar na integrao da arquitetura com uma ferramenta de minerao de dados, como, por exemplo, a Kira, com o intuito de melhorar a questo da participao humana e do conhecimento de domnio na ferramenta. Para tanto, uma sugesto utilizar a Meta-DM e a arquitetura para identificar e implementar na ferramenta Kira interfaces mais interativas com o minerador de dados.

122

REFERNCIAS
Beckett D. and Berners-LeeT. Turtle terse rdf triple language, W3C Team Submission. Disponvel em: http://www.w3.org/TeamSubmission/turtle/, 2008. Acesso: 07 jan 2011.

BREITMAN, K. Web Semntica A Internet do Futuro. LTC, 2005.

BREZANY, P. ; JANCIAK, I. ; TJOA, A. M. Ontology-Based Construction of Grid Data Mining Workflows. In: NIGRO, H. O. ; CSARO, S. E. G. ; & XODO, D. H. Data Mining with Ontologies: Implementations, Findings and Frameworks. London, IGI Global, 2008. p. 182-210.

BRICKLEY, D.; GUHA, R. V. RDF Vocabulary Description Language 1.0: RDF Schema. W3C Recommendation. 2003. Disponvel em: <http://www.w3.org/TR/rdfschema>. Acesso: 07 jan 2011.

CAO, L.; ZHANG, C. Domain-Driven Data Mining: A Practical Methodology. International Journal of Data Warehousing & Mining, v. 2, n. 4, p. 49-65, 2006.

CAO, L. Domain Driven Data Mining (D3M). In: IEEE International Conference on Data Mining Workshops, 74-76, 2008, Shanghai (China).

CHAPMAN, P.; CLINTON, J.; KERBER, R.; KHABAZA, T.; REINARTZ, T.; SHEARER, C. CRISP-DM 1.0 Step-by-step Data Mining Guide. 2000. Disponvel em: <http://www.crisp-dm.org/download.htm>. Acesso em: 28 abr. 2010.

FALBO, R. A.; MENEZES, C. S.; ROCHA, A. R. C. A Systematic Approach for Building Ontologies, In: Proceedings of the 6 th Ibero-American Conference on IA: Progress in Artificial Intelligence, 349 360, 1998, London (UK).

FERNNDEZ, M; GMEZ-PREZ, A.; JURISTO, N. Methontology: From Ontological Art Towards Ontological Engineering, In: Proceedings of the AAAI97 Spring Symposium Series on Ontological Engineering, 33-40, 1997, Stanford (USA).

123

GRUBER, T. R. A Translation Approach to Portable Ontology Specifications, Knowledge Acquisition, v. 5, n. 2, p. 199-220, 1993..

GRNINGER, M.; FOX, M. S. Methodology for the Design and Evaluation of Ontologies, In: Proceedings of the Workshop on Workshop on Basic Ontological Issues in Knowledge Sharing, IJCAI95, 1995, Montreal (Canad). 10p.

GUARINO, N. Formal Ontology and Information Systems, In: Proceedings. Amsterdan: IOS on Formal Ontology and Information Systems (FOIS98), 3 -15, 1998, Trento (Itlia).

GUEDES, G. T. A. UML 2 Uma Abordagem Prtica. Novatec, 2009.

HAN, J.; KAMBER, M. Data Mining: Concepts and Techniques. Ed: Elsevier. Second Edition, 2006.

HORRIDGE, M. ; DRUMMOND, N. JUPP, S. ; MOULTON, G. ; STEVENS, R. A Practical Guide to Building OWL Ontologies Using Protg 4 and CO-ODE Tools. Edition 1.2, The University of Manchester, 2009.

LINHALIS, F. Mapeamento semntico entre UNL e Componentes de software para execuo de requisies imperativa em linguagem natural. 2007. 244 f, Tese (Programa de Ps Graduao em Cincias de Computao e Matemtica Computacional) Instituto de Cincias Matemticas e de Computao, Universidade de So Paulo, So Carlos.

LINHALIS, F. Web Semntica Teoria e Prtica. Centro de Tecnologia da Informao Renato Archer, 2010.

MANOLA, F.; MILLER, E. RDF Primer. W3C Recommendation. 2004. Disponvel em: <http://www.w3.org/TR/rdf-primer/>. Acesso em: 07 jan. 2011.

124

MARTIMIANO, L. A. F. Sobre a estruturao de informao em sistemas de segurana computacional: o uso de ontologia. 2006. 185 f, Tese (Programa de Ps Graduao em Cincias de Computao e Matemtica Computacional) Instituto de Cincias Matemticas e de Computao, Universidade de So Paulo, So Carlos.

MENDES, E. F.; VIEIRA, M. T. P. Automatizao da Tcnica de Minerao de Dados Auxiliada Por Guias. In: XX Simpsio Brasileiro de Informtica na Educao, 2009. Santa Catarina (Brasil), 10 p.

MENDES, Eduardo Fernando. Kira: Uma Ferramenta Instrucional para Apoiar a Aplicao do Processo de Minerao de Dados. 2009. 115 f, Dissertao (Programa de Ps Graduao em Cincia da Computao) - Faculdade de Cincias Exatas e da Natureza, da Universidade Metodista de Piracicaba UNIMEP.

MCGUINNESS, D. L.; VAN HARMELEN, F. Web Ontology Language Overview. W3C Recommendation. 2004. Disponvel em: <http://www.w3.org /TR/owl-features>. Acesso: 07 jan 2011.

NOY, N. F.; McGuinness, D. L. Ontology Development 101: A Guide to Creating Your First Ontology. 2001. Relatrio Tcnico Stanford University, Stanford. Disponvel em: <http://www.ksl.stanford.edu/people/dlm/papers/ontoloy101/ ontogy101-noy-

mcguinners.html>. Acesso em 07 jun 2010.

PDUA, S. I. D. Mtodo de Avaliao do Modelo de Processo de Negcio do EKD. 2004. 271 f, Tese (Programa de Ps Graduao em Engenharia Mecnica) Escola de Engenharia de So Carlos, Universidade de So Paulo, So Carlos.

PANOV, P. ; DEROSKI, S. ; STEFAN, J. SOLDATOVA, L. N. OntoDM: An Ontology of Data Mining. In: IEEE International Conference on Data Mining Workshops, 2008.

PINTO, F. M; SANTOS, M. F. Considering Application Domain Ontologies for Data Mining. In WSEAS Transactions on Information Science and Appications. 1478 1492. Stevents Point, Winconsin, USA.

125

RUSSEL, S.; NORVING, P. Artificial Intelligence: A Modern Approach. Upper Saddle River: Prentice Hall, 2003.

SANTOS, M. Y. ; RAMOS, R. Business Intelligence Tecnologias da Informao na Gesto de Conhecimento, FCA, 2a Edio, 2009.

SHARMA, S.; OSEI-BRYSON, K. Organization-Ontology Based Framework for Implementing the Business Understanding Phase of Data Mining Projects, In: Proceedings of the 41 st Annual Hawaii International Conference on System Sciences (HIC 33 2008), Waikoloa, Big Island, Hawaii, 2008.

SILVA, A. E. A. ; VIEIRA, M. T. P. ; PEIXOTO, C. S. A. ; MENDES, E. F. ; GOMIDE, R. S. KIRA A Tool Based on Guides and Domain Knowledge to Instruct Data Miining. In IADIS - International Conference Applied Computing, 2009.

TAN, P.; STEINBACH, M.; KUMAR, V. Introduo ao Data Mining (Minerao de Dados), Cincia Moderna, 2009.

USHOLD, M.; KING, M. Towards a Methodology for Building Ontologies, In: IJCAI Workshop on Basic Ontological Issues in Kwowledge Sharing, 1995, Montreal. Proceedings. Tambm disponvel como AIAI-TR-183 form AIAI, University of Edinburg. 1995. 15p.

WITTEN, I. H.; FRANK, E. Data Mining - Practical Machine Learning Tools and Techniques. Elsevier. Second Edition, 2005.

ZHENG, L. ; LI X. An Ontology Reasoning Architecture for Data Mining Knowledge Management. Whuhan University Journal of Natural Sciences, v. 13, p. 396-400, 2008.

126

ANEXO 1
Este anexo tem como finalidade apresentar uma base de dados no qual utilizada em vrias sees desse trabalho para realizao de testes. A base de dados em questo uma base de dados de um congresso de tecnologia que ocorreu na cidade de MOCOCA SP no ano de 2007. A Figura 43 apresenta a modelagem dessa base de dados.

Figura 43: MODELAGEM DA BASE DE DADOS DO CONGRESSO Fonte: Mendes (2009)

A partir dessa base de dados Mendes (2009) fez o tratamento dos dados de acordo com o processo KDD.Entre os tratamentos realizados esto a seleo dos dados (considerados relevantes para o projeto de minerao de dados em questo). Estes dados foram integrados em uma tabela, mostrada particialmente na Figura 44.

127

Figura 44: INTEGRAO DA BASE DE DADOS PARA A MD Fonte: Mendes (2009)

A partir dos dados armazenados nessa tabela foram feitos testes ao longo do desenvolvimento do trabalho, com base nas seguintes questes levantadas por Mendes (2009), como: o problema que o projeto de minerao de dados tem que resolver : A divulgao do congresso gera custo alto e nem sempre eficiente. E o objetivo do projeto da minerao de dados : Definir a melhor forma de divulgao do congresso conforme o perfil do congressista. A partir dessa base de dados ento foi feita a instanciao da ontologia, foi criado um cenrio de simulao de um projeto de minerao de dados, foram exemplificados vrios trechos do projeto. Dessa forma esta base de dados foi essencial para o desenvolvimento deste projeto.

128

APNDICE 1

O Apndice 1 apresenta a implementao da ontologia, no qual foi utilizada a ferramenta Protg onde foram utilizados as abas: classes, Object Properties e Data Properties e foram implementados os seguintes elementos: Namespaces, Classes, Object Properties, Data properties e General axioms. A seguir apresentada a codificao OWL serializada em Turtle.

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . @prefix : <http://www.semanticweb.org/metadm.owl#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix skos: <http://www.w3.org/2004/02/skos/core#> . @prefix xml: <http://www.w3.org/XML/1998/namespace> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @base <http://www.semanticweb.org/metadm.owl> . <http://www.semanticweb.org/metadm.owl> rdf:type owl:Ontology .

################################################################# # # Object Properties # ################################################################# ### http://www.semanticweb.org/metadm.owl#defines

:defines rdf:type owl:ObjectProperty ; rdfs:domain :Business_Understanding ; rdfs:range :Objective , :Problem ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#definesTask

:definesTask rdf:type owl:ObjectProperty ; rdfs:domain :Problem_Understanding ; rdfs:range :Task ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#definesTechnic

:definesTechnic rdf:type owl:ObjectProperty ;

129

rdfs:domain :Task ; rdfs:range :Technic ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#discovers

:discovers rdf:type owl:ObjectProperty ; rdfs:range :Pattern ; rdfs:domain :Task ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#hasAlgorithm

:hasAlgorithm rdf:type owl:ObjectProperty ; rdfs:range :Algorithm ; rdfs:domain :Task ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#hasAnalysis

:hasAnalysis rdf:type owl:ObjectProperty ; rdfs:domain :Pattern ; rdfs:range :Result ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#hasCleaning

:hasCleaning rdf:type owl:ObjectProperty ; rdfs:range :Table_For_Analyis ; rdfs:domain :Table_For_Analyis ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#hasColumn

:hasColumn rdf:type owl:ObjectProperty ; rdfs:range :Column ; rdfs:domain :Table ; rdfs:subPropertyOf owl:topObjectProperty ;

130

rdfs:domain [ rdf:type owl:Restriction ; owl:onProperty :hasColumn ; owl:onClass :Table ; owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ] . ### http://www.semanticweb.org/metadm.owl#hasSelection

:hasSelection rdf:type owl:ObjectProperty ; rdfs:range :Table_For_Analyis ; rdfs:domain :Table_For_Analyis ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#hasTransformation

:hasTransformation rdf:type owl:ObjectProperty ; rdfs:domain :Table_For_Analyis ; rdfs:range :Table_For_Analyis ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#hasValue

:hasValue rdf:type owl:ObjectProperty ; rdfs:domain :Column , :Table_For_Analyis ; rdfs:range :Value ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#is-PartOf

:is-PartOf rdf:type owl:ObjectProperty ; rdfs:domain :Business_Understanding , :Data_Understanding ; rdfs:range :Problem_Understanding ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.semanticweb.org/metadm.owl#is-PartOfAlgorithm

:is-PartOfAlgorithm rdf:type owl:ObjectProperty ; rdfs:domain :Algorithm ; rdfs:range :Algorithm_Parameter , :Algorithm_Type ;

131

rdfs:subPropertyOf owl:topObjectProperty . ### http://www.semanticweb.org/metadm.owl#uses

:uses rdf:type owl:ObjectProperty ; rdfs:domain :Algorithm ; rdfs:range :Technic ; rdfs:subPropertyOf owl:topObjectProperty .

###

http://www.w3.org/2002/07/owl#topObjectProperty

owl:topObjectProperty rdf:type owl:ObjectProperty .

################################################################# # # Data properties # ################################################################# ### http://www.semanticweb.org/metadm.owl#congress

:congress rdf:type owl:DatatypeProperty ; rdfs:domain :Data ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#data

:data rdf:type owl:DatatypeProperty ; rdfs:domain :Column , :Value ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#dataDescription

:dataDescription rdf:type owl:DatatypeProperty ; rdfs:domain :Data_Understanding ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#holder

132

:holder rdf:type owl:DatatypeProperty ; rdfs:domain :Pattern ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#objectiveDescription

:objectiveDescription rdf:type owl:DatatypeProperty ; rdfs:domain :Objective ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#parameterAlgorithm

:parameterAlgorithm rdf:type owl:DatatypeProperty ; rdfs:domain :Algorithm ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#path

:path rdf:type owl:DatatypeProperty ; rdfs:domain :Source ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#patternDescription

:patternDescription rdf:type owl:DatatypeProperty ; rdfs:domain :Pattern ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#problemDescription

:problemDescription rdf:type owl:DatatypeProperty ; rdfs:domain :Problem ; rdfs:range xsd:string ;

133

rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#resultDescription

:resultDescription rdf:type owl:DatatypeProperty ; rdfs:domain :Result ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#trust

:trust rdf:type owl:DatatypeProperty ; rdfs:domain :Pattern ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#typeAlgorithm

:typeAlgorithm rdf:type owl:DatatypeProperty ; rdfs:domain :Algorithm ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#typeTask

:typeTask rdf:type owl:DatatypeProperty ; rdfs:domain :Task ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.semanticweb.org/metadm.owl#typeTechnic

:typeTechnic rdf:type owl:DatatypeProperty ; rdfs:domain :Technic ; rdfs:range xsd:string ; rdfs:subPropertyOf owl:topDataProperty .

###

http://www.w3.org/2002/07/owl#topDataProperty

134

owl:topDataProperty rdf:type owl:DatatypeProperty .

################################################################# # # Classes # ################################################################# ### http://www.semanticweb.org/metadm.owl#Algorithm

:Algorithm rdf:type owl:Class .

###

http://www.semanticweb.org/metadm.owl#Algorithm_Parameter

:Algorithm_Parameter rdf:type owl:Class ; rdfs:subClassOf :Algorithm .

###

http://www.semanticweb.org/metadm.owl#Algorithm_Type

:Algorithm_Type rdf:type owl:Class ; rdfs:subClassOf :Algorithm .

###

http://www.semanticweb.org/metadm.owl#Association

:Association rdf:type owl:Class ; rdfs:subClassOf :Task .

###

http://www.semanticweb.org/metadm.owl#Association_Rule

:Association_Rule rdf:type owl:Class ; rdfs:subClassOf :Technic .

###

http://www.semanticweb.org/metadm.owl#Business_Understanding

:Business_Understanding rdf:type owl:Class ; rdfs:subClassOf :Problem_Understanding .

###

http://www.semanticweb.org/metadm.owl#Classification

:Classification rdf:type owl:Class ; rdfs:subClassOf :Task .

###

http://www.semanticweb.org/metadm.owl#Clustering

:Clustering rdf:type owl:Class ; rdfs:subClassOf :Task .

135

###

http://www.semanticweb.org/metadm.owl#Column

:Column rdf:type owl:Class ; rdfs:subClassOf :Structure .

###

http://www.semanticweb.org/metadm.owl#Data

:Data rdf:type owl:Class .

###

http://www.semanticweb.org/metadm.owl#Data_Understanding

:Data_Understanding rdf:type owl:Class ; rdfs:subClassOf :Problem_Understanding .

###

http://www.semanticweb.org/metadm.owl#Decision_Tree

:Decision_Tree rdf:type owl:Class ; rdfs:subClassOf :Technic .

###

http://www.semanticweb.org/metadm.owl#Genetic_Algorithm

:Genetic_Algorithm rdf:type owl:Class ; rdfs:subClassOf :Technic .

###

http://www.semanticweb.org/metadm.owl#Linear_Regression

:Linear_Regression rdf:type owl:Class ; rdfs:subClassOf :Technic .

###

http://www.semanticweb.org/metadm.owl#Nearest_Neighbor

:Nearest_Neighbor rdf:type owl:Class ; rdfs:subClassOf :Technic .

###

http://www.semanticweb.org/metadm.owl#Neural_Network

:Neural_Network rdf:type owl:Class ; rdfs:subClassOf :Technic .

###

http://www.semanticweb.org/metadm.owl#Objective

:Objective rdf:type owl:Class ; rdfs:subClassOf :Problem_Understanding .

136

###

http://www.semanticweb.org/metadm.owl#Pattern

:Pattern rdf:type owl:Class .

###

http://www.semanticweb.org/metadm.owl#Problem

:Problem rdf:type owl:Class ; rdfs:subClassOf :Problem_Understanding .

###

http://www.semanticweb.org/metadm.owl#Problem_Understanding

:Problem_Understanding rdf:type owl:Class .

###

http://www.semanticweb.org/metadm.owl#Result

:Result rdf:type owl:Class .

###

http://www.semanticweb.org/metadm.owl#Source

:Source rdf:type owl:Class ; rdfs:subClassOf :Data .

###

http://www.semanticweb.org/metadm.owl#Structure

:Structure rdf:type owl:Class ; rdfs:subClassOf :Data .

###

http://www.semanticweb.org/metadm.owl#Table

:Table rdf:type owl:Class ; rdfs:subClassOf :Structure .

###

http://www.semanticweb.org/metadm.owl#Table_For_Analyis

:Table_For_Analyis rdf:type owl:Class ; rdfs:subClassOf :Table .

###

http://www.semanticweb.org/metadm.owl#Task

:Task rdf:type owl:Class .

###

http://www.semanticweb.org/metadm.owl#Technic

:Technic rdf:type owl:Class .

137

###

http://www.semanticweb.org/metadm.owl#Value

:Value rdf:type owl:Class ; rdfs:subClassOf :Data . ################################################################# # # General axioms # ################################################################# [ rdf:type owl:AllDisjointClasses ; owl:members ( :Source :Structure :Value ) ] . [ rdf:type owl:AllDisjointClasses ; owl:members ( :Association_Rule :Decision_Tree :Genetic_Algorithn :Linear_Regression :Nearest_Neighbor :Neural_Network ) ] . [ rdf:type owl:AllDisjointClasses ; owl:members ( :Association :Classification :Clustering ) ] .

138

APNDICE 2
No apndice 2 apresentado a instanciao da ontologia META-DM, onde foram inseridos dados do congresso de Tecnologia abordado no Anexo 1. Esta instanciao foi feita na aba Individuals da ferramenta Protg e a codificao gerada apresentada a seguir.
### http://www.semanticweb.org/ontologies/ontodm.owl#BUinst

:BUinst rdf:type :Business_Understanding , owl:NamedIndividual ; :is-PartOf :PUinst ; :defines :desc001 , :desc002 . ### http://www.semanticweb.org/ontologies/ontodm.owl#Dados

:Dados rdf:type :Table , owl:NamedIndividual ; :hasColumn :col007 :col008 :col009 :col010 :col011 :col012 :col013 :col014 :col015 :col016 :col017 ### , , , , , , , , , , .

http://www.semanticweb.org/ontologies/ontodm.owl#Email

:Email rdf:type :Table , owl:NamedIndividual ; :hasColumn :col018 , :col019 . ### http://www.semanticweb.org/ontologies/ontodm.owl#Endereco

:Endereco rdf:type :Table , owl:NamedIndividual ; :hasColumn :col001 :col002 :col003 :col004 :col005 :col006 , , , , , .

139

###

http://www.semanticweb.org/ontologies/ontodm.owl#PUinst

:PUinst rdf:type :Problem_Understanding , owl:NamedIndividual .

###

http://www.semanticweb.org/ontologies/ontodm.owl#Resultado001

:Resultado001 rdf:type :Result , owl:NamedIndividual ; :resultDescription "Uma das regras geradas forneceu a seguinte informacao: quem mora em no Estado de Sao Paulo e estuda, ficou sabendo do congresso atraves da televisao. Estas informacoes tem um grau de confianca de 70% com um suporte de 20%. Dessa forma para os proximos congressos caso queira aumentar a presenca desse publico, e recomendavel continuar a adotar e investir nesta forma de divulgacao."^^xsd:string ; :hasAnalysis :padrao001 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#Tarefa001

:Tarefa001 rdf:type :Task , owl:NamedIndividual ; :typeTask "Associacao"^^xsd:string ; :definesTechnic :Tecnica001 ; :hasAlgorithm :desAlgoritmo01 ; :discovers :padrao001 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#Tecnica001

:Tecnica001 rdf:type :Technic , owl:NamedIndividual ; :typeTechnic "Regras de Associacao"^^xsd:string ; :definesTechnic :Tecnica001 ; :uses :Tecnica001 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#cam001

:cam001 rdf:type :Source , owl:NamedIndividual ; :path "c:Arquivos de programakiradatabasedados_fontes.fdb"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col001

:col001 rdf:type :Column , owl:NamedIndividual ;

140

:data "Id_Endereco"^^xsd:string ; :hasValue :val001 , :val020 . ### http://www.semanticweb.org/ontologies/ontodm.owl#col002

:col002 rdf:type :Column , owl:NamedIndividual ; :data "Rua"^^xsd:string ; :hasValue :val002 , :val021 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col003

:col003 rdf:type :Column , owl:NamedIndividual ; :data "Bairro"^^xsd:string ; :hasValue :val003 , :val022 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col004

:col004 rdf:type :Column , owl:NamedIndividual ; :data "CEP"^^xsd:string ; :hasValue :val004 , :val023 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col005

:col005 rdf:type :Column , owl:NamedIndividual ; :data "Cidade"^^xsd:string ; :hasValue :val005 , :val024 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col006

:col006 rdf:type :Column , owl:NamedIndividual ; :data "Estado"^^xsd:string ; :hasValue :val006 , :val025 .

141

###

http://www.semanticweb.org/ontologies/ontodm.owl#col007

:col007 rdf:type :Column , owl:NamedIndividual ; :data "Id_Inscricao"^^xsd:string ; :hasValue :val007 , :val026 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col008

:col008 rdf:type :Column , owl:NamedIndividual ; :data "Nome"^^xsd:string ; :hasValue :val008 , :val027 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col009

:col009 rdf:type :Column , owl:NamedIndividual ; :data "Data_Nascimento"^^xsd:date ; :hasValue :val009 , :val028 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col010

:col010 rdf:type :Column , owl:NamedIndividual ; :data "Sexo"^^xsd:string ; :hasValue :val010 , :val029 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col011

:col011 rdf:type :Column , owl:NamedIndividual ; :data "Telefone"^^xsd:string ; :hasValue :val011 , :val030 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col012

:col012 rdf:type :Column , owl:NamedIndividual ; :data "Escolaridade"^^xsd:string ;

142

:hasValue :val012 , :val031 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col013

:col013 rdf:type :Column , owl:NamedIndividual ; :data "Instituicao_Estuda"^^xsd:string ; :hasValue :val013 , :val032 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col014

:col014 rdf:type :Column , owl:NamedIndividual ; :data "Profissao"^^xsd:string ; :hasValue :val014 , :val033 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col015

:col015 rdf:type :Column , owl:NamedIndividual ; :data "Ficou_Sabendo"^^xsd:string ; :hasValue :val015 , :val034 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col016

:col016 rdf:type :Column , owl:NamedIndividual ; :data "Id_Endereco"^^xsd:string ; :hasValue :val016 , :val035 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col017

:col017 rdf:type :Column , owl:NamedIndividual ; :data "Id_Email"^^xsd:string ; :hasValue :val017 , :val036 .

143

###

http://www.semanticweb.org/ontologies/ontodm.owl#col018

:col018 rdf:type :Column , owl:NamedIndividual ; :data "Id_Email"^^xsd:string ; :hasValue :val018 , :val037 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#col019

:col019 rdf:type :Column , owl:NamedIndividual ; :data "Email"^^xsd:string ; :hasValue :val019 , :val038 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#dados001

:dados001 rdf:type :Data , owl:NamedIndividual ; :congress "Congresso de Tecnologia"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#desAlgoritmo01

:desAlgoritmo01 rdf:type :Algorithm , owl:NamedIndividual ; :typeAlgorithm "Apriori"^^xsd:string ; :parameterAlgorithm "Suporte minimo = 30% e Confianca = 70%"^^xsd:string ; :uses :Tecnica001 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#desc001

:desc001 rdf:type :Problem , owl:NamedIndividual ; :problemDescription "A divulgacao do congresso gera custo alto e nem sempre e eficiente."^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#desc002

:desc002 rdf:type :Objective , owl:NamedIndividual ; :objectDescription "Definir a melhor forma de divulgacao do congresso conforme o perfil do congressista."^^xsd:string .

144

###

http://www.semanticweb.org/ontologies/ontodm.owl#desc003

:desc003 rdf:type :Data_Understanding , owl:NamedIndividual ; :dataDescription "Os dados apresentam em sua maioria dados literais. Os campos que serao utilizados para mineracao de dados sao: data_nascimento, telefone, CEP, cidade, estado, sexo, profissao e ficou_sabendo."^^xsd:string ; :isDone :BUinst .

###

http://www.semanticweb.org/ontologies/ontodm.owl#padrao001

:padrao001 rdf:type :Pattern , owl:NamedIndividual ; :holder "30%"^^xsd:string ; :trust "70%"^^xsd:string ; :patternDescription "{Estado=SP, Profissao = Estudante} => {FicouSabendo = Televisao}"^^xsd:string ; :discovers :Tarefa001 .

###

http://www.semanticweb.org/ontologies/ontodm.owl#registro001

:registro001 rdf:type :Table_for_Analysis , owl:NamedIndividual ; :hasSelection :registro001 ; :hasCleaning :registro001 ; :hasTransformation :registro001 ; :hasValue :val003 :val005 :val006 :val009 :val010 :val011 :val012 :val013 :val014 :val015 :val019 , , , , , , , , , , .

###

http://www.semanticweb.org/ontologies/ontodm.owl#registro002

:registro002 rdf:type :Table_for_Analysis , owl:NamedIndividual ; :hasCleaning :registro002 ; :hasSelection :registro002 ;

145

:hasTransformation :registro002 ; :hasValue :val022 :val024 :val025 :val028 :val029 :val030 :val031 :val032 :val033 :val034 :val038 , , , , , , , , , , .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val001

:val001 rdf:type :Value , owl:NamedIndividual ; :data "001"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val002

:val002 rdf:type :Value , owl:NamedIndividual ; :data "Avenida das Nacoes Unidas n 102"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val003

:val003 rdf:type :Value , owl:NamedIndividual ; :data "Jardim Santa Clara"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val004

:val004 rdf:type :Value , owl:NamedIndividual ; :data "13730-059"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val005

:val005 rdf:type :Value , owl:NamedIndividual ; :data "Mococa"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val006

:val006 rdf:type :Value , owl:NamedIndividual ;

146

:data "SP"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val007

:val007 rdf:type :Value , owl:NamedIndividual ; :data "001"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val008

:val008 rdf:type :Value , owl:NamedIndividual ; :data "Rafael T. de Castro Marques"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val009

:val009 rdf:type :Value , owl:NamedIndividual ; :data "10/11/1975"^^xsd:date .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val010

:val010 rdf:type :Value , owl:NamedIndividual ; :data "Masculino"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val011

:val011 rdf:type :Value , owl:NamedIndividual ; :data "(19) 9707 - 5034"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val012

:val012 rdf:type :Value , owl:NamedIndividual ; :data "Primeiro Grau Completo"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val013

:val013 rdf:type :Value , owl:NamedIndividual ; :data "Outras"^^xsd:string .

147

###

http://www.semanticweb.org/ontologies/ontodm.owl#val014

:val014 rdf:type :Value , owl:NamedIndividual ; :data "Estudante"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val015

:val015 rdf:type :Value , owl:NamedIndividual ; :data "Televisao"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val016

:val016 rdf:type :Value , owl:NamedIndividual ; :data "001"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val017

:val017 rdf:type :Value , owl:NamedIndividual ; :data "001"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val018

:val018 rdf:type :Value , owl:NamedIndividual ; :data "001"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val019

:val019 rdf:type :Value , owl:NamedIndividual ; :data "ratecmg@uol.com.br"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val020

:val020 rdf:type :Value , owl:NamedIndividual ; :data "002"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val021

:val021 rdf:type :Value , owl:NamedIndividual ;

148

:data "Rua Teodomiro Martins de Paula"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val022

:val022 rdf:type :Value , owl:NamedIndividual ; :data "Vila Formosa"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val023

:val023 rdf:type :Value , owl:NamedIndividual ; :data "13720 - 000"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val024

:val024 rdf:type :Value , owl:NamedIndividual ; :data "Sao Jose do Rio Pardo"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val025

:val025 rdf:type :Value , owl:NamedIndividual ; :data "SP"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val026

:val026 rdf:type :Value , owl:NamedIndividual ; :data "002"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val027

:val027 rdf:type :Value , owl:NamedIndividual ; :data "Aline Cristina Ribeiro"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val028

:val028 rdf:type :Value , owl:NamedIndividual ; :data "10/06/1988"^^xsd:date .

149

###

http://www.semanticweb.org/ontologies/ontodm.owl#val029

:val029 rdf:type :Value , owl:NamedIndividual ; :data "Feminino"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val030

:val030 rdf:type :Value , owl:NamedIndividual ; :data "(19) 3681 - 2168"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val031

:val031 rdf:type :Value , owl:NamedIndividual ; :data "Primeiro Grau Completo"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val032

:val032 rdf:type :Value , owl:NamedIndividual ; :data "Fatec - Mococa"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val033

:val033 rdf:type :Value , owl:NamedIndividual ; :data "Estudante"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val034

:val034 rdf:type :Value , owl:NamedIndividual ; :data "Televisao"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val035

:val035 rdf:type :Value , owl:NamedIndividual ; :data "002"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val036

:val036 rdf:type :Value , owl:NamedIndividual ;

150

:data "002"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val037

:val037 rdf:type :Value , owl:NamedIndividual ; :data "002"^^xsd:string .

###

http://www.semanticweb.org/ontologies/ontodm.owl#val038

:val038 rdf:type :Value , owl:NamedIndividual ; :data "ribeiro@hotmail.com"^^xsd:string .

Você também pode gostar