aplicação de data mining na identificação de padrões em

Propaganda
APLICAÇÃO DE DATA MINING NA IDENTIFICAÇÃO DE PADRÕES EM
CRIANÇAS RESPIRADORAS BUCAIS E NASAIS1.
SQUIZANI, Cleonice Schell 2; MORALES, Yuri 2; VIEIRA, Sylvio André Garcia 2
1 Trabalho de pesquisa - UNIFRA
2 Curso de Sistemas de Informação do Centro Universitário Franciscano (UNIFRA),
Santa Maria, RS, Brasil
E-mail: [email protected]; [email protected];
RESUMO
O objetivo desse trabalho é realizar um estudo com mineração de dados.
Através do qual se aplica os principais algoritmos de classificação em uma base de
dados, dentre os algoritmos podemos citar: algoritmos de indução, de regras de
decisão, redes neurais artificiais, algoritmos baseados em métodos estatísticos, etc..
Serão realizadas comparações de desempenho sobre resultados obtidos pelos
algoritmos, para determinar a possibilidade de identificação de um padrão que possa
classificar os respiradores bucais e nasais, a partir dos padrões definidos pelo
algoritmo.
Para o estudo e testes desses algoritmos foi utilizada uma base de dados
contendo informações sobre padrões esqueléticos e características oclusais de
crianças respiradoras bucais e nasais (MATTAR, 2002). Aplicou-se diversos
classificadores através do software Weka. Observou-se que há comportamentos
distintos entre os classificadores e que alguns deles conseguiram bons resultados na
classificação.
Palavras-chave: Base de Dados, WEKA, Data Mining, Classificação.
1. INTRODUÇÃO
A cada dia, o uso de base de dados em organizações vem assumindo maiores
proporções e, a extração de informações, a partir de grande quantidade de dados,
passou a ser uma tarefa de total importância. No entanto, extrações a partir de
consultas em linguagem SQL feitas por usuários, nem sempre satisfazem plenamente
as necessidades na busca de resultados.
Nesse sentido, se faz necessário outas formas de extração, para que novas
informações em funções de padrões ou regras sejam descobertas a partir de uma
base de dados, principalmente, se tratando de informações com a capacidade para
correlacionar coisas aparentemente desvinculadas (REZENDE, 1999). Portanto, se faz
necessário o uso de softwares e ferramentas específicas, e algoritmos para efetuar
consultas sobre base de dados, onde apresentam grande quantidade de dados e
informações. Nesse contexto, são de fundamental importância, o estudo e
desenvolvimento de ferramentas de “Data Mining” mais confiáveis, que a partir da
extração de registros, obtem-se informações necessárias que auxiliem o usuário na
tomada de decisões nos mais diferentes ramos de atuação.
2. MINERAÇÃO DE DADOS (DATA MINING)
A Mineração de Dados é um processo de análise e interpretação executado por
um sistema especialista. E como analisar grandes volumes de dados e obter
informações importantes em um curto espaço de tempo? Isso é possível através do
processo de descoberta do conhecimento em banco de dados denominado KDD Knowledge Discovery in Data Bases. Este processo, que exige pesquisa em um
conjunto de dados a fim de obter-se frequências, combinações e modelos que sejam
novidade, que tenham valor agregado, e que possam ser aplicados na prática e
totalmente inteligíveis para o ser humano. (FAYYAD,1996). O processo de descoberta
do conhecimento não se resume apenas a analisar grandes bases de dados e obter
padrões, é necessário trabalhar com estas informações e transformá-las em retorno
empresarial (CARVALHO, 2005). O processo da utilização de técnicas de mineração
de dados (data mining) vem sendo bastante utilizado em diversas áreas como
finanças, economia, biologia, astronomia, análise de mercado, diagnósticos, entre
outros, mas principalmente o seu crescimento aplicado à área de Ciência da
Computação, ainda no processo do KDD pode se citar a combinação de técnicas de
aprendizado de máquina, reconhecimento de padrões, estatísticas, banco de dados e
visualização para extrair conhecimento (ou informação) de dados brutos, através da
técnica de mineração de dados. Carvalho (2001) define mineração de dados como “o
uso de técnicas automáticas de exploração de grandes quantidades de dados de
forma a descobrir novos padrões e relações que, devido ao volume de dados, não
seriam facilmente descobertos a “olho nu” pelo ser humano”.
Para que os padrões sejam descobertos, é necessário que os dados estejam
simplificados a fim de que se possa descartar aquilo que é específico e, privilegiar
aquilo que é genérico (NAVEGA,2002). Dentro do processo total de KDD, se gasta
60% do tempo na preparação dos dados e apenas 10% no processo de mineração
(CABENA, 1998). Pelo fato do KDD ser um processo, sugere que existam vários
passos. Estes passos são considerados interativos porque a maioria requer avaliação
e tomada de decisão por parte do usuário e, iterativos porque é possível, de qualquer
etapa, voltar para alguma etapa anterior até que se chegue ao resultado esperado
(GHEDINI, 2009).
De acordo com Goldschmidt (2005), a etapa de pré-processamento tem como
objetivo principal preparar os dados em questão para a utilização destes pelos
algoritmos de Data Mining. Dados bem organizados e formatados colaboram para
resultados eficientes durante a busca por conhecimento. Já na etapa de mineração de
dados é onde se inicia a busca por informações relevantes na base de dados, através
da aplicação correta dos algoritmos ainda segundo Goldschmidt (2005), o desafio no
processo de KDD está na interpretação correta dos fatos detectados durante o
processo, e também na decisão sobre que atitudes tomar perante esses fatos. Com
isso, se conclui que, apesar do KDD ser um processo altamente relevante, é
necessário um acompanhamento humano na busca por conhecimento.
Seleção de um conjunto de dados
Nesse processo identifica-se a origem dos dados e se extrai aqueles que são
imprescindíveis para uma análise inicial necessária para aplicar o processo de
mineração, para efetuar o uso de algoritmos específicos que mais se adequam aos
dados.
Pre-processamento e limpeza dos dados
Tem como finalidade garantir que os dados selecionados tenham qualidade
para que se consiga trabalhar com registros afins, para que se obtenha o
conhecimento. Os referidos dados, nesta fase possuem informações incompletas,
redundantes e ruidosas, as quais devem ser analisadas e excluídas.
Transformação
Possibilita a transformação ou consolidação dos dados no formato apropriado
para o processo de mineração.
Mineração
Nesta fase, aplicam-se os algoritmos na base de dados, para obter-se o
conhecimento desejado, podendo ser testados por todos os algoritmos para encontrar
o resultado mais satisfatório.
Encontrando assim, padrões específicos analisados
previamente no inicio da seleção de requisitos, e durante o processamento.
Execução
Os algoritmos nessa fase requer o acompanhamento de um analista de dados
e até algumas vezes, de um administrador de bancos de dados caso seja necessário
alguma alteração no modelo. O que for definido nesta etapa irá variar de acordo com
o tipo de aplicação que está sendo desenvolvida.
Interpretação e Avaliação
O processo de mineração dos dados não faria sentido se os padrões
descobertos não fossem avaliados a fim de se descobrir se as causas dos problemas
foram solucionadas ou se o objetivo da empresa foi alcançado (CARVALHO, 2005).
Esta etapa deve ser executada pelo analista de dados e pelo analista de negócios,
eventualmente poderá ser contatado também o executivo responsável para fornecer
esclarecimentos sobre as descobertas encontradas, relacionando aos objetivos do
negócio a fim de validá-las ( CABENA,1998).
Resultados do conhecimento descoberto
Esta etapa fecha o ciclo da descoberta do conhecimento e é responsável por
colocar em ação todo o conhecimento adquirido durante as etapas anteriores. O papel
do analista de negócios e do executivo responsável é tornar convincente todas as
descobertas e encontrar a melhor maneira de explorá-las. Caso se chegue à
conclusão de que as descobertas não foram suficientes para resolver o problema
apontado no início do processo, pode-se aplicar todo o ciclo novamente (
CABENA,1998).
Segundo Loria (2008), o Data Mining oferece diversos recursos para a
sociedadecomo se descreve a seguir:
- Classificação: é a técnica de Data Mining que oferece a filtragem de dados de um
banco, com o objetivo de transformar essa filtragem em informação útil para quem
está utilizando a técnica. Exemplo: visualizar quem são os alunos que deixaram de
pagar a mensalidade da faculdade e em que período esse atraso ocorre com mais
freqüência na instituição;
- Regressão: é um recurso que permite a realização de cálculos entre variáveis
dependentes e independentes. O objetivo principal da regressão é buscar resultados
visando novos resultados futuros. Exemplo: calcular a previsão de lucro líquido de uma
empresa para o mês seguinte, se baseando em uma média dos valores dos meses
anteriores;
- Segmentação: trata-se de um mecanismo com o objetivo de agrupar dados de
mesmas características. A segmentação é uma ferramenta utilizada para a
simplificação e abstração de dados. Não efetua previsões. Exemplo: selecionar os
clientes bons pagadores. Ou: selecionar os clientes maus pagadores.
- Associação: é uma técnica com o objetivo de encontrar regras de acordo com os
interesses de um cliente. Exemplo: em um site de uma loja virtual de livros, a técnica
de associação verifica o livro pesquisado pelo cliente em um primeiro momento.
Quando este cliente retornar, o sistema irá oferecer outros livros que abordam temas
semelhantes ao pesquisado por ele anteriormente;
Neste trabalho utilizou-se o ambiente explorer do WEKA, para a realização dos
testes, o weka utiliza arquivos de dados de treinamento, com formato (arff), é possível
trabalhar em uma base de dados e fazer alguns dos processos de mineração sem
precisar escrever uma linha de código, mas para isso é preciso algumas regras, como
os dados estejam pré - processados e gravados dentro de um arquivo.arff. (Attribute
Relation File Format). Onde devem ser mostradas quais variáveis são permitidas para
uma relação específica, bem como o tipo de dado de cada variável, isto é, nominal ou
valor numérico. Deverá conter uma lista de todos os atributos definindo-se o tipo do
atributo ou os valores que ele pode representar. Os valores devem estar
representados entre chaves “{}” e separados por vírgulas, a ausência de um item em
um registro deve ser atribuída pelo símbolo “?”. Para isso podemos usar programas de
planilhas eletrônicas e banco de dados os quais permitem exportar os dados em um
arquivo onde as vírgulas são os separadores. Uma vez feito isso, é necessário apenas
carregar o arquivo em um editor de texto e adicionar o nome do conjunto de dados
usando @relation nome_do_conjuto_de_dados, para cada atributo usa @attribute, e
após colocar uma linha com @data e logo em seguida os dados em si, salvando o
arquivo como texto puro com extensão ARFF. Após a formatação do arquivo, ele fica
pronto para ser analisado pela ferramenta.
@relation – usado para rotular o conjunto de dados a ser analisado.
@attribute – usado para rotular os atributos, define as características, ou seja o tipo
de cada variável : nominal, numérico, booleano.
@data – usado para identificar os dados da base. As informações devem ser
colocadas separadas por vírgulas, e cada linha representa um único registro.
AMBIENTE EXPLORER – CLASSIFICAÇÃO
Após a abertura da base de dados, é utilizado o ambiente de classificação,
onde acontece a escolha do classificador, ou seja, o algoritmo a ser executado e a
técnica de validação. Feito as escolhas dos requisitos, inicia-se o processo de
execução, onde ao final do processo o WEKA disponibiliza os resultados em
porcentagem de erro e acerto, neste, caso representa os erros e acertos para
classificação de certo tipo de respiração.
O Weka é formado por um conjunto de pacotes: Select atributtes , classify,
cluster, associate e estimators. Cada pacote é formado por vários algoritmos que
possuem funções específicas de acordo com as tarefas de Data Mining.
A classificação é uma das técnicas mais utilizadas de mineração de dados,
simplesmente porque é uma das mais realizadas tarefas humanas no auxílio à
compreensão do ambiente em que se vive, sendo, também, a tarefa mais estudada
em KDD. As tarefas de classificação têm inúmeras aplicações, incluindo detecção de
fraudes, alvos comerciais, fabricação e diagnóstico médico (HAN E KAMBER, 2006).
O princípio da tarefa de classificação é descobrir algum tipo de relacionamento
entre os atributos preditivos e o atributo objetivo, de modo a descobrir um
conhecimento que possa ser utilizado para prever a classe de uma tupla
desconhecida, ou seja, que ainda não possui uma classe definida.
ALGORITMOS PARA CLASSIFICAÇÃO DE DADOS
Existe uma grande variedade de algoritmos para classificação de dados tais
como bayes, functions, rules, trees, entre outros. Neste trabalho, serão testados todos
os que são instalados junto como Weka original, com a finalidade de obter o melhor
resultado possível e também, o algoritmo de pior classificação para essa base de
dados. A citação dos algoritmos deve-se ao fato dos mesmos serem populares e
muito utilizados no meio acadêmico para mineração de dados e por fazer parte do
pacote de ferramentas Weka.
ORIGEM DOS DADOS
Segundo MATTAR,( 2002), foram avaliados 73 casos de crianças de ambos os
sexos, com idade entre 3 e 6 anos, para verificar a influência da respiração bucal
crônica sobre o crescimento e desenvolvimento dentofacial em idades mais precoses.
Após o diagnóstico otorrinolaringológico quanto à respiração, 44 crianças respiradoras
bucais e 29 respiradoras nasais foram comparadas no que se refere ao padrão
morfológico da face (analisado por meio de radiografia cefalométrica lateral) e
características oclusais (analisadas nos modelos de estudo).
Através dos dados coletados, e dos resultados obtidos usou-se essa base de
dados pronta para aplicação de mineração de dados e algoritmos de classificação.
Cada um dos 73 registros dessa base (total de casos coletados) com 5 atributos como
o ipm (inclinação do plano mandibular ), arm (a altura do ramo da mandíbula), tmdf (o
tipo morfológico dolicofacial), dim (distâncias intermolares),e bucal são os registros de
entrada, sendo 4 valores numéricos e um
1 nominal para apresentar a saída
esperada. Importado a base de dados para um arquivo com extensão .cvs, onde os
dados foram separados por virgula no caso (usando a ferramenta Microsoft ®Excel),
após enviado para um editor de texto simples, substituindo o ponto e virgula que
separava os dados pela virgula para depois importar para O weka e salvar com a
extensão .arff. E assim poder trabalhar com os algoritmos de classificação em cima
dos dados.
DISCUSSÃO:
O objetivo deste trabalho foi avaliar uma base de dados contendo
informações sobre padrões esqueléticos e características oclusais de crianças
respiradoras bucais e nasais, a fim de determinar a possibilidade de criação de um
padrão que possa diagnosticar respiradores bucais ou respiradores nasais, a partir dos
padrões definidos pelo software.
Os padrões esqueléticos utilizados neste trabalho foram basicamente a
inclinação do plano mandibular (IPM), a altura do ramo da mandíbula (ARM), o tipo
morfológico dolicofacial (TMDF), e como características oclusais, foram utilizadas as
distâncias intermolares (DIM).
RESULTADOS:
Com testes realizados em todos os algoritmos de classificação incorporados
ao software Weka, obteve-se melhor resultado no Algoritmo J48, como descrito a
seguir:
O software classificou a base de dados carregada com 73 pacientes sendo
que 44 clinicamente diagnosticados como respiradores bucais e 29 clinicamente
diagnosticados como respiradores nasais como controle. O software conseguiu
classificar corretamente 55 casos, sendo 43 como respiradores bucais e 12 como
respiradores nasais, como podemos observar na matriz de confusão da Figura 1, o
que dentro dos respiradores bucais, é um resultado excelente, pois condiciona que
97,72 % dos casos classificados estão dentro de um padrão de evolução, e em
apenas 2,28 %, não pode ser definido um padrão de respirador bucal.
No caso dos respiradores nasais, podemos verificar que dos 29 clinicamente
diagnosticados como respiradores nasais, apenas 41,38 % pode ser incluído dentro de
um padrão, deixando 58,62 % dos respiradores nasais sem estarem incluídos no
padrão detectado, e 18 casos não se enquadram nem como respiradores bucais, nem
como respiradores nasais.
Os piores resultados foram obtidos com o Algoritmo IBK, como segue:
O software também foi aplicado à base de dados carregada com 73
pacientes sendo que 44 clinicamente diagnosticados como respiradores bucais e 29
clinicamente diagnosticados como respiradores nasais como controle. O software
conseguiu classificar corretamente 35 casos , sendo 24 como respiradores bucais e 11
como respiradores nasais, como podemos observar na matriz de confusão da Figura
2, o resultado não pode ser considerado bom, pois indica que 54,55 % dos casos
classificados estão dentro de um padrão de evolução, e em 45,45 %, não pode ser
definido um padrão de respirador bucal.
No caso dos respiradores nasais, podemos verificar que dos 29 clinicamente
diagnosticados como respiradores nasais, apenas 37,93 % pode ser incluído dentro de
um padrão, deixando 62,07 % dos respiradores nasais sem estarem incluídos no
padrão detectado, e 38 casos não se enquadram nem como respiradores bucais, nem
como respiradores nasais.
CONCLUSÕES:
Os algoritmos de classificação são muito distintos entre si, e se adequam a
determinados tipos de dados. Por este motivo, uma mesma fonte de informação,
aplicado a diferentes algoritmos, se traduz em diferentes resultados. Cabe ao
pesquisador escolher que tipo de algoritmo deve ser usado em determinada base para
obtenção das melhores classificações.
O Algoritmo J48 mostrou-se adequado para ser utilizado nesta pesquisa,
obtendo os melhores resultados dentre os disponibilizados pelo software Weka.
REFERÊNCIAS BIBLIOGRÁFICAS
CABENA, P. et al. Discovering Data Mining from concept to implementation. New
Jersey, USA: Prentice Hall Ptr, 1998.
CARVALHO, L. A.V. Datamining: A Mineiração de Dados no Marketing, Medicina,
Economia, Engenharia e Administração. São Paulo: Editora Érica Ltda, 2001.
CARVALHO, L. A. V. Datamining : A Mineração de Dados no Marketing, Medicina,
Economia, Engenharia e Administração. Rio de Janeiro: Ciência Moderna, 2005.
FAYYAD, U.
Discovery
Piatetsky-Shapiro, G.
in
Smyth, P. From Data Mining to Knowledge
Databases.
1996.
Disponível
em:
<http://www.kdnuggets.com/gpspubs/aimag-kdd-overview-1996-Fayyad.pdf.>
Acesso
em 02 out. 2007.
GOLDSCHMIDT, Ronaldo; PASSOS, Emanuel. Data Mining: um guia prático. Rio de
Janeiro: Elsiever, 2005.
HAN, J. KAMBER, M. Data Mining - Concepts and Techniques. 2 ed. Nova York:
Morgan Kaufmann, 2006.
LIU, H. MOTODA, H. Computational Methods of Feature Selection. Chapman &
Hall/CRC. 2008.
LÓPEZ, J. M. M. HERRERO, J. G. Técnicas de analisis de datos: aplicaciones
prácticas utilizando Microsoft Excel y Weka. Apostila técnicas de análises de
dados.
S.l,
2004.
160
p.
Disponível
em:
<http://galahad.plg.inf.uc3m.es/%7Edocweb/ad/transparencias/apuntesAnalisisDatos.p
df>. Acesso em 21 Nov. 2007.
LORIA, J. Data Mining no SQL Server 2008. 2008. Disponível em:
<http://www.microsoft.com.br/kitbi/arquivos/pt-br%5CDataMining_BRZ.pdf>. Acesso
em: 09 dez. 2009.
MARTINS, A. C. COSTA, P. D. Estudo Comparativo de Três Algoritmos de
Machine Learning na Classificação de Dados Electrocardiográficos. Porto. 2009.
Disponível em: <http://mimwiki.med.up.pt/images/0/04/Classificacaodadoselectrocardiograficos-paper.pdf>. Acesso em: 16 jun. 2010.
MATTAR, S. E. M. Padrão esquelético e características oclusais de crianças
respiradoras bucais e nasais: aplicação em Odontopediatria [dissertação].
[Ribeirão Preto (SP)]: Faculdade de Odontologia de Ribeirão Preto, Universidade de
São Paulo; 2002. 131 p.: il.; 30 cm.
NAVEGA, S. Princípios Essenciais do Data Mining. São Paulo, SP: Anais do
Infoimagem, 2002. Disponível em: <http://www.intelliwise.com/reports/i2002.pdf>.
Acesso em: 30 nov. 2009.
OLIVEIRA, F. L. de Utilização de algoritmos simbólicos para a identificação do
número de caroços do fruto Pequi, In: IV Encontro de estudantes de informática do
estado de Tocantins, 2002, Palmas. Encontro de Estudantes de Informática do
Tocantins – Ecoinfo. Palmas, 2002. p. 34-43.
OLIVEIRA, A. M. de; SMIDERLE, A. Mineração de dados: um estudo de caso de
concessão de crédito explorando o software Weka. Revista de Informática Mater
Dei, Pato Branco, Paraná : v.2, n.2, p.17-22, 2005.
REZENDE, D. A. ENGENHARIA DE SOFTWARE E SISTEMAS DE INFORMAÇÃO.
Brasport - Rio de Janeiro - 1999 - 324p.
WITTEN, I. H. FRANCK, E. Data Mining: Practical Machine Learning Tools and
Techniques with Java Implementations. Hamilton, New Zealand: Morgan Kaufmann
Publishers, 2000. p. 265-320.
WITTEN, I. H. FRANK E. Data Mining: Practical Machine Learning Tools and
Techniques with Java Implementations. San Francisco, 1999.
WEKA. Disponível em: http://www.cs.waikato.ac.nz/ml/weka/. Acesso em: 20 Dez.
2010.
Download