Visualizar/Abrir - Repositório Institucional UFPE

Propaganda
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
Download