Thiago Ribeiro Tavares UTILIZAÇÃO DE TÉCNICAS DE INTELIGÊNCIA ARTIFICIAL PARA CLASSIFICAÇÃO DE CRIANÇAS CARDIOPATAS EM BASE DE DADOS DESBALANCEADAS Dissertação de Mestrado Universidade Federal de Pernambuco [email protected] www.cin.ufpe.br/~posgraduacao RECIFE 2013 Universidade Federal de Pernambuco Centro de Informática Pós-graduação em Ciência da Computação Thiago Ribeiro Tavares UTILIZAÇÃO DE TÉCNICAS DE INTELIGÊNCIA ARTIFICIAL PARA CLASSIFICAÇÃO DE CRIANÇAS CARDIOPATAS EM BASE DE DADOS DESBALANCEADAS Trabalho apresentado ao Programa de Pós-graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco como requisito parcial para obtenção do grau de Mestre em Ciência da Computação. Orientador: Adriano Lorena Inácio de Oliveira RECIFE 2013 Catalogação na fonte Bibliotecária Joana D’Arc L. Salvador, CRB 4-572 Tavares, Thiago Ribeiro. Utilização de técnicas de inteligência artificial para classificação de crianças cardiopatas em base de dados desbalanceadas / Thiago Ribeiro Tavares. – Recife: O Autor, 2013. 107 f.: fig., tab. Orientador: Adriano Lorena Inácio de Oliveira. Dissertação (Mestrado) - Universidade Federal de Pernambuco. CIN. Ciência da Computação, 2013. Inclui referências e apêndice. 1. Inteligência artificial. 2. Cardiologia pediátrica. 3. Mineração de dados (computação) I. Oliveira, Adriano Lorena Inácio de (orientador). II. Título. 006.3 (22. ed.) MEI 2014-87 Dissertação de Mestrado apresentada por Thiago Ribeiro Tavares à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco, sob o título “Utilização de técnicas de Inteligência Artificial para classificação de crianças cardiopatas em base de dados desbalanceadas” orientada pelo Prof. Adriano Lorena Inácio de Oliveira e aprovada pela Banca Examinadora formada pelos professores: ———————————————————————– Prof. Cleber Zanchettin Centro de Informática / UFPE ———————————————————————– Prof. Wellington Pinheiro dos Santos Departamento de Engenharia Biomédica / UFPE ———————————————————————– Prof. Adriano Lorena Inacio de Oliveira Centro de Informática / UFPE RECIFE 2013 Essa dissertação é a prova de que querer é poder. Dedico essa conquista aos meus pais que me educaram e sempre investiram na minha educação, acreditando no meu potencial. Agradecimentos Eu gostaria de agradecer a DEUS por tudo que tem feito na minha vida e por ter guiado meus passos até aqui. Eu considero a gratidão um dos sentimentos mais nobres que um ser humano pode ter. Por isso, sempre procuro exaltar e agradecer MUITO às pessoas que de alguma forma me ajudaram em qualquer situação e nesse trabalho não poderia ser diferente. Eu dedico e agradeço MUITO as seguintes pessoas: Aos meus pais, pela dedicação e preocupação comigo para que eu me tornasse uma pessoa cada vez melhor, trabalhando, estudando e conquistado meu espaço. Ao meu orientador, Adriano Lorena Inácio de Oliveira que acreditou no meu potencial, comprou a ideia desde o início e me orientou durante todo o mestrado. À querida cientista, professora, orientadora, coordenadora, médica, Dra. Sandra da Silva Mattos, grande amiga e uma das pessoas mais excepcionais que tive a oportunidade de conhecer. Participou de tudo e como profissional da área, me deu o feedback necessário para ajustar e melhorar meu trabalho. Aos queridos amigos Dr. Felipe Mourato, Carol Paim e Renata Grigório que sempre me apoiaram e tiveram uma participação gigantesca na revisão desse trabalho. Aos demais amigos do Círculo do Coração de Pernambuco (Dra. Rossana Severi, Dra. Lúcia Moser, Dra. Alyne Raneci, Dra. Vanessa Pacífico, Dra. Candyce Cardoso, Dra. Juliana Landim, Jaílson, Dra. Thamine Hatem, Dra. Juliana Soares, Dr. Cláudio Regis) Aos amigos do Serviço Federal de Processamento de Dados que sempre me apoiaram com palavras de conforto e confiança. E por último, contudo não menos importante ao meu Amor, namorada, amiga, colega de trabalho e paz em pessoa, Ana Elizabeth, que me apoiou em todos os momentos além de toda paciência e compreensão na minha ausência para trabalhar, escrever e concluir essa pesquisa. Aninha, EU TE AMO! “. . . but if you never try, you’ll never know. . . ” —COLD PLAY (Fix You) Resumo As doenças cardiovasculares são as que mais matam no Brasil e no mundo. Dessas, a cardiopatia congênita, uma malformação cardíaca presente desde o nascimento, acomete 8 a 10 em cada 1000 nascidos vivos e aproximadamente 1/3 deles necessitam de tratamento já no primeiro ano de vida. Inúmeros trabalhos demonstram que quanto antes for estabelecido o diagnóstico maiores serão as chances de sucesso no tratamento. O atendimento de crianças com suspeita de cardiopatia gera uma grande quantidade de informação, porém a diferenciação entre sinais e sintomas normais ou patológicos logo no início, por exemplo, na marcação da consulta, pode ser aspecto fundamental para agilizar o atendimento. Há algum tempo a Inteligência Artificial, mais especificamente a subárea de Mineração de Dados, tem sido utilizada como ferramenta de suporte à decisão médica em diversas especialidades, inclusive na cardiologia. Apesar da maioria das aplicações nesse contexto utilizarem Árvore de Decisão para classificação devido ao seu poder de interpretação e extração de regras, Máquinas de Vetor de Suporte (Support Vector Machines - SVM) têm demonstrado, em várias aplicações, um maior poder de generalização apresentando melhores resultados. No entanto, esse tipo de algoritmo, caixa-preta, não produz um conhecimento explícito de modo que um médico, especialista no domínio, possa interpretá-lo. A proposta desse trabalho é o desenvolvimento de um sistema de apoio à decisão médica que auxilie na detecção de cardiopatias em crianças, a partir de dados iniciais, como gênero, peso, altura e presença de sopros, com o objetivo de priorizar o seu atendimento médico. Técnicas para lidar com bases de dados desbalanceadas, tais como SMOTE e SVM com pesos foram utilizadas a fim de melhorar os resultados com relação a classificadores convencionais. Além disso, foi possível realizar a extração de regras a partir dos resultados obtidos pela SVM. Segundo os especialistas, os resultados obtidos viabilizam a utilização do sistema de apoio à decisão que pode ser incorporado à prática clínica para melhorar a qualidade dos serviços prestados. Palavras-chave: Mineração de Dados em Medicina, SVM com pesos, Bases de Dados Desbalanceadas, SMOTE, Árvore de Decisão, Sistemas de Apoio a Diagnóstico Abstract Heart disease is the first cause of mortality in Brazil as well as in the World. Among them, the congenital form, which is present at birth, accounts for 8 to 10 in every 1000 life births, and approximately 1/3 of these babies require treatment during the first year of life. Innumerous works have shown that the earlier the diagnosis the better the chances of success from treatment. The care for children with suspected heart problems generates a huge number of data, however the differentiation between normal and abnormal signs or symptoms at an early stage, such as during the appointment schedule, could be an important step to speed up the child‘s initial consultation. For some time now, Artificial Intelligence, more so its subarea of Data Mining, has been used as a support tool for medical decision in different medical specialties, including Cardiology. Despite the fact the most applications within this context use Decision trees to classify due to their interpreting and rule extraction power, in various applications, Support Vector Machines (SVM) have demonstrated a greater power to generalization thus producing better results. However, this type of black-box algorithm, does not produce an explicit knowledge thus requiring a physician, specialist in the field, to interpret it. Another important challenge to be overcome is the unbalanced type databases often found in the medical field. The purpose of this paper is the development of a medical decision support system to help detect cardiac problems in children from their initial data, such as gender, weight, heart and the presence of a heart murmur, with the object of prioritizing their medical care. Techniques to deal with unbalanced databases, such as SMOTE and SVM with weights were used in order to improve results in relation to conventional classifiers. Besides that, it was possible to perform rule extraction from results obtained with SVM. According to medical specialists, the results obtained made it possible to use the decision support system and it can be added to clinical practice to improve the quality of services delivered. Keywords: SMOTE, Data Mining in Medicine, SVM Weighted, Unbalanced Dataset, Decision Tree, Support Decision Systems Lista de Figuras 2.1 Sopro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Fases do processo CRISP-DM . . . . . . . . . . . . . . . . . . . . . . . . . . Boxplot para o atributo Peso . . . . . . . . . . . . . . . . . . . . . . . . . . . Boxplot para o atributo Altura . . . . . . . . . . . . . . . . . . . . . . . . . . Boxplot para o atributo Frequência Cardíaca . . . . . . . . . . . . . . . . . . . Laudo de um eco cardiograma NORMAL . . . . . . . . . . . . . . . . . . . . Laudo de um eco cardiograma ANORMAL . . . . . . . . . . . . . . . . . . . Distribuição do atributo Idade(anos) pelo resultado do exame de ECO . . . . . Distribuição do atributo Peso para cada faixa etária pelo resultado do exame de ECO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.9 Distribuição do atributo Altura para cada faixa etária pelo resultado do exame de ECO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.10 Distribuição do atributo IMC para cada faixa etária pelo resultado do exame de ECO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.11 Distribuição do atributo Superfície Corporal para cada faixa etária pelo resultado do exame de ECO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.12 Distribuição do atributo Frequência Cardíaca para cada faixa etária pelo resultado do exame de ECO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 35 36 36 38 38 42 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 Separação Linear . . . . . . . . . . . . . . . . . . . . Separação Linear . . . . . . . . . . . . . . . . . . . . Ciclo do treinamento . . . . . . . . . . . . . . . . . . Árvore de Decisão com teste de dois atributos (X e Y) . Exemplo para geração de exemplos sintéticos . . . . . Matriz de Confusão - Conceito . . . . . . . . . . . . . Gráfico de f.d.a para cáculo da distância de KS . . . . Representação da seleção efetuada pela regra . . . . . . . . . . . . . 54 55 57 61 62 63 66 66 5.1 5.2 5.3 5.4 5.5 Demonstração gráfica do procedimento de validação cruzada usando 10 folds . Curva ROC do modelo de Árvore de Decisão no conjunto de teste . . . . . . . Gráfico de KS do modelo Árvore de Decisão no conjunto de teste . . . . . . . Curvas ROC dos modelos de Árvore de Decisão aplicados ao conjunto de testes Gráfico com as distâncias de KS dos modelos de Árvore de Decisão aplicados ao conjunto de testes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curva ROC do modelo SVM no conjunto de Teste . . . . . . . . . . . . . . . . 69 71 71 74 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 5.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 46 47 49 50 74 77 5.7 5.8 5.9 5.10 5.11 5.12 5.13 5.14 5.15 5.16 Gráfico de KS do modelo SVM no conjunto de Teste . . . . . . . . . . . . . . Curvas ROC dos modelos de SVM aplicados ao conjunto de testes . . . . . . . Gráfico com as distâncias de KS dos modelos de SVM aplicados ao conjunto de testes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curva ROC do modelo SVM no conjunto de Teste para o Experimento 3 . . . . Gráfico de KS do modelo SVM no conjunto de Teste para o Experimento 3 . . Curva ROC do modelo SVM com pesos + MLP aplicado ao conjunto de teste . Gráfico com a distância de KS do modelo SVM com pesos + MLP aplicado ao conjunto de teste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gráfico de boxplot dos valores de sensibilidade (k-fold) . . . . . . . . . . . . . Gráfico de boxplot dos valores de especificidade (k-fold) . . . . . . . . . . . . Gráfico de boxplot dos valores de acurácia (k-fold) . . . . . . . . . . . . . . . 77 80 81 84 84 86 87 90 90 91 A.1 Tabela para identificação do percentil para os homens . . . . . . . . . . . . . . 106 A.2 Tabela para identificação do percentil para as mulheres . . . . . . . . . . . . . 107 Lista de Tabelas 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 4.1 4.2 5.1 5.2 5.3 5.4 Número e porcentagem de Motivo de atendimento na UCMF, no período de Janeiro de 2010 a Outubro de 2012. . . . . . . . . . . . . . . . . . . . . . . . Dicionário de dados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Qualidade dos Dados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Termos utilizados nas conclusões dos laudos de ecocardiograma quando o resultado do Ecocardiograma é normal. . . . . . . . . . . . . . . . . . . . . . . . . Termos utilizados nas conclusões dos laudos de ecocardiograma quando alguma cardiopatia é encontrada no paciente. . . . . . . . . . . . . . . . . . . . . . . . Número e porcentagem dos resultados dos exames de ECO realizados na UCMF, no período de Janeiro de 2010 à Outubro de 2012. . . . . . . . . . . . . . . . . Número e porcentagem de resultados dos exames de ECO após a exclusão dos registros não identificados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Número de pacientes e porcentagem por Sexo e Resultado do exame de ecocardiograma. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Regra de definição da Faixa Etária do Paciente. . . . . . . . . . . . . . . . . . Número de pacientes e porcentagem por Faixa Etária e Resultado do exame de ecocardiograma. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Número e porcentagem de pacientes por sexo. . . . . . . . . . . . . . . . . . . Número de pacientes e porcentagem por Sexo e Resultado do exame de ecocardiograma. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Atributos de entrada utilizados. . . . . . . . . . . . . . . . . . . . . . . . . . . Divisão do banco de dados para realização dos experimentos. . . . . . . . . . . Resultados obtidos ao tentar efetuar o balanceamento utilizando um modelo de SVM, incrementando o parâmetro C. . . . . . . . . . . . . . . . . . . . . . . . Conjunto de treinamento após a aplicação de SVM como pré-processador nas bases de dados de Câncer, Diabetes e Cardiologia Pediátrica. . . . . . . . . . . Parâmetros do Algoritmo Genético para a realização do E1. . . . . . . . . . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento desbalanceado. . . . Matriz de confusão para o modelo de Árvore de Decisão considerando o melhor ponto de operação da curva ROC. . . . . . . . . . . . . . . . . . . . . . . . . Conjuntos de Treinamento após a aplicação do SMOTE. . . . . . . . . . . . . 30 33 34 39 40 40 41 41 42 42 43 44 51 51 59 60 69 70 71 72 5.5 5.6 5.7 5.8 5.9 5.10 5.11 5.12 5.13 5.14 5.15 5.16 5.17 5.18 5.19 5.20 5.21 5.22 Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento resultante do SMOTE 50%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento resultante do SMOTE 100%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento resultante do SMOTE 150%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento resultante do SMOTE 200%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resultados obtidos no conjunto de teste quando utilizado o melhor ponto de operação da curva ROC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resultados obtidos no conjunto de teste quando utilizado como melhor ponto de operação a distância de KS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM para o conjunto de treinamento desbalanceado. . . . . . . . . . . Matriz de confusão para o modelo SVM considerando o melhor ponto de operação da curva ROC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM com o conjunto de treinamento resultante do SMOTE 50%. . . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM com o conjunto de treinamento resultante do SMOTE 100%. . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM com o conjunto de treinamento resultante do SMOTE 150%. . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM com o conjunto de treinamento resultante do SMOTE 200%. . . . Resultados obtidos no conjunto de teste quando utilizado como melhor ponto de operação a curva ROC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resultados obtidos no conjunto de teste quando utilizado como melhor ponto de operação a distância de KS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resumo da execução do algoritmo genético para encontrar os melhores parâmetros do SVM com pesos no conjunto de treinamento desbalanceado. . . . . . . Matriz de confusão para o modelo SVM considerando o melhor ponto de operação da curva ROC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resultado do balanceamento utilizando SVM com pesos como balanceador. . . Matriz de confusão para o modelo SVM com pesos + MLP. . . . . . . . . . . . 72 72 73 73 73 75 76 78 79 79 79 80 81 82 83 85 86 87 5.23 Resultado do teste de hipótese de normalidade da distribuição com nível de significância de 0,05. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.24 Resumo das médias (d.p.) de cada métrica por classificador. . . . . . . . . . . 5.25 Teste de Bonferroni comparando a Sensibilidade entre os grupos. . . . . . . . . 5.26 Teste de Bonferroni comparando a Especificidade entre os grupos. . . . . . . . 5.27 Teste de Bonferroni comparando a Acurácia entre os grupos. . . . . . . . . . . 5.28 Regras geradas a partir do conjunto criado com as classificações corretas da SVM com pesos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 89 92 92 92 94 Sumário 1 Introdução 1.1 Caracterização do Problema . . 1.2 Justificativa e Motivação . . . . 1.2.1 Trabalhos Relacionados 1.3 Objetivos . . . . . . . . . . . . 1.3.1 Objetivo Geral . . . . . 1.3.2 Objetivos Específicos . . 1.4 Estrutura da Dissertação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Doenças Cardíacas 2.1 Importância das doenças cardiovasculares 2.2 Doenças cardiovasculares na infância . . 2.3 Cardiopatias adquiridas na Infância . . . . 2.4 Cardiopatias congênitas . . . . . . . . . . 2.5 Importância do diagnóstico . . . . . . . . 2.6 Anamnese e exame físico . . . . . . . . . 2.7 A ausculta cardíaca . . . . . . . . . . . . 2.8 Sopros . . . . . . . . . . . . . . . . . . . 2.9 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Preparação dos dados 3.1 CRoss Industry Standard Process for Data Mining (CRISP-DM) . . . . . . 3.1.1 Entendimento do negócio . . . . . . . . . . . . . . . . . . . . . . 3.1.1.1 UCMF . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1.2 Registro das informações dos pacientes . . . . . . . . . . 3.1.1.3 Definição dos objetivos do projeto de mineração de dados 3.1.2 Entendimento dos Dados . . . . . . . . . . . . . . . . . . . . . . . 3.1.2.1 Banco de Dados Clínico . . . . . . . . . . . . . . . . . . 3.1.2.2 Banco de dados de Sopro Cardíaco . . . . . . . . . . . . 3.1.2.3 Dicionário de dados . . . . . . . . . . . . . . . . . . . . 3.1.2.4 Qualidade dos Dados . . . . . . . . . . . . . . . . . . . 3.1.3 Preparação dos Dados . . . . . . . . . . . . . . . . . . . . . . . . 3.1.3.1 Atributo Alvo . . . . . . . . . . . . . . . . . . . . . . . 3.1.3.2 Novo atributo: Idade . . . . . . . . . . . . . . . . . . . . 3.1.3.3 Novo atributo: Faixa Etária . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 16 17 17 20 20 20 20 . . . . . . . . . 21 21 21 22 23 23 24 25 26 26 . . . . . . . . . . . . . . 27 27 28 29 29 29 30 30 32 32 33 37 37 39 41 3.2 3.3 3.1.3.4 Atributo Sexo . . . . . . . . . . . . . . 3.1.3.5 Atributo Peso . . . . . . . . . . . . . . 3.1.3.6 Atributo Altura . . . . . . . . . . . . . 3.1.3.7 Novo atributo: Índice de Massa Corporal 3.1.3.8 Novo atributo: Percentil de IMC . . . . 3.1.3.9 Novo atributo: Superfície Corporal . . . 3.1.3.10 Atributo Frequência Cardíaca . . . . . . 3.1.3.11 Outliers e Normalização dos Dados . . . Divisão dos dados . . . . . . . . . . . . . . . . . . . . . . 3.2.1 Implantação . . . . . . . . . . . . . . . . . . . . . Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Modelagem e Métodos de Avaliação 4.1 Modelagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 SVM - Support Vector Machines . . . . . . . . . . . . . 4.1.2 SVM com pesos (Weighted) . . . . . . . . . . . . . . . 4.1.3 SVM + MLP . . . . . . . . . . . . . . . . . . . . . . . 4.1.3.1 SVM + MLP: Base de Dados Utilizada . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.3.2 SVM + MLP em base de dados médicas . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.4 SVM com pesos + MLP . . . . . . . . . . . . . . . . . 4.1.5 Árvore de Decisão . . . . . . . . . . . . . . . . . . . . 4.1.6 PART . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.7 Algoritmos Genéticos . . . . . . . . . . . . . . . . . . 4.1.8 SMOTE - Synthetic Minority Over-sampling Technique 4.2 Avaliação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 ROC - Receiver Operating Characteristics . . . . . . . 4.2.2 Distância de KS - Kolmogorov-Smirnov . . . . . . . . . 4.2.3 Lift . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . 5 Avaliação dos Resultados 5.1 Experimentos . . . . . . . . . . . . . 5.1.1 Árvore de Decisão . . . . . . 5.1.2 Árvore de Decisão + SMOTE 5.1.3 SVM . . . . . . . . . . . . . 5.1.4 SVM + SMOTE . . . . . . . 5.1.5 SVM com pesos (Weighted) . 5.1.6 SVM com pesos + MLP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 44 45 46 47 48 48 49 50 51 51 . . . . 53 53 53 56 57 . . . . . . . . 58 . . . . . . . . . . . . . . . . . . . . . . 59 59 60 61 61 62 63 63 65 65 67 . . . . . . . 68 68 69 70 76 79 82 85 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.2 5.3 5.4 Comparação dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . Extração de Regras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Considerações Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 92 95 6 Conclusões 6.1 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 99 99 Referências 100 Apêndice 105 A Percentil IMC 106 A.1 Percentil para os homens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 A.2 Percentil para as mulheres . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 16 1 Introdução Porque onde há um desejo, há um caminho. . . —CÍRCULO DO CORAÇÃO DE PERNAMBUCO O objetivo desse capítulo é introduzir o presente trabalho no âmbito da área de inteligência computacional para classificação de crianças cardiopatas. Inicialmente o trabalho é contextualizado, abordando as pesquisas realizadas na área e em seguida são apresentadas as justificativas e motivações. Na sequência, os objetivos gerais e específicos são abordados. Por fim, é apresentada a estrutura da dissertação. 1.1 Caracterização do Problema A medicina, além de ser bastante complexa, ainda não é totalmente entendida em todos os seus aspectos, diferente de outras áreas técnicas conhecidas (HORN, 2001). A incidência mundial de morbidade e mortalidade por doenças cardíacas é bem conhecida. Doenças cardiovasculares são as que mais matam no Brasil e no mundo (The world health report, 2010). Muitos instrumentos e métodos diferentes são desenvolvidos e diariamente utilizados para analisar o comportamento cardíaco. O diagnóstico de doenças cardíacas é suspeitado pela história do paciente e informações coletadas no exame físico. Tal diagnóstico é confirmado através de exames como o eletrocardiograma (ECG) e o ecocardiograma (ECO). Na maioria dos casos, e principalmente em crianças, para que um cardiologista chegue a alguma conclusão sobre a gravidade ou não de um paciente com sintomas que indiquem a presença de uma doença do coração, faz-se necessário a realização do ECG. Entretanto, nem sempre esse recurso está disponível para ser utilizado e agilizar o tratamento do paciente, principalmente se for levado em consideração as deficiências existentes nos sistemas de saúde de alguns países onde muitas vezes faltam cardiologistas capacitados de plantão nas unidades de emergência pediátrica. Essa situação pode levar ao atraso no atendimento do paciente além de consequências graves e potencialmente evitáveis. As cardiopatias congênitas (CC) acometem cerca de 8/1000 de recém-nascidos e quando 17 1.2. JUSTIFICATIVA E MOTIVAÇÃO presentes, aproximadamente 1/3 desses neonatos precisam de intervenção cirúrgica no primeiro mês de vida (BEGUM et al., 2008). Quanto mais precoce for a intervenção num neonato com alguma CC, maior a probabilidade do sucesso no tratamento da respectiva doença. O sopro cardíaco (SC) é o sinal de alerta mais comum para a cardiopatia na infância. Em um estudo realizado em Israel (REIN AJ OMOKHODION SI, 2000), constatou-se que 86% dos neonatos que apresentam sopro cardíaco nos primeiros dias de vida, têm alguma doença cardíaca estrutural. Já outro estudo (ANISWORTH S. WYLLIE JP., 1999) mostrou que cerca de 44% das malformações apresentadas na infância podem ser detectadas através de um exame neonatal e quando este é feito, identificando a presença de um SC, há a probabilidade de 54% de haver malformação cardíaca originando alguma cardiopatia. Logo, a presença ou ausência de um sopro cardíaco num neonato não implica diretamente a presença ou ausência de uma cardiopatia. Um sopro, portanto, pode ser observado em indivíduos completamente normais e a definição de quais sopros são normais e quais são patológicos é o aspecto mais importante na condução inicial da criança com suspeita de cardiopatia. 1.2 Justificativa e Motivação Para que haja um maior entendimento dos dados na medicina, a Inteligência Artificial (IA) tem se mostrado como uma área da Ciência da Computação na busca de descobertas e classificação, sendo a Mineração de Dados, subárea da IA, uma das mais utilizadas para criação de ferramentas de suporte à decisão médica. A importância da detecção precoce da doença cardíaca está relacionada diretamente às complicações que os pacientes, principalmente as crianças, podem ter. O tratamento, quando iniciado o mais cedo possível, poderá ser menos oneroso para o paciente podendo evitar algum procedimento ou até mesmo uma intervenção cirúrgica. Além disso, quando a situação do paciente se agrava, há um aumento na complexidade dos precedimentos pré e pós-operatório. Para tentar atingir esse objetivo, foi feita uma investigação para tentar identificar as técnicas e classificadores que melhor se adaptam ao problema, dado às restrições de atributos de entrada e desbalanceamento dos dados. 1.2.1 Trabalhos Relacionados Diversos trabalhos têm sido realizados com a utilização de técnicas de inteligência artificial para resolver problemas na área médica ou, pelo menos, ajudar o especialista na tomada de decisão. Ainda em 1994 as Redes Neurais Artificiais (RNAs) e Redes de Função de Base Radial (RFB) foram utilizadas para detecção de doença arterial coronariana (DORFFNER; PORENTA, 1994). Nesse trabalho os dados de leitura de exames de angiografia foram utilizados como atributos de entrada do algoritmo de aprendizado. Como contribuição, ficou registrado nesse 18 1.2. JUSTIFICATIVA E MOTIVAÇÃO trabalho que as Redes Neurais Multilayer Perceptron (MLP) podem ser úteis para o auxílio à tomada de decisão na medicina. Em 1997, uma equipe de pesquisadores brasileiros (Rabelo Júnior, et al., 1997) com o apoio do CNPQ, FINEP e IBM, criaram um sistema especialista baseado em regras cujo o objetivo principal foi auxiliar médicos sem especialização em cardiologia no diagnóstico de infarto agudo do miocárdio, indicando a necessidade de internação em uma unidade de saúde especializada em cardiologia. Como atributos de entrada no sistema, além de dados básicos do paciente tais como idade e sexo, também foram utilizadas informações clínicas dos pacientes como sintoma, tipo de dor, local da dor, intensidade da dor, fatores de risco, leitura de pulsos, ausculta, temperatura, e valores registrados no exame de eletrocardiograma. Já em 2004, as RNAs foram utilizadas em conjunto com Algoritmos Genéticos (AGs) para tentar predizer a existência de pneumonia adquirida em pacientes com queixas respiratórias (HECKERLING et al., 2004). AGs foram utilizados para criar cromossomos binários com genes que representavam os parâmetros de RNA, incluindo o número de camadas escondidas, número de nós nas camadas escondidas, taxa de aprendizagem e outros parâmetros da rede. Para medir a precisão do classificador foi utilizado o valor da Área sob a Curva ROC(AUC). Os resultados obtidos no grupo de teste (AUC=0,87) do classificador foram melhores do que os resultados obtidos no grupo de treinamento (AUC=0,93) e essa diferença ocorreu porque, segundo o autor, os dados dos pacientes que foram separados para testar a precisão do classificador tinham uma probabilidade maior de terem doenças respiratórias por conta da localização geográfica onde tais pacientes moravam. Além de Regras, RNAs e AGs, outros métodos têm sido propostos na literatura para automatizar a detecção e classificação de doenças cardíacas. Em 2011, uma pesquisa (YEH; CHENG; CHEN, 2011) utilizou mineração de dados para criação de um modelo preditivo para diagnóstico de doença cerebrovascular. Para eleger qual classificador seria utilizado, os autores utilizaram os indicadores de sensibilidade e precisão com o objetivo de avaliar a eficiência de cada um. Três classificadores foram estudados na pesquisa: árvores de decisão, classificador baysiano e redes neurais. Após a análise e comparando as eficiências de classificação, o modelo de árvore de decisão foi escolhido como o modelo ideal preditivo para doença cerebrovascular. Além disso, 16 regras de classificação de diagnóstico foram extraídas do classificador e avaliadas por 5 especialistas (médicos) que validaram e concordaram que tais regras seriam úteis para a clínica. Árvores de decisão também foram utilizadas em SAMANTA et al. (2009) para identificar potenciais fatores de risco hemodinâmico para a ocorrência leucomalácia periventricular (LPV) que é uma lesão cerebral comumente encontrada em crianças prematuras com doenças cardíacas. Diversos trabalhos (YEH; CHENG; CHEN, 2011; SAMANTA et al., 2009; KOPRINSKA; PFURTSCHELLER; FLOTZINGER, 1996; EXARCHOS et al., 2007) utilizam árvores de decisão para a mineração de dados na medicina. Trata-se de uma estrutura muito usada na implementação de sistemas especialistas e em problemas de classificação. As árvores de decisão 19 1.2. JUSTIFICATIVA E MOTIVAÇÃO tomam como entrada uma situação descrita por um conjunto de atributos e retornam uma decisão. Também são utilizadas para gerar regras de classificação de fácil interpretação pelos especialistas do domínio trabalhado. Em 1992 (BOSER; GUYON; VAPNIK, 1992), uma pesquisa propôs o Support Vector Machine (SVM) como novo método de aprendizagem de máquina para classificação binária. SVM baseia-se na teoria do aprendizado estatístico e tem mostrado uma boa capacidade de generalização. Apesar de inicialmente concebido para problemas de classificação de duas classes com dados linearmente separáveis, novos algoritmos já foram derivados para resolver problemas de classificação com dados não linearmente separáveis (CRISTIANINI; SHAWE-TAYLOR, 2000), regressão (DRUCKER et al., 1997) e classificação de problemas multiclasse (WESTON; WATKINS, 1999). Especificamente na área da medicina, em ASL; SETAREHDAN; MOHEBBI (2008) foi propostp a utilização de SVM para classificar os tipos de arritmias cardíacas utilizando a variabilidade na taxa da frequência cardíaca registrada nos exames de eletrocardiograma. O autor faz uma comparação dos resultados obtidos na classificação de arritmia utilizando SVM com outros métodos de classificação investigados por outros autores para o mesmo problema e foi demonstrado que a utilização de SVM produziu melhores resultados. O SVM também foi utilizado em AVCI (2009) para a classificação de doenças cardíacas através das ondas dos sinais utilizando o ultra-som Doppler. Nesse mesmo estudo, conforme relatado, a taxa média de classificação correta foi de 95%. Grande parte dos bancos de dados encontrados na área médica apresentam desbalanceamento. Um conjunto de dados está desbalanceado quando as classes a serem classificadas não estão proporcionalmente iguais, ou seja, a maioria dos classificadores tendem a atribuir as classes positivas (da classe minoritária) dentro da região de decisão para as classes negativas (da classe majoritária)(GAO et al., 2011). Esse problema representa um desafio no treinamento de classificadores. Especificamente na área da medicina, o problema do desbalanceamento é encontrado em COHEN et al. (2006) onde dados relacionados à infecção hospitalar são utilizados nos experimentos. Nesse trabalho, o desbalanceamento está na ordem de 11%:89%. Já em GAO et al. (2011), trabalho relacionado à diabetes, algumas técnicas para contornar o desbalanceamento dos dados (34%:66%) são utilizadas. O mesmo problema ocorre com os dados dessa pesquisa onde há um desbalanceamento na base de dados na ordem de 22%:78%. Em GURGEL (2007) outra base de dados foi utilizada para a investigação da cardiopatia em crianças. Nesse trabalho foi utilizado Redes Neurais MLP e Árvores de Decisão para modelar o exame de ecocardiograma. Todas as informações registradas nesse exame foram utilizadas como entrada para os classificadores. Além desse, nenhum outro trabalho foi encontrado utilizando a inteligência computacional para tratar o problema da classificação de doenças cardíacas em crianças. 20 1.3. OBJETIVOS 1.3 Objetivos 1.3.1 Objetivo Geral O objetivo geral dessa pesquisa é desenvolver um sistema de apoio a diagnóstico médico utilizando técnicas de inteligência computacional para auxiliar na detecção de cardiopatias em crianças e priorizar o atendimento das mesmas. 1.3.2 Objetivos Específicos Os objetivos específicos são: • Classificar pacientes cardiopatas utilizando apenas seus dados básicos tais como: peso, data de nascimento, altura, sexo e frequência cardíaca; • Utilizar técnicas para classificação em base de dados desbalanceadas, visto que há um desbalanceamento nos dados utilizados na pesquisa; • Avaliar a utilização de técnicas neste problema (cardiopatia infantil); • Extrair regras do SVM de modo que os médicos possam entender como se deu o processo de classificação desse algoritmo. 1.4 Estrutura da Dissertação Esta dissertação está estruturada em cinco capítulos. O Capítulo 2 introduz o problema da cardiologia pediátrica, as classificações das cardiopatias, o sopro cardíaco e outras informações relacionadas às doenças cardíacas, bem como a importância do diagnóstico precoce. O Capítulo 3 descreve apresenta uma breve descrição do entendimento do negócio e como as informações são registradas. Também descreve o entendimento do banco de dados utilizado na pesquisa explicando cada atributo. Também é descrito como novos atributos foram criados. O Capítulo 4 descreve as técnicas de inteligência computacional utilizadas, tais como SVM, SVM com pesos, SVM com pesos + MLP, Árvore de Decisão e SMOTE. Também são descritos todos os experimentos realizados, bem como uma discussão sobre os resultados alcançados. O Capítulo 5 apresenta uma avaliação dos resultados obtidos baseada nas métricas de avaliação de desempenho que foram estudas. O Capítulo 6 apresenta as conclusões da dissertação ressaltando as contribuições da pesquisa e os possíveis trabalhos futuros. 21 2 Doenças Cardíacas Um passo à frente, e você não está mais no mesmo lugar. . . —CHICO SCIENCE 2.1 Importância das doenças cardiovasculares As doenças cardiovasculares são as principais responsáveis pela mortalidade entre homens e mulheres no Brasil, apesar de seu valor apresentar tendência decrescente nos últimos anos. Mesmo com seu grande impacto, entretanto, apenas alguns fatores de risco são responsáveis pela grande maioria de tais agravos. Dentre estes os principais são o tabagismo, o sedentarismo e as dislipidemias (presença elevada de lipídeos no sangue) (MANSUR A. DE P.; FAVARATO, 2011). 2.2 Doenças cardiovasculares na infância Até aqui, foi considerado o impacto das doenças cardiovasculares nos adultos e idosos. Na faixa etária pediátrica, entretanto, pode estar o início dos comportamentos que levarão aos fatores de risco supracitados. Um exemplo são os erros alimentares cada vez mais prevalentes nessa idade que pode levar, por exemplo, a um aumento do nível de colesterol, associado ou não à obesidade infantil (GIULIANO, 2008). Esse fato, isolado, é tão impactante que, considerando valores não desejáveis pela IV Diretriz Brasileira de Prevenção da Aterosclerose, a prevalência de dislipidemias entre crianças chega a até 40% no Brasil (MOURA E.; CASTRO, 2000). Além disso, o mundo está passando por uma epidemia de sobrepeso e obesidade infantil (MIRANDA J. M. Q.; ORNELAS, 2011), atingindo aproximadamente 43 milhões de crianças abaixo dos 5 anos no mundo (MIRANDA J. M. Q.; ORNELAS, 2011). Com isso, pode-se perceber a importância do combate a tais fatores de risco ainda na faixa etária pediátrica para diminuir a incidência de futuros eventos cardiovasculares na idade adulta. Apesar da importância dos fatores de risco na 22 2.3. CARDIOPATIAS ADQUIRIDAS NA INFÂNCIA infância e adolescência na prevenção de futuros eventos cardiovasculares, há algumas doenças cardíacas específicas dessa faixa etária que podem ser divididas em adquiridas e congênitas. 2.3 Cardiopatias adquiridas na Infância As cardiopatias adquiridas são aquelas que acometem o indivíduo após o nascimento. Na infância as principais são: a endocardite infecciosa, a febre reumática e a doença de Kawasaki. A endocardite infecciosa é, por definição, uma infecção microbiana da superfície endocárdica (camada mais interna do coração) (CARDIOLOGIA PARA O PEDIATRA, 2004). Geralmente está relacionada a uma injúria endotelial (camada mais interna dos vasos) prévia devido a uma doença cardíaca preexistente. Em situações onde há existência de bactérias no sangue, essas mesmas bactérias podem se alojar em tais lesões. Fungos, vírus e outros microorganismos também podem ocasionar endocardite infecciosa. Geralmente a apresentação clínica das endocardites infecciosas é bastante variada, sendo febre o sinal mais comum. A febre reumática é uma doença autoimune, multissistêmica, decorrente de uma resposta imune exacerbada contra antígenos do estreptococo, uma bactéria responsável por boa parte das infecções da orofaringe. Tal doença envolve frequentemente as articulações, coração, a pele, tecido subcutâneo e, mais raramente, o sistema nervoso central. A febre reumática, em sua forma crônica, é responsável por lesões nas valvas cardíacas (estruturas que controlam o fluxo de sangue entre as várias câmaras do coração e entre estas e o corpo) que culminam em até 90% das cirurgias valvares na faixa etária pediátrica no Brasil (LOPES, 2011). Seu diagnóstico envolve a identificação de sinais específicos agrupados nos Critérios de Jones modificados (1992)(LOPES, 2011). A identificação precoce da febre reumática é de extrema importância, pois com a utilização de antibióticos (SAúDE, 2013) (o padrão mais utilizado no Brasil é a utilização de Penicilina Benzatina de 21 e 21 dias) pode-se diminuir substancialmente a chance de novo evento e, consequentemente, uma drástica diminuição da chance de acometimento valvar. A Doença de Kawasaki é uma vasculite febril aguda de pequenos e médios vasos, de etiologia indeterminada, que envolve diversos órgãos (ATIK, 2007). A grande maioria dos casos ocorre em crianças de até cinco anos de idade. O acometimento cardíaco é o aspecto mais importante da doença, podendo se apresentar como pericardite e aneurisma (dilatação vascular de uma artéria) das artérias coronárias, ambas podendo ser analisadas com a utilização do Ecocardiograma. No seu diagnóstico é necessária a presença de febre por cinco dias ou mais (maior que 38,9 °C) e presença de pelos menos quatro dos seguintes critérios: eritema dos lábios ou na cavidade oral ou rachaduras nos lábios; rash no tronco; edema ou eritema das mãos ou pés; hiperemia conjuntival; linfonodos palpáveis no pescoço de pelo menos 15 milímetros (GANDOLFI L.; PRATESI, 2011). Apesar de ser seguro o diagnóstico de doença de Kawasaki quando esses critérios são encontrados, é possível que alguns casos não preencham o número necessário para o diagnóstico e o seguimento e tratamento sejam efetuados devido à alta 23 2.4. CARDIOPATIAS CONGÊNITAS suspeição do quadro. Além disso, o diagnóstico de aneurisma de coronárias ao ecocardiograma pode ser, dependendo do quadro clínico, suficiente para o diagnóstico de doença de Kawasaki. 2.4 Cardiopatias congênitas As cardiopatias congênitas são decorrentes de defeitos na estrutura ou função cardíaca devido ao desenvolvimento anormal do coração antes do nascimento (TANDON A.; SENGUPTA, 2010). A sua incidência mundial é de aproximadamente 8-10 a cada mil nascidos vivos e é uma causa importante de morbimortalidade infantil (TANDON A.; SENGUPTA, 2010) e, quando causas infecciosas são excluídas as cardiopatias congênitas chegam a liderar a morbimortalidade infantil (BENAVIDES-LARA, 2011). Apesar de uma simples definição, as cardiopatias congênitas possuem variados quadros clínicos a depender do local do defeito cardíaco. De maneira geral, as manifestações das cardiopatias congênitas podem ocorrer com cianose isolada (sinal ou um sintoma marcado pela coloração azul-arroxeada da pele, leitos ungueais ou das mucosas), insuficiência cardíaca isolada (situação em que o coração não está capacitado a manter as necessidades circulatórias do organismo), cianose e insuficiência cardíacas associadas e presença de sopro (ruído produzido pela passagem do fluxo de sangue através das estruturas do coração) sem outras alterações (LOPES, 2011). Seguindo essa classificação temos, como exemplos, a atresia pulmonar e da tricúspide dentre as cardiopatias com cianose isolada; a síndrome de hipoplasia do coração esquerdo, coarctação da aorta, persistência do canal arterial e comunicação interventricular ampla no grupo com insuficiência cardíaca isolada; cardiopatias com mistura completa nas que se apresentam com cianose e insuficiência cardíaca congestiva e estenose pulmonar, defeito do septo atrioventricular e comunicação interventricular nas que apresentam sopro isoladamente. É importante salientar que algumas cardiopatias podem pertencer a mais de um grupo, dependendo da proporção do defeito e das condições do paciente. 2.5 Importância do diagnóstico Como relatado anteriormente, o diagnóstico precoce de tais cardiopatias é extremamente importante. Nas cardiopatias adquiridas, para iniciar um tratamento adequado o mais cedo possível e evitar sequelas futuras e, no caso das cardiopatias congênitas, também iniciar o tratamento precocemente (seja ele clínico ou cirúrgico) para melhorar a qualidade de vida destes pacientes. Um exemplo pode ser feito com as cardiopatias que cursam com hiperfluxo pulmonar (onde um excesso de sangue é direcionado para os pulmões), como a comunicação interventricular. Casos mais graves dessas cardiopatias podem levar a um quadro de hipertensão pulmonar que, inicialmente, pode ser revertido, mas, a longo prazo, torna-se irreversível causando 24 2.6. ANAMNESE E EXAME FÍSICO um grande prejuízo na qualidade de vida e aumentando enormemente a mortalidade nesses pacientes. Mas como fazer o diagnóstico precoce destes pacientes e, uma vez passado o momento ideal, identificar aqueles que necessitam de uma abordagem mais urgente? Atualmente, há inúmeros recursos tecnológicos que facilitam essa identificação. Um exemplo é o ecocardiograma, que consegue identificar com grande sensibilidade e especificidade a grande maioria dessas cardiopatias. Entretanto, esse método possui suas limitações. Uma delas é o custo para ser realizado como uma triagem, além do baixo número de profissionais capacitados na sua realização. Há, entretanto, uma ferramenta barata e de conhecimento de um grande número de profissionais da saúde, que é a anamnese e o exame físico. 2.6 Anamnese e exame físico A anamnese é um tipo de entrevista clínica que visa à reconstituição de fatos e dos acontecimentos direta ou indiretamente relacionados com uma situação anormal na vida do paciente (EXAME CLíNICO - BASES PARA A PRáTICA MéDICA, 2008). É, nas mãos de médicos experientes, o fator isolado mais importante para se chegar a um diagnóstico (EXAME CLíNICO - BASES PARA A PRáTICA MéDICA, 2008). Tanto isso é verdade que quando exames complementares demostrarem algo que vá de encontro aos dados obtidos na anamnese o médico acertará mais vezes quando confiar nesta última. O objetivo básico da anamnese é identificar sinais e sintomas que levem ao diagnóstico da doença, assim como fatores de risco que podem orientar o raciocínio clínico. Já o exame físico constitui uma ferramenta médica que, junto com a anamnese, visa organizar o raciocínio clínico para chegar a um diagnóstico. É constituída, basicamente, de inspeção (olhar o aspecto do paciente ou do órgão acometido), palpação (verificar por meio da palpação alguma anormalidade anatômica), percussão (ao percutir determinadas áreas do corpo, o som resultante pode orientar se há ou não alguma alteração patológica), a ausculta (com a utilização do estetoscópio que, ao captar determinados sons, antes inaudíveis, auxilia no raciocínio clínico) e utilização de equipamentos médicos simples, como o tensiômetro para determinar a pressão arterial e o termômetro para a temperatura corporal. Nota-se, então, que a anamnese e o exame físico são de extrema importância na medicina e não poderia ser diferente com as patologias cardíacas. Na anamnese, por exemplo, podem ser identificados fatores de risco como o tabagismo e a obesidade que são, muitas vezes, determinantes na origem das doenças cardiovasculares. No exame físico, podem ser identificados vários sinais e sintomas que podem ter em sua origem alguma cardiopatia. Alguns exemplos são a presença de taquicardia (coração acelerado), cianose, a presença de sopro, dentre outros. Entretanto, o exame físico cardiovascular tem na ausculta cardíaca um importante aliado na determinação da exclusão ou confirmação do diagnóstico de cardiopatias. 25 2.7. A AUSCULTA CARDÍACA 2.7 A ausculta cardíaca Proficiência na ausculta cardíaca é uma importante habilidade clínica do médico (KOBINGER, 2003). Entretanto, é difícil seu pleno domínio, tanto por estudantes de medicina como para médicos já formados (KOBINGER, 2003). Nela, buscam-se eventos acústicos em áreas determinadas do tórax do paciente (ver Figura 2.1) que podem demonstrar algum evento patológico e, assim, facilitar o raciocínio clínico. Esses eventos são, basicamente, as bulhas, os estalidos, os atritos e os sopros. Figura 2.1: Focos para ausculta cardíaca • Bulhas: São sons originários do fechamento das valvas cardíacas, brusca desaceleração do fluxo sanguíneo ou vibrações da parede ventricular distendida (EXAME CLíNICO - BASES PARA A PRáTICA MéDICA, 2008). A primeira bulha (B1) é originária do fechamento das valvas mitral e tricúspide. A segunda bulha (B2) é originária do fechamento das valvas aórtica e pulmonar. A terceira bulha (B3) é originária das vibrações da parede ventricular subitamente distendida, sua presença pode ser normal em crianças e adolescente ou indicar alguma patologia cardíaca. A quarta bulha (B4) parece ser originária da desaceleração brusca do fluxo sanguíneo e sua presença pode ser normal ou patológica (EXAME CLíNICO - BASES PARA A PRáTICA MéDICA, 2008). Alterações no padrão ou sonoridade dessas bulhas podem indicar várias patologias cardíacas. Um exemplo é a B2 hiperfonética que pode indicar hipertensão pulmonar, ou o desdobramento fixo da mesma (desdobramento significa que o elemento valvar pulmonar e aórtico “fecham” em momentos distintos, originando dois sons) que pode ocorrer na CIA (comunicação interatrial). • Estalidos: sua importância está na identificação de lesões das valvas cardíacas, portanto é importante analisar em que fase do ciclo cardíaco ocorre. O estalido de abertura mitral ocorre, por exemplo, em muitos pacientes com sequelas valvares da febre reumática. • Atrito: é um ruído provocado pelo roçar dos folhetos pericárdicos quando deixam de ser lisos e umedecidos (EXAME CLíNICO - BASES PARA A PRáTICA MéDICA, 2008). 26 2.8. SOPROS • Sopro: os sopros são produzidos por vibrações decorrentes de alterações no fluxo sanguíneo (EXAME CLíNICO - BASES PARA A PRáTICA MéDICA, 2008). Devido a sua importância, será analisado a parte. 2.8 Sopros Os sopros são importantes elementos da ausculta cardíaca, principalmente nas cardiopatias relacionadas com a infância. Podem surgir devido ao aumento da velocidade do fluxo sanguíneo, diminuição da viscosidade sanguínea, passagem do sangue por uma área dilatada e passagem do sangue por uma membrana de borda livre ou associação de mais de um mecanismo previamente citados (EXAME CLíNICO - BASES PARA A PRáTICA MéDICA, 2008). Semelhantemente aos estalidos, a posição dentro do ciclo cardíaco é importante para determinar o local originador do sopro, entretanto outras características são essenciais como a qualidade do som (sopro de ejeção ou regurgitação), a irradiação (outras áreas onde o sopro é mais audível), intensidade do som além do timbre e tonalidade do mesmo. Apesar da complexidade de sua interpretação, a presença de sopro não significa a presença obrigatória de uma patologia. Nesse caso ele será denominado de sopro inocente, que é bastante comum na infância e, dentre suas características, pode-se destacar que sempre são sistólicos ou contínuos, sua intensidade é baixa, não se ocorrem concomitantemente com alteração das bulhas ou estalidos, dentre outros (KOBINGER, 2003). Entretanto, mesmo com a presença de sinais que demonstram o sopro como inocente, quando presente algum outro sinal e sintoma de patologia cardíaca, o mesmo deve ser investigado. 2.9 Considerações Finais As doenças cardiovasculares são a causa líder de mortalidade da idade adulta. Entretanto, seus fatores de risco podem estar presentes desde a infância, além de algumas doenças cardíacas serem específicas desta faixa etária. As cardiopatias na infância podem ser divididas em adquiridas e congênitas. As principais representantes das cardiopatias adquiridas na infância são a doença de Kawasaki, a febre reumática e a endocardite bacteriana. Já as cardiopatias congênitas podem ser classificadas de acordo com os sinais e sintomas na sua apresentação em: cianose exclusiva, insuficiência cardíaca congestiva exclusiva, associação entre cianose e insuficiência cardíaca e presença de sopro sem outras alterações. Apesar da presença de várias tecnologias para o diagnóstico de tais cardiopatias, a anamnese e o exame físico ainda permanecem com melhor custo benefício. Na anamnese e exame físico cardiovasculares são procurados sinais e sintomas, além de achados como os sopros cardíacos, para auxiliar no raciocínio clínico. Eles também são importantes para a determinação de urgência do quadro, assim como a necessidade de investigações mais profundas. 27 3 Preparação dos dados A mente que se abre a uma nova ideia jamais voltará ao seu tamanho original. —ALBERT EINSTEIN Neste capítulo será apresentado a descrição do trabalho, necessário para entendimento da pesquisa, abordando assuntos voltados à área de inteligência computacional, especificamente mineração de dados. A descoberta de conhecimento em base de dados (Knowledge Discovery in Databases - KDD) surgiu da necessidade de analisar e entender uma massa de dados que está aquém da capacidade humana em coletar e armazenar essas informações. Para tanto, técnicas e ferramentas computacionais são utilizadas para dar suporte à extração de conhecimento útil a partir do grande volume de dados que é diariamente gerado pelas empresas (FAYYAD; PIATETSKY-SHAPIRO; SMYTH, 1996). O processo de extração de conhecimento possui várias etapas, desde a preparação dos dados até a apresentação do conhecimento obtido para o usuário final. Tem como finalidade tornar grandes massas de dados humanamente incompreensíveis em informação útil, encontrando as relações implícitas existentes entre dados, referidos como padrões ou modelos, como suporte ao processo de tomada de decisão. A descoberta de conhecimento implícito em base de dados de medicina pode auxiliar o médico à melhor tomada de decisão possível. Assim, um classificador pode ser considerado como uma segunda opinião, que o médico pode ou não considerar relevante quando tiver de tomar uma ação quanto a um dado problema. Dessa forma, dependendo do caso, o médico poderá ou não priorizar o atendimento de um paciente. 3.1 CRoss Industry Standard Process for Data Mining (CRISPDM) O CRISP-DM define um modelo de processo para realização de projetos de mineração de dados, independente da área de aplicação ou da tecnologia a ser utilizada (WIRTH; HIPP, 28 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) 2000). O modelo fornece uma visão geral do ciclo de vida de um projeto de mineração de dados contendo as fases do projeto, suas respectivas tarefas e saídas. Figura 3.1: Fases do processo CRISP-DM (WIRTH; HIPP, 2000) A Figura 3.1 descreve visualmente o ciclo de vida do processo. A sequência das fases não é rigorosa. As setas indicam apenas as dependências mais importantes entre as fases, mas em um determinado projeto, dependendo do resultado de cada fase, outra fase ou uma tarefa em particular tem de ser realizada em seguida (WIRTH; HIPP, 2000). O processo é dividido em seis fases: 1. Entendimento do Negócio (Business Understanding); 2. Entendimento dos Dados (Data Understanding); 3. Preparação dos Dados (Data Preparation); 4. Modelagem (Modeling); 5. Avaliação (Evaluation); 6. Implantação (Deployment); Nas subseções a seguir serão detalhadas cada fase do processo CRISP-DM e quais as atividades que foram realizadas nessa pesquisa. 3.1.1 Entendimento do negócio Esta fase tem como objetivo entender os requisitos do projeto sob a perspectiva do negócio, convertendo esse entendimento em uma definição de um problema de mineração de dados (WIRTH; HIPP, 2000). 29 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) 3.1.1.1 UCMF A Unidade de Cardiologia e Medicina Fetal (UCMF) é uma clínica pioneira no nortenordeste do Brasil em Cardiologia Pediátrica e Medicina Fetal e dispõe também de um serviço de Emergência 24 horas e de uma UTI especializada em crianças cardiopatas de até 17 anos e em pós-operatório de cirurgia cardíaca. As três áreas prioritárias de atuação são: • Atendimento Médico de Excelência (UCMF): dispõe de equipe multi-disciplinar, sob a supervisão da Dra. Sandra Mattos, preparada para atender o feto e a criança cardiopata, composta de cardiologista pediátrico, pediatra, clínico, geneticista, psicólogo e nutricionista. • CADUCEUS: centro de estudos em Cardiologia Pediátrica e Medicina Fetal que funciona na UCMF do Real Hospital Português. O CADUCEUS é dirigido a profissionais e estudantes da área de saúde e tem os seguintes objetivos: desenvolver pesquisa e projetos científicos; promover seminários, estudo de casos, cursos, estágios supervisionados; interagir com outros Centros Médicos na Europa e Estados Unidos. • Círculo do Coração: é uma organização não governamental cujo principal objetivo é o de facilitar o tratamento de crianças carentes, portadoras de doença cardíaca na região nordeste do Brasil. É um projeto pioneiro de parceria entre a equipe de saúde, o paciente e seus familiares, o complexo hospitalar e voluntários da comunidade. Além disso, a ONG também realiza campanhas beneficentes para captação de recursos e esclarecimento da população sobre a realidade da doença cardíaca na região nordeste. Aproximadamente 800 pacientes são atendidos mensalmente sendo que 25% destes são carentes e 20% vêm de outras localidades (interior do estado e estados circunvizinhos, principalmente Paraíba). 3.1.1.2 Registro das informações dos pacientes A partir de Janeiro de 2010 a UCMF passou a utilizar um sistema de informação com o objetivo de gerenciar as consultas médicas, exames, agendamento e outras informações pertinentes ao dia a dia da clínica. O início da utilização desse sistema organizou a coleta de informações dos pacientes onde, a partir de então, todo o histórico de doenças, exames e medicações de cada paciente pode ser recuperado a qualquer momento. A utilização desse sistema de informação facilitou tanto a evolução clínica dos pacientes, como a recuperação de dados para confecção de trabalhos científicos pelos integrantes da UCMF. 3.1.1.3 Definição dos objetivos do projeto de mineração de dados Classificar as crianças cardiopatas que chegam na UCMF com o sintoma de sopro cardíaco, a partir dos seus dados básicos cadastrais que podem ser capturados pelo próprio 30 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) atendente do serviço no momento que o responsável do paciente entra em contato para realizar o agendamento do atendimento. Com esses dados básicos, serão utilizadas ferramentas de aprendizagem de máquina com o objetivo de extrair conhecimento dos dados através de regras para o melhor entendimento dos motivos que levam uma criança a ter uma cardiopatia. 3.1.2 Entendimento dos Dados A fase de entendimento dos dados tem como objetivo a coleta, a descrição e entendimento dos dados e a análise da qualidade dos mesmos (SHARMA; OSEI-BRYSON; KASPER, 2012). 3.1.2.1 Banco de Dados Clínico No período de Janeiro de 2010 à Outubro de 2012 cerca de 32.700 pacientes foram atendidos na clínica. Desses pacientes, apenas 39%(12.826) foram submetidos ao exame de ecocardiograma. Visto que o objetivo dessa pesquisa é a classificação de cardiopatias em crianças que apresentam sopro cardíaco e que o exame de ecocardiograma é o meio mais confiável para detectar tais doenças, esse trabalho apenas considerou os pacientes que visitaram a clínica e realizaram também um ecocardiograma. Todo paciente que chega na clínica passa pela entrevista (ou Anamnese) e pelo Exame Físico, conforme explicado na Seção 2.6. Para cada paciente atendido, além das informações básicas do mesmo (data de nascimento, sexo, altura, etc.), é registrado no sistema a motivação que levou o mesmo procurar a clínica. Ainda no período supracitado, a procura pelo serviço de cardiologia da clínica se deu por vários motivos e a Tabela 3.1 mostra a quantidade e os motivos que levaram os pacientes à UCMF. Tabela 3.1: Número e porcentagem de Motivo de atendimento na UCMF, no período de Janeiro de 2010 a Outubro de 2012. Motivo Sopro Outros Não Informado pela atendente Check-UP Pós-Operatório CIA Parecer Cardiológico CIV FOP HAS Pré-Operatório Arritmia Kawasaki Total Frequências 3165 2080 1345 995 907 901 841 747 505 303 263 152 82 12286 Percentual 25,8% 16,9% 10,9% 8,1% 7,4% 7,3% 6,8% 6,1% 4,1% 2,5% 2,1% 1,2% 0,7% 100% 31 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Abaixo segue um resumo de cada motivo exibido na Tabela 3.1: • Sopro: são sons produzidos por variação do fluxo sanguíneo. Dependendo das suas características pode ser inocente ou patológico. Pode ser o único sinal ao exame físico que indica presença de cardiopatia. • Check-UP: consiste numa consulta médica associada a exames complementares para identificação de doenças comuns ou fatores de risco para as mesmas. • Pré-Operatório: seguimento de um paciente anteriormente a uma cirurgia. Consiste de consulta médica e solicitação de exames complementares para avaliar o risco cirúrgico do paciente e, se possível, diminuí-lo. • Pós-Operatório: seguimento inicial de um paciente que foi submetido a uma cirurgia. Com ela tenta-se evitar ou identificar precocemente agravos à saúde que ocorrem nesse período como, por exemplo, sangramentos e arritmias cardíacas. • CIA: sigla referente à comunicação interatrial, uma cardiopatia congênita. • CIV: sigla referente à comunicação interventricular, uma cardiopatia congênita. • FOP: sigla referente a Forâmen Oval Patente. Trata-se de uma variação anatômica que, na grande maioria dos casos, não traz repercussões na vida do indivíduo. • HAS: sigla referente a hipertensão arterial sistêmica. Doença cardiovascular mais comum e considerada evento desencadeador de outras complicações como o infarto agudo do miocárdio e acidente vascular cerebral. • Arritmia: termo referente a condições em que o sistema de condução elétrico cardíaco não funciona adequadamente, repercutindo no ritmo cardíaco. Abrange um grande número de patologias de diferentes graus de morbimortalidade. • Kawasaki: abreviação de doença de Kawasaki. Trata-se de uma vasculite sistêmica de vasos de médio calibre que pode, ocasionalmente, provocar aneurismas das artérias coronárias. • Não informado pela atendente: campo não preenchido no atendimento inicial. • Outros: situação que não foi descrita pelos itens anteriores. Com exceção do check-up e parecer cardiológico, todos os outros motivos que levaram um paciente a se consultar na clínica são: a cardiopatia já estabelecida (HAS, CIA, CIV, Arritmia, Kawasaki, FOP) ou um sintoma que pode representar a presença ou não de uma cardiopatia (Sopro cardíaco). 32 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Em geral, quando já há uma cardiopatia estabelecida, o exame de ecocardiograma acusa a anormalidade e o operador do ecocardiograma identifica a doença. Dessa forma, os pacientes que tinham como motivo da consulta uma cardiopatia não foram considerados nesse trabalho visto que essa seria uma informação a priori, influenciando no modelo de decisão de qualquer classificador que fosse utilizado. 3.1.2.2 Banco de dados de Sopro Cardíaco Conforme mencionado na Tabela 3.1, a maior motivação da procura de pacientes pela clínica é a identificação de um sopro cardíaco (3.165 registros) através da ausculta feita previamente por algum profissional da área de saúde. Contudo, conforme mencionado na Seção 2.8, a presença de sopro não significa a presença obrigatória de uma patologia. Por esse motivo, o exame de ecocardiograma é de fundamental importância para a identificação da doença. Como o foco desse trabalho é a classificação de pacientes cardiopatas até os 17 anos que procuram a clínica com sintoma de sopro cardíaco, foi feito um filtro na base de dados principal, trabalhando apenas com os 3.165 pacientes que apresentaram esse sintoma. É importante ressaltar que esses pacientes que apresentam o sintoma de sopro cardíaco, podem ter uma cardiopatia estabelecida. Todas as informações que podem ser capturadas no exame de ecocardiograma são lançadas no sistema utilizado pela clínica, pelo próprio médico ou por algum auxiliar presente no momento da realização do exame. Diversas informações podem ser coletadas nesse exame, tais como parâmetros funcionais e hemodinâmicos, dimensões do átrio, integridade dos septos intraventricular e intraatrial, normalidade da valvas mitral, aórtica, tricúspide e pulmonar. Todas essas informações e seus respectivos valores são registradas no laudo do exame. Além disso, ainda no laudo é registrado a conclusão, comentário ou recomendação do operador que realizou o ecocardiograma para facilitar a leitura e melhorar o entendimento futuro por parte de um cardiologista. Para uma pessoa que não é da área de saúde ou até mesmo para um médico que não é cardiologista, é difícil concluir se há uma patologia ou não no paciente através da leitura da conclusão registrada pelo médico que realizou o ecocardiograma. No sistema utilizado pela clínica também não há um campo onde poderia ser preenchido com NORMAL (paciente não tem cardiopatia) ou ANORMAL (paciente tem cardiopatia). 3.1.2.3 Dicionário de dados Conforme explicado na Seção 1.3.2, essa pesquisa tem como objetivo a classificação de pacientes cardiopatas até os 17 anos, utilizando apenas suas informações cadastrais. Dessa forma a Tabela 3.2 mostra o dicionário de dados, com os tipos de cada campo e seus respectivos significados. É possível observar que os atributos que representam informações específicas do paciente 33 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Tabela 3.2: Dicionário de dados. Campo T001_NR_CODIGO Tipo Numérico T001_CA_NOME T001_DT_NASCIMENTO Texto Data T001_CA_SEXO T149_DT_CADASTRO Categórico Dicotômico Data T149_NR_PESO Numérico T149_NR_ALTURA Numérico T149_NR_FC Numérico T149_CA_CO_LINHA_01 Texto T149_CA_CO_LINHA_02 Texto T149_CA_CO_LINHA_03 Texto T149_CA_CO_LINHA_04 Texto Descrição Código identificador do paciente no sistema utilizado pela clínica Nome do Paciente Data de nascimento do paciente Sexo do paciente Data de cadastro do ecocardiograma do paciente Peso do paciente no dia da realização do ecocardiograma Altura do paciente no dia da realização do ecocardiograma Frequência cardíaca do paciente no dia da realização do ecocardiograma Primeira linha de registro da conclusão do exame de ecocardiograma Segunda linha de registro da conclusão do exame de ecocardiograma Terceira linha de registro da conclusão do exame de ecocardiograma Quarta linha de registro da conclusão do exame de ecocardiograma iniciam com o mnemônico T001. Já atributos que representam informações dos exames de ecocardiograma iniciam com o mnemônico T149. Esses mnemônicos referenciam a tabela do banco de dados que contém as informações. 3.1.2.4 Qualidade dos Dados Pelo fato das informações serem lançadas em texto livre, normalmente não há uma padronização nos valores informados, principalmente para os atributos não-numéricos. Esse tipo de problema é frequente em sistemas médicos (CIOS; MOORE, 2002) e não foi diferente na base de dados utilizada nessa pesquisa. A qualidade dos dados tem uma influência fundamental no processo de aprendizagem de máquina (VAN HULSE, 2007). A Tabela 3.3 mostra a qualidade dos dados do banco de dados utilizado nessa pesquisa. 34 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Tabela 3.3: Qualidade dos Dados. Campo T001_NR_CODIGO Missing values 0,0% T001_CA_NOME 0,0% T001_DT_NASCIMENTO 1,2% T149_DT_CADASTRO 0,0% T149_NR_PESO 0,7% T149_NR_ALTURA 3,5% T149_NR_FC 2,2% T149_CA_CO_LINHA_01 T149_CA_CO_LINHA_02 T149_CA_CO_LINHA_03 T149_CA_CO_LINHA_04 0,0% 0,0% 0,0% 0,9% Observação Campo gerado automaticamente pelo sistema Há presença de observações ou outros termos que não representam o nome do paciente. Além dos missing values, há presença de datas inválidas, como por exemplo: 01/01/1900. Data gerada automaticamente pelo sistema. Além dos missing values, há presença de valores inválidos ou em unidades de medidas diferentes. Por Exemplo: 3,400 ou 3400. Ambos os valores correspondem a três quilos e quatrocentos gramas. Além dos missing values, há presença de valores inválidos ou em unidades de medidas diferentes. Por Exemplo: 0,7 ou 70. Ambos os valores correspondem a setenta centímetros. Além dos missing values, há presença de valores inválidos. Em alguns casos não há necessidade de registros nesse campo O Boxplot (SCHWERTMAN; OWENS; ADNAN, 2004) é um método baseado em gráfico utilizado para identificação de outliers - observações que apresentam um grande afastamento das restantes ou são inconsistentes. Também podem ser chamados de valores aberrantes ou anormais. As Figuras 3.2, 3.3 e 3.4 mostram o gráfico de Boxplot para os atributos numéricos especificados na Tabela 3.2. Na Figura 3.2 é possível observar que a base de dados tem vários outliers. Isso ocorreu pelo fato de existirem alguns registros que foram digitados na unidade de medida gramas. Na Figura 3.3, os outliers também são ocorrências devido ao registro da informação em outra unidade de medida, nesse caso em centímetros em vez de metros. Já a quantidade de outliers 35 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Figura 3.2: Boxplot para o atributo Peso presentes na Figura 3.4 é bem menor e pelo gráfico é possível observar que são apenas valores digitados errados. A fase de Preparação dos Dados, explanada a seguir, detalhará a forma como esses problemas foram minimizados. 36 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Figura 3.3: Boxplot para o atributo Altura Figura 3.4: Boxplot para o atributo Frequência Cardíaca 37 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) 3.1.3 Preparação dos Dados A fase de preparação dos dados consiste na seleção, limpeza, integridade e formatação dos dados (SHARMA; OSEI-BRYSON; KASPER, 2012). Ainda nessa fase, é possível realizar a criação de novos campos, a partir dos já existentes, com o objetivo de aumentar a quantidade de atributos de entrada no algoritmo de aprendizagem. Os dados registrados pelos médicos e funcionários da clínica aparecem com inconsistências de várias formas. Na maioria das vezes, o erro ocorre na digitação dos valores, ora em uma unidade de medida, ora em outra unidade. Tais inconsistências podem ser provocadas por falta de cuidado na digitação dos dados ou até mesmo por falta de treinamento. 3.1.3.1 Atributo Alvo Conforme já explicado na Seção 3.1.2.2, o cardiologista registra o resultado do exame na seção “Conclusões e Observações” que são representados pelos quatro campos T149_CA_CO_LINHA_01, T149_CA_CO_LINHA_02, T149_CA_CO_LINHA_03 e T149_CA_CO_LINHA_04 já mencionados e explicados na Tabela 3.2. Porém os valores registrados nesses campos devem ser tratados para serem convertidos em um domínio binário, cujo valores indiquem apenas a presença ou ausência de uma cardiopatia. Na seção de “Conclusões e Observações” do laudo do ecocardiograma é possível observar as diferentes conclusões do exame considerado NORMAL (Figura 3.5) com o exame considerado ANORMAL (Figura 3.6). A Figura 3.5 mostra o laudo de um ecocardiograma classificado como NORMAL (paciente sem nenhuma cardiopatia) e a Figura 3.6 mostra o laudo de um ecocardiograma considerado como ANORMAL (paciente com alguma cardiopatia). As figuras representam apenas uma parte do laudo, pois por questões de privacidade, as informações dos pacientes foram omitidas. Para utilizar essa base de dados nessa pesquisa, foi necessário realizar uma reunião com a equipe médica com o objetivo de identificar o padrão do registro de uma conclusão de ecocardiograma considerada ANORMAL e o padrão de registro da conclusão considerada NORMAL. A partir dessa reunião, alguns padrões foram identificados e considerados para a classificação dos exames, conforme explicado a seguir: • Ecocardiograma NORMAL: Quando o operador que realizou o ecocardiograma registra nas conclusões os termos mostrados na Tabela 3.4 considera-se como exame NORMAL, pois, por padrão, esses termos sempre são utilizados pela clínica quando se refere a um paciente sem nenhuma cardiopatia. • Ecocardiograma ANORMAL: Diferente das conclusões de um exame NORMAL, quando o operador que realizou o ecocardiograma identifica algum problema com o paciente que represente alguma cardiopatia, o mesmo sempre registra, de forma mais detalhada, o 38 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Figura 3.5: Laudo de um eco cardiograma NORMAL Figura 3.6: Laudo de um eco cardiograma ANORMAL 39 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) achado. No exemplo do laudo mostrado na Figura 3.6, é possível observar o termo “Comunicação intraventricular. . . ” que indica uma abertura na parede que separa os dois ventrículos, sendo essa uma má-formação congênita. Dependendo do tamanho e da repercussão hemodinâmica pulmonar, haverá indicação de cirurgia. Tabela 3.4: Termos utilizados nas conclusões dos laudos de ecocardiograma quando o resultado do Ecocardiograma é normal. Termo Arranjo habitual das vísceras Câmaras cardíacas de dimensões normais Função biventricular preservada Refluxo funcional das valvas direitas Significado os átrios (direito e esquerdo) estão em seus locais corretos átrios e ventrículos não dilatados bombeando a quantidade adequada de sangue valvas tricúspide e pulmonar normais Diversos outros termos foram levantados pela equipe médica com seus respectivos significados, conforme mostrado na Tabela 3.5. Como a conclusão do laudo, quando encontrada uma anormalidade no exame, é digitada em campo de texto livre, é comum encontrar várias palavras/termos que representem a mesma informação. Como exemplo, é possível observar através da Tabela 3.5 que os termos “CIA”, “atrial”, “interatrial” ou “inter atrial” representam a mesma informação, sendo, nesse caso, uma Comunicação Interatrial. O atributo alvo utilizado nessa pesquisa refere-se à presença ou não de uma cardiopatia, ou em outras palavras, à normalidade ou à anormalidade do exame de ecocardiograma, visto que é através desse exame que é constatada a patologia. Após a identificação dos termos presentes nas conclusões do laudo do ecocardiograma que indiquem que o mesmo seja NORMAL ou ANORMAL, foi realizado mais um filtro na base de dados dos pacientes com sopro cardíaco. A Tabela 3.6 mostra a quantidade de registros encontrados considerando os termos supracitados na busca. Os 711 registros mostrados na tabela 3.6 referem-se às conclusões que não puderam ser identificadas através dos termos que representam a normalidade ou anormalidade do exame, conforme especificado nas Tabelas 3.4 e 3.5 respectivamente. Considerando que nessa pesquisa foram utilizados algoritmos para aprendizagem supervisionada, esses 711 registros que não puderam ser classificados como NORMAL ou ANORMAL foram descartados restando 2454 registros. A Tabela 3.7 mostra como ficou a distribuição no banco de dados. 3.1.3.2 Novo atributo: Idade A idade dos pacientes não é armazenada na base de dados do sistema da clínica. Entretanto, através dos atributos T149_DT_CADASTRO e T001_DT_NASCIMENTO, é possível extrair essa informação. Conforme explicado na Tabela 3.2, o atributo T149_DT_CADASTRO armazena a data em que o exame de ecocardiograma foi realizado. Já o atributo T001_DT_NASCIMENTO armazena o dia do nascimento do paciente. Para criar o campo idade do paciente bastou realizar o cálculo demonstrado a seguir: 40 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Tabela 3.5: Termos utilizados nas conclusões dos laudos de ecocardiograma quando alguma cardiopatia é encontrada no paciente. Termo “atrial” ou “interatrial” ou “inter atrial” ou “CIA” “interventricular” ou “inter ventricular” cianotica cianog?enica Significado atrial = do átrio, interatrial = entre os átrios, CIA = comunicação (defeito, falha) entre os átrios entre os ventrículos, CIV = comunicação (defeito, falha) interventricular que tem cianose (cor roxa) que causa a cianose (é o termo mais correto para a cardiopatia), i.e. a criança é cianótica, a doença (ex. tetralogia de Fallot) é uma cardiopatia cianogênica estenose estreitamento atresia bloqueio completo (a valva pode estar estenosada - tá estreita mais ainda passa sangue) ou pode estar atrésica = completamente fechada, não passa nada (atresia pulmonar é pior do que estenose pulmonar) REGUGITA??O refluxo = vazamento gradiente a diferença de pressão entre dois pontos, geralmente medido através das valvas cardíacas (ex. gradiente entre o ventrículo esquerdo e a aorta no caso da estenose aórtica) ou entre cavidade (ex. gradiente entre o VE e o VD no caso de uma CIV) “anomalo” ou “ano- anormal mala” comunicac??o comunicação mesmo (geralmente juntamos com interatrial ou interventricular, mas tem umas mais estranhas, como comunicação VE-AD e assim por diante) canal arterial um vaso que no útero permite o desvio de sangue que sai do ventrículo direito para o corpo do feto porque o pulmão fetal está "sem funcionar". Este vaso fecha logo após o nascimento - nos primeiros dias de vida). Tabela 3.6: Número e porcentagem dos resultados dos exames de ECO realizados na UCMF, no período de Janeiro de 2010 à Outubro de 2012. Resultado do ECO Frequência ANORMAL 592 NORMAL 1862 Não Identificado 711 Total 3165 % 19% 59% 22% 100% 41 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Tabela 3.7: Número e porcentagem de resultados dos exames de ECO após a exclusão dos registros não identificados. Resultado do ECO Freqências ANORMAL 592 NORMAL 1862 Total 2454 IDADE_ANOS = (T 149_DT _CADAST RO % 24% 76% 100% T 001_DT _NASCIMENT O) 360 Apesar do cálculo ser bastante simples, nem todos os pacientes puderam ter suas idades calculadas. Isso ocorreu porque foi identificado que a data de nascimento do paciente digitada, em alguns casos, era maior do que a data da realização do exame de ecocardiograma. Apesar de ainda existirem essas inconsistências, foi possível identificar a idade de 98% dos pacientes, conforme mostrado na Tabela 3.8. Tabela 3.8: Número de pacientes e porcentagem por Sexo e Resultado do exame de ecocardiograma. Resultado do Ecocardiograma NORMAL ANORMAL Total Idade f % f % f % Idade Calculada 1854 99,5% 569 96% 2423 98% Idade Não Calculada 8 0,5% 23 4% 31 2% Total 1862 100% 592 100% 2454 100% Ainda na Figura 3.7 é possível observar que uma grande concentração dos pacientes que tiveram seu ecocardiograma considerado ANORMAL tem uma idade baixa. Isso é justificável porque apesar da clínica atender pacientes até a idade adolescente, a grande maioria dos pacientes cardiopatas atendidos são bebês recém-nascidos ou em seus primeiros anos de vida. Os 31 pacientes que não tiveram suas idades calculadas, conforme mostrado na Tabela 3.8 tinham suas datas de nascimento digitadas de forma errada, impossibilitando a realização do cálculo. 3.1.3.3 Novo atributo: Faixa Etária Na UCMF os pacientes também são classificados pela sua Faixa Etária de acordo com a sua idade. Entretanto essa informação não é registrada no sistema. Para representar essa informação, o atributo Faixa Etária foi criado a partir do atributo Idade do paciente, calculado na Seção 3.1.3.2, utilizando as regras definidas na Tabela 3.9 a seguir. A Tabela 3.10 mostra a reação entre a Faixa Etária e o resultado do ecocardiograma. Nessa tabela é possível observar o grande número de cardiopatas na Faixa Etária Neonato, 42 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Figura 3.7: Distribuição do atributo Idade(anos) pelo resultado do exame de ECO Tabela 3.9: Regra de definição da Faixa Etária do Paciente. Idade 1 Dia <= IDADE <= 29 Dias 1 Mês <= IDADE < 1 Ano 1 Ano <= IDADE < 6 Anos 6 Anos <= IDADE < 9 Anos 9 Anos <= IDADE < 13 Anos 13 Anos <= IDADE < 18 Anos Faixa Etária Neonato Lactente Pré-Escolar Escolar Pré-Adolescente Adolescente Lactente e Pré-Escolar. Tabela 3.10: Número de pacientes e porcentagem por Faixa Etária e Resultado do exame de ecocardiograma. Faixa Etária Neonato Lactente Pré-Escolar Escolar Pré-Adolescente Adolescente Não Identificado Total Resultado do Ecocardiograma NORMAL ANORMAL Total f % f % f % 9 0,5% 164 27,7% 173 7,0% 243 13,1% 215 36,3% 458 18,7% 868 46,6% 119 20,1% 987 40,2% 367 19,7% 33 5,6% 400 16,3% 284 15,3% 27 4,6% 311 12,7% 83 4,5% 11 1,9% 94 3,8% 8 0,4% 23 3,9% 31 1,3% 1862 100% 592 100% 2454 100% 43 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) 3.1.3.4 Atributo Sexo Após o filtro realizado na Seção anterior, foi feita uma análise no atributo Sexo com o objetivo de aumentar o ganho de informação. A quantidade de missing data para esse atributo era considerável. A Tabela 3.11 mostra como era a a distribuição proporcional para os valores: Masculino, Feminino, Missing Data. Tabela 3.11: Número e porcentagem de pacientes por sexo. Sexo Masculino Feminino Missing Data Total Freqências 713 646 1095 2454 % 29% 26% 45% 100% Ao ler as informações apresentadas na Tabela 3.11 é possível perceber a quantidade de informação perdida com os Missing Data. Ao fazer uma análise cuidadosa no banco de dados considerando esses dados ausentes, observou-se que seria possível recuperar o gênero do paciente através de seu nome. Contudo, quando o paciente é uma criança recém-nascida, em alguns casos a mãe ainda não tem um nome do bebê. Como o nome do paciente é uma informação obrigatória, os funcionários da clínica que realizam esse cadastro, por padrão, nomeiam esses pacientes como “RN de” concatenado com o nome da mãe. Por exemplo: RN de Maria José da Silva é o filho(a) de Maria José da Silva. Quando utilizado esse padrão, não foi possível recuperar o sexo do paciente, visto que o sexo do mesmo poderia ser Masculino ou Feminino. Do total de 1095 pacientes sem a informação do sexo (campo Sexo = “Indefinido”), apenas 91 seguem o padrão de nomenclatura “RN de. . . “. Os demais 1004 pacientes estavam cadastrados com um nome que era possível a identificação do sexo. Para isso, foi utilizado o banco de dados de nomes disponível no site Typo3.org1 . O banco de dados do Typo3.org contém cerca de 45000 nomes de pessoas e seus respectivos gêneros de várias nacionalidades. Através desse banco de dados foi possível efetuar a identificação dos gêneros utilizando fórmulas no Excel que efetuam o cruzamento de dados. Após esse processamento, houve um ganho de informação no atributo sexo, ficando com a distribuição conforme exibida na Tabela 3.12. 1 Typo3.org http://typo3.org/extensions/repository/download/wt_ genderfromfirstname/0.1.1/zip/ 44 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Tabela 3.12: Número de pacientes e porcentagem por Sexo e Resultado do exame de ecocardiograma. Sexo do Paciente Masculino Feminino Indefinido Total 3.1.3.5 Resultado do Ecocardiograma NORMAL ANORMAL Total f % f % f % 1083 58% 227 38% 1310 53% 769 41% 284 48% 1053 43% 10 1% 81 14% 91 4% 657 100% 346 100% 3528 100% Atributo Peso Conforme já mostrado na Figura 3.2 há diversos outliers no atributo Peso. Com o objetivo de melhorar a qualidade da informação desse atributo, foi feita uma minuciosa análise colocando todos os valores dentro da mesma unidade de medida (quilos). Além disso, os missing data para esse atributo foram substituídos pela média do peso dos pacientes que tinham a mesma idade e mesmo resultado de ecocardiograma. Por exemplo: se o paciente tinha 2 anos e era cardiopata mas o peso não foi informado, o novo peso do paciente foi a média dos pesos dos pacientes cardiopatas de 2 anos de idade. O peso de 12 pacientes que não tinham essa informação foi preenchido considerando a regra acima. Apenas 6 pacientes ficaram sem o valor do peso pois não tinham como utilizar a regra supracitada uma vez que a idade, altura e o sexo não foram preenchidos. Esses pacientes pertenciam todos à Faixa Etária “Não Identificado”. A linha central do gráfico de Boxplot representa a mediana da distribuição. Visualmente é possível observar no Gráfico 3.8 que, em média, crianças com cardiopatias estão abaixo do peso, independente da faixa etária. Entretanto, para provar essa afirmação foram realizados testes de hipótese comparando as duas distribuições de pesos dos pacientes cardiopatas e saudáveis para cada faixa etária. ( HA : Há diferença estatística nas médias das distribuições H0 : As médias são estatisticamente idênticas ↵ 3.1 ⌦ Para realização dos testes de hipóteses, inicialmente foi verificado se cada distribuição para cada faixa etária segue a distribuição normal. Para isso, foi utilizado o teste de KolmogorovSmirnov (DEGROOT, 2002; DELGAARD, 2002). Para as populações que seguiam a distribuição normal o teste paramétrico (t-Student) foi utilizado para realizar a comparação. Nos demais casos, foi utilizado o teste não-paramétrico Mann-Whitney-Wilcoxon Test. Todos os testes foram realizados utilizando o nível de significância de 0,05. Com o auxílio do software estatístico R2 foram realizados testes estatísticos ficando confirmado que há diferença com significância estatística ao nível de 95% para as faixas etárias 2 http://www.r-project.org/ 45 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Figura 3.8: Distribuição do atributo Peso para cada faixa etária pelo resultado do exame de ECO Lactente (p-value = 2,2e-16) , Pré-Escolar (p-value = 9,88e-10) e Escolar (p-value = 0,001236). Nas demais faixas etárias não houve evidência estatística que comprovasse a diferença nos Pesos médios para cada Faixa Etária. Conclui-se, então, que para essas faixas etárias o peso do paciente com cardiopatia, em média, é menor do que o peso do paciente saudável. 3.1.3.6 Atributo Altura Através da Figura 3.3 é possível observar a quantidade de outliers existentes para esse atributo. Por ser mais uma informação digitada pelos funcionários e médicos da clínica, em alguns casos a altura foi informada utilizando o metro(m) como unidade de medida, em outros casos utilizou-se o centímetro(cm). Para padronizar o atributo, todos os registros que estavam em outra unidade de medida foram convertidos para metro. A Figura 3.9 mostra como ficou a distribuição das alturas(em metro) para os pacientes cardiopatas e saudáveis considerando cada faixa etária. Apesar do tratamento realizado para melhorar a qualidade da informação nesse atributo, 87 registros (3,5% da base de dados utilizada) continuaram com missing values. Para tentar reduzir esse número, os missing values foram preenchidos com a altura média considerando o sexo, faixa etária e o resultado do ecocardiograma. Por exemplo: os cardiopatas da Faixa Etária “Neonato” do Sexo “Masculino” que estavam sem o valor da altura foram preenchidos com o 46 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Figura 3.9: Distribuição do atributo Altura para cada faixa etária pelo resultado do exame de ECO valor médio da altura dos pacientes dessa mesma categoria que tinham a altura preenchida. Com esse tratamento, o percentual de missing values reduziu de 3,5% para 0,97% ficando apenas 24 registros sem essa informação. Para tentar identificar se há diferença de altura entre os pacientes cardiopatas e os pacientes saudáveis, foi realizado teste de hipótese comparando as duas distribuições nas respectivas faixas etárias. ( HA : Há diferença estatística nas médias das distribuições H0 : As médias são estatisticamente idênticas ↵ 3.2 ⌦ Os testes indicaram diferença significativa para as faixas Neonato (p-value = 0,01289), Lactente (p-value < 2,2e-16), Pré-Escolar (p-value < 1,685e-08) e Escolar (p-value = 0,01686). Essa informação confirma uma suspeita dos especialistas do domínio que acreditavam numa relação entre a baixa estatura e a presença de uma cardiopatia, até certa idade. 3.1.3.7 Novo atributo: Índice de Massa Corporal O Índice de Massa Corporal (IMC) é um número calculado a partir do peso de uma pessoa e altura. O IMC fornece um indicador de gordura corporal para a maioria das pessoas e é usado para triagem de categorias de peso que podem levar a problemas de saúde (ORGANIZATION, 47 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) 2006). Conforme já relatado na Seção 2.2, a obesidade pode ser um dos fatores de risco para doenças cardíacas e o IMC é um dos indicadores mais utilizados para identificação da obesidade (SINGER-VINE, 2009). Dessa forma, para os pacientes que tinham as informações idade e peso, foi possível calcular o IMC. O cálculo é realizado utilizando o peso em quilos dividido pelo quadrado da altura em metros. A Figura 3.10 mostra a distribuição do atributo IMC por cada faixa etária e resultado do exame de ecocardiograma. Figura 3.10: Distribuição do atributo IMC para cada faixa etária pelo resultado do exame de ECO Assim como os gráficos que mostram a distribuição do peso dos pacientes, os gráficos de boxplot do IMC também mostram que para algumas faixas etárias, normalmente o paciente com cardiopatia tem baixo peso. 3.1.3.8 Novo atributo: Percentil de IMC Além do IMC a UCMF utiliza outro atributo para definir a obesidade do paciente. Esse atributo é o percentil de IMC e é criado a partir do IMC, do sexo e da idade do paciente. Depois que o IMC é calculado, é plotado um diagrama por sexo e idade onde é feita a classificação do percentil. O percentil de IMC indica a posição relativa do IMC da criança ou adolescente em relação a outras crianças e adolescentes do mesmo sexo (HEALTH STATISTCS, 2004). Esse 48 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) atributo é calculado apenas para os pacientes entre 2 e 19 anos, conforme mostrado na Figura A.1 e Figura A.2 conforme mostrado no apêndice no final desse trabalho. O valor do Percentil de IMC só é calculado para os pacientes com idade entre 2 e 19 anos. Como nessa pesquisa há uma certa quantidade de pacientes com idade entre 0 e 2 anos, esses pacientes tiveram essa informação registrada como “NAO_CALCULADO”. Os demais pacientes tiveram seu Percentil de IMC definido como: • Baixo Peso: Quando o paciente tem o Percentil de IMC < 5; • Normal: Quando o paciente tem o Percentil de IMC entre 5 e 85; • Excesso de Peso: Quando o paciente tem o Percentil de IMC entre 86 e 94; • Sobrepeso: Quando o paciente tem o Percentil de IMC > 94; • NAO_CALCULADO: Quando a idade do paciente < 2 anos; 3.1.3.9 Novo atributo: Superfície Corporal A Superfície Corporal é usada principalmente na pediatria e serve para cálculo de doses de medicamentos. Assim como o IMC, o atributo Superfície Corporal também foi criado a partir do peso e da altura. Os especialistas do domínio consideram essa informação importante e acham que a mesma tem alguma relação com a presença de uma cardiopatia e, sendo assim, a mesma foi considerada como atributo de entrada. O cálculo é efetuado a partir da fórmula abaixo (DUBOIS D, 1916): SC(m2 ) = 0, 007184 * Altura(cm)0,725 * Peso(kg)0,425 ↵ 3.3 ⌦ Todos os pacientes que tinham as informações de altura e peso passaram a ter também o atributo superfície corporal. A Figura 3.12 mostra como ficou a distribuição do atributo Superfície Corporal por cada Faixa Etária e resultado do exame de ecocardiograma. 3.1.3.10 Atributo Frequência Cardíaca A frequência cardíaca mede o número de batimentos cardíacos por uma unidade de tempo, geralmente expressa em batimentos por minuto (bpm). A medição pode ser feita manualmente em algum lugar do corpo onde pode ser detectada a pulsação arterial (INBAR O OREN A, 1994). A forma mais precisa de mensurar a frequência cardíaca é através do exame de Eletrocardiograma (ECG), entretanto essa informação também é medida através do exame de Ecocardiograma. Considerando que essa pesquisa utiliza apenas dados básicos do paciente para tentar classificá-lo como cardiopata ou saudável e visto que essa informação, além de ser fácil de ser mensurada manualmente, pode influenciar na decisão da classificação, a mesma também será usada como atributo de entrada para os classificadores. 49 3.1. CROSS INDUSTRY STANDARD PROCESS FOR DATA MINING (CRISP-DM) Figura 3.11: Distribuição do atributo Superfície Corporal para cada faixa etária pelo resultado do exame de ECO A Figura 3.12 mostra a distribuição do atributo Frequência Cardíaca por cada faixa etária. Testes de hipótese foram realizados com o objetivo de identificar se as médias das distribuições das frequências cardíacas, para cada faixa etária, diferem com significância estatística. Há diferença com significância estatística apenas para as faixas Lactente (p-value = 4,349e-05) e Pré-Escolar (p-value = 0,0002695). 3.1.3.11 Outliers e Normalização dos Dados Após realizar o tratamento em cada atributo, tentando padronizar e minimizar a quantidade de outliers, alguns pacientes ainda tinham pouca informação como Nome e Sexo. Sem os demais atributos, tais como Data de Nascimento, Altura e Peso tornou-se inviável a criação dos demais atributos tais como Idade, ICM, Percentil de IMC e SC. Esses registros foram excluídos e não entraram nos experimentos realizados. Ao final do tratamento dos atributos que serão utilizados como entrada para os algoritmos de aprendizagem de máquina, os atributos contínuos foram normalizados entre o intervalo 0 e 1 utilizando a fórmula abaixo (KANTARDZIC, 2003): v0 (i) = Onde: v(i) min(v(i)) max(v(i)) min(v(i)) ↵ 3.4 ⌦ 50 3.2. DIVISÃO DOS DADOS Figura 3.12: Distribuição do atributo Frequência Cardíaca para cada faixa etária pelo resultado do exame de ECO • v’(i) é o valor do atributo normalizado; • v(i) é o valor original do atributo; • min(v(i)) é o menor valor assumido pelo atributo; • max(v(i)) é o maior valor assumido pelo atributo; Já os atributos categóricos passaram por uma transformação utilizando o operador Nominal to Binominal do próprio RapidMiner3 onde é feito um mapeamento de todos os atributos nominais em atributos binários. Após a exclusão dos registros que não tinham informações relevantes e da normalização, foi gerado o conjunto de dados utilizado para realização do treinamento e testes. A Tabela 3.13 mostra um resumo dos atributos. 3.2 Divisão dos dados Após as atividades de limpeza, criação de novos atributos, normalização e padronização dos dados no capítulo anterior, para realização dos experimentos, o banco de dados foi dividido 3 http://www.rapidminer.com 51 3.3. CONSIDERAÇÕES FINAIS Tabela 3.13: Atributos de entrada utilizados. Nome Tipo Média / d.p. Range Missing data alvo s_MASCULINO s_FEMININO s_INDEFINIDO fe_ESCOLAR fe_PRE-ADOLESCENTE fe_LACTENTE fe_PRE-ESCOLAR fe_ADOLESCENTE fe_NEONATO imc_perc, = Normal imc_perc, = Baixo Peso imc_perc, = Obesidade 2 imc_perc, = Nao_Calculado imc_perc, = Excesso de Peso 1 peso altura fc idade imc sc nominal bin bin bin bin bin bin bin bin bin bin bin bin bin bin real real real real real real NORMAL(1846)/ANORMAL(539) avg = 0,539 +/- 0,499 avg = 0,435 +/- 0,496 avg = 0,026 +/- 0,159 avg = 0,166 +/- 0,372 avg = 0,130 +/- 0,337 avg = 0,189 +/- 0,392 avg = 0,410 +/- 0,492 avg = 0,039 +/- 0,195 avg = 0,065 +/- 0,247 avg = 0,354 +/- 0,478 avg = 0,164 +/- 0,370 avg = 0,207 +/- 0,405 avg = 0,176 +/- 0,381 avg = 0,099 +/- 0,299 avg = 0,199 +/- 0,152 avg = 0,430 +/- 0,224 avg = 0,413 +/- 0,122 avg = 0,271 +/- 0,230 avg = 0,282 +/- 0,102 avg = 0,293 +/- 0,181 [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] [0,000 ; 1,000] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 em dois conjuntos: Treinamento e Teste. A divisão foi feita de forma estratificada e a Tabela 3.14 mostra como ficou a divisão dos dados. Tabela 3.14: Divisão do banco de dados para realização dos experimentos. Conjunto % Total Normal Anormal Treinamento 75% 1788 1384 404 Teste 25% 597 462 135 Total 100% 2385 1846 539 Após essa divisão, os 597 registros do conjunto de Teste não foi utilizado em nenhuma fase de treinamento servindo apenas para avaliar os modelos dos experimentos e analisar os resultados, se tornando uma amostra estatisticamente independente dos dados utilizados para o treinamento. 3.2.1 Implantação A identificação de um modelo não é o fim do projeto de mineração de dados. Normalmente o conhecimento adquirido até a fase anterior deverá ser organizado e apresentado de modo que o cliente possa utilizá-lo. Dependendo dos requisitos do projeto, essa fase pode ser resumida à entrega de um simples relatório ou até mesmo à implantação do processo de mineração de dados. 3.3 Considerações Finais Neste capítulo foram mostrados todos os procedimentos realizados na base de dados conforme descrito no processo CRISP-DM. Ao realizar as análises em cada atributo, quando 52 3.3. CONSIDERAÇÕES FINAIS efetuado o processo de preparação dos dados descrito na Seção 3.1.3, foi possível observar o comportamento dos mesmos em relação à presença ou ausência de uma cardiopatia. As análises e os gráficos de boxplot gerados foram apresentados ao especialista do domínio e o mesmo confirmou, por exemplo, que o baixo peso dos pacientes recém-nascidos está diretamente ligado à existência de uma cardiopatia. 53 4 Modelagem e Métodos de Avaliação A suprema arte da guerra é derrotar o inimigo sem lutar. —SUN TZU Neste capítulo serão discutidas as técnicas de modelagem e avaliação de desempenho utilizadas nessa pesquisa. Também será explorado uma nova abordagem de balanceamento de base de dados utilizando SVM com pesos como pré-processador da base de dados. Conforme já relatado no Capítulo 1, essas técnicas foram escolhidas devido aos bons resultados apresentados em diversos trabalhos na área médica (ASL; SETAREHDAN; MOHEBBI, 2008; AVCI, 2009; GAO et al., 2011). 4.1 Modelagem Esta fase do CRISP-DM é utilizada para selecionar e aplicar ferramentas de inteligência computacional na base de dados utilizada. Em vários estudos (YEH; CHENG; CHEN, 2011; SAMANTA et al., 2009; KOPRINSKA; PFURTSCHELLER; FLOTZINGER, 1996; EXARCHOS et al., 2007), é comum a utilização de árvore de decisão para a mineração de dados em medicina. Entretanto, diversos trabalhos na mesma área já utilizam Support Vector Machines (SVM) devido ao seu melhor poder de generalização, alta precisão (capacidade de classificar corretamente) e o poder de lidar com uma grande massa de dados, apresentando melhores resultados em diversos problemas reais de classificação (CORTES; VAPNIK, 1995; CRISTIANINI; SHAWE-TAYLOR, 2000; WESTON; WATKINS, 1999). 4.1.1 SVM - Support Vector Machines O SVM é método baseado na teoria da aprendizagem estatística (BOSER; GUYON; VAPNIK, 1992) e uma das técnicas mais usadas em mineração de dados (WU et al., 2007). Tem sido usada em uma ampla variedade de aplicações tais como predição de câncer (ALLADI 54 4.1. MODELAGEM et al., 2008), predição de cárie dental em crianças (MONTENEGRO et al., 2008), análise genética (GUYON et al., 2002), análise de risco de crédito (HUANG et al., 2004), previsão de séries temporais financeiras, detecção de fraude em transações financeiras (SAPANKEVYCH; SANKAR, 2009), dentre outros. Esse método também tem sido utilizado em bioinformática devido à sua alta precisão, capacidade de lidar com uma grande dimensão de dados e flexibilidade na modelagem de diversas fontes de dados (SCHOLKOPF; TSUDA; VERT, 2004). O SVM pode ser utilizado para realizar a classificação em bases linear e não-linearmente separáveis. O termo “linearmente separável” é utilizado para definir a existência de uma fronteira de decisão que separa, de forma linear, as classes alvo e não alvo (BEN-HUR; WESTON, 2010). A Figura 4.1 mostra um exemplo da existência dessa fronteira. Figura 4.1: Separação Linear (BEN-HUR; WESTON, 2010) Os pontos circulados são os vetores de suporte - exemplos mais próximos à fronteira de decisão. Esses pontos determinam a margem que separa as duas classes. O SVM tenta resolver o problema da classificação binária encontrando um hiperplano ótimo que classifica corretamente as duas classes e separa os pontos das mesmas o máximo possível, minimizando o risco de uma classificação errada (FARQUAD; BOSE, 2012). A otimização pode ser descrita da seguinte forma, considerando xi como o ith vetor no conjunto de dados {(xi , yi )}ni=1 onde yi é o label associado com xi (BEN-HUR; WESTON, 2010): 1 min k w k2 2 sujeito a: yi (wT xi + b) 1 i = 1, . . . , n. ↵ 4.1 ⌦ Essa formulação assume que os dados são linearmente separáveis, não havendo espaço para erros. Entretanto, na maioria das vezes o problema de classificação em questão é nãolinearmente separável. Dessa forma, a variável x (folga) é introduzida para permitir o erro e a função de otimização tomando a Eq. 4.1 a seguinte forma (BEN-HUR; WESTON, 2010): yi (wT xi + b) 1 xi i = 1, . . . , n, 55 4.1. MODELAGEM onde x 0 são as variáveis de folga que permitem que um exemplo fique dentro da margem (0 xi 1, também chamada de margem de erro) ou seja classificado errado (xi > 1). Se o valor da variável de folga maior do que 1 para um exemplo classificado erradamente, Âi xi é o limite do número de classificações erradas (BEN-HUR; WESTON, 2010). O objetivo é maximizar a margem, ou seja, minimizando 12 k w k2 utilizando o argumento C para penalizar as classificações erradas. Dessa forma o problema de otimização tornar-se-á: ↵ 4.2 ⌦ n 1 2 min k w k +C Â xi 2 i=1 sujeito a: yi (wT xi + b) 1 xi , xi 0.. Essa formulação foi introduzida em VAPNIK (1995) e é chamada de Soft-margin constant. A constante C > 0 define a importância relativa em maximizar a margem minimizando a quantidade de folga. Quanto maior for o valor do parâmetro C, maior será a penalidade atribuída aos erros da margem. A Figura 4.2 representa o comportamento quando feita a variação do parâmetro C. No lado esquerdo, com o maior valor do parâmetro C, a penalidade também é maior e, dessa forma, os dois pontos mais próximos do hiperplano afetam sua orientação, resultando num hiperplano que se aproxima de vários outros pontos dos dados (BEN-HUR; WESTON, 2010). Quando o valor do parâmetro C é reduzido, conforme mostrado no lado direito da mesma figura, os pontos citados tornam-se erros de margem. A orientação do hiperplano é alterada provendo uma margem muito maior (BEN-HUR; WESTON, 2010). Figura 4.2: Separação Linear (BEN-HUR; WESTON, 2010) Além do parâmetro C o SVM possui os parâmetros da função de kernel. A função de kernel representa a relação entre o dado de entrada e a propriedade de saída a ser modelada transformando o espaço de entrada em um espaço de características de alta dimensão onde a solução do problema pode ser representada como sendo um problema linear. Os parâmetros dependerão da função de kernel utilizada (largura, para um kernel gaussiano, graus para um kernel polinomial). Esses parâmetros também têm um efeito significativo sobre a fronteira 56 4.1. MODELAGEM de decisão. Alguns pesquisadores indicam que o SVM com kernel gaussiano de função de base radial (Radius Base Function - RBF) tem demonstrado uma melhor habilidade para o problema de classificação (DONG B., 2005; HAMMER B., 2003; LUKAS L., 2004; YAO X. J., 2005). Nessa pesquisa foi utilizada a SVM com kernel RBF e para tentar encontrar os melhores parâmetros para a a SVM, foi utilizado Algoritmo Genético (AG). 4.1.2 SVM com pesos (Weighted) Muitas bases de dados utilizadas no processo de extração de conhecimento são desbalanceadas. Isso ocorre quando uma classe específica tem muito mais exemplos do que a outra classe. Isso acontece na base de dados dessa pesquisa onde a quantidade de pacientes saudáveis é muito maior do que a quantidade de pacientes cardiopatas. Esse tipo de base de dados representa um desafio para o treinamento de qualquer classificador e com o SVM não é diferente. Uma estratégia para conseguir uma alta acurácia é classificar todos os exemplos como sendo da classe majoritária. Quando isso acontece, a proporção de predições corretas é extremamente alta mas não leva-se em consideração o que é positivo e o que é negativo. Entretanto, essa não é uma boa medida para avaliar os classificadores de base de dados desbalanceadas (como no caso dessa pesquisa). Isto porque normalmente o classificador considera os erros cometidos para a classe majoritária e erros cometidos para a classe minoritária iguais (BEN-HUR; WESTON, 2010). Para corrigir esse desequilíbrio o SVM implementa o conceito de custo no erro de classificação para cada classe. O efeito do desbalanceamento no treinamento de uma SVM é tratado atribuindo diferentes custos para as classificações incorretas de cada classe (BEN-HUR; WESTON, 2010). Dessa forma, na Equação 4.2, o termo C Âni=1 xi é substituído por dois outros termos como segue (BEN-HUR; WESTON, 2010): n C Â xi ! C+ i=1 Â xi +C Â xi i2I+ i2I ↵ 4.3 ⌦ onde C+ e C são os parâmetros C utilizados para os exemplos das classes positivas (minoritária) e negativas (majoritária), respectivamente. Já I+ e I representam o conjunto de exemplos das respectivas classes. Para atribuir a mesma penalidade a ambas as classes, pode-se assumir que o número de exemplos classificados incorretamente para cada classe é proporcional ao número de exemplos de cada classe (BEN-HUR; WESTON, 2010). Dessa forma, é necessário escolher o parâmetro C+ e C , tal que: C+ n+ = C n ↵ 4.4 ⌦ onde n+ e n são os números de exemplos da classe positiva (minoritária) e negativa (majoritária), respectivamente. 57 4.1. MODELAGEM Dessa forma, o SVM efetua o treinamento considerando diferentes soft-margins para cada classe e consequentemente atribuindo as respectivas penalidades. 4.1.3 SVM + MLP Uma investigação foi feita em FARQUAD; BOSE (2012) com o objetivo de usar o modelo de SVM como um pré-processador para resolver o problema do desbalanceamento. O autor ratifica que o principal objetivo do SVM é encontrar um hiperplano ótimo que separa as classes classificando-as corretamente, minimizando o risco. O autor ainda justifica que quando se modifica o parâmetro C, os valores mais próximos da fronteira de decisão se movem em direção à classe majoritária aumentando o erro de classificação dessa classe. Em outras palavras, mais erros de classificação passarão a existir nesta classe (falsos positivos) aumentando o número de instâncias para a classe minoritária. Quando o modelo de SVM é treinado com o valor mais alto de C haverá mais instâncias classificadas na classe minoritária (FARQUAD; BOSE, 2012). A proposta do autor (FARQUAD; BOSE, 2012) foi o treinamento de um modelo de SVM com um parâmetro C tão alto que o classificador teria como resposta mais casos da classe minoritária, obtendo um conjunto menos desbalanceado. A resposta desse treinamento (em tese mais balanceada) seria utilizada como conjunto de treinamento para uma Rede Neural MLP. O modelo de SVM serviu apenas como pré-processador para gerar um novo conjunto de treinamento a ser utilizado pela MLP. A Figura 4.3 mostra a proposta do autor. Figura 4.3: Ciclo do processo utilizando o SVM como pré-processador de uma MLP (FARQUAD; BOSE, 2012) 58 4.1. MODELAGEM 4.1.3.1 SVM + MLP: Base de Dados Utilizada A base de dados utilizada para esse experimento (FARQUAD; BOSE, 2012) foi extraída do The CoIL Challenge 2000 4 , uma competição de mineração de dados ocorrida no ano 2000. Essa base de dados refere-se aos dados de clientes de uma companhia de seguros. A variável alvo é o indicador de aquisição ou não do seguro por parte do cliente. No total essa base de dados tem 86 atributos que vão desde variáveis sócio-demográficas criados a partir dos CEPs dos clientes, até dados pessoais dos clientes, como por exemplo idade, sexo, religião, nível de instrução e estado civil. A base de dados tem um total de 5822 registros para treinamento e 4000 registros para teste. Apenas 348 registros (6%) do conjunto de treinamento representam clientes que compraram a apólice de seguro. Os demais 5474 (94%) optaram por não adquirir a apólice de seguro. O autor (FARQUAD; BOSE, 2012) afirma que após utilizar o modelo de SVM como pré-processador, analisando as saídas do modelo, consegue obter 42% de clientes que não optaram pela compra do seguro e 58% de clientes que optaram pela compra. Em outras palavras, seguindo a metodologia descrita na Figura 4.3 a classe alvo (clientes que compraram o seguro) é incrementada de 6% para 58%, ficando essa classe com a quantidade de registros maior do que a outra classe. Infelizmente, no referido trabalho, o autor não cita quais os parâmetros (C e kernel) foram utilizados para conseguir tal balanceamento. Ainda no trabalho, foi verificado que o autor só aplica essa metodologia na base de dados supracitada. Além disso, o mesmo faz uma comparação da sua abordagem em conjunto com outras técnicas de tratamento de desbalanceamento, tais como: SMOTE, under-sampling e over-sampling (CHAWLA et al., 2002). Um experimento foi montado com o objetivo de encontrar um parâmetro C para um modelo de SVM de modo que o mesmo produzisse uma saída mais balanceada. Essa saída seria utilizada como conjunto de treinamento de uma MLP. A base de dados utilizada para esse experimento foi a mesma utilizada em (FARQUAD; BOSE, 2012) e a Tabela 4.1 mostra os resultados alcançados: Como é possível observar na Tabela 4.1, não há uma diminuição no desbalanceamento da base de dados apenas incrementando o parâmetro C, conforme relatado em FARQUAD; BOSE (2012). Logo, conclui-se que quando se utiliza o mesmo valor do parâmetro C para penalizar as classificações erradas de cada classe, não há um balanceamento nos dados. 4 http://www.liacs.nl/~putten/library/cc2000/ 59 4.1. MODELAGEM Tabela 4.1: Resultados obtidos ao tentar efetuar o balanceamento utilizando um modelo de SVM, incrementando o parâmetro C. Parâmetros Original Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. 4.1.3.2 SVM - C=0.8 SVM - C=5 SVM - C=10 SVM - C=50 SVM - C=100 SVM - C=500 SVM - C=1000 SVM - C=5000 SVM - C=10000 SVM - C=50000 SVM - C=100000 SVM - C=500000 SVM - C=1000000 SVM - C=5000000 The CoIL Challenge 2000 Dataset Não Compra Compra 5882 (94%) 348 (6%) 5590 (96%) 232 (3%) 5817 (99%) 5 (0%) 5812 (99%) 10 (0%) 5590 (96%) 232 (3%) 5566 (95%) 256 (4%) 5527 (94%) 295 (5%) 5514 (94%) 308 (5%) 5508 (94%) 314 (5%) 5508 (94%) 314 (5%) 5508 (94%) 314 (5%) 5508 (94%) 314 (5%) 5508 (94%) 314 (5%) 5508 (94%) 314 (5%) 5508 (94%) 314 (5%) SVM + MLP em base de dados médicas Com o objetivo de tentar tratar o desbalanceamento na base de dados utilizada nessa pesquisa, a metodologia proposta foi utilizada na base de dados dessa dissertação, além de outras bases de dados médicas disponíveis no repositório do UCI (S. HETTICH, 1996) relacionadas ao problema do câncer e diabetes. Em nenhuma das três bases de dados foi possível realizar o balanceamento utilizando SVM como pré-processador. O modelo de SVM foi testado com os mesmos parâmetros apresentados no trabalho FARQUAD; BOSE (2012). Entretanto, esses parâmetros (C=0,8, C=5 e C=10) foram utilizados apenas para demonstrar graficamente que a fronteira de decisão move-se em direção a classe “não-alvo”, a medida que se aumenta o valor do parâmetro C. Conforme já relatado, em FARQUAD; BOSE (2012), os valores utilizados nos experimentos do trabalho não foram informados. Dessa forma, os experimentos foram realizados utilizando as seguintes configurações: kernel - RBF (gamma = 1) e C = (0,8, 5, 10, 50, 100, 500, 1.000, 5.0000, 10.000, 50.000, 100.000, 500.000, 1.000.000, 5.000.000). 4.1.4 SVM com pesos + MLP Conforme já relatado na Seção 4.1.1, o parâmetro C é utilizado para penalizar as classificações erradas do modelo. Dessa forma, independente do valor utilizado para esse parâmetro, a penalização será a mesma. Conforme apresentado na Seção 4.1.2, SVM com pesos é uma solução adotada para tratar o problema do desbalanceamento das classes, uma vez que essa estratégia utiliza parâmetros C’s diferentes, considerando a proporção de cada classe no conjunto de treinamento. Diante disso, uma solução para utilizar o modelo de SVM como pré-processador para outro modelo (por exemplo MLP), seria a aplicação de SVM com pesos. Nessa abordagem, 60 4.1. MODELAGEM Tabela 4.2: Conjunto de treinamento após a aplicação de SVM como pré-processador nas bases de dados de Câncer, Diabetes e Cardiologia Pediátrica. Parâmetros Original Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. Pré-Proc. SVM - C=0.8 SVM - C=5 SVM - C=10 SVM - C=50 SVM - C=100 SVM - C=500 SVM - C=1000 SVM - C=5000 SVM - C=10000 SVM - C=50000 SVM - C=100000 SVM - C=500000 SVM - C=1000000 SVM - C=5000000 Câncer Normal Anormal 151 (70%) 64 (29%) 159 (73%) 56 (26%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) 151 (70%) 64 (29%) Diabetes Normal Anormal 375 (65%) 201 (35%) 427 (74%) 149 (26%) 417 (72%) 159 (28%) 421 (73%) 155 (27%) 407 (70%) 169 (30%) 401 (69%) 175 (31%) 392 (68%) 184 (32%) 381 (66%) 195 (34%) 384 (66%) 192 (34%) 380 (65%) 196 (35%) 377 (65%) 199 (35%) 380 (65%) 196 (35%) 375 (65%) 201 (35%) 375 (65%) 201 (35%) 375 (65%) 201 (35%) Cardiologia Pediátrica Normal Anormal 1384 (77%) 404 (23%) 1464 (81%) 324 (19%) 1549 (86%) 239 (14%) 1548 (86%) 240 (14%) 1554 (86%) 234 (14%) 1549 (86%) 239 (14%) 1536 (85%) 252 (14%) 1524 (85%) 264 (14%) 1498 (83%) 290 (17%) 1481 (82%) 307 (18%) 1441 (80%) 347 (20%) 1433 (80%) 355 (20%) 1424 (79%) 364 (21%) 1422 (79%) 366 (21%) 1418 (79%) 370 (21%) os pesos do modelo seriam definidos de modo que a penalização para os erros de classificação de cada classe tornassem a saída do modelo balanceado. Uma forma simples de efetuar o procedimento seria definir o peso da classe minoritária igual a 1 e o peso da classe majoritária seria um valor <1 tal que o modelo produzisse como saída um conjunto de dados balanceado. Os experimentos apresentados na Seção 5.1.6 mostram que a manipulação do conjunto de treinamento através de um pré-processamento se torna mais viável quando utilizado SVM com pesos, diferentemente da abordagem proposta em (FARQUAD; BOSE, 2012). 4.1.5 Árvore de Decisão Um método muito utilizado para a produção de classificadores é a geração de uma Árvore de Decisão, por ser de fácil representação e interpretação. Diversos algoritmos utilizam a aprendizagem supervisionada para construção de uma Árvore de Decisão a partir do conjunto de treinamento e testes. Tipicamente esses algoritmos adotam a estratégia top-down (de cima para baixo), procurando uma solução em um espaço de busca (KANTARDZIC, 2003) com o objetivo de encontrar uma simples Árvore de Decisão. A Árvore de Decisão é formada por nós onde os atributos são testados. A saída de um nó corresponde a todos os possíveis resultados relacionado ao teste efetuado no mesmo. A Figura 4.4 corresponde à Árvore de Decisão para classificação de exemplos dados dois atributos de entrada (X e Y). Na figura, todos os exemplos que tem o valor de X>1 e Y=B pertencem à classe 2, enquanto todos os exemplos que tem o valor de X<1 pertencem à classe 1, independente do valor da variável Y. Dado que esses algoritmos utilizam a estratégia top-down, uma decisão importante no processo de criação da Árvore de Decisão é a escolha do atributo que será testado no nó (KANTARDZIC, 2003). Um dos algoritmos mais utilizados para geração de Árvore de Decisão é o C4.5 (QUILAN, 1996). Esse algoritmo utiliza um conjunto de treinamento para produzir 61 4.1. MODELAGEM Figura 4.4: Árvore de Decisão com teste de dois atriburos (X e Y) (KANTARDZIC, 2003) um classificador em forma de Árvore de Decisão com dois tipos de nós: um nó de decisão, que especifica um teste a ser realizado em um atributo específico (com uma “subárvore” para cada resultado possível do teste) ou um nó folha, que especifica uma classe. O modelo de Árvore de Decisão gerado pode ser utilizado para classificar um novo exemplo (KANTARDZIC, 2003). Devido à sua fácil compreensão, esse classificador tem sido bastante utilizado na área da medicina (YEH; CHENG; CHEN, 2011; SAMANTA et al., 2009; KOPRINSKA; PFURTSCHELLER; FLOTZINGER, 1996), (EXARCHOS et al., 2007). O RapidMiner disponibiliza a implementação da Árvore de Decisão C4.5 e esse algoritmo também foi utilizado nessa pesquisa com o objetivo de classificar pacientes com cardiopatia. 4.1.6 PART O algoritmo PART (FRANK; WITTEN, 1990) utiliza como base da extração de regras a Árvore de decisão gerada pelo algoritmo C4.5. O processo de geração de regras de produção atua em dois estágios, onde inicialmente as regras são induzidas de uma árvore e posteriormente são refinadas. A ideia básica do algoritmo é a construção de uma Árvore de Decisão “parcial”, ao invés de uma completa. Uma Árvore de Decisão parcial é uma Árvore comum que ainda contém ramos para outras subárvores. A mesma é podada e a partir da folha de maior cobertura é feita a regra. 4.1.7 Algoritmos Genéticos Algoritmos Genéticos (AG) são utilizados para encontrar soluções aproximadas em problemas de otimização e busca. Os algoritmos usam técnicas inspiradas na biologia evolutiva, tais como hereditariedade, mutação, seleção natural e crossover (GOLDBERG, 1989). Nos AGs a evolução se inicia a partir de um conjunto de soluções (população) criado aleatoriamente e é realizada por meio de gerações. Dado que cada cromossomo é um candidato para uma solução ótima, a cada geração eles são avaliados através de uma função de fitness (ou 62 4.1. MODELAGEM função objetivo). Essa função é o principal objeto da otimização e compara as soluções para identificar qual é a melhor (KANTARDZIC, 2003). A seleção dos indivíduos foi feita através do algoritmo de seleção por “roleta” onde os mesmos são ordenados de acordo com a função objetivo, atribuindo-lhes as probabilidades de serem escolhidos. Nessa pesquisa os AGs são utilizados para encontrar os melhores parâmetros dos modelos que são utilizados. O objetivo da otimização é maximizar a métrica utilizada para definir o melhor ponto de operação do classificador, detalhado na Seção 4.2.1. O operador Optimize Parameters (Evolutionary) do RapidMiner implementa a otimização utilizando AGs e o mesmo foi utilizado nesse trabalho. 4.1.8 SMOTE - Synthetic Minority Over-sampling Technique O SMOTE surgiu como uma abordagem para o tratamento de conjuntos de dados desbalanceados. A proposta da técnica é a criação de exemplos “sintéticos” aumentando a quantidade de registros da classe minoritária e reduzindo o desbalanceamento (CHAWLA et al., 2002). Os novos registros não são simplesmente duplicados, mas são gerados a partir do espaço de características formado pelos exemplos reais da classe minoritária e seus k-vizinhos. Ainda em CHAWLA et al. (2002), o modelo de Árvore de Decisão foi usado para classificação em 8 bases de dados desbalanceadas. Ao final foi comparado, para cada base de dados, a AUC obtida na aplicação da Árvore de Decisão na base de dados desbalanceada com a AUC obtida pelo mesmo modelo na base de dados modificada pela técnica SMOTE. Os resultados mostram que a criação de exemplos sintéticos melhoram os resultados do classificador. Os exemplos são criados calculando a diferença entre o vetor de características (exemplo/instância) e os seus k vizinhos mais próximos. Após isso, essa diferença deve ser multiplicada por uma valor aleatório entre 0 e 1 e somar esse resultado ao valor original. A Figura 4.5 mostra um exemplo para geração de um exemplo sintético: Figura 4.5: Exemplo para geração de exemplos sintéticos (CHAWLA et al., 2002) Na execução do algoritmo é necessário informar a quantidade em % que se deseja criar. O software Weka (HALL et al., 2009) foi utilizado para geração de exemplos sintéticos para o banco de dados dessa pesquisa. Para realização dos experimentos, essa técnica foi utilizada criando exemplos sintéticos (incrementando a quantidade de pacientes cardiopatas) em 50%, 100%, 150% e 200%. 63 4.2 4.2. AVALIAÇÃO Avaliação Nesta fase, há a avaliação do(s) modelo(s) construído(s) e os passos seguidos para a sua construção, a fim de assegurar que este atende aos objetivos traçados. 4.2.1 ROC - Receiver Operating Characteristics Receiver Operating Characteristics (ROC) é um gráfico utilizado para visualizar o desempenho de classificadores tem sido cada vez mais utilizado para avaliar os algoritmos de aprendizagem de máquinas e mineração de dados. A análise ROC foi estendida para visualização e analise do comportamento de sistemas de diagnóstico (SWETS, 1988) na tomada de decisão médica. A preferência dos pesquisadores em adotar a análise ROC em aprendizado de máquina tem se tornado mais frequente, em grande parte devido à percepção de que o indicador de precisão Acurracy de classificação não é uma métrica suficiente para medir o desempenho (PROVOST; FAWCETT, 1997). O problema de classificação tratado nessa pesquisa é a classificação de duas classes (classificação binária): pacientes cardiopatas (Anormal) e pacientes saudáveis (Normal). O classificador utilizado nessa pesquisa produz uma saída (thresholds ou escore) contínua que varia entre 0 e 1, mapeando as instâncias classificadas nesse intervalo. Para decisão do ponto de operação do classificador é interessante que um gráfico com a curva ROC seja plotado para análise dos benefícios e custos relacionados à tomada de decisão em determinado ponto. Em cada ponto de operação é possível calcular uma matriz de confusão. Uma matriz de confusão (KANTARDZIC, 2003) representa a quantidade de casos reais e a quantidade de casos previstos pelo sistema em um determinado ponto. A quantidade de erros e a quantidade de acertos do classificador são apresentados conforme mostrado na Figura 4.6. Valor Predito t n Total t0 True Positive False Negative T0 n0 False Positive True Negative N0 Valor Correto Total T N Figura 4.6: Matriz de Confusão - Conceito Pela matriz de confusão gerada para determinado ponto de operação é possível calcular 64 4.2. AVALIAÇÃO os erros e acertos do classificador caso a decisão de classificação seja tomada nesse ponto. Os erros e acertos são analisados da seguinte forma: • True Positive (TP): número de previsões corretas para os casos realmente positivos. • False Positive (FP): número de previsões incorretas para os casos realmente negativos, classificados como positivos; • True Negative (TN): número de previsões corretas para os casos realmente negativos; • False Negative (FN): número de previsões incorretas para os casos realmente positivos, classificados como negativos; O gráfico da curva ROC tem duas dimensões nas quais Taxa de Verdadeiros Positivos (TPR - True Positive Rate) é plotada no eixo Y e a Taxa de Falsos Positivos (FPR - False Positive Rate) é plotada no eixo X. Cada ponto na curva corresponde a um dos modelos induzidos pelo classificador. O ponto (0,1) representa a classificação perfeita onde nenhum erro é gerado pelo classificador e caso o mesmo não seja atingido no gráfico, considera-se o ponto de menor distância da linha da curva até o ponto (0,1) como o melhor ponto de decisão do classificador. Apesar disso, outros fatores como o custo associado a tomada de decisão também deve ser levado em consideração. As Fórmulas 4.5 e 4.6 demonstram o cálculo realizado para gerar esses valores e montar o gráfico. TPR = TP P FPR = FP F ↵ 4.5 ⌦ ↵ 4.6 ⌦ Na medicina, especificamente na análise de desempenho de diagnósticos, são utilizadas as medidas de sensibilidade (sensitivity) e Especificidade (especificity) (CIOS; MOORE, 2002) para analisar os erros e acertos gerados pelo classificador. Para análise dos experimentos a seguir quanto o resultado do algoritmo é Anormal, considerou-se como positivo, caso contrário foi considerado negativo. A partir dos valores gerados pela matriz de confusão é possível extrair as seguintes informações (MAROCO et al., 2011): • Acurácia - A proporção de predições corretas, sem levar em consideração o que é positivo e o que é negativo. A Fórmula 4.7 mostra o cálculo para essa medida. • Sensibilidade - A proporção de verdadeiros positivos ou a capacidade do sistema em predizer corretamente a condição para casos que realmente a têm. A Fórmula 4.8 mostra o cálculo para essa medida. 65 4.2. AVALIAÇÃO • Especificidade - A proporção de verdadeiros negativos: a capacidade do sistema em predizer corretamente a ausência da condição para casos que realmente não a têm. A Fórmula 4.9 mostra o cálculo para essa medida. Acurácia = ↵ 4.7 ⌦ TP + TN P+N Sensibilidade = Especificidade = ↵ 4.8 ⌦ TP P TN FP + TN ↵ 4.9 ⌦ 4.2.2 Distância de KS - Kolmogorov-Smirnov Outra métrica que pode ser utilizada para decidir o ponto de operação de um classificador é a distância de Kolmogorov-Smirnov (FRIEDMAN, 1977) ou KS. A distância de KS serve para medir a separabilidade de duas funções de distribuição acumuladas (f.d.a). O ponto de corte ótimo (a) minimiza o risco de classificação para as classes minoritária e majoritária e esse ponto é conseguido através da maior distância entre as duas f.d.a. ( f da p (X) e f dan (X)). Assim como na curva ROC, o ponto de operação da distância de KS também gera uma matriz de confusão. Dado que um classificador X produz uma saída contínua, o ponto de operação a que separa a população em dois grupos homogêneos seria(LENCA, 2010): 1. X 6 a( Lado esquerdo do ponto) 2. X > a( Lado direito do ponto) Logo, a distância de KS, Dist(X = a), entre duas f.d.a. f da pos (X 6 a) e f daneg (X > a) é: Dist(X = a) = | f da pos (X 6 a) f daneg (X > a)| A Figura 4.7 mostra um exemplo do gráfico onde o pondo de corte a = 8 seria a maior distância de KS. 4.2.3 Lift As regras de associação são utilizadas para descobrir as relações entre as variáveis de um banco de dados (MCNICHOLAS; MURPHY; OREGAN, 2008). A relevância das regras é mensurada através das medidas de lift e confiança. Nessa pesquisa, as regras geradas a partir dos classificadores serão avaliadas através da medida Lift. 66 4.2. AVALIAÇÃO Figura 4.7: Gráfico de f.d.a para cáculo da distância de KS (LENCA, 2010) Dado que a seleção de uma regra é composta por todos os registros, o Lift é calculado como a frequência relativa de representantes de uma determinada classe dividido pela frequência relativa de representantes da mesma classe na população. O cálculo do Lift é realizado para indicar quantas vezes mais representantes de determinada classe existe em relação à média. Já a confiança é a proporção de representantes da classe dentro da seleção realizada pela regra. A Figura 4.8 mostra a representação da seleção de uma regra. Figura 4.8: Representação da seleção efetuada pela regra Baseado na Figura 4.8, temos as Equações 4.10 e 4.11: Confiança = Lift = A S A+A0 U A S ↵ 4.10 ⌦ ↵ 4.11 ⌦ 67 4.3 4.3. CONSIDERAÇÕES FINAIS Considerações Finais Neste capítulo foi mostrada uma breve teoria sobre os modelos de SVM, Árvore de Decisão e PART. Todo o processo descrito neste capítulo serviu para preparar o banco de dados para realização dos experimentos que serão explanados na Seção 5. Neste capítulo também foi proposta uma nova técnica para realizar o balanceamento de base de dados chamada de SVM com pesos + MLP. 68 5 Avaliação dos Resultados You laugh at me because I’m different. I laugh because you are all the same! —BOB MARLEY Este capítulo apresenta os experimentos realizados na base de dados analisada nessa pesquisa, utilizando técnicas de inteligência computacional. Todos os experimentos foram realizados utilizando o software de mineração de dados RapidMiner. A vantagem da utilização desse software é o fornecimento de várias ferramentas utilizadas no processo de mineração de dados, bem como os algoritmos de aprendizagem de máquina. Além disso, é possível integrar todos os algoritmos existentes no Weka. 5.1 Experimentos Os experimentos realizados utilizam SVM e Árvore de Decisão como classificadores. Ambos os algoritmos, conforme explicado nas Seções 4.1.1 e 4.1.5 necessitam a configuração de parâmetros. Conforme relatado na Seção 4.1.1, a SVM quando configurada com o Kernel RBF, é necessário que seja informado além do parâmetro C, o parâmetro gamma. Já para a Árvore de Decisão, o parâmetro que indica o nível de poda (C) também precisa ser configurado. Para identificar o melhores valores para esses parâmetros, foi utilizado AG através do operador Optimize Parameters (Evolutionary) disponível no RapidMiner. Esse operador procura os valores ótimos para um conjunto de parâmetros. A Tabela 5.1 mostra a configuração dos parâmetros utilizada. O objetivo (fitness) do AG foi encontrar o melhor parâmetro C quando utilizado o modelo de Árvore de Decisão e os melhores parâmetros C e gamma quando utilizado o modelo SVM que reproduzisses a melhor Area Under Curve ROC (AUC). Para a realização da busca dos melhores parâmetros pelo AG, o conjunto de treinamento foi dividido em 75% treinamento e 25% para teste de forma estratificada considerando o desbalanceamento existente no conjunto de dados. Para comparação dos modelos foi utilizada a validação cruzada onde o conjunto de 69 5.1. EXPERIMENTOS Tabela 5.1: Parâmetros do Algoritmo Genético para a realização do E1. Parâmetro Qtd. Máx. de Gerações Tamanho da População Prob. Crossover Seleção Critério de Parada Valor 100 50 90% Roleta 3 gerações sem evolução treinamento é particionado em k subconjuntos de forma estratificada de modo que a proporção de positivos e negativos (crianças com cardiopatia e saudáveis) seja a mesma da base de dados original (DELEN; WALKER; KADAM, 2005). Um dos subconjuntos é retirado para realização da validação cruzada e teste do modelo e os demais k - 1 subconjuntos são utilizados para o treinamento. O processo se repete por k vezes com cada um dos k (ver Figura 5.1). A vantagem desse método é que todos os exemplos do conjunto de dados são utilizados para treinamento e validação. Figura 5.1: Demonstração gráfica do procedimento de validação cruzada usando 10 folds (DELEN; WALKER; KADAM, 2005) 5.1.1 Árvore de Decisão O primeiro experimento foi realizado utilizando Árvore de Decisão. Conforme relatado na Seção 4.1.5, esse tipo de classificador é muito utilizado no campo da medicina pois sua saída pode ser representada através de um conjunto de regras if-then facilitando a leitura dos resultados pelo especialista do negócio. Como o foco dessa pesquisa é a classificação de pacientes com cardiopatia que têm o sopro cardíaco como sintoma, é interessante que o cardiologista possa entender como os algoritmos chegaram a tal decisão de modo que eles possam avaliar/validar os resultados. A extração do conhecimento da base de dados e geração de regras também poderá trazer relações completamente desconhecidas através das variáveis utilizadas como entrada para os classificadores. Inicialmente a base de dados utilizada foi a resultante do pré-processamento feito na Seção 3.1.3. Como foi possível constatar na Tabela 3.14, a quantidade de pacientes saudáveis é três vezes maior que a quantidade de pacientes doentes. A primeira parte desse experimento 70 5.1. EXPERIMENTOS não levou em consideração nenhuma técnica de desbalanceamento para tentar resolver esse problema. Através do operador Optimize Parameters (Evolutionary) do RapidMiner o AG foi executado com o objetivo de encontrar o melhor parâmetro C para a Árvore de Decisão. Esse algoritmo permite definir, através de sua propriedade Grid/Range, o valor mínimo e máximo do parâmetro que está sendo otimizado. Para o parâmetro C da Árvore de Decisão foi utilizado o intervalo de 0 e 1 (valores acima de 1 casou um Overfitting). O AG executou uma busca nesse intervalo com os parâmetros definidos na Tabela 5.1 até que não houvesse evolução na AUC após três gerações seguidas. Em cada execução, 75% do conjunto de treinamento foi utilizado para treinar o modelo e 25% para realização de testes e cálculo das métricas. A Tabela 5.2 mostra um resumo da otimização e os resultados. Tabela 5.2: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento desbalanceado. Informação Quantidade de Execuções Melhor Parâmetro C Sensibilidade Especificidade AUC Valor Final Média(dp) 868 0,5303 67,88% 50,27% (0,05%) 86,62% 93,69% (0,03%) 0,802 0,742 (0,031) Após a execução, o conjunto de teste foi utilizado para avaliar o modelo considerando o melhor parâmetro C encontrado. Conforme relatado na Seção 4.2, tanto a AUC como a distância de KS foram utilizadas para avaliação de desempenho dos modelos. As Figuras 5.2 e 5.3 mostram, respectivamente, os gráficos da curva ROC e de KS para esse modelo. A distância de KS conseguida no conjunto de teste foi de 0,497 o que garante uma sensibilidade de 63,0%. Logo, caso essa métrica fosse utilizada, o ponto de corte do classificador seria no escore = 0,222. Entretanto, a AUC conseguida para esse modelo no conjunto de teste foi de 0,764 e caso o melhor ponto de operação da curva ROC fosse considerado para esse classificador, com escore = 0,085, o mesmo conseguiria uma sensibilidade de 75,6% classificando corretamente 102 pacientes cardiopatas dos 135 existentes no conjunto de testes. A Tabela 5.3 mostra a matriz de confusão encontrada para o melhor ponto de operação da curva ROC. As Tabelas 5.9 e 5.10, no final desse experimento, mostram o resumo dos experimentos realizados utilizando Árvore de Decisão como classificador incluindo as métricas de sensibilidade, especificidade e acurácia. 5.1.2 Árvore de Decisão + SMOTE Os resultados apresentados na Seção anterior foram conseguidos utilizando o banco de dados desbalanceado para treinamento do classificador. Para tentar melhorar os resultados, 71 5.1. EXPERIMENTOS Figura 5.2: Curva ROC do modelo de Árvore de Decisão no conjunto de Teste Figura 5.3: Gráfico de KS do modelo Árvore de Decisão no conjunto de teste Tabela 5.3: Matriz de confusão para o modelo de Árvore de Decisão considerando o melhor ponto de operação da curva ROC. Valor Predito Anormal Normal Valor Correto Anormal Normal 102(17%) 137(23%) 33(6%) 325(54%) 72 5.1. EXPERIMENTOS o SMOTE (Seção 4.1.8) foi utilizado para reduzir o desbalanceamento onde é feito um oversamping na classe minoritária. O objetivo é tentar verificar se a Árvore de decisão melhoraria o resultado, caso utilizasse uma base de dados menos desbalanceada. O SMOTE foi aplicado apenas ao conjunto de treinamento utilizando os seguintes valores: 50%, 100%, 150% e 200%. Esses valores correspondem ao percentual de incremento da classe minoritária, nesse caso, a classe de pacientes com cardiopatia, que é realizado na base de dados a qual a técnica é aplicada. A Tabela 5.4 mostra como ficou a distribuição de cada um dos quatro conjuntos de treinamento após a aplicação da técnica. Tabela 5.4: Conjuntos de Treinamento após a aplicação do SMOTE. SMOTE 50% 100% 150% 200% Proporção 70:30 63:37 58:42 53:47 NORMAIS ANORMAIS Total 1384 606 1990 1384 808 2192 1384 1010 2394 1384 1212 2596 Para cada conjunto de treinamento, o mesmo procedimento foi realizado. O AG foi executado com o objetivo de encontrar o melhor parâmetro C para os quatro modelos, sendo um modelo para cada conjunto de treinamento alterado pelo SMOTE. As Tabelas 5.5, 5.6, 5.7 e 5.8 mostram o resumo do AG utilizado para encontrar o melhor parâmetro C considerando os conjuntos de treinamentos alterados pelo SMOTE. Tabela 5.5: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento resultante do SMOTE 50%. Informação Quantidade de Execuções Melhor Parâmetro C Sensibilidade Especificidade AUC Valor Final Média(dp) 868 0,5303 67,88% 50,27% (0,05%) 86,62% 93,69% (0,03%) 0,802 0,742 (0,031) Tabela 5.6: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento resultante do SMOTE 100%. Informação Quantidade de Execuções Melhor Parâmetro C Sensibilidade Especificidade AUC Valor Final Média(dp) 909 0,7662 71,64% 66,50% (0,04%) 86,41% 87,09% (0,03%) 0,847 0,780 (0,021) 73 5.1. EXPERIMENTOS Tabela 5.7: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento resultante do SMOTE 150%. Informação Quantidade de Execuções Melhor Parâmetro C Sensibilidade Especificidade AUC Valor Final Média(dp) 587 0,4805 76,68% 71,13% (0,03%) 84,93% 84,48% (0,03%) 0,848 0,749 (0,018) Tabela 5.8: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da Árvore de Decisão com o conjunto de treinamento resultante do SMOTE 200%. Informação Quantidade de Execuções Melhor Parâmetro C Sensibilidade Especificidade AUC Valor Final Média(dp) 762 0,1407 76,60% 74,91% (0,03%) 84,29% 82,43% (0,03%) 0,855 0,803 (0,017) Após encontrar os melhores parâmetros para os quarto modelos, sendo um para cada conjunto de treinamento, o conjunto de testes foi utilizado para analisar o desempenho de cada um. As Figuras 5.4 e 5.5 mostram, respectivamente, as curvas ROC e a distâncias de KS para cada modelo quando aplicados ao conjunto de testes. As Tabelas 5.9 e 5.10 mostram o resumo dos resultados obtidos com todos os experimentos utilizando Árvore de Decisão. Tabela 5.9: Resultados obtidos no conjunto de teste quando utilizado o melhor ponto de operação da curva ROC. Valor Verdadeiro Anormal Normal Métricas ROC Especificidade Modelo AUC Escore ROC Predito Decision Tree (DT) 0,764 0,08543 Anormal Normal 102 33 137 325 75,6% 70,3% 71,5% DT Smote 50 0,718 0,11779 Anormal Normal 89 46 108 354 65,9% 76,6% 74,2% DT Smote 100 0,758 0,29661 Anormal Normal 90 45 87 375 66,7% 81,2% 77,9% DT Smote 150 0,716 0,23214 Anormal Normal 90 45 118 344 66,7% 74,5% 72,7% DT Smote 200 0,756 0,25000 Anormal Normal 90 45 92 370 66,7% 80,1% 77,1% Sensibilidade Acurácia 74 5.1. EXPERIMENTOS Figura 5.4: Curvas ROC dos modelos de Árvore de Decisão aplicados ao conjunto de testes Figura 5.5: Gráfico com as distâncias de KS dos modelos de Árvore de Decisão aplicados ao conjunto de testes 75 5.1. EXPERIMENTOS Tabela 5.10: Resultados obtidos no conjunto de teste quando utilizado como melhor ponto de operação a distância de KS. Valor Verdadeiro KS Anormal Normal Sensibilidade Métricas KS Especificidade Acurácia 62 400 63,0% 86,6% 81,2% 82 53 74 388 60,7% 84,0% 78,7% Anormal Normal 90 45 87 375 66,7% 81,2% 77,9% 0,80000 Anormal Normal 71 64 47 415 52,6% 89,8% 81,4% 0,25000 Anormal Normal 90 45 92 370 66,7% 80,1% 77,1% Modelo Distância KS Escore KS Predito Decision Tree (DT) 0,497 0,22222 Anormal Normal 85 50 DT Smote 50 0,449 0,23077 Anormal Normal DT Smote 100 0,480 0,29661 DT Smote 150 0,426 DT Smote 200 0,468 Nas duas Tabelas (5.9 e 5.10) é possível observar que o ponto de operação (escore) são diferentes para cada modelo, com exceção do modelo treinado com SMOTE 200%. Baseado nos resultados demonstrados nessas Tabelas, o modelo de Árvore de Decisão aplicado ao banco de dados desbalanceado obteve os melhores resultados considerando as duas métricas de avaliação (ROC e KS). Além de produzir a melhor AUC, a Árvore de Decisão aplicada ao conjunto original de treinamento (sem SMOTE) também produziu a maior separabilidade entre as duas classes (Normal e Anormal) com uma distância KS de 0,497. Esse modelo também conseguiu a melhor sensibilidade 75,6% quando comparado com os demais modelos. Dessa forma, no quesito sensibilidade, a Árvore de Decisão não teve nenhum ganho quando tentou-se resolver o problema do desbalanceamento utilizando a técnica SMOTE. Mesmo com o conjunto de treinamento desbalanceado, a Árvore de Decisão conseguiu classificar a maior quantidade de cardiopatas. 76 5.1. EXPERIMENTOS 5.1.3 SVM Os experimentos anteriores foram realizados utilizando Árvore de Decisão. Entretanto, conforme relatado na Seção 4.1.1, o SVM tem obtido melhores resultados em várias aplicações. Especificamente na medicina, essa técnica tem sido utilizada na área da cardiologia (SU; YANG, 2008),(AVCI, 2009). Dessa forma, para tentar melhorar os resultados obtidos no Experimento 1, esse experimento irá repetir os procedimentos realizados anteriormente, entretanto utilizando SVM como classificador. O procedimento se inicia utilizando a base de dados desbalanceada, conforme mostrado na Tabela 3.14, a quantidade de pacientes com cardiopatia é três vezes menor que a quantidade de pacientes saudáveis. A função de kernel utilizada para esse experimento foi RBF e dessa forma, além do parâmetro C (soft margin constant) há a necessidade da configuração do parâmetro gamma. Para tanto, o operador Optimize Parameters (Evolutionary) do RapidMiner foi configurado para tentar encontrar os melhores parâmetros da SVM. A propriedade Grid/Range foi configurada com os valores máximos e mínimos tanto para o C quanto para o gamma, o valor mínimo e máximo do parâmetro que está sendo otimizado. Esse valores foram configurados com o mínimo de 0 e o máximo de 50 e assim como na Árvore de Decisão, o AG executou uma busca nesse intervalo com os parâmetros definidos na Tabela 5.1 até que não houvesse evolução na AUC após três gerações seguidas. Em cada execução, 75% do conjunto de treinamento foi utilizado para treinar o modelo e 25% para realização de testes e cálculo das métricas. Inicialmente o conjunto de treinamento desbalanceado foi utilizado para saber o desempenho do SVM. A Tabela 5.11 mostra um resumo da otimização dos parâmetros. Tabela 5.11: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM para o conjunto de treinamento desbalanceado. Informação Quantidade de Execuções Melhor Parâmetro C Melhor Parâmetro gamma Sensibilidade Especificidade AUC Valor Final Média(dp) 1198 18,5368 0,1406 63,50% 56,45% (0,07%) 92,57% 86,65% (0,07%) 0,850 0,762 (0,022) Após encontrar os melhores parâmetros para o modelo SVM, esse modelo foi testado com o conjunto de teste para avaliar os resultados. Assim momo na Árvore de Decisão, a AUC e a distância de KS também foram utilizadas para avaliação de desempenho. As Figuras 5.6 e 5.7 mostram, respectivamente, os gráficos da curva ROC e de KS para esse modelo. A distância de KS conseguida no conjunto de teste foi de 0,505 o que garante uma sensibilidade de 57,0%. Logo, caso essa métrica fosse utilizada, o ponto de corte do classificador 77 5.1. EXPERIMENTOS Figura 5.6: Curva ROC do modelo SVM no conjunto de Teste Figura 5.7: Gráfico de KS do modelo SVM no conjunto de Teste seria no escore = 0,2923. Entretanto, a AUC conseguida para esse modelo no conjunto de teste foi de 0,774 e caso o melhor ponto de operação da curva ROC fosse considerado para esse classificador, com escore = 0,2722, o mesmo conseguiria uma sensibilidade de 64,4% classificando corretamente 87 pacientes cardiopatas dos 135 existentes no conjunto de testes. A Tabela 5.12 mostra a matriz de confusão encontrada para o melhor ponto de operação da curva ROC. As Tabelas 5.17 e 5.18, no final desse experimento, mostra o resumo dos experimentos realizados 78 5.1. EXPERIMENTOS utilizando SVM como classificador incluindo as métricas de sensibilidade, especificidade e acurácia. Tabela 5.12: Matriz de confusão para o modelo SVM considerando o melhor ponto de operação da curva ROC. Valor Predito Anormal Normal Valor Correto Anormal Normal 87(15%) 80(13%) 48(8%) 382(64%) A sensibilidade conseguida pela SVM (64,4%) foi pior do que a sensibilidade conseguida pela Árvore de Decisão (75,6%). Isso pode se justificar pelo fato de que o SVM é mais sensível ao desbalanceamento do conjunto de dados. Contudo, para validar a diferença nessas métricas, no final dessa Seção serão realizados testes de hipóteses com o objetivo de identificar essas diferenças com significância estatística. 79 5.1. EXPERIMENTOS 5.1.4 SVM + SMOTE O fato do conjunto de treinamento estar desbalanceado também pode ter influenciado no treinamento do modelo SVM apresentado anteriormente. Dessa forma, assim como foi feito no experimento 1 os conjuntos de treinamentos modificados através da aplicação da técnica SMOTE, conforme mostrado na Tabela 5.4, também foram utilizados para avaliar o desempenho da SVM considerando esse cenário. Para cada conjunto de treinamento, o mesmo procedimento foi realizado. O AG foi executado com o objetivo de encontrar os melhores parâmetros C gamma para os quatro modelos, sendo um modelo para cada conjunto de treinamento alterado pelo SMOTE. As Tabelas 5.13, 5.14, 5.15 e 5.16 mostram o resumo do AG utilizado para encontrar o melhor parâmetro C considerando os conjuntos de treinamentos alterados pelo SMOTE. Tabela 5.13: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM com o conjunto de treinamento resultante do SMOTE 50%. Informação Quantidade de Execuções Melhor Parâmetro C Melhor Parâmetro gamma Sensibilidade Especificidade AUC Valor Final Média(dp) 868 39,7311 27,4651 71,84% 60,84% (0,04%) 84,93% 89,19% (0,02%) 0,846 0,817 (0,017) Tabela 5.14: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM com o conjunto de treinamento resultante do SMOTE 100%. Informação Quantidade de Execuções Melhor Parâmetro C Melhor Parâmetro gamma Sensibilidade Especificidade AUC Valor Final Média(dp) 742 13,2543 8,4151 70,55% 67,13% (0,04%) 91,30% 87,37% (0,02%) 0,886 0,840 (0,013) Tabela 5.15: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM com o conjunto de treinamento resultante do SMOTE 150%. Informação Quantidade de Execuções Melhor Parâmetro C Melhor Parâmetro gamma Sensibilidade Especificidade AUC Valor Final Média(dp) 1038 26,8334 10,4652 75,51% 73,08% (0,03%) 85,99% 84,36% (0,02%) 0,889 0,854 (0,013) 80 5.1. EXPERIMENTOS Tabela 5.16: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros da SVM com o conjunto de treinamento resultante do SMOTE 200%. Informação Quantidade de Execuções Melhor Parâmetro C Melhor Parâmetro gamma Sensibilidade Especificidade AUC Valor Final Média(dp) 585 18,4733 12,7874 77,67% 76,21% (0,03%) 87,69% 83,20% (0,02%) 0,897 0,857 (0,013) Após a execução do AG os quatro melhores modelos (melhor AUC) foram utilizados para fazer a classificação no conjunto de teste para análise de desempenho de cada um. As Figuras 5.8 e 5.9 mostram, respectivamente, as curvas ROC e a distâncias de KS para cada modelo quando aplicados ao conjunto de testes. As Tabelas 5.17 e 5.18 mostram o resumo dos resultados obtidos com todos os experimentos utilizando SVM. Figura 5.8: Curvas ROC dos modelos de SVM aplicados ao conjunto de testes 81 5.1. EXPERIMENTOS Figura 5.9: Gráfico com as distâncias de KS dos modelos de SVM aplicados ao conjunto de testes Tabela 5.17: Resultados obtidos no conjunto de teste quando utilizado como melhor ponto de operação a curva ROC. Valor Verdadeiro Anormal Normal Métricas ROC Especificidade Modelo AUC Escore ROC Predito SVM 0,774 0,2722 Anormal Normal 87 48 80 382 64,4% 82,7% 78,6% SVM SMOTE 50 0,762 0,3232 Anormal Normal 96 39 124 338 71,1% 73,2% 72,7% SVM SMOTE 100 0,764 0,3940 Anormal Normal 91 44 86 376 67,4% 81,4% 78,2% SVM SMOTE 150 0,758 0,3520 Anormal Normal 97 38 120 342 71,9% 74,0% 73,5% SVM SMOTE 200 0,760 0,3825 Anormal Normal 98 37 125 337 72,6% 72,9% 72,9% Sensibilidade Acurácia Dos experimentos apresentados até aqui, o modelo SVM com o conjunto de treinamento SMOTE 150% foi o que apresentou a melhor acurácia, ou seja, foi o que conseguiu classificar mais pacientes corretamente. Todavia, conforme explicado na Seção 4.1.2, a acurácia não é um bom meio para medir o sucesso de um classificador aplicado à banco de dados desbalanceados. Não é difícil encontrar um classificador que tenha um bom desempenho sobre a classe majoritária. Além de outras métricas as Tabelas 5.17, 5.18 mostram as matrizes de confusão alcançados por cada modelo considerando o conjunto de treinamento desbalanceado e alterado pelo SMOTE. Analisando detalhadamente cada matriz de confusão, é possível observar que o melhor modelo é o SMOTE 200% consegue classificar mais pacientes cardiopatas. Isso se deve à redução do balanceamento efetuado, pois o conjunto de treinamento desse modelo estava com 82 5.1. EXPERIMENTOS Tabela 5.18: Resultados obtidos no conjunto de teste quando utilizado como melhor ponto de operação a distância de KS. Valor Verdadeiro KS Anormal Normal Sensibilidade Métricas KS Especificidade Acurácia 30 432 57,0% 93,5% 85,3% 91 44 105 357 67,4% 77,3% 75,0% Anormal Normal 84 51 51 411 62,2% 89,0% 82,9% 0,6417 Anormal Normal 76 59 39 423 56,3% 91,6% 83,6% 0,6480 Anormal Normal 75 60 42 420 55,6% 90,9% 82,9% Modelo Distância KS Escore KS Predito SVM 0,505 0,2923 Anormal Normal 77 58 SVM SMOTE 50 0,447 03468 Anormal Normal SVM SMOTE 100 0,512 0,5179 SVM SMOTE 150 0,479 SVM SMOTE 200 0,467 a proporção 53:47, conforme mostrado na Tabela 5.4. Isso garante à esse classificador a melhor sensibilidade. Já o modelo encontrado para o conjunto de treinamento SMOTE 100% garante a melhor especificidade, sendo este o que melhor classifica os pacientes saudáveis. Os resultados também demonstram que na prática, a sensibilidade e a especificidade variam em direções opostas. Isto é, geralmente, quando um método é muito sensível a positivos, tende a gerar muitos falso-positivos, e vice-versa. Assim, um método de decisão perfeito (100% de sensibilidade e 100% especificidade) raramente é alcançado, e um balanço entre ambos deve ser atingido. Considerando o fato de que o problema de pesquisa é a classificação de crianças com cardiopatia, a sensibilidade será levada em consideração de modo que o classificador treinado com o conjunto de treinamento SMOTE 200% seria o mais indicado quando comparado com os demais. Essa sensibilidade de 72,6% é menor do que a sensibilidade conseguida pela Árvore de Decisão (75,6%). 5.1.5 SVM com pesos (Weighted) Embora o AG ter sido utilizado para seleção dos melhores parâmetros da SVM, o parâmetro C é igual para cada amostra do treinamento e é utilizado sem nenhuma discriminação entre a classe majoritária (os pacientes saudáveis) e a classe minoritária (pacientes com cardiopatia). No entanto, em muitas aplicações, como é o caso dessa pesquisa, uma classe específica (cardiopatas) pode ser mais importante que outra, sendo interessante que o modelo consiga classificar essas classes mais corretamente, enquanto a outra classe, menos significativa, pode tolerar mais erros de classificação (DU; CHEN, 2005). Além do SMOTE, outra técnica foi utilizada nessa pesquisa com o objetivo de diminuir o desbalanceamento das classes melhorando a sensibilidade do classificador. A SVM com pesos é um método que tenta contornar o problema do desbalanceamento de classes, sendo possível atribuir um peso ao parâmetro C-SVM de modo que cada classe do conjunto de treinamento tenha uma ponderação diferente. 83 5.1. EXPERIMENTOS Seguindo a Fórmula 4.4 descrita em BEN-HUR; WESTON (2010) e definindo n como o número de exemplos da classe Normal e n+ como o número de exemplos da classe Anormal e C+ +C = 1, é possível calcular o peso (weight) que será utilizado para cada classe. n+ = 404 n = 1384 N = n+ + n ) N = 404 + 1384 ) N = 1788 temos: C+ n+ = C n ou: n+ 1384 ) C+ = ) C+ = 0, 774049 N 1788 n 404 C = )C = ) C = 0, 225951 N 1788 Uma vez identificado os pesos que serão atribuídos a cada classe, os parâmetros mostrados na Tabela 5.1 foram utilizados novamente para configurar o AG com o objetivo de encontrar os melhores parâmetros para o modelo SVM seguindo o mesmo procedimento dos experimentos anteriores. É possível visualizar o resumo do treinamento da SVM com pesos através da Tabela 5.19. Comparando-a com os experimentos anteriores observar-se que o melhor modelo encontrado obteve uma AUC de 0,846 no conjunto de treinamento. Se comparado com os experimentos anteriores constata-se que essa AUC é igual a AUC conseguida pela SVM treinada com o conjunto de treinamento SMOTE 50% e menor do que os modelos SVM treinados com os conjuntos de treinamento SMOTE 100%, SMOTE 150% e SMOTE 200%. Apesar disso, o desempenho desse modelo no conjunto de testes foi superior aos demais desempenhos apresentados até aqui. C+ = Tabela 5.19: Resumo da execução do algoritmo genético para encontrar os melhores parâmetros do SVM com pesos no conjunto de treinamento desbalanceado. Informação Quantidade de Execuções Melhor Parâmetro C Melhor Parâmetro gamma Sensibilidade Especificidade AUC Valor Final Média(dp) 760 14,7994 2,9559 81,75% 67,79% (0,04%) 76,43% 82,12% (0,02%) 0,846 0,789 (0,024) A Figura 5.10 e 5.11 representam, respectivamente, a curva ROC e o gráfico de distância de KS. Além da AUC desse modelo ter sido a melhor, a distância de KS também foi a maior 84 5.1. EXPERIMENTOS conseguida entre todos os modelos. Tanto a curva ROC quanto a distância de KS têm como melhor ponto de operação o escore 0,3806. Dessa forma, uma única matriz de confusão (Tabela 5.20) é gerada, dado que ambas as métricas utilizam o mesmo escore. Figura 5.10: Curva ROC do modelo SVM no conjunto de Teste para o Experimento 3 Figura 5.11: Gráfico de KS do modelo SVM no conjunto de Teste para o Experimento 3 O classificador SVM com pesos obteve a maior sensibilidade no conjunto de testes, quando comparado com os demais experimentos até então realizados. A sensibilidade de 76,3% tornou-o o modelo que consegue melhor classificar os pacientes com cardiopatia. O único 85 5.1. EXPERIMENTOS modelo que chegou próximo desse valor foi a Árvore de Decisão que classificou corretamente 102 pacientes cardiopatas conseguindo uma sensibilidade de 75,6%. Entretanto, a especificidade do modelo de Árvore de Decisão foi de 70,3% classificando apenas 325 pacientes saudáveis. O classificador SVM com pesos teve uma especificidade de 76,6% classificando 354 pacientes saudáveis. A acurácia da SVM com pesos também foi maior do que a do modelo de Árvore de Decisão ficando com 76,5% contra 71,5%. Tabela 5.20: Matriz de confusão para o modelo SVM considerando o melhor ponto de operação da curva ROC. Valor Predito Anormal Normal Valor Correto Anormal Normal 103(17%) 108(18%) 32(5%) 354(59%) Apesar desses números serem a favor do modelo SVM com pesos, os testes de hipótese precisaram ser realizados com o objetivo de comprovar essa diferença com significância estatística. Na Seção 5.2 serão mostrados os resultados de tais testes. 5.1.6 SVM com pesos + MLP Conforme relatado na Seção anterior, SVM + MLP foi uma abordagem utilizada em FARQUAD; BOSE (2012) onde o modelo SVM funcionou como um pré-processador, gerando um novo conjunto de treinamento balanceado, utilizado para treinar uma Rede Neural MLP. Os parâmetros C’s utilizados para implementação do método foram: 0,8, 5, 10, 50, 100, 500, 1.000, 5.000, 10.000, 50.000, 100.000, 500.000, 1.000.0000 e 5.000.000. Entretanto, apesar da alta variação do parâmetro C, esse método não funcionou em bases de dados médicas. Dado que a utilização de pesos em um modelo SVM exerce de fato uma influência na classificação considerando o desbalanceamento da base de dados, essa técnica foi utilizada como um pré-processador de uma Rede Neural MLP e chamada de SVM com pesos + MLP. O objetivo foi o mesmo de FARQUAD; BOSE (2012): criar um novo conjunto de treinamento, menos desbalanceado para servir de entrada para a MLP. Diferentemente de FARQUAD; BOSE (2012), que utilizaram um kernel RBF, a abordagem aqui proposta utiliza um kernel linear com o parâmetro C = 1 (visto que esse modelo só servirá para balancear os dados). O parâmetro C de um modelo SVM serve para penalizar as classificações erradas. Os pesos definidos no modelo de SMV com pesos serve para calcular o percentual de penalização para cada classe. Visto que o objetivo é balancear o conjunto de dados, o peso definido para o parâmetro C da classe minoritária é igual a 1, ou seja, a penalidade será maior. No entanto, o peso atribuído ao parâmetro C da classe majoritária é <1. Desse modo, o peso funcionará como um percentual de penalização da classe. Por exemplo: se o peso da classe majoritária for igual a 0,5, isso significa que a penalidade atribuída aos erros da margem será 86 5.1. EXPERIMENTOS menor (metade). Quando isso acontece (penalização menor), o modelo de SVM retornará mais falsos positivos, diminuindo o desbalanceamento. A Tabela 5.21 mostra as bases de dados médicas utilizadas nesse experimento, bem o novo conjunto de dados gerado pelo modelo SVM com pesos usado como pré-processador. Tabela 5.21: Resultado do balanceamento utilizando SVM com pesos como balanceador. Base de Dados Cardiologia Pediátrica Cancer Diabetes Conj. De Treinamento Original Doente Saudável 404 (22%) 1384 (78%) 64 (29%) 151 (71%) 201 (34%) 375 (66%) Peso 0,1215 0,255 0,4 Novo Conj. De Treinamento Doente Saudável 891 (49%) 897 (51%) 103 (47%) 112 (53%) 278 (48%) 298 (52%) Através desse experimento é possível observar que um novo conjunto de treinamento balanceado pode ser criado a partir da saída de um modelo SVM linear com pesos, desde que seja atribuído um peso na classe majoritária de modo que diminua a penalidade dos erros de classificação da classe da mesma. A Tabela 5.21 mostra o resultado do balanceamento. De posse do conjunto de dados balanceado, o mesmo foi utilizado para treinar uma Rede Neural MLP. No RapidMiner existe um operador chamado “AutoMLP”. Esse operador é um algoritmo simples que utiliza também os conceitos de AG’s para encontrar os melhores parâmetros de taxa de aprendizagem, momentum e quantidade de neurônios na camada escondida da MLP. As Figuras 5.12 e 5.13 mostram, respectivamente, a curva ROC e o gráfico da distância de KS conseguida por esse modelo. Figura 5.12: Curva ROC do modelo SVM com pesos + MLP aplicado ao conjunto de teste Esse modelo foi o que conseguiu a maior AUC e a maior distância de KS. A Tabela 5.22 mostra a matriz de confusão quando esse modelo foi aplicado ao conjunto de teste da base de 87 5.1. EXPERIMENTOS Figura 5.13: Gráfico com a distância de KS do modelo SVM com pesos + MLP aplicado ao conjunto de teste dados utilizada nesse trabalho. A Seção 5.2 mostrará a comparação dos resultados obtidos por esse modelo com os demais. Tabela 5.22: Matriz de confusão para o modelo SVM com pesos + MLP. Valor Predito Anormal Normal Valor Correto Anormal Normal 109(18%) 129(22%) 26(4%) 333(56%) 88 5.2 5.2. COMPARAÇÃO DOS RESULTADOS Comparação dos Resultados Para realização dos testes, todos os modelos mostrados até então foram executados com todo o banco de dados, utilizando a validação cruzada k-fold (k=10). Conforme explicado na Seção 4.2, o conjunto é particionado em k subconjuntos de forma estratificada, mantendo a proporção de pacientes com cardiopatia e pacientes saudáveis. Para realizar essa comparação, todo o conjunto de dados foi utilizado. Após 10 execuções é possível obter as métricas (sensibilidade, especificidade e acurácia) de cada execução e realizar os testes estatísticos. Os testes irão comparar se há diferença com significância nas médias das métricas de cada modelo quando aplicados ao banco de dados completo. Antes de decidir qual teste estatístico será utilizado para realizar as comparações foi necessário identificar se as distribuições de cada métrica seguem a distribuição normal. Isso é importante para definir se serão utilizados Testes Paramétricos ou Testes Não-Paramétricos. Para testar a normalidade das distribuições foi utilizado o teste de Lilliefors (Kolmogorov-Smirnov) (DALLAL; WILKINSON, 1986). O software R Statistics foi utilizado para realização de todos os testes estatísticos realizados nesse trabalho. Os testes de normalidade são avaliados considerando as seguintes hipóteses: ( Ha = Não segue a distribuição normal H0 = Segue a distribuição normal Os resultados dos testes são avaliados através do p-value que corresponde ao menor nível de significância que pode ser assumido para rejeitar a hipótese nula. A Tabela 5.23 mostra os valores (p-value) encontrados para cada teste de hipótese realizado. Tabela 5.23: Resultado do teste de hipótese de normalidade da distribuição com nível de significância de 0,05. Teste de Normalidade Sensibilidade Especificidade Acurácia D.T. 0,4258 0,9897 0,0720 D.T. SMOTE 100 0,4258 0,9897 0,0720 D.T. SMOTE 150 0,6113 0,0995 0,5504 D.T. SMOTE 200 0,8511 0,1773 0,6825 D.T. SMOTE 50 0,4258 0,9897 0,0720 SVM 0,6126 0,3568 0,5303 SVM SMOTE 100 0,1486 0,2599 0,0312 SVM SMOTE 150 0,2790 0,0418 0,7833 SVM SMOTE 200 0,0148 0,3046 0,1807 SVM SMOTE 50 0,7138 0,2397 0,2132 SVM com pesos 0,1280 0,4964 0,1795 SVM com pesos + MLP 0,7859 0,1514 0,0722 Modelo Analisando a Tabela 5.23 é possível observar as distribuições que não seguem a distribui- 89 5.2. COMPARAÇÃO DOS RESULTADOS ção normal são: sensibilidade do modelo SVM SMOTE 200%, a especificidade do modelo SVM SMOTE 150% e a acurácia do modelo SVM SMOTE 100%. A ANOVA é um teste de comparação entre três ou mais grupos onde verifica-se se um ou mais grupos diferem dos demais. Entretanto, a utilização da ANOVA parte da suposição de que as observações seguem a distribuição normal. Visto nem todas as distribuições que serão comparadas seguem a distribuição normal, os testes foram realizados utilizando o Teste de Kruskal-Wallis. O Teste de Kruskal-Wallis é uma versão não-paramétrica da ANOVA e é utilizado quando nem sempre as amostras seguem a distribuição normal, quando contém outliers e quando o tamanho das amostras são pequenas (THEODORSSON-NORHEIM, 1986). É normalmente utilizado para testar a hipótese de que três ou mais populações têm a mesma distribuição, sendo uma das técnicas mais utilizadas para comparação de vários grupos (BIOESTATíSTICA TóPICOS AVANçADOS, 2008). A Tabela 5.24 mostra o resumo com a média e respectivo desvio padrão para cada amostra coletada através da validação cruzada k-fold (k=10). Tabela 5.24: Resumo das médias (d.p.) de cada métrica por classificador. Modelo D.T. D.T. SMOTE 100 D.T. SMOTE 150 D.T. SMOTE 200 D.T. SMOTE 50 SVM SVM SMOTE 100 SVM SMOTE 150 SVM SMOTE 200 SVM SMOTE 50 SVM com pesos SVM com pesos + MLP Sensibilidade Média D.p 49,5% 0,08 49,5% 0,08 49,0% 0,08 46,5% 0,08 49,5% 0,08 44,9% 0,10 48,6% 0,08 50,1% 0,07 49,9% 0,06 50,8% 0,07 71,0% 0,06 50,6% 0,09 Especificidade Média D.p 94,4% 0,03 94,4% 0,03 94,8% 0,03 96,5% 0,03 94,4% 0,03 95,7% 0,02 96,3% 0,02 94,8% 0,02 94,6% 0,02 91,0% 0,02 81,7% 0,04 95,5% 0,02 Acurácia Média D.p 84,2% 0,02 84,2% 0,02 84,4% 0,02 85,2% 0,01 84,2% 0,02 84,2% 0,01 85,5% 0,02 84,7% 0,02 84,5% 0,02 81,9% 0,02 79,3% 0,02 85,3% 0,03 Gráfico de boxplot serve para uma avaliação rápida e bem resumida de uma amostra numérica. Os Gráficos 5.14, 5.15 e 5.16 mostram respectivamente a sensibilidade, especificidade e acurácia para cada modelo. Esses gráficos também constituem outra visão da Tabela 5.24 onde, por exemplo, é possível observar que a média da sensibilidade do modelo SVM com pesos é maior do que a dos demais modelos (ver Figura 5.14). Visualmente, pelos gráficos de boxplot é possível observar qual modelo se sobressai para cada métrica. Entretanto o teste de hipótese a seguir foi realizado para constatar essa diferença com significância estatística: 90 5.2. COMPARAÇÃO DOS RESULTADOS Figura 5.14: Gráfico de boxplot dos valores de sensibilidade (k-fold) Figura 5.15: Gráfico de boxplot dos valores de especificidade (k-fold) ( Ha = µModelo 6= µ para pelo menos para um modelo H0 = µModelo 1 = µModelo 2 = . . . = µModelo n = µ Onde µ representa a média de cada modelo. O teste foi realizado para as três métricas, retornando os seguintes resultados: • Sensibilidade: p-value = 0,001786. Como p-value<0,05, rejeita-se a hipótese nula com ao 91 5.2. COMPARAÇÃO DOS RESULTADOS Figura 5.16: Gráfico de boxplot dos valores de acurácia (k-fold) nível de significância de 0,05. • Especificidade: p-value = 1,808e-06. Como p-value<0,05, rejeita-se a hipótese nula com ao nível de significância de 0,05. • Acurácia: p-value = 4,976e-06. Como p-value<0,05, rejeita-se a hipótese nula com ao nível de significância de 0,05. Uma vez que a hipótese nula foi rejeitada, é provável haver uma diferença entre as médias dos tratamentos e por isso faz-se necessário saber quais dentre as médias apresentam diferenças significativas. Analisando a Tabela 5.24 juntamente com o gráfico da Figura 5.14 é possível observar que a sensibilidade do modelo SVM com pesos tem uma média maior que os demais modelos. O teste de hipótese realizado acima apenas identifica se há diferença entre os grupos. Como houve diferença entre os grupos com significância estatística, há a necessidade de se descobrir onde estão as diferenças. Para tanto, o teste de Bonferroni (ou post-hoc) é executado para saber quais dentre os grupos as médias apresentam diferenças significativas. O teste de Bonferroni foi executado para as três variáveis: sensibilidade, especificidade e acurácia. As Tabelas 5.25, 5.26 e 5.27 mostram os resultados obtidos no testes. Pela Tabela 5.25 é possível perceber que o modelo SVM com pesos é o grupo que provocou a diferença no teste de hipótese. Para validar essa afirmação, o Teste de Kruskal-Wallis foi realizado novamente, dessa vez sem a amostra desse modelo, comparando apenas as demais amostras. O resultado do teste foi p-value = 0,8933 não rejeitando-se a hipótese nula e concluindo que a sensibilidade do modelo SVM com pesos difere de todos os grupos. 92 5.3. EXTRAÇÃO DE REGRAS Tabela 5.25: Teste de Bonferroni comparando a Sensibilidade entre os grupos. Sensibilidade D.T. S 100 D.T. S 150 D.T. S 200 D.T. S 50 SVM SVM S 100 SVM S 150 SVM S 200 SVM S 50 SVM W. + MLP SVM com Pesos D.T. D.T. S 100 D.T. S 150 D.T. S 200 D.T. S 50 SVM SVM S 100 SVM S 150 SVM S 200 SVM S 50 SVM W. + MLP 1 1 1 1 1 1 1 1 1 1 0,024 1 1 1 1 1 1 1 1 1 0,024 1 1 1 1 1 1 1 1 0,024 1 1 1 1 1 1 1 0,012 1 1 1 1 1 1 0,024 1 1 1 1 1 0,012 1 1 1 1 0,024 1 1 1 0,024 1 1 0,023 1 0,012 0,037 Tabela 5.26: Teste de Bonferroni comparando a Especificidade entre os grupos. Especificidade D.T. S 100 D.T. S 150 D.T. S 200 D.T. S 50 SVM SVM S 100 SVM S 150 SVM S 200 SVM S 50 SVM W. + MLP SVM Weighted D.T. D.T. S 100 D.T. S 150 D.T. S 200 D.T. S 50 SVM SVM S 100 SVM S 150 SVM S 200 SVM S 50 SVM W. + MLP 1 1 1 1 1 1 1 1 0,916 1 0,012 1 1 1 1 1 1 1 0,916 1 0,012 1 1 1 1 1 1 0,744 1 0,012 1 1 1 1 1 0,024 1 0,012 1 1 1 1 0,916 1 0,012 1 1 1 0,032 1 0,012 1 1 0,057 1 0,012 1 0,097 1 0,012 0,142 1 0,012 0,075 0,012 0,012 Tabela 5.27: Teste de Bonferroni comparando a Acurácia entre os grupos. Acurácia D.T. S 100 D.T. S 150 D.T. S 200 D.T. S 50 SVM SVM S 100 SVM S 150 SVM S 200 SVM S 50 SVM W. + MLP SVM Weighted D.T. D.T. S 100 D.T. S 150 D.T. S 200 D.T. S 50 SVM SVM S 100 SVM S 150 SVM S 200 SVM S 50 SVM W. + MLP 1 1 1 1 1 1 1 1 0,916 1 0,012 0 1 1 1 1 1 1 1 0,916 1 0,012 0 0 1 1 1 1 1 1 0,744 1 0,012 0 0 0 1 1 1 1 1 0,024 1 0,012 0 0 0 0 1 1 1 1 0,916 1 0,012 0 0 0 0 0 1 1 1 0,032 1 0,012 0 0 0 0 0 0 1 1 0,057 1 0,012 0 0 0 0 0 0 0 1 0,097 1 0,012 0 0 0 0 0 0 0 0 0,142 1 0,012 0 0 0 0 0 0 0 0 0 0,075 0,012 0 0 0 0 0 0 0 0 0 0 0,012 O mesmo procedimento foi realizado para a Especificidade e Acurácia retirando dos testes os modelos que apresentaram diferenças (SVM com pesos e SVM SMOTE 50%), segundo o teste de Bonferroni. O Teste de Kruskal-Wallis retornou p-value = 0,6108 e p-value = 0,63334, respectivamente. Esses valores não rejeitam a hipótese nula, considerando as amostras estatisticamente iguais. Portanto, no quesito sensibilidade, os testes estatísticos comprovaram o SVM com pesos como o melhor modelo, tendo esse uma média acima dos demais. 5.3 Extração de Regras Baseado nos experimentos, o modelo SVM com pesos mostrou uma melhor habilidade de generalização do problema. Entretanto, os SVM geram modelos de caixa-preta sem a capacidade de explicar de forma compreensível como o algoritmo chegou em determinado resultado. Especialmente para área de medicina, a explicação de como uma decisão foi tomada é importante para que um especialista do domínio possa avaliar e aceitar a utilização de técnicas 93 5.3. EXTRAÇÃO DE REGRAS de aprendizagem de máquina (HE et al., 2006). Visto que as Árvores de Decisão demostram uma melhor compreensibilidade do que os SVM, a abordagem utilizada em HE et al. (2006) foi aplicada ao problema dessa pesquisa. Nesse trabalho, o autor propõe uma abordagem em que o SVM é combinado com a Árvore de Decisão criando um novo algoritmo. A motivação da combinação desses dois algoritmos é a união da forte capacidade de generalização do SVM com a melhor habilidade de compreensão e indução de regras da Árvore de Decisão. O algoritmo proposto, chamado SVM_DT, utiliza basicamente o modelo SVM como um pré-processador para a Árvore de Decisão e é dividido em três etapas (HE et al., 2006): 1. O primeiro passo é o treinamento do SVM com o banco de dados original. Esse treinamento irá gerar uma saída com as predições baseadas na generalização realizada pelo modelo. 2. O segundo passo é criar um conjunto de treinamento baseado apenas nas classificações corretas do modelo SVM. Esse novo conjunto de treinamento é utilizado para treinar a árvore de decisão, sendo esse conjunto melhor do que o banco de dados original, uma vez que já foi pré-processado utilizando SMV. 3. O terceiro passo é a utilização do novo conjunto de treinamento para treinar uma Árvore de Decisão e extrair os respectivos conjuntos de regras. O autor defende que a alta capacidade de generalização do modelo SVM ajuda na criação de um bom conjunto de treinamento servindo como entrada da Árvore de Decisão. Ainda em HE et al. (2006) após a criação do novo conjunto de treinamento, a Árvore de Decisão é finalmente utilizada para realizar a classificação. No artigo o autor não deixa claro a separação de um conjunto de teste estatisticamente independente para realização dos testes e apresentação dos resultados. Dessa forma, fica subentendido que os registros do conjunto participaram do treinamento de validação cruzada, conforme explicado acima. Como classificador final, é utilizada uma Árvore de Decisão treinada a partir do conjunto de treinamento gerado pela SVM. Nessa pesquisa, o modelo SVM utilizado foi o SVM com pesos que, conforme relatado na Seção 5.2, teve a melhor sensibilidade classificando o maior número de pacientes com cardiopatias. Diferentemente da ideia proposta pelo referido trabalho (HE et al., 2006), nessa pesquisa a Árvore de Decisão não será utilizada como classificador final. Também não será utilizado todo o conjunto de dados para realização da validação cruzada k-fold, mas apenas o conjunto de treinamento. Modificando os passos do algoritmo proposto em HE et al. (2006), temos: 1. O primeiro passo é o treinamento do SVM com pesos (melhor modelo encontrado conforme mostrado na seção anterior) apenas com o conjunto de treinamento, sendo feita uma 94 5.3. EXTRAÇÃO DE REGRAS validação cruzada k-fold (k=10). Para cada fold, as classificações corretas são separadas em um conjunto a parte. Ao final das dez execuções, temos um novo conjunto de treinamento formado apenas pelas classificações corretas do modelo SVM. 2. O segundo passo é criar um conjunto de treinamento baseado apenas nas classificações corretas do modelo SVM. 3. O terceiro passo é a utilização do novo conjunto de treinamento para extração das regras utilizando o algoritmo PART. As regras extraídas serviram apenas para explicar o modelo de decisão adotado pelo SVM, dessa forma a classificação final não será efetuada pelo algoritmo PART. As regras de classificação identificam o conjunto de atributos que conseguem separar uma classe específica. São de fácil compreensão para o especialista do domínio uma vez que podem ser representadas através do seguinte formato de proposição: SE <condição> ENTÃO <classe>. A Tabela 5.28 lista as regras extraídas. Tabela 5.28: Regras geradas a partir do conjunto criado com as classificações corretas da SVM com pesos. N. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Regra SE peso <= 7,9 E imc_percentil 6= (Baixo Peso) ENTÃO ANORMAL SE peso <= 7,9 E sexo 6= (MASCULINO) E fc > 106 ENTÃO ANORMAL SE imc_percentil 6= (Baixo Peso) E faixa_etaria 6= (LACTENTE) E sexo 6= MASCULINO E fc > 111 ENTÃO ANORMAL SE imc_percentil 6= (Excesso de Peso 1) E sexo = MASCULINO E faixa_etaria = LACTENTE E imc <= 19,53 ENTÃO ANORMAL SE faixa_etaria 6= (LACTENTE) E sexo 6= (MASCULINO) E fc > 97 ENTÃO ANORMAL SE imc_percentil = Excesso de Peso 1 ENTÃO NORMAL SE peso > 8,75 E imc_percentil 6= (Normal) E peso > 16,49 ENTÃO NORMAL SE sc > 0,612 E sexo = MASCULINO ENTÃO NORMAL SE imc_percentil 6= (Excesso de Peso 1) E faixa_etaria = ADOLESCENTE E altura <= 1,59 ENTÃO NORMAL SE imc_percentil 6= (Excesso de Peso 1) E fc <= 135 E peso > 8,75 E sexo = MASCULINO E faixa_etaria 6= (LACTENTE) ENTÃO NORMAL SE imc_percentil 6= (Excesso de Peso 1) E altura > 0,90 E faixa_etaria = PRE-ESCOLAR ENTÃO NORMAL SE altura > 0,89 E imc_percentil 6= (Baixo Peso, Obesidade 2) E faixa_etaria 6= (Adolescente) ENTÃO NORMAL SE faixa_etaria = PRE-ESCOLAR ENTÃO NORMAL SE imc_percentil 6= (Baixo Peso) E faixa_etaria 6= (LACTENTE,ADOLESCENTE) E sexo 6= (MASCULINO) E idade > 1,95 E imc_percentil = Normal ENTÃO NORMAL SE imc_percentil 6= (Excesso de Peso 1) E faixa_etaria = LACTENTE E peso > 8,80 E fc <= 129 ENTÃO NORMAL SE faixa_etaria 6= (LACTENTE) ENTÃO NORMAL SE imc_percentil = Baixo Peso ENTÃO ANORMAL SE faixa_etaria = LACTENTE E imc_percentil = Baixo Peso E sc > 0,41 ENTÃO NORMAL SE faixa_etaria 6= (LACTENTE) E sexo 6= (MASCULINO) E altura <= 0,729 E imc_percentil = Baixo Peso ENTÃO NORMAL Seleção 409 269 Alvo Selecionado 298 196 Confiança 73% 73% Lift 3,22 3,22 209 120 57% 2,54 181 83 46% 2,03 467 163 35% 1,54 236 645 224 609 95% 94% 1,23 1,22 914 31 858 29 94% 94% 1,21 1,21 854 793 93% 1,20 603 555 92% 1,19 936 850 91% 1,17 979 347 863 295 88% 85% 1,14 1,10 52 44 85% 1,09 1934 391 164 1603 93 124 83% 24% 76% 1,07 1,05 0,98 14 8 57% 0,74 As regras geradas foram apresentadas para a validação do especialista do domínio. A regra N. 1 (melhor Lift) apresentada na Tabela 5.28 confirma um padrão frequentemente 95 5.4. CONSIDERAÇÕES FINAIS encontrado nos pacientes da clínica. Na regra, são selecionados os pacientes com peso<=7,9 que refere-se à crianças muito pequenas (recém-nascidos Neonatos ou Lactetes jovens). Já o Percentil do IMC é diferente de Baixo Peso, entretanto esse atributo não é calculado para os pacientes nessa faixa etária. O Percentil de IMC só é calculado para pacientes acima de dois anos de idade. Segundo ainda os especialistas do domínio, crianças pequenas, independente do sexo, têm maior probabilidade de terem doenças cardíacas. A regra N. 2 fortalece a conclusão do parágrafo acima, pois além do peso, também é considerada a Frequência Cardíaca. Quando a FC (nesse caso FC > 106) eleva-se, aumentam as chances da existência da doença no paciente. Uma das restrições da regra N. 3 considera a FC > 111. Ao realizar uma pesquisa no banco considerando as restrições dessa regra, foi identificado que 99% dos pacientes selecionados por essa regra são Neonatos ou Lactentes. Isso fortalece à afirmação de que pacientes com maior frequência cardíaca têm mais chances de serem cardiopatas. A regra N. 13 também foi ressaltada como importante para o especialista. A Faixa Etária Pré-Escolar é a “faixa do sopro inocente” onde os pacientes com essa idade irão iniciar as atividades escolares e, por conta do sopro, são indicados à procurar um serviço especializado em cardiologia. 5.4 Considerações Finais Esse capítulo apresentou os experimentos realizados nessa pesquisa. Após a comparação dos mesmos, foi observado que estatisticamente o modelo SVM com pesos consegue obter a melhor sensibilidade. Através dos experimentos foi possível comprovar que apesar da utilização das técnicas para tratar o problema do desbalanceamento da base de dados, SVM com pesos teve um melhor desempenho, pelo menos nos dados utilizados nessa pesquisa. Por conta disso esse modelo foi utilizado para realização da extração de regras. As regras extraídas confirmaram o comportamento já identificado na clínica e foram úteis para que os médicos pudessem entender como foi feita a classificação dos pacientes. 96 6 Conclusões Esse trabalho teve como proposta a criação de um sistema de apoio a diagnóstico médico utilizando técnicas de inteligência computacional, dada a quantidade de informações que são registradas diariamente na área da saúde. Os dados foram cedidos pela UCMF (Unidade de Cardiologia e Medicina Fetal) que é uma clínica especializada em diagnóstico e tratamento de crianças e fetos portadores de algum tipo de cardiopatia. Foram considerados apenas os pacientes que procuram a clínica com o sintoma de Sopro Cardíaco, visto que os demais pacientes, conforme já relatado na Seção 3.1.2.2, procuram a clínica com uma motivação que já caracteriza a existência de uma cardiopatia. Há um interesse por parte dos médicos e pesquisadores da clínica estudar esse universo de pacientes, uma vez que o Sopro Cardíaco não necessariamente representa a existência da alguma doença cardíaca. Os dados foram extraídos do sistema de informação utilizado atualmente na clínica. Apesar de existir um sistema para coletar os dados do paciente, as informações registradas não seguiam um padrão de modo que houve a necessidade do pré-processamento de todos os atributos para padronizá-los e utilizá-los nos experimentos. Desde a coleta dos dados até a aplicação dos modelos nos experimentos e avaliação dos resultados, todo o trabalho foi conduzido seguindo as etapas do processo de mineração de dados CRISP-DM. Os resultados obtidos mostraram uma adequação desse processo ao problema de mineração de dados em cardiologia pediátrica. Conforme já relatado na introdução desse trabalho, a Árvore de Decisão é um dos modelos mais utilizados na mineração de dados aplicada à medicina, principalmente por conta da sua facilidade explicitar o conhecimento melhorando a compreensão dos especialistas do domínio. Entretanto, nesse trabalho, esse classificador não obteve bons resultados, principalmente no que se refere a sensibilidade, ou seja, na classificação correta dos pacientes com cardiopatia. Outros experimentos foram realizados utilizando o modelo de SVM com o objetivo de melhorar os resultados. Os modelos de SVM têm sido utilizados com bastante frequência em outras áreas, tendo um bom poder de generalização. Entretanto, nesse trabalho, esse modelo não retornou resultados expressivamente melhores que a Árvore de Decisão. Isso se deu por conta do problema de 97 desbalanceamento dos dados existente na base de dados utilizada na pesquisa. Num sistema de suporte à decisão médica, a sensibilidade e a especificidade devem ser sempre as melhores possíveis. Há a necessidade de que todos os pacientes doentes sejam classificados como tal, assim como os saudáveis também sejam classificados como saudáveis. Como a base de dados utilizada no experimento estava desbalanceada, o modelo tende a classificar mais pacientes como saudáveis, fazendo com que a sensibilidade seja menor e a especificidade seja maior. Para tentar contornar esse problema, técnicas de balanceamento foram utilizadas, tais como: SMOTE e SVM com pesos. Apesar do SMOTE ter apresentado bons resultados em bases desbalanceadas (CHAWLA et al., 2002), o modelo de SVM com pesos foi o que obteve a melhor sensibilidade. Porém, esses modelos considerados como caixa-preta não conseguem expressar o conhecimento de modo que um especialista no domínio possa entender. Dessa forma, uma abordagem de extração de regras do SVM (HE et al., 2006) foi utilizada para tornar o modelo de decisão adotado pelo SVM compreensível. Algumas regras foram extraídas e validadas pelos médicos que aceitaram e consideraram que o sistema pode ser utilizado na recepção da clínica tentando filtrar os pacientes que chegam com sopro cardíaco, agilizando o atendimento dos mesmos quando o sistema especialista indicar alguma anormalidade. A distância entre profissionais da computação e os profissionais de saúde é grande e muitas vezes os primeiros trabalham com métodos muito sofisticados enquanto os clínicos buscam soluções simples que tenham impacto na sua prática diária. A identificação de faixas de risco para cardiopatia congênita a partir de dados simples, que podem ser coletados da mãe por uma secretária no setor de marcação de uma clínica ou hospital, pode se transformar numa ferramenta importante para agilizar a avaliação de pacientes de risco, semelhante aos scores utilizados em serviços de emergência (faixas verdes, amarelas e vermelhas). Nestes Serviços, no entanto, um profissional treinado, geralmente uma enfermeira, realiza uma pré-consulta e coloca uma "pulseira colorida"sinalizando que o paciente tem pouca (verde) ou muita (amarela) urgência ou se é uma emergência (vermelho). Este sistema vem sendo adotado em muitos serviços na maioria dos países de mundo e tem se demonstrado eficiente para ordenar o fluxo dos pacientes. Porém, esse atendimento é realizado de forma presencial (na recepção da emergência) e por um profissional especializado (uma enfermeira). Na marcação de uma consulta para uma criança com suspeita de cardiopatia, seja por um sopro ou outro sintoma, pode-se estar diante de uma criança completamente normal ou de um portador de doença cardíaca grave. As listas de espera para marcações de consulta são, por vezes, muito longas, principalmente para serviços especializado e com um número limitado de profissionais como é o caso da cardiologia pediátrica. A doença cardíaca, por sua vez, pode ser muito grave e o paciente se encontrar a pouco tempo de um desfecho grave como uma crise de hipóxia (baixa oxigenação no sangue) ou o desenvolvimento de insuficiência cardíaca grave. A demora no estabelecimento do diagnóstico é um dos principais fatores que agravam 98 o quadro clínico destas crianças. Quando um pediatra ausculta um sopro num paciente e o encaminha para realizar uma consulta com o cardiologista, na maioria das vezes, o próprio pediatra não está certo do nível de risco do paciente. A mãe, por sua vez, menos ainda e o primeiro contato com a clinica é geralmente realizado através do telefone com uma secretaria que agenda a consulta ou o exame de acordo com a disponibilidade do serviço, também sem qualquer noção de urgência. A possibilidade de se utilizar um programa de computador que auxilie na estratificação de risco dos pacientes a partir de dados simples traz uma grande expectativa para os pacientes. Uma infraestrutura está atualmente sendo montada para a implantação do sistema de apoio à diagnóstico na UCMF baseado nos resultados dessa pesquisa e considerando as seguintes restrições: • realização de um treinamento dos funcionários de modo que as informações possam ser registradas com a maior qualidade e padronização possível; • o software deverá executar em background efetuando a leitura na base de dados do sistema de informação utilizado atualmente na clínica. Isso evitará algum tipo de resistência por parte dos funcionários em utilizar outro sistema na marcação das consultas. Apesar dos resultados obtidos pelo modelo proposto (SVM com pesos + MLP) terem sido satisfatórios quando aplicado ao conjunto de teste, esse modelo não teve um bom desempenho quando aplicado em todo conjunto de dados utilizando a validação cruzada k-fold. Apesar disso, essa proposta conseguiu efetuar, de forma satisfatória, o balanceamento das classes. 99 6.1. CONTRIBUIÇÕES 6.1 Contribuições As principais contribuições desse trabalho foram: • A Utilização de técnicas de inteligência computacional para auxiliar na classificação de pacientes cardiopatas, bem como no entendimento da saúde cardíaca desses pacientes através das regras geradas pelo classificador. • Conforme já relatado na Seção 4.1.3.2, a proposta feita em FARQUAD; BOSE (2012) não foi bem sucedida nas bases de dados médicas (diabetes, câncer e cardiologia pediátrica). Ficou claro que o simples uso do modelo de SVM, através da modificação do parâmetro C, não funciona. • Neste trabalho foi proposto uma nova técnica de balanceamento da base de dados utilizando SVM com pesos como pré-processador e MLP como classificador final. Os resultados dos experimentos mostram a que é possível realizar o balanceamento dos dados modificando os pesos do modelo. • A análise estatística feita nos atributos dos pacientes foi de grande valia para os médicos que, através dos gráficos gerados, puderam confirmar o comportamento desses atributos para os pacientes considerados cardiopatas. • O resultados obtidos nesse trabalho motivaram a equipe médica envolvida à utilizar as técnicas aqui utilizadas, criando um projeto piloto na UCMF para avaliar na prática a aplicabilidade de uma solução de suporte ao diagnóstico clínico. 6.2 Trabalhos Futuros Um trabalho futuro seria estender o estudo realizado para outros tipos de exames, tais como eletrocardiograma. Esse exame é muito útil para identificar problemas como ataque do coração, falta de fluxo sanguíneo no músculo cardíaco, batimento irregular do coração e falta de força no bombeamento do coração. Atualmente a equipe do Círculo do Coração coordena o projeto da RCP - Rede de Cardiologia Pediátrica Pernambuco/Paraíba. Esse projeto realiza o atendimento de recémnascidos portadores de cardiopatias que são identificados/triados através do exame de oximetria. A oximetria é um exame indolor feito por um aparelho colocado nos braços e pernas do recémnascido. A partir dele, é possível detectar problemas cardíacos graves. Um trabalho futuro seria estender a classificação de crianças cardiopatas para tal projeto de modo a tentar entender as relações da existência de uma cardiopatia num recém-nascido baseado nas informações da gestação da mãe. 100 Referências ALLADI, S. M. et al. Bioinformation Colon cancer prediction with genetic profiles using intelligent techniques Bioinformation. Biomedica Informatics, [S.l.], 2008. ANISWORTH S. WYLLIE JP., W. C. Prevelence and clinical significance of cardiac murmurs in neonates. , [S.l.], v.80, n.1, p.43–45, 1999. ASL, B. M.; SETAREHDAN, S. K.; MOHEBBI, M. Support vector machine-based arrhythmia classification using reduced features of heart rate variability signal. Artificial intelligence in medicine, [S.l.], v.44, n.1, p.51–64, Sept. 2008. ATIK, E. Doença de Kawasaki: regressão de aneurismas gigantes das artérias coronárias com obstrução tardia posterior. Arq. Bras. Cardiol, [S.l.], p.22–23, 2007. AVCI, E. A new intelligent diagnosis system for the heart valve diseases by using genetic-SVM classifier. Expert Systems with Applications, [S.l.], v.36, n.7, p.10618–10626, Sept. 2009. BEGUM, J. A. R. A. et al. Importance of Cardiac Murmur in Diagnosing Congenital Heart Disease in Neonatal Period. , [S.l.], v.32, n.1, p.17–20, 2008. BEN-HUR, A.; WESTON, J. A User’s Guide to Support Vector Machines. , [S.l.], p.1–18, 2010. BENAVIDES-LARA, A. e. a. Epidemiología y registro de las cardiopatías congénitas en Costa Rica. Rev Panam Salud Publica, [S.l.], v.30, p.31–38, 2011. Bioestatística - Tópicos Avançados. 3.ed. [S.l.: s.n.], 2008. BOSER, B. E.; GUYON, I. M.; VAPNIK, V. N. A training algorithm for optimal margin classifiers. In: COMPUTATIONAL LEARNING THEORY, New York, NY, USA. Proceedings. . . ACM, 1992. p.144–152. (COLT ’92). Cardiologia para o Pediatra. [S.l.]: Caduceus, 2004. CHAWLA, N. V. et al. SMOTE: synthetic minority over-sampling technique. , [S.l.], v.16, p.321–357, 2002. CIOS, K. J.; MOORE, G. W. Uniqueness of medical data mining. Artificial intelligence in medicine, [S.l.], v.26, n.1-2, p.1–24, 2002. COHEN, G. et al. Learning from imbalanced data in surveillance of nosocomial infection. Artificial intelligence in medicine, [S.l.], v.37, n.1, p.7–18, May 2006. CORTES, C.; VAPNIK, V. Support-vector networks. Machine Learning, [S.l.], v.20, n.3, p.273–297, Sept. 1995. CRISTIANINI, N.; SHAWE-TAYLOR, J. An introduction to support Vector Machines: and other kernel-based learning methods. New York, NY, USA: Cambridge University Press, 2000. DALLAL, G.; WILKINSON, L. An analytic approximation to the distribution of Lilliefors’ test for normality. The American Statistician, [S.l.], p.294–296, 1986. 101 REFERÊNCIAS DEGROOT, M. H. Probability and Statistics. New York, NY, USA: Addison Wesley, 2002. DELEN, D.; WALKER, G.; KADAM, A. Predicting breast cancer survivability: a comparison of three data mining methods. Artificial intelligence in medicine, [S.l.], v.34, n.2, p.113–27, June 2005. DELGAARD, P. Introductory statistcs with R. New York, NY, USA: Springer-Velarg New York, 2002. DONG B., C. C. . L. S. E. Applying support vector machines to predict building energy consumption in tropical region. Energy and Buildings, [S.l.], v.37, p.545–553, 2005. DORFFNER, G.; PORENTA, G. On using feedforward neural networks for clinical diagnostic tasks. Artificial Intelligence in Medicine, [S.l.], v.6, n.5, p.417–435, Oct. 1994. DRUCKER, H. et al. Support Vector Regression Machines. , [S.l.], v.1, 1997. DU, S.-x.; CHEN, S.-t. Weighted support vector machine for classification. 2005 IEEE International Conference on Systems, Man and Cybernetics, [S.l.], v.4, p.3866–3871, 2005. DUBOIS D, D. E. A formula to estimate the approximate surface area if height and weight be known. , [S.l.], v.17, p.862, 1916. Exame Clínico - Bases para a prática médica. [S.l.: s.n.], 2008. EXARCHOS, T. P. et al. A methodology for the automated creation of fuzzy expert systems for ischaemic and arrhythmic beat classification based on a set of rules obtained by a decision tree. Artificial intelligence in medicine, [S.l.], v.40, n.3, p.187–200, July 2007. FARQUAD, M.; BOSE, I. Preprocessing unbalanced data using support vector machine. Decision Support Systems, [S.l.], v.53, n.1, p.226–233, Apr. 2012. FAYYAD, U.; PIATETSKY-SHAPIRO, G.; SMYTH, P. The KDD process for extracting useful knowledge from volumes of data. Communications of the ACM, [S.l.], v.39, n.11, p.27–34, Nov. 1996. FRANK, E.; WITTEN, I. H. Generating Accurate Rule Sets Without Global Optimization. , [S.l.], 1990. FRIEDMAN, J. H. A Recursive Partitioning Decision Rule for Nonparametric Classification. , [S.l.], n.April, p.404–408, 1977. GANDOLFI L.; PRATESI, R. Estudo prospectivo das complicações da Doença de Kawasaki: análise de 115 casos. CEP, [S.l.], v.2134, p.299–305, 2011. GAO, M. et al. A combined SMOTE and PSO based RBF classifier for two-class imbalanced problems. Neurocomputing, [S.l.], v.74, n.17, p.3456–3466, Oct. 2011. GIULIANO, I. A vida como um bem comum. [S.l.]: Revista da Associação Médica Brasileira, 2008. GOLDBERG, D. E. Genetic Algorithms in Search, Optimization and Machine Learning. 1st.ed. Boston, MA, USA: Addison-Wesley Longman Publishing Co., Inc., 1989. 102 REFERÊNCIAS GURGEL, T. B. Mineração de Dados Aplicada à Cardiologia Pediátrica. , [S.l.], 2007. GUYON, I. et al. Gene Selection for Cancer Classification using Support Vector Machines. Mach. Learn., Hingham, MA, USA, v.46, n.1-3, p.389–422, Mar. 2002. HALL, M. et al. The WEKA Data Mining Software: an update. SIGKDD Explor. Newsl., New York, NY, USA, v.11, n.1, p.10–18, Nov. 2009. HAMMER B., . G. K. A note on the universal approx- imation capability of support vector machines. Neural Processing Letters, [S.l.], v.17, p.43–53, 2003. HE, J. et al. Rule generation for protein secondary structure prediction with support vector machines and decision tree. IEEE transactions on nanobioscience, [S.l.], v.5, n.1, p.46–53, Mar. 2006. HEALTH STATISTCS, N. C. for. Clinical Growth Charts. [S.l.]: Center for Disease Control and Prevention, 2004. HECKERLING, P. S. et al. Use of genetic algorithms for neural networks to predict community-acquired pneumonia. Artificial Intelligence in Medicine, [S.l.], v.30, n.1, p.71–84, Jan. 2004. HORN, W. AI in medicine on its way from knowledge-intensive to data-intensive systems. Artificial intelligence in medicine, [S.l.], v.23, n.1, p.5–12, Aug. 2001. HUANG, Z. et al. Credit rating analysis with support vector machines and neural networks: a market comparative study. Decis. Support Syst., Amsterdam, The Netherlands, The Netherlands, v.37, n.4, p.543–558, Sept. 2004. INBAR O OREN A, S. M. R. A. D. R. C. R. Normal cardiopulmonary responses during incremental exercise in 20- to 70-yr-old men. Medicine Science in Sports and Exercise, [S.l.], v.5, p.538–580, 1994. KANTARDZIC, M. Data Mining: concepts, models, methods, and algorithms. New York, NY, USA: John Wiley & Sons, 2003. KOBINGER, M. Avaliação do sopro cardíaco na infância. Jornal de Pediatria, [S.l.], v.79, p.87–96, 2003. KOPRINSKA, I.; PFURTSCHELLER, G.; FLOTZINGER, D. Sleep classification in infants by decision tree-based neural networks. , [S.l.], v.8, 1996. LENCA, P. ENHANCING NETWORK INTRUSION CLASSIFICATION THROUGH THE KOLMOGOROV-SMIRNOV SPLITTING. , [S.l.], v.48, n.4, p.50–61, 2010. LOPES, A. A. Cardiologia Pediátrica. [S.l.]: Manole, 2011. LUKAS L., D. A. S. J. A. K. V. L. H. F. A. M. C. e. a. Brain tumor classification based on long echo proton MRS signals. Artificial Intelligence in Medicine, [S.l.], v.31, p.73–89, 2004. MANSUR A. DE P.; FAVARATO, D. Mortalidade por Doenças Cardiovasculares no Brasil e na Região Metropolitana de São Paulo: atualização 2011. [S.l.]: SciELO Brasil, 2011. 103 REFERÊNCIAS MAROCO, J. a. et al. Data mining methods in the prediction of Dementia: a real-data comparison of the accuracy, sensitivity and specificity of linear discriminant analysis, logistic regression, neural networks, support vector machines, classification trees and random forests. BMC research notes, [S.l.], v.4, p.299, Jan. 2011. MCNICHOLAS, P.; MURPHY, T.; OREGAN, M. Standardising the lift of an association rule. Computational Statistics & Data Analysis, [S.l.], v.52, n.10, p.4712–4721, June 2008. MIRANDA J. M. Q.; ORNELAS, E. D. M. W. R. B. Obesidade infantil e fatores de risco cardiovasculares. ConScientia e Saúde, [S.l.], 2011. MONTENEGRO, R. D. et al. A Comparative Study of Machine Learning Techniques for Caries Prediction. 2008 20th IEEE International Conference on Tools with Artificial Intelligence, [S.l.], p.477–481, Nov. 2008. MOURA E.; CASTRO, C. Perfil lipídico em escolares de Campinas. Rev Saúde, [S.l.], 2000. ORGANIZATION, W. H. Global Database on Body Mass Index. [S.l.]: Institution, 2006. PROVOST, F.; FAWCETT, T. Analysis and Visualization of Classifier Performance: comparison under imprecise class and cost distributions. In: IN PROCEEDINGS OF THE THIRD INTERNATIONAL CONFERENCE ON KNOWLEDGE DISCOVERY AND DATA MINING. Anais. . . AAAI Press, 1997. p.43–48. QUILAN, J. R. Improved Use of Continuous Attributes in C4.5. Journal of Artificial Intelligence, [S.l.], v.4, p.77–90, 1996. REIN AJ OMOKHODION SI, N. A. Significance of a cardiac murmur as the sole clinical sign in the newborn. , [S.l.], v.39, n.1, p.511–520, 2000. S. HETTICH, S. B. The uci kdd archive. 1996. SAMANTA, B. et al. Prediction of periventricular leukomalacia. Part I: selection of hemodynamic features using logistic regression and decision tree algorithms. Artificial intelligence in medicine, [S.l.], v.46, n.3, p.201–15, July 2009. SAPANKEVYCH, N.; SANKAR, R. Time Series Prediction Using Support Vector Machines: a survey. Computational Intelligence Magazine, IEEE, [S.l.], v.4, n.2, p.24 –38, may 2009. SAúDE, B. M. da. Dicas em Saúde. 2013. SCHOLKOPF, B.; TSUDA, K.; VERT, J. Kernel Methods in Computational Biology. [S.l.]: Mit Press, 2004. (Computational Molecular Biology). SCHWERTMAN, N. C.; OWENS, M. A.; ADNAN, R. A simple more general boxplot method for identifying outliers. Computational Statistics & Data Analysis, [S.l.], v.47, n.1, p.165–174, Aug. 2004. SHARMA, S.; OSEI-BRYSON, K.-M.; KASPER, G. M. Evaluation of an integrated Knowledge Discovery and Data Mining process model. Expert Systems with Applications, [S.l.], v.39, p.11335–11348, Feb. 2012. SINGER-VINE, J. Beyond BMI: why doctors won’t stop using an outdated measure for obesity. [S.l.]: Stale.com, 2009. 104 REFERÊNCIAS SU, C.-t.; YANG, C.-h. Feature selection for the SVM: an application to hypertension diagnosis. , [S.l.], v.34, p.754–763, 2008. SWETS, J. A. Measuring the accuracy of diagnostic systems. Science, [S.l.], v.240, p.1285–1293, 1988. TANDON A.; SENGUPTA, S. Risk Factors for Congenital Heart Disease CHD in Vellore, India. Current Research Journal, [S.l.], 2010. THEODORSSON-NORHEIM, E. Kruskal-Wallis test: basic computer program to perform nonparametric one-way analysis of variance and multiple comparisons on ranks of several independent samples. Computer methods and programs in biomedicine, [S.l.], v.23, n.1, p.57–62, Aug. 1986. VAN HULSE, J. Data quality in data mining and machine learning. 2007. Tese (Doutorado em Ciência da Computação) — Florida Atlantic University, Boca Raton, FL, USA. AAI3253566. VAPNIK, V. N. The nature of statistical learning theory. New York, NY, USA: Springer-Verlag New York, Inc., 1995. WESTON, J.; WATKINS, C. Support Vector Machines for Multi-Class Pattern Recognition. 1999. WIRTH, R.; HIPP, J. CRISP-DM : towards a standard process model for data mining. , [S.l.], n.24959, 2000. WU, X. et al. Top 10 algorithms in data mining. Knowl. Inf. Syst., New York, NY, USA, v.14, n.1, p.1–37, Dec. 2007. YAO X. J., P. A. D. J. P. C. H. F. Z. R. S. F. B. T. e. a. Comparative classification study of toxicity mecha- nisms using support vector machines and radial basis function neural networks. Analytica Chimica Acta, [S.l.], v.535, p.259–273, 2005. YEH, D.-Y.; CHENG, C.-H.; CHEN, Y.-W. A predictive model for cerebrovascular disease using data mining. Expert Systems with Applications, [S.l.], v.38, n.7, p.8970–8977, July 2011. Apêndice 106 A Percentil IMC A.1 Percentil para os homens Figura A.1: Tabela para identificação do percentil para os homens 107 A.2 A.2. PERCENTIL PARA AS MULHERES Percentil para as mulheres Figura A.2: Tabela para identificação do percentil para as mulheres