Você está na página 1de 92

UNIVERSIDADE KATYAVALA BWILA

Instituto Superior Politécnico

Departamento de Ensino e Inovação de Informática

Sistemas de Classificação Automáticos para Predição de


Diabetes

Nº_______/2017

Autor: Almir Meireles Bondo Luís da Silva

Benguela

2017

Inovação – Investigação – Desenvolvimento


Região Académica II – Benguela e Kwanza Sul
UNIVERSIDADE KATYAVALA BWILA

INSTITUTO SUPERIOR POLITÉCNICO

DEPARTAMENTO DE ENSINO E INOVAÇÃO DE INFORMÁTICA

Trabalho de Fim de Curso Apresentado para Obtenção do Grau de Licenciado


em Ciências da Computação

Sistemas de Classificação Automáticos para Predição de


Diabetes

Autor: Almir Meireles Bondo Luís da Silva

Orientador: Dr. Lázaro Emílio Makili

Co-orientador: Lic. Adilson da Silva Silvério


DEDICATÓRIA

À minha mãe, Teresa Domingos dos Santos Bondo


a ti dedico meu ser, a ti dedico este trabalho.

iii
Agradecimentos

AGRADECIMENTOS

Escrever os agradecimentos é sempre a melhor parte! Muitas pessoas e entidades


ajudaram para a concretização desse feito, e com muito gosto aproveito essa
oportunidade para às agradecer.

Agradeço a Deus Todo-Poderoso, meu Senhor, minha bandeira.

Ao Instituto Nacional de Gestão de Bolsas de Estudo (INAGBE), pelo suporte


financeiro durante os 5 anos de formação.

Neste trabalho, fui afortunado em ser orientado por um expert em Aprendizagem


Automática e em muitas subdisciplinas desse campo, o Dr. Lázaro Emílio Makili, a
quem tenho uma enorme admiração e respeito. Estou profundamente agradecido pela
sua orientação para alcançar os objectivos que havíamos traçado, pela indicação e
disponibilização de conteúdos. O sucesso deste trabalho não teria sido possível sem
a sua orientação.

Agradeço a todos os funcionários docentes e não docentes do Instituto Superior


Politécnico da Universidade Katyavala Bwila (ISP – UKB) por me terem proporcionado
um ambiente de aprendizagem único ao longo do meu percurso académico, a minha
gratidão é eterna. Uma palavra de agradecimento ao Dr. Miguel Garay, que foi meu
professor na cadeira de Projecto no 5º ano, que sempre apresentou críticas e
recomendações sobre o trabalho.

Nesta senda, agradeço também aos profissionais de saúde de diferentes instituições,


que ajudaram a prestar informações, sobre a situação da diabetes localmente e os
critérios de diagnósticos usados.

Como sempre, a minha profunda gratidão aos meus colegas, amigos e familiares. Não
posso imaginar maior estimulação intelectual e apoio do que a que recebí da minha
família, amigos e colegas que tive no ISP – UKB. Dentre muitos colegas que tive,
agradeço especialmente aqueles que foram mais próximos à mim durante esses anos
e que fizeram parte do grupo de estudos que criamos desde o 1º ano, cito: Adriano,
Américo, Java, Isaac e Sumudiau. Ao meu primo Héntone, companheiro, obrigado
pela comprensão e apoio. Aos meus irmãos Ony, Nany, Pacy, Cleusa, Aquiane e
demais membros da minha extensa família.

iv
Agradecimentos

Minha gratidão imensurável à minha mãe, Teresa Bondo, minha eterna professora,
que me proporcionou todas as condições para minha formação académica, por todo
apoio, tolerância e afecto, mas também por ser a força motivadora deste trabalho.
Minha especial gratidão a Teresa Graciano, pela compreensão, apoio, motivação
constante e por se encarregar pela revisão ortográfica do livro.

Agradeço a todos que se sintam reflectidos neste trabalho, e não foram explicitamente
mencionados, não são menos importantes. E finalmente, agradeço aos que me
fizeram a mais motivante pergunta “já está feito?” ou “quando será a defesa?”, que
sempre procuraram saber do trabalho.

Muito obrigado!

v
PENSAMENTO

Um campo científico é melhor definido pela questão central que estuda. O campo da
Aprendizagem Automática procura responder a pergunta:

"Como podemos construir sistemas informáticos que melhoram automaticamente com


a experiência e quais são as leis fundamentais que regem todos os processos de
aprendizagem?"

Tom M. Mitchell

vi
RESUMO

A Diabetes é hoje, um dos principais problemas de saúde mundial, seja pelo número
de pessoas diagnosticadas com a doença, mortalidade, custos económicos e sociais
envolvidos no controlo da mesma, tratamento das complicações, etc. Para se
diagnosticar a diabetes, o clínico tem que estar seguro de que os resultados são
perfeitamente correctos pois as consequências para o doente são consideráveis e
para toda vida. No entanto, diagnosticar a diabetes é uma tarefa trabalhosa para os
médicos, pois têm de avaliar um conjunto de exames, o que abre a possibilidade da
ocorrência de erros devido a exaustão. Em função desses problemas, podem ser
utilizados métodos de Aprendizagem Automática para fazer a previsão de diabetes.
Neste trabalho utilizou-se algoritmos de Aprendizagem Automática para a construção
de modelos preditivos de diabetes. Os modelos foram construídos em três etapas:
pré-processamento, afinação dos parâmetros e estimativa de erro e teste de
generalização. Pelos resultados obtidos, os métodos utilizados permitiram a
construção de modelos com alto poder preditivo, sendo possível, ao usar os modelos
aprendidos, alcançar resultados semelhantes ou mesmo superiores aos obtidos pelos
próprios especialistas. Como resultado do estudo construiu-se uma interface gráfica,
na qual foram integrados os modelos aprendidos, para a previsão da classificação a
atribuir a novos pacientes cujos dados forem introduzidos.

Palavras-chave: Aprendizagem Automática; Classificação; Árvores de decisão;


Naïve Bayes; Máquinas de Vectores de Suporte; Modelos preditivos.

vii
ABSTRACT

Diabetes is one of the main health problems in the world today, whether due to the
number of people diagnosed with the disease, mortality, economic and social costs
involved in the same control, treatment of complications, etc. To diagnose diabetes,
the clinician has to be sure that the results are perfectly correct because the
consequences for the patient are considerable and for a lifetime. However, diagnosing
diabetes is a laborious task for physicians as they have to evaluate a set of tests, which
opens up the possibility of errors occurring due to exhaustion. Because of these
problems, Automatic Learning methods can be used to predict diabetes. In this work
we used algorithms of Automatic Learning for the construction of predictive models of
Diabetes. The models were constructed in three stages: pre-processing, parameter
tuning and error estimation and generalization test. Based on the results obtained, the
methods used allowed the construction of models with high predictive power, being
possible, when using the learned models, to achieve similar or even superior results to
those obtained by the specialists themselves. As a result of the study, a graphical
interface was constructed, in which the learned models were integrated, to predict the
classification to be assigned to new patients whose data were introduced.

Keywords: Automatic Learning; Classification; Decision trees; Naïve Bayes; Support


Vector Machines; Predictive models.

viii
Índice

ÍNDICE

INTRODUÇÃO .......................................................................................................... 16

CAPÍTULO I: DIABETES E MÉTODOS DE DIAGNÓSTICO .................................... 21

1.1. Definição ......................................................................................................... 21

1.1.1. Pré-diabetes .......................................................................................... 21

1.2. Diagnóstico e critérios de diagnóstico ............................................................. 22

1.2.1. Diagnóstico ............................................................................................ 22

1.2.2. Prova de Tolerância à Glicose (PTGO) ................................................. 23

1.2.3. Outros exames complementares ........................................................... 23

1.2.4. Diabetes em crianças ............................................................................ 25

1.2.5. Critérios de diagnósticos........................................................................ 25

1.3. Tipos de diabetes ............................................................................................ 26

1.3.1. Diabetes tipo 1 ....................................................................................... 26

1.3.2. Diabetes tipo 2 ....................................................................................... 26

1.3.3. Diabetes gestacional ............................................................................. 27

1.4. Números e factos da diabetes......................................................................... 28

1.5. Aprendizagem Automática para a detecção de diabetes ................................ 28

1.5.1. Trabalhos relacionados ......................................................................... 29

1.5.2. Modelagem preditiva de dados médicos ............................................... 30

1.6. Conclusão ....................................................................................................... 32

CAPÍTULO II: DESENHO DO CLASSIFICADOR ...................................................... 33

2.1. Descoberta do conhecimento.......................................................................... 33

2.1.1. Pré-processamento dos dados .............................................................. 34

2.1.2. Mineração de dados .............................................................................. 36

2.1.3. Pós-processamento ............................................................................... 39

ix
Índice

2.2. Métodos de Aprendizagem Automática .......................................................... 40

2.2.1. Árvores de Decisão ............................................................................... 41

2.2.2. Classificadores Bayesianos ................................................................... 44

2.2.3. Máquinas de Vectores de Suporte......................................................... 48

2.3. Métodos de Validação dos Classificadores ..................................................... 53

2.3.1. Medidas de desempenho....................................................................... 53

2.3.2. Métodos de Avaliação ........................................................................... 55

2.4. Plataforma de Desenvolvimento: WEKA ......................................................... 57

2.5. Conjunto de dados .......................................................................................... 57

2.5.1. Atributos................................................................................................. 58

2.5.2. Instâncias ou exemplos do conjunto de dados ...................................... 59

2.6. Conclusão ....................................................................................................... 60

CAPÍTULO III: TESTES E RESULTADOS ................................................................ 61

3.1. Metodologia..................................................................................................... 61

3.1.1. Pré-processamento ............................................................................... 61

3.1.2. Afinação dos parâmetros e estimativa de erros ..................................... 62

3.1.3. Teste de generalização ......................................................................... 63

3.2. Construção e validação dos modelos ............................................................. 63

3.2.1. Afinação dos parâmetros e estimativa de erros ..................................... 63

3.2.2. Teste de generalização ......................................................................... 69

3.3. Conclusão ....................................................................................................... 69

CAPÍTULO IV: DESENHO DA APLICAÇÃO ............................................................. 71

4.1. Protótipo desenvolvido .................................................................................... 71

4.1.1. Interface gráfica ..................................................................................... 71

CONCLUSÕES ......................................................................................................... 73

RECOMENDAÇÕES ................................................................................................. 74
x
Índice

BIBLIOGRAFIA ......................................................................................................... 75

GLOSSÁRIO ............................................................................................................. 80

ANEXO A - FERRAMENTAS USADAS..................................................................... 82

A.1 - WEKA ....................................................................................................... 82

A.2 - NetBeans .................................................................................................. 90

A.3 - Linguagem Java ........................................................................................ 90

APÊNDICE A – ENTREVISTAS ................................................................................ 92

A.1 – Guia das entrevistas ..................................................................................... 92

xi
LISTA DE FIGURAS

Figura 1: Números e projecções da diabetes (IDF, 2015, pp. 70-94). ...................... 28

Figura 2: Modelo de classificação representado de duas formas, tais como (a) regras
de classificação e (b) árvores de decisão ( (Han, Kamber, & Pei, 2012, p. 18)). ...... 39

Figura 3: Árvore de decisão que representa o conceito JogarTenis. Um exemplo é


classificado ordenando-o ao longo da árvore até ao nó-folha apropriado, retornando
em seguida a classificação associada a essa folha (neste caso, Sim ou Não) (Mitchell,
1997, p. 53). .............................................................................................................. 42

Figura 4: Hiperplano para separação de duas classes em dados separáveis


linearmente. ............................................................................................................... 49

Figura 5: Transfomação de dados não separáveis linearmente. .............................. 50

Figura 6: Aplicação do parâmetro de penalização (C); dados não separáveis......... 53

Figura 7: Características do conjunto de dados. ...................................................... 58

Figura 8: Algumas instâncias do conjunto de dados. ............................................... 60

Figura 9: Árvore de decisão J48, com a melhor configuração de parâmetros. ......... 65

Figura 10: Interface gráfica para previsão de diabetes............................................. 72

Figura 11: Janela inicial do WEKA (GUI chooser). ................................................... 82

Figura 12: Pré-processamento no WEKA Explorer (Preprocess). ............................ 83

Figura 13: Classificação no WEKA Explorer (Classify). ............................................ 84

Figura 14: Ambiente de desenvolvimento NetBeans. ............................................... 90

xii
LISTA DE TABELAS

Tabela 1: Prova de Tolerância à Glicose (Associação Americana de Diabetes, 2016).


.................................................................................................................................. 23

Tabela 2: Diagnóstico de diabetes, A1C (Associação Americana de Diabetes, 2016).


.................................................................................................................................. 24

Tabela 3: Diagnóstico de diabetes, Glucose de plasma em jejum (GPJ) (Associação


Americana de Diabetes, 2016). ................................................................................. 24

Tabela 4: Funções kernel usadas no trabalho. ......................................................... 52

Tabela 5: Matriz de confusão................................................................................... 54

Tabela 6: Descrição dos atributos do conjunto de dados. ........................................ 59

Tabela 7: Parâmetros analisados de cada algoritmo. ............................................... 62

Tabela 8: Taxa de éxito (%) do classificador C4.5. ................................................... 64

Tabela 9: Tamanho das árvores geradas pelo classificador C4.5. ........................... 65

Tabela 10: Taxas de êxito (%) Naïve Bayes. ............................................................ 66

Tabela 11: Taxas de êxito (%) e tempo de construção (s) com SVM, Kernel linear. 67

Tabela 12: Taxas de êxito (%) SVM com kernel polinomial. ..................................... 67

Tabela 13: Tempo de construção (s) SVM com kernel polinomial. ........................... 68

Tabela 14: Taxas de êxito (%) SVM com kernel RBF. .............................................. 68

Tabela 15: Tempo de construção (s) SVM com kernel RBF. .................................... 69

Tabela 16: Teste de generalização das melhores configurações de cada classificador.


.................................................................................................................................. 69

Tabela 17: Síntese dos três algoritmos aplicados ao conjunto de dados alvo de estudo.
.................................................................................................................................. 88

xiii
LISTA DE ABREVIAÇÕES

ADA Associação Americana de Diabetes (American Diabetes Association)

API Interface de Programação de Aplicações (Aplication Program Interface)

CART Árvores de Classificação e Regressão (Classification And Regression


Trees)

CHAID Detecção Automática de Interação CH-quadrado (CHi-squared


Automatic Interaction Detection)

CLI Interface de Linha de Comando (Command Line Interface)

FP Falso Positivo (False Positive)

FN Falso Negativo (False Negative)

GPJ Glicose de Plasma em Jejum

GUI Interface Gráfica do Usuário (Graphical User Interface)

Hb A1C Hemoglobina Glicosada

HTML HyperText Markup Language (Linguagem de Marcação de Hipertexto)

IDF Federação Internacional de Diabetes

JDC Conectividade da Base de Dados Java (Java Database Connectivity)

JSP Páginas de Servidor Java (Java Server Pages)

KKT Karush-Kuhn-Tucker

K-NN k Vizinhos mais Próximos (k Nearest Neighbours)

MD Mineração de Dados

MNT Notícias Médicas Hoje (Medical News Today)

OMS Organização Mundial da Saúde

PTGO Prova de Tolerância à Glicose Oral

RBF Função de Base Radial (Radial Basis Function)

SMO Optimização Mínima Sequencial (Sequential Minimal Optimization)

SQL Linguagem de Consulta Estruturada (Structed Query Language)


xiv
SVM Máquinas de Vectores de Suporte (Support Vector Machine)

TN Verdadeiro Negativo (True Negative)

TNR Taxa de Verdadeiros Negativos (True Negative Rate)

TP Verdadeiro Positivo (True Positive)

TPR Taxa de Verdadeiros Positivos (True Positive Rate)

TVN Taxa de Verdadeiros Negativos

TVP Taxa de Verdadeiros Positivos

UCI Universidade da Califórnia, em Irvine

WEKA Waikato Environment for Knowledge Analysis

Who World Health Organization (Organização Mundial da Saúde)

MVC Controlador de exibição de modelo (Model View Controller)

xv
Introdução

INTRODUÇÃO

Nesta secção se apresentam aspectos introdutórios do trabalho. No mesmo se


descrevem as causas principais que motivaram a fazer o trabalho, os objectivos
traçados, a metodologia usada, a contribuição prática do trabalho. A secção termina
com a descrição da estrutura do trabalho.

Motivação

Diabetes mellitus1 ou simplesmente diabetes é um grupo de doenças metabólicas, em


que se verificam níveis elevados de glicose no sangue durante um longo intervalo de
tempo. Os diabéticos têm um controlo inadequado do açúcar no sangue, o que pode
levar a complicações graves, tais como danos nos nervos, rins e cegueira (Medical
News Today, 2016).

Assim como outras doenças crónicas não transmissíveis, acredita-se que a diabetes
é causada principalmente por factores comportamentais, como uma dieta inadequada
e inactividade física (Buijsse, Simmons, Griffin, & Schulze, 2011).

O diagnóstico da diabetes é uma tarefa trabalhosa para os médicos, pois têm que
avaliar um conjunto de exames, o que submete-lhes ao cometimento de erros devido
a exaustão.

Para auxiliar os profissionais de saúde a seleccionar os indivíduos de mais alto risco


para intervenção preventiva, podem ser utilizados modelos preditivos criados a partir
de dados provenientes de diferentes fontes, tais como dados demográficos, clínicos e
testes laboratoriais, entre outros (Murphy et al, 2011 Apud Oliveira, 2016).

Segundo a Federação Internacional de Diabetes (IDF), estima-se que cerca de 415


milhões de pessoas tenham diabetes, podendo chegar a 642 milhões de casos em
2040. Além disso, aproximadamente metade desses casos não está consciente da
sua condição, podendo intensificar ainda mais as consequências negativas da
doença. Em 2015, a diabetes mellitus foi a causa da morte de quase 5 milhões de

1
A designação científica "diabetes mellitus" está relacionada com o significado em grego de cada um
dos termos desta expressão. Assim diabetes quer dizer "fluir através de" e mellitus representa "doce
como o mel.
16
Introdução

pessoas, e é estimado que em 2030 se torne a sétima principal causa de morte no


mundo (IDF, 2015).

Esta mesma organização afirma que a cada 6 segundos morre uma pessoa por
diabetes, mais de 20,9 milhões de recém-nascidos foram afectados pela doença
durante a gravidez em 2015 (1 em cada 7 nascimentos). A diabetes causou pelo
menos US $ 673 mil milhões em despesas de saúde em 2015 - 12% do total de gastos
com adultos (IDF, 2015).

A doença, vista antes como um problema do mundo desenvolvido, já que a maioria


dos casos de diabetes é causada por obesidade, espalhou-se por países mais pobres
devido à urbanização. Na África subsaariana, o problema da diabetes acaba por ficar
oculto, já que a falta de acesso aos serviços de saúde leva menos de um quinto dos
casos a receber diagnóstico.

Em Angola, há poucos estudos/trabalhos feitos para avaliar tanto a prevalência como


a incidência da diabetes, os dados fornecidos pelo Centro de Processamento de
Dados Epidemiológicos são escassos e não são abrangentes (Castela, 2015).

Em suma, há uma grande dificuldade no controlo e diagnóstico da doença em todo


mundo, dadas as várias limitações e constrangimentos (culturais e económicos), em
especial a dificuldade na avaliação por parte dos médicos de um conjunto de análises
feitas pelos pacientes. Tal contribui para o aumento da morbimortalidade associada à
doença e suas complicações.

Foi com base nesses números, que se resolveu desenvolver um trabalho que, de
alguma forma, possa auxiliar os médicos no diagnóstico da doença e tão logo iniciar
um tratamento, contribuindo assim, para reduzir as complicações devido à doença.

Metodologia

Para elaboração do trabalho estabeleceu-se o seguinte problema de investigação:


Como construir sistemas automáticos que auxiliam os médicos no diagnóstico
imediato da Diabetes?

Como objecto de estudo, tem-se o conjunto de ferramentas informáticas para a


construção de modelos preditivos. Delimitou-se como campo de acção, modelos
preditivos para o diagnóstico médico.

17
Introdução

Com vista a responder ao problema de investigação, definiu-se o seguinte objectivo


geral, criar modelos preditivos para o auxílio no diagnóstico da diabetes. Nesta senda,
para alcançar o objectivo geral foram traçadas as seguintes tarefas de investigação:

 Revisar a bibliografia relacionada ao tema.

 Estudar e seleccionar as ferramentas para desenvolver o trabalho.

 Seleccionar os classificadores automáticos a ser usados.

 Treinar e validar os métodos automáticos com dados de antigos pacientes que


foram submetidos ao exame de diabetes.

 Desenhar uma aplicação (interface gráfica) que permite fazer experiências a


partir dos classificadores desenvolvidos.

Para alcançar os objectivos preconizados, foram usados alguns métodos e técnicas


de investigação. Usou-se como método principal, um método experimental
relacionado ao ciclo de desenho de modelos preditivos2 (Mitchell, 1997, pp. 5-11).
Este método foi subdividido em três etapas principais: pré-processamento (I), afinação
dos parâmetros e estimativa de erro (II) e teste de generalização (III).

Com vista a obter as informações necessárias para atingir os objectivos preconizados,


usaram-se as seguintes técnicas auxiliares (Marconi & Lakatos, 2003, pp. 183-185;
195-199), (Barros, 2010).

Entrevista: foram entrevistados um total de oito profissionais da área de saúde (três


médicos, dois estudantes de medicina e três enfermeiros) para obter informações
sobre a doença, seus níveis no país, da forma em que o diagnóstico da doença é feito,
se existe uma base de dados dos pacientes que são submetidos ao exame de
diabetes, como é feito o acompanhamento aos pacientes de risco e saber das
dificuldades encontradas em todo o processo de diagnóstico, acompanhamento e
combate da doença. O tipo de entrevista usado foi não estruturada3, dando assim a
liberdade de desenvolver cada situação em qualquer direcção e poder explorar
amplamente as questões.

2
Ver subsecção 3.1.
3
Ver Anexo B.
18
Introdução

Pesquisa bibliográfica: revisou-se um conjunto abrangente de fontes bibliográficas


publicadas em relação ao tema de estudo, desde publicações avulsas, jornais,
revistas, livros, pesquisas, monografias, teses, atlas, relatórios de conferências, etc.,
até meios de comunicação orais: rádio e audiovisuais. Com a finalidade de saber em
que ponto se encontra o tema em estudo, aprofundar os assuntos abordados e
enquadrar a linha de investigação.

Contribuições práticas

Este trabalho propõe a aplicação de três algoritmos de aprendizagem automática


C4.5, Naïve Bayes e Máquinas de Vectores de Suporte. Os mesmos foram aplicados
num conjunto de dados de pacientes que foram submetidos ao rastreio de diabetes,
conjunto recolhido pelo Instituto Nacional de Diabetes dos Estados Unidos, disponível
no repositório da Universidade da California em Invirne (UCI)4.

Fez-se o estudo desses classificadores para a construção de modelos preditivos de


diabetes utilizando a ferramenta WEKA. Depois de estudar os classificadores
construiu-se uma interface gráfica na qual foram integrados os modelos aprendidos,
para a previsão da classificação a atribuir aos novos pacientes cujos dados forem
introduzidos.

Esquema do trabalho

O restante do trabalho está subdividido em capítulos, da seguinte forma:

Capítulo I: Diabetes e métodos de diagnóstico, neste capítulo faz-se um breve


estudo sobre a diabetes, sua classificação, os métodos de diagnósticos usados e faz-
se também uma abordagem sobre Aprendizagem Automática para detecção da
diabetes.

Capítulo II: Desenho do classificador, descreve as principais técnicas e


metodologias envolvidas em todo processo de desenho e avaliação dos
classificadores. Descreve-se ainda a plataforma de desenvolvimento e bases de
dados utilizadas.

4
Disponível em: http://www.ics.uci.edu/~mlearn/MLRepository.html
19
Introdução

Capítulo III: Testes e resultados, descreve com detalhes as etapas, testes,


metodologias para a criação dos modelos preditivos de diabetes, mostra os resultados
alcançados em cada etapa e trata também de analisar estes resultados.

Capítulo IV: Desenho da aplicação, Este capítulo, descreve de forma breve o


protótipo desenvolvido, a interface gráfica em que foi incorporada os modelos
aprendidos.

Conclusões: conclui este trabalho apresentando reflexões sobre os resultados,


limitações do trabalho e possíveis trabalhos futuros.

Recomendações: apresenta as limitações do trabalho e deixa recomendações para


trabalhos futuros.

Anexos.

20
Capítulo I: Diabetes e métodos de diagnóstico

CAPÍTULO I: DIABETES E MÉTODOS DE DIAGNÓSTICO

Neste capítulo, de uma forma simples e directa, faz-se um breve estudo sobre a
diabetes, em que medida a doença afecta a saúde, apresenta os métodos de
diagnósticos usados, os diferentes tipos da patologia, descreve também os números
e factos da diabetes no mundo e, por último, é efectuada uma apresentação de alguns
trabalhos que têm sido desenvolvidos com vista à resolução de problemas
relacionados com a diabetes, nomeadamente são descritos alguns estudos em que
são aplicados métodos de aprendizagem automática aos dados.

1.1. Definição

O termo diabetes mellitus descreve uma desordem metabólica de etiologia múltipla,


caracterizada por uma hiperglicemia crónica com distúrbios no metabolismo dos
hidratos de carbono, lípidos e proteínas, resultantes de deficiências na secreção ou
acção da insulina, ou de ambas. Os efeitos da diabetes mellitus a longo prazo, incluem
danos, disfunção e falência de vários orgãos. A diabetes mellitus pode apresentar
sintomas característicos tais como sede, poliúria, visão turva e perda de peso. Em
casos mais graves pode desenvolver-se cetoacidose ou um estado hiperosmolar não-
cetónico que pode conduzir à letargia, coma e, na ausência de tratamento adequado,
à morte. Na maioria das vezes os sintomas não são graves, podendo até estar
ausentes e, consequentemente, pode estar presente durante muito tempo uma
hiperglicemia suficiente para causar alterações patológicas e funcionais antes de ser
feito o diagnóstico (KGMM & PZ, 1999).

1.1.1. Pré-diabetes

Pré-diabetes significa que os níveis de açúcar no sangue são superiores ao normal,


mas não alcançam níveis para que se diagnostique a diabetes. A informação de que
um paciente tem "pré-diabetes" significa que, sem fazer algumas mudanças
saudáveis, o mesmo tem maior risco de desenvolver diabetes do tipo 2 (Associação
Americana de Diabetes, 2016).

21
Capítulo I: Diabetes e métodos de diagnóstico

1.2. Diagnóstico e critérios de diagnóstico

A necessidade de encontrar critérios uniformes para o diagnóstico e classificação da


Diabetes Mellitus, deu origem, na década de 80, a diversas publicações de carácter
normativo da Associação Americana de Diabetes (ADA) e da Organização Mundial de
Saúde (OMS).

Com a finalidade de rever os critérios de diagnóstico e classificação da Diabetes


Mellitus foi constituído um grupo de trabalho da OMS denominado "WHO
Consultation" e em paralelo, mas de forma independente, de um "Expert Committee"
da ADA.

Em 1997, o grupo de trabalho da ADA fez sua primeira publicação, já com carácter
definitivo, sobre os novos critérios de diagnóstico e classificação da Diabetes Mellitus,
que se seguiu, em 1998, da OMS, embora sob forma de relatório provisório (KGMM
& PZ, 1999).

1.2.1. Diagnóstico

Se é feito um diagnóstico de diabetes, o clínico tem que estar certo de que este está
perfeitamente correcto uma vez que as consequências para o doente são
consideráveis e para toda vida. Os requisitos para confirmação do diagnóstico numa
pessoa com sintomatologia grave e grande hiperglicemia, diferem dos necessários
numa pessoa assintomática com valores de glicemia apenas ligeiramente acima do
valor limite para o diagnóstico. Uma hiperglicemia grave detectada em condições de
stress agudo infeccioso, traumático, circulatório ou outro pode ser transitória e não
deve por si só ser considerada como diagnóstica de diabetes. O diagnóstico numa
pessoa assintomática nunca deve ser feito com base num único valor anormal de
glicemia. Para o doente assintomático é essencial pelo menos mais um teste à glicose
no sangue/plasma com resultado positivo, quer em jejum, ao acaso ou numa prova de
tolerância à glicose oral (PTGO). Se estes testes não permitirem confirmação do
diagnóstico de diabetes mellitus é geralmente aconselhável manter vigilância e fazer
novos testes periodicamente até que o diagnóstico seja claro (KGMM & PZ, 1999).

Nestas circunstâncias, o clínico deve ter em consideração alguns factores adicionais


tais como etnia, história familiar, idade, obesidade e patologias concomitantes, antes

22
Capítulo I: Diabetes e métodos de diagnóstico

de tomar uma decisão referente ao diagnóstico ou terapêutica. Há muito tempo que


se pensa numa alternativa à determinação da glicemia ou à PTGO de forma a
simplificar o diagnóstico de diabetes mellitus.

1.2.2. Prova de Tolerância à Glicose (PTGO)

A preparação para o exame é básica. O paciente tem de cumprir um jejum de, pelo
menos, oito horas, período em que também não deve fumar nem praticar exercício
físico intenso. A prova é feita de manhã, após três dias de regime alimentar sem
restrições e com pelo menos 150 gramas diárias de hidratos de carbono (Saúde
Prática, p. 17).

O PTGO é um teste de duas horas que verifica os níveis de glicose no sangue antes
e duas horas depois de tomar uma bebida doce especial. Este teste diz ao médico
como o corpo processa a glicose. A diabetes é diagnosticada em duas horas de
glicose no sangue superior ou igual a 200mg/dl (Associação Americana de Diabetes,
2016).

Tabela 1: Prova de Tolerância à Glicose (Associação Americana de Diabetes, 2016).

Resultado PTGO (mg/dl)

Normal menor que 140

Pré-diabetes de 140 à 199

Diabetes maior que 199

1.2.3. Outros exames complementares

No caso dos doentes já diagnosticados com diabetes, é necessário cumprir com


exames de vigilância para avaliar se a glicemia esteve ou não controlada entre as
quatro e seis semanas anteriores. Para tal, os especialistas podem recorrer a
hemoglobina glicosada (Hb A1c), pois essa é uma fracção da hemoglobina que mostra
o valor médio da glicemia num determinado período. Esta medição deve ser feita a
cada seis meses, quando o controlo é deficiente ou quando o médico faz uma
alteração ao tratamento. Para controlar a doença, podem utilizar-se também fitas
especiais, que medem a glicose e os corpos cetónicos na urina (Saúde Prática, p. 19).

23
Capítulo I: Diabetes e métodos de diagnóstico

A1C

O teste A1C mede a glicemia média nos últimos 2 a 3 meses. O não precisar fazer
nada rápido ou beber alguma coisa são vantagens dessa maneira de diagnóstico. A
diabetes é diagnosticada em A1C com um valor maior ou igual a 6,5% (Associação
Americana de Diabetes, 2016).

Tabela 2: Diagnóstico de diabetes, A1C (Associação Americana de Diabetes, 2016).

Resultado A1C (%)

Normal menor que 5.7

Pré-diabetes de 5.7 à 6.4

Diabetes maior que 6.4

Glucose de Plasma em Jejum (GPJ)

Este teste verifica os níveis de glicemia em jejum. O jejum significa depois de não
comer ou beber (expceto água) por pelo menos oito horas antes do teste. Este teste
geralmente é feito de manhã, antes do pequeno-almoço. A diabetes é diagnosticada
em glicemia em jejum maior ou igual a 126 mg/dl (Associação Americana de Diabetes,
2016).

Tabela 3: Diagnóstico de diabetes, Glucose de plasma em jejum (GPJ) (Associação Americana de


Diabetes, 2016).

Resultado GPJ (mg/dl)

Normal menor que 100

Pré-diabetes de 100 à 125

Diabetes maior que 125

Teste aleatório (ou casual) de glicose plasmática

Este teste é um exame de sangue feito em qualquer momento do dia caso o paciente
sofra de sintomas graves de diabetes. A diabetes é diagnosticada em glicose no
sangue superior ou igual a 200 mg/dl (Associação Americana de Diabetes, 2016).

24
Capítulo I: Diabetes e métodos de diagnóstico

1.2.4. Diabetes em crianças

Nas crianças, a diabetes mellitus apresenta-se, geralmente, com sintomas graves,


valores de glicemia muito elevados, glicosúria marcada e cetonúria. Na maioria das
crianças, o diagnóstico é confirmado, rapidamente, pela determinação da glicemia e
o tratamento (incluindo insulinoterapia) é iniciado imediatamente sendo, muitas vezes,
determinante para sobrevida. Nestas circunstâncias, a PTGO não é necessária nem
adequada para o diagnóstico. No entanto, uma pequena proporção de crianças e
adolescentes apresenta sintomas menos graves. Nestes, a determinação da glicemia
em jejum e/ou PTGO podem ser necessárias para o diagnóstico (Saúde Prática, p.
18).

1.2.5. Critérios de diagnósticos

O diagnóstico clínico de diabetes é, muitas vezes, sugerido pela presença de sintomas


como: aumento da sede e do volume urinário, infecções recorrentes, perda de peso
inexplicável e, em casos graves, sonolência e coma. Estão, geralmente, presentes
níveis elevados de glicosúria que são confirmados com análises ao sangue e à urina.

Perante os sintomas apresentados, o especialista (endocrinologista) solicita exames


de rotina para diagnosticar a possível diabetes. O exame mais comum para fazer o
despiste é a medição de nível de glicose no sangue. O resultado é considerado normal
quando a taxa de glicose varia de 70 até 110 mg/dl. Se o resultado ficar em torno de
110 a 125 mg/dl, o indivíduo é portador de glicemia em jejum inapropriado. Neste
caso, para confirmar o indício de diabetes, o endocrinologista determina a
necessidade de realizar o exame de PTGO (Saúde Prática, p. 16).

25
Capítulo I: Diabetes e métodos de diagnóstico

1.3. Tipos de diabetes

Segundo o Medical News Today (2016), existem 3 tipos de diabetes:

1.3.1. Diabetes tipo 1

A diabetes tipo 1 é uma condição grave que ocorre quando o pâncreas produz pouca
ou nenhuma insulina. Sem insulina, o corpo não consegue absorver a glicose (açúcar
no sangue) dos alimentos e das células para alimentar o corpo. Pessoas com diabetes
tipo 1 devem tomar insulina ou outros medicamentos diariamente. Por esse motivo,
esse tipo de diabetes também é referido como diabetes insulino-dependente. A
diabetes tipo 1 era conhecida anteriormente como diabetes juvenil porque geralmente
é diagnosticada em crianças e adultos jovens. No entanto, esta doença crónica ao
longo da vida pode atingir qualquer idade, e aqueles com história familiar de diabetes
tipo 1 apresentam maior risco (Heart, 2015).

Pacientes com diabetes tipo 1 precisarão tomar injecções de insulina pelo resto da
vida. Eles também devem garantir níveis adequados de glicose no sangue, realizando
exames de sangue regulares e seguindo uma dieta especial. Aproximadamente 10%
de todos os casos de diabetes são do tipo 1 (Medical News Today, 2016).

1.3.2. Diabetes tipo 2

A diabetes tipo 2 é a forma mais comum de diabetes. Historicamente, a diabetes tipo


2 foi diagnosticada principalmente em adultos. Hoje, no entanto, adolescentes e
adultos jovens estão desenvolvendo diabetes tipo 2 numa taxa alarmante. Isso se
correlaciona com a crescente incidência de obesidade e inactividade física nessa
população, ambos factores de risco para diabetes tipo 2 (Heart, 2015).

Este tipo de diabetes ocorre quando:

 O corpo desenvolve "resistência à insulina" e não pode fazer uso eficiente da


insulina que produz, e;
 O pâncreas perde gradualmente sua capacidade de produzir insulina.

26
Capítulo I: Diabetes e métodos de diagnóstico

O excesso de peso, inactividade física e a ingestão de alimentos errados contribuem


para o risco de desenvolver diabetes tipo 2. O risco de desenvolver diabetes tipo 2
também é maior a medida que envelhecemos (Medical News Today, 2016).

Numa forma leve, este tipo de diabetes pode não ser diagnosticado por muitos anos,
o que é motivo de grande preocupação, uma vez que a diabetes não tratada pode
levar a muitos problemas médicos graves, incluindo doenças cardiovasculares. A
diabetes tipo 2 pode ser adiada ou controlada com dieta e exercício.

1.3.3. Diabetes gestacional

A diabetes gestacional refere-se à intolerância aos hidratos de carbono que resulta


em hiperglicemia de gravidade variável e que tem início ou é reconhecida durante a
gravidez. Não exclui possibilidade de intolerância a glicose anteceder a gravidez e de
não ter sido previamente reconhecida (KGMM & PZ, 1999).

Nas mulheres com diabetes prévia à gravidez, quando engravidam não têm diabetes
gestacional mas sim "diabetes mellitus e gravidez" devendo ser tratadas de acordo
com isto, antes, durante e depois da gravidez.

Este tipo de diabetes se desenvolve numa em cada 25 gravidezes em todo o mundo


e está associada a complicações tanto para a mãe quanto para o bebé. A diabetes
gestacional geralmente desaparece após a gravidez, mas as mulheres com essa
diabetes e seus filhos estão em maior risco de desenvolver diabetes tipo 2 mais tarde
na vida. Aproximadamente metade das mulheres com história de diabetes gestacional
passa a desenvolver diabetes tipo 2 entre cinco e dez anos após o parto (IDF, 2015).

As mulheres com risco elevado para diabetes gestacional são: mulheres mais velhas,
as que têm história prévia de intolerância à glicose ou de bebés grandes para idade
gestacional, mulheres pertencentes a grupos étnicos de risco elevado e qualquer
mulher grávida que tenha valores de glicemia, em jejum ou ao acaso, elevados.
Poderá ser apropriado fazer-se o rastreio, no primeiro trimestre da gravidez, nas
mulheres que pertencem a populações de alto risco, de forma a detectar uma diabetes
mellitus previamente não diagnosticada (KGMM & PZ, 1999).

Outros tipos específicos de diabetes também existem (IDF, 2015).

27
Capítulo I: Diabetes e métodos de diagnóstico

1.4. Números e factos da diabetes

O IDF Diabetes Atlas, na sua sétima edição, de 2015, fornece os últimos números,
informações e projecções sobre a magnitude actual e futura da epidemia de diabetes:

Figura 1: Números e projecções da diabetes (IDF, 2015, pp. 70-94).

 Aproximadamente 415 milhões de adultos têm diabetes; Até 2040, aumentará


para 642 milhões;
 A proporção de pessoas com diabetes tipo 2 está aumentando na maioria dos
países;
 75% dos adultos com diabetes vivem em países de baixa e média renda;
 O maior número de pessoas com diabetes tem entre 40 e 59 anos de idade;
 Uma em duas pessoas (46%) com diabetes não são diagnosticadas;
 Mais de 20,9 milhões de recém-nascidos foram afectados pela doença durante
a gravidez em 2015 (1 em 7 nascimentos);
 5 milhões de pessoas morrem anualmente por causa de diabetes; E é estimado
que em 2030 se torne a sétima principal causa de morte no mundo;
 Diabetes causou pelo menos US $ 673 bilhões em despesas de saúde em
2015;

1.5. Aprendizagem Automática para a detecção de diabetes

Esta secção, descreve aspectos relacionados com a aplicação de métodos de


Aprendizagem Automática para a detecção de diabetes, a subseccção 1.5.1. trata de
apresentar resultados de alguns trabalhos onde se aplicam os referidos métodos para
o estudo da diabetes. E finalmente na subsecção 1.5.2. descreve de maneira geral a
construção de modelos preditivos para dados médicos.

28
Capítulo I: Diabetes e métodos de diagnóstico

1.5.1. Trabalhos relacionados

Vários trabalhos têm sido desenvolvidos de aplicação de métodos de aprendizagem


automática para o estudo de diabetes. De forma geral, tais estudos podem possuir
características distintas com relação principalmente ao conjunto de dados, técnicas e
métodos utilizados para a criação e validação dos classificadores. Na Universidade
da Califórnia em Irvine (UCI), existe um repositório5 para aprendizagem automática
que alberga, entre outros, um conjunto de dados cujo objecto principal de estudo é a
diabetes.

Oliveira (2016), fez uma comparação de algoritmos de aprendizagem de máquina para


construção de modelos preditivos de diabetes não diagnosticado, utilizando dados não
laboratoriais. Usou as seguintes famílias de algoritmos de aprendizagem automática
para a construção dos modelos: Redes Neurais, Redes Bayesianas (Naïve Bayes),
Árvores de Decisão (Quinlan's C5), Regras de Decisão (Ripper e Quinlan's C5),
Ensemble (Random Forest) e Instance-Based Learning (K-NN). Como resultado do
estudo, os algoritmos de Redes Neurais ou Regressão logística, foram os mais
apropriados dentre os testados. Com isto, foi seleccionado para a construção de uma
ferramenta WEB capaz de detectar o risco de diabetes em indivíduos, através de
perguntas simples.

Rath, Zamberlan & Vieira (2013), desenvolveram um sistema de informação com


técnicas de mineração de dados para o controlo diário da diabetes. O software criado,
a partir de uma base de dados de alimentos consumidos, qualidade de sono, tipo e
quantidade de actividade física, encontra padrões de boas combinações (alimentos e
exercícios, por exemplo) e recomenda variações de alimentação e actividades físicas.
Esse sistema de recomendação foi construído utilizando o algoritmo de mineração de
dados C4.5.

Em Prieto et al. (2004)6, apresenta-se a elaboração de um software para colecta de


dados de 186 pacientes com diabetes ou hipertensão arterial. Utilizando métodos de
mineração aplicados aos dados colhidos durante as consultas ambulatoriais, observou

5
Diponível em: http://www.ics.uci.edu/~mlearn/MLRepository.html

6
Apud Rath, Zamberlan, & Vieira (2013).
29
Capítulo I: Diabetes e métodos de diagnóstico

a prevalência de sobrepeso e obesidade nos pacientes consultados, estando esses


valores muito próximos de valores percentuais encontrados em pesquisas de âmbito
nacional. No trabalho foi implementado um algoritmo de árvore de decisão.

A maioria dos trabalhos presentes na literatura aplica árvores de decisão para criação
dos modelos. O diferencial deste trabalho frente aos trabalhos mencionados, está no
facto de usar um conjunto de dados que possui informações ricas para a construção
de modelos preditivos de diabetes, e para além de outros algoritmos, usa máquinas
de vectores de suporte para o desenho dos classificadores, que é um algoritmo com
forte poder preditivo. Além do mais, demonstramos que os classificadores gerados
neste trabalho são capazes de prever diabetes com um certo grau de confiança.

1.5.2. Modelagem preditiva de dados médicos

Modelos preditivos podem ser vistos como funções matemáticas que mapeiam um
conjunto de valores de entrada (variáveis preditoras) para um valor de saída (variável-
alvo). Um dos objectivos da modelagem preditiva em medicina é criar modelos que
utilizam informações de indivíduos para prever um desfecho de interesse ou risco de
um desfecho e, dessa forma, auxiliar na tomada de decisão clínica (Bellazzi, Ferrazzi,
& Sacchi, 2011).

Os modelos são gerados a partir de um conjunto de dados de treino que contém


observações compostas por um conjunto de variáveis preditivas (factores de risco) e
o evento ou desfecho que se deseja prever (variável-alvo). Esse processo de
treinamento é chamado de aprendizagem supervisionada. Quando a saída do modelo
é contínua, por exemplo, a previsão de custos de um hospital, a tarefa é de regressão
ou aproximação de funções. Por outro lado, quando a saída é categórica, por exemplo,
prever se um determinado indivíduo irá contrair uma doença ou não, a tarefa é de
classificação. Assim, na classificação, o objectivo do modelo é atribuir uma classe a
um novo caso apresentado ao modelo, ou ainda, estimar a probabilidade desse caso
pertencer a uma determinada classe (Oliveira, 2016, pp. 21-22). A detecção de
diabetes, descrita neste trabalho é realizada através de algoritmos de classificação.

Uma das características mais importantes de um modelo é o seu poder preditivo, ou


seja, a capacidade de prever correctamente novos casos que são apresentados ao
modelo, independentes dos casos utilizados para treiná-lo. Tal característica depende

30
Capítulo I: Diabetes e métodos de diagnóstico

do algoritmo utilizado para gerar o modelo e, principalmente, dos dados utilizados para
o treinamento do modelo, ou seja, se os dados conseguem explicar claramente o
fenómeno que está sendo observado.

De modo geral, não existe um algoritmo específico que construa o melhor modelo
preditivo sempre. Dessa forma, para um determinado conjunto de dados, um algoritmo
(com certa configuração de parâmetros) pode gerar o melhor modelo enquanto com
um conjunto diferente o melhor modelo pode ser gerado por um algoritmo diferente.

Outros factores que podem influenciar no poder de predição do modelo são


intrínsecos aos dados. Conjuntos de dados podem conter instâncias ruidosas ou
valores anómalos, dados omissos, variáveis supérfluas ou redundantes, atributos com
dados heterogêneos, entre outras características, que influenciam na qualidade do
modelo gerado. Assim, é importante conhecer tais características antes de construir o
modelo. Uma das etapas do processo de aprendizagem automática consiste em
realizar a limpeza e preparação dos dados para o algoritmo que irá ser utilizado, de
forma que o algoritmo consiga extrair o máximo de informações contidas nos dados.

Segundo Oliveira (2016, p. 22), também é importante ter em consideração


características relevantes à aplicação que se quer construir. Por exemplo, um aspecto
especialmente importante na área da medicina é a compreensão do modelo gerado.
Ou seja, é importante saber como o modelo chegou a uma determinada resposta.
Outra característica desejável em aplicações na área da saúde é ter como resposta
uma estimativa de probabilidade de um determinado caso pertencer a uma classe em
oposição a classificação tradicional de um caso numa classe. Outras características
importantes, relacionadas ao algoritmo, incluem: a complexidade temporal e espacial
do treinamento e da inferência, a capacidade do algoritmo manipular dados
heterogêneos e dados omissos, a sensibilidade/robustez com relacção a valores
anómalos, a eficácia do algoritmo para evitar sobreajuste aos dados de treinamento,
a dificuldade de configuração do algoritmo, se o algoritmo consegue aprender
relações não lineares ou se o algoritmo permite adicionar conhecimento especialista
ao modelo gerado.

31
Capítulo I: Diabetes e métodos de diagnóstico

1.6. Conclusão

Neste capítulo, fez-se um estudo sobre a diabetes, sua definição, em que medida a
doença afecta a saúde, apresenta os métodos de dignóstico, classificação da doença,
apresentou também os números e factos da doença no mundo.

E finalmente foram descritos alguns trabalhos que têm sido desenvolvidos utilizando
a Aprendizagem Automática para a deteccão da diabetes.

32
Capítulo II: Desenho do Classificador

CAPÍTULO II: DESENHO DO CLASSIFICADOR

Neste capítulo descreve-se as principais técnicas e metodologias envolvidas em todo


processo de desenho e avaliação dos classificadores. São descritas as técnicas de
descoberta de conhecimento, os métodos de validação, bem como os métodos e
algoritimos de Aprendizagem Automática que foram usados na construção dos
classificadores.

É ainda descrita de forma breve a plataforma de desenvolvimento, os classificadores


usados e as bases de dados utilizadas.

2.1. Descoberta do conhecimento

Grandes bases de dados podem conter conhecimento oculto que poderia auxiliar na
tomada de decisões. Porém a extracção de tal conhecimento não é tarefa trivial sendo
necessária a utilização de técnicas de mineração de dados (Marins, Barros, Romão,
Constantino, & Souza, 2012).

Os hospitais e centros de saúde normalmente possuem grande quantidade de


informação armazenada a respeito dos procedimentos clínicos realizados por seus
pacientes, o que possibilita a existência de conhecimento oculto nas suas bases de
dados. O possível conhecimento oculto existente em tais bases de dados pode auxiliar
na tomada de decisões em programas de prevenção ou diagnóstico de doenças.

Uma abordagem para extração de conhecimentos ocultos em grandes bases de


dados é a Mineração de Dados (MD), técnica baseada em Aprendizagem Automática.
O processo de descoberta de conhecimento em bases de dados é composto por
várias etapas: selecção, pré-processamento, transformação, MD e
interpretação/avaliação dos resultados (Fayyad, Piatetsky-Shapiro, & Smyth, 1996).

Interpretamos a Aprendizagem Automática como a aquisição de descrições


estruturais a partir de exemplos. O tipo de descrições que são encontradas pode ser
usado para a predição, explicação e compreensão. Algumas aplicações de mineração
de dados se concentram na previsão: eles prevêm o que acontecerá em novas

33
Capítulo II: Desenho do Classificador

situações a partir de dados que descrevem o que aconteceu no passado (Witten,


Frank, & Hall, 2011, p. xxi).

Este trabalho é fundamentado na etapa de MD, que exige a adaptação de diversas


técnicas para que o conhecimento descoberto seja correcto, compreensível e
relevante.

2.1.1. Pré-processamento dos dados

A construção de classificadores vai além da aplicação de um algoritmo de


aprendizagem de automática sobre um conjunto de dados. Em aplicações reais,
muitas vezes existem dados mal preenchidos, mal distribuídos, instâncias com dados
faltantes ou instâncias que não representam o comportamento que se deseja modelar
(excepções), entre outros problemas. É preciso conhecer bem os dados disponíveis
para decidir um tratamento adequado para tais situações. A seguir são discutidas
técnicas comuns utilizadas para resolver os principais problemas enfrentados durante
a preparação dos dados para a criação de modelos preditivos.

A fase de pré-processamento visa essencialmente “conhecer” os dados de forma a


prepará-los para a fase seguinte. Ao longo desta etapa, as seguintes tarefas podem
ser realizadas (Theodoridis & Koutroumbas, 2003, pp. 164-166):

 A remoção de outliers:

Um outlier é um ponto cujo valor se encontra muito distante do valor médio da


correspondente variável aleatória. A distância é medida com relação a um limiar
determinado, geralmente um múltiplo do desvio padrão.

Se a quantidade de outliers é pequena, os mesmos são geralmente descartados,


Caso contrário é necessário empregar métodos de aprendizagem que sejam pouco
sensíveis à sua presença.

 Normalização dos dados:

Em muitas circunstâncias os valores das características se encontram em diferentes


intervalos. Ao utilizar certos métodos isto pode provocar um predomínio da influência
de umas características sobre outras nos resultados obtidos. O problema é superado
pela normalização dos dados para que seus valores estejam dentro de intervalos
similares. Uma técnica utilizada consiste em converter os valores das características
34
Capítulo II: Desenho do Classificador

a um intervalo dado ([0, 1] ou [-1, 1]) através de uma transformação adequada. Outra
técnica muito utilizada consiste em aplicar uma transformação de forma tal que todas
as características apresentem um valor médio igual a 0 e desvio padrão igual a 1,
também designada como padronização (standardization).

 Dados omissos:

Na prática muitos conjuntos de dados possuem valores omissos. Podem dever-se a


diversas razões, falhas no equipamento de medição, alterações ao desenho
experimental, junção de vários conjuntos de dados semelhantes mas não idênticos.

Alguns algoritmos de aprendizagem de máquina, como o Naïve Bayes e C4.5 podem


simplesmente ignorar os valores faltantes nos cálculos necessários, probabilidades
condicionais e de ganho de informação, respectivamente. Contudo, a maioria das
técnicas de aprendizagem exige que os dados estejam totalmente completos para
realizar a análise, impondo que o analista decida o que fazer para lidar com a situação
(Oliveira, 2016, p. 27).

Outros factores que podem atrapalhar potencialmente a aprendizagem de modelos


preditivos são ruídos nos dados. Que podem ser acidentais, como por exemplo, erros
de digitação, ou erro na colecta dos dados ou ainda uma observação considerada
uma excepção do fenómeno que se deseja modelar. Em alguns casos é possível
identificar dados errôneos ou inconsistentes e corrigí-los manualmente ou até
identificar casos indesejáveis e excluí-los do conjunto de treinamento. Alguns
algoritmos de aprendizagem são mais sensíveis a esse tipo de problemas que outros.
Geralmente, problemas de ruídos nos dados são tratados utilizando métodos para
evitar o sobreajuste (overfitting) aos dados de treinamento, como por exemplo, poda
da árvore de decisão (Oliveira, 2016, p. 27).

A preparação dos dados é uma etapa fundamental na criação dos classificadores. É


importante lembrar que qualquer processo de transformação ou padronização
aplicado aos dados de treinamento também deve ser aplicado nos dados de teste e,
para tanto, devem ser utilizados os mesmos parâmetros utilizados durante a
aprendizagem e esses parâmetros devem ser obtidos a partir dos dados utilizados
para treinamento do classificador.

35
Capítulo II: Desenho do Classificador

Em suma, os dados reais tendem a ser incompletos, inconsistentes, e em alguns


casos, pouco fiáveis. No entanto, as técnicas de pré-processamento garantem a
qualidade dos dados envolvidos, desde logo, auxiliando quer na melhoria da precisão
como na melhoria da eficiência de processos de aprendizagem automática.

2.1.2. Mineração de dados

Estamos sobrecarregados com os dados. A quantidade de dados no mundo e em


nossas vidas parece sempre crescente e não há fim à vista. Computadores
omnipresentes tornam muito fácil economizar coisas que anteriormente teriamos
destruído. A medida que o volume de dados aumenta, inexoravelmente, a proporção
de pessoas que os entende diminui alarmantemente (Witten, Frank, & Hall, 2011, p.
3).

Em termos históricos, o conceito relativo à procura de padrões consistentes em


universos de dados extensos tem sido apelidado de diversas formas, entre as quais:
extracção de conhecimento, descoberta de informação, processamento de padrões
de dados, entre outros (Fayyad, Piatetsky-Shapiro, & Smyth, 1996). Em alguns casos,
o próprio termo mineração de dados, do inglês Data Mining, confunde-se na literatura
como descoberta de conhecimento. Sendo assim, torna-se essencial referir que, e de
acordo com alguns autores, é o processo de descoberta de conhecimento que procura
extrair informação relevante a partir de um determinado conjunto de dados. Trata-se
da aplicação de algoritmos específicos na extracção de padrões dos dados.

De acordo com Witten, Frank, & Hall (2011, p. 5), a mineração de dados é definida
como o processo de descobrir padrões em dados. O processo deve ser automático
ou (mais geralmente) semi-automático. Os padrões descobertos devem ser
significativos na medida em que levam a alguma vantagem, geralmente económica.
Os dados estão invariavelmente presentes em quantidades substanciais a mineração
de dados é sobre a solução de problemas, analisando dados já presentes em bases
de dados.

Os dois principais objectivos do processo de mineração de dados são, na prática, a


previsão e a descrição. Quer os modelos de previsão como os de descrição são
construídos a partir de observações. Não existe uma separação total entre estas duas
categorias de modelos, podendo um modelo de previsão servir também como

36
Capítulo II: Desenho do Classificador

descrição e vice-versa. A função do modelo, descritivo ou de previsão, vai depender


da forma de representação do próprio modelo e do seu foco (Ferreira, 2010, p. 37).

De seguida, apresentam-se as principais diferenças entre previsão e descrição no


contexto de mineração de dados, de acordo com (Ferreira, 2010, pp. 37-38):

 Na construção de modelos de previsão, o objectivo principal é prever o valor


de alguma variável num determinado universo de dados, sendo que essa
previsão é baseada no modelo construído a partir de valores de outras variáveis
já previamente conhecidas. Caso o valor da variável que está a ser alvo de
previsão (classe) assuma um valor numérico (contínuo), trata-se de um
problema de regressão. Se a variável for categórica então estamos perante um
problema de classificação, em que cada categoria é designada como valor de
classe. Os modelos de previsão, tal como acima mencionado, podem oferecer
uma descrição dos dados, no entanto existem muitos que não são de fácil
interpretação (redes neuronais ou máquinas de vectores de suporte7, por
exemplo) e, portanto, são considerados apenas como de previsão.

 Na construção de um modelo descritivo, o objectivo fundamental é, tal como


o próprio nome indica, descrever padrões interessantes relativos ao universo
de dados em causa. Clustering, por exemplo, é uma das tarefas do modelo
descritivo e consiste em agrupar todos os dados semelhantes entre si em
subconjuntos. Este tipo de modelo pode igualmente ser utilizado para previsão
nos casos em que apresentamos uma nova instância e este decide em qual
grupo esta nova instância irá pertencer. Modelos baseados em regras também
são considerados modelos descritivos.

De acordo com Ferreira (2010, pp. 38-39), é importante sublinhar que a diferença
principal entre uma tarefa de previsão e uma de descrição está directamente
relacionada com a existência ou não de classes pré-definidas para os dados. Os
modelos descritivos estão habitualmente associados à modelação de relacções entre
dados que não são previamente rotulados (aprendizagem não supervisionada)
enquanto os modelos de previsão estão geralmente relacionados de forma directa à

7
Ver subsecção 2.2.3.
37
Capítulo II: Desenho do Classificador

modelação de dados que pertencem a uma determinada classe previamente


conhecida (aprendizagem supervisionada).

Torna-se portanto, relevante distinguir apredizagem supervisionada da aprendizagem


não supervisionada. Nesta senda, na aprendizagem supervisionada, o objectivo é
aprender um mapeamento da entrada para uma saída cujos valores correctos são
fornecidos por um supervisor. Ao passo que na aprendizagem não supervisionada,
não existe tal supervisor e só temos dados de entrada (Alpaydın, 2010, p. 11). Ou
seja, na aprendizagem supervisionada, cada exemplo é associado a uma classe
(todos os exemplos estão etiquetados), na aprendizagem não supervisionada, por
sua vez, não existe informação sobre a classe associada a cada exemplo. A
aprendizagem é efectuada descobrindo similaridades nos dados, ou seja, pretende-
se encontrar agrupamentos de dados com características semelhantes (Cruz, 2007,
p. 21). A tarefa de clustering é um tipo de aprendizagem não supervisionada.

São várias as tarefas de mineração de dados que podem ser aplicadas quer para
previsão como para descrição. Porém, neste trabalho aplicaremos apenas a
classificação para construção dos modelos preditivos.

A classificação consiste no processo de encontrar um modelo (ou função) que


descreva e distinga classes de dados ou conceitos. Depois de encontrado esse
modelo, é possível aplicá-lo de forma a prever a classe de um novo objecto. O modelo
gerado é baseado na análise de um conjunto de dados, designado por conjunto de
treino (objectos cuja classe é previamente conhecida) (Han, Kamber, & Pei, 2012, p.
18).

Para a execução da tarefa de classificação é possível aplicar uma série de métodos


de aprendizagem automática (Figura 2), nomeadamente: árvores de decisão, regras
de classificação (regras if-then), programação lógica indutiva, máquinas de vectores
de suporte, redes bayesianas, entre outros 8. Na figura 2, por exemplo, são
representados dois modelos de classificação para um mesmo problema. Neste caso
particular é relacionada a idade de um indivíduo X e o seu rendimento, inserindo-o
numa determinada categoria.

8
Alguns métodos são descritos na secção 2.2.
38
Capítulo II: Desenho do Classificador

(a)

idade(X, “jovem”) AND rendimento(X, “alto”) classe(X,”A”)

idade(X, “jovem”) AND rendimento(X, “baixo”) classe(X,”B”)

idade(X, “idade-média”) classe(X,”C”)

idade(X, “idoso”) classe(X,”C”)

(b)

Figura 2: Modelo de classificação representado de duas formas, tais como (a) regras de classificação
e (b) árvores de decisão ( (Han, Kamber, & Pei, 2012, p. 18)).

2.1.3. Pós-processamento

O objectivo principal da fase de pós-processamento é avaliar, validar e consolidar o


conhecimento extraído. Interpretando os resultados, que devem igualmente ser
avaliados de forma a garantir que os resultados são fiáveis e estatisticamente
significativos (Fayyad, Piatetsky-Shapiro, & Smyth, 1996).

Sucendo esta etapa actua-se no conhecimento descoberto: usando o conhecimento


directamente, incorporando o conhecimento noutros sistemas para acções futuras, ou
simplesmente documentando-o e informando-o as partes interessadas. Este processo
também inclui verificar e resolver conflitos potenciais com conhecimento previamente
acreditado (ou extraído).

39
Capítulo II: Desenho do Classificador

Em suma, as três fases (pré-processamento de dados, mineração de dados e pós-


processamento do conhecimento) são fundamentais para que o processo de
descoberta de conhecimento9 seja bem-sucedido.

Após apresentar definições e técnicas no contexto de descoberta de conhecimento e


mineração de dados, a secção a seguir descreve os métodos de Aprendizagem
Automática usados no trabalho.

2.2. Métodos de Aprendizagem Automática

Um campo científico é melhor definido pela questão central que estuda. O campo da
Aprendizagem Automática procura responder a pergunta: "Como podemos construir
sistemas informáticos que melhoram automaticamente com a experiência e quais são
as leis fundamentais que regem todos os processos de aprendizagem?" (Mitchell,
2006, p. 1).

Esta questão abrange uma ampla gama de tarefas de aprendizagem, como a forma
de projectar robôs móveis autónomos que aprendem a navegar a partir da sua própria
experiência, ou como extrair informações através de registros médicos históricos para
saber quais pacientes futuros responderão melhor aos tratamentos (Mitchell, 2006, p.
1). Uma compreensão bem-sucedida do modo como tornar os computadores capazes
de “aprender” permitiria uma abertura muito maior no que respeita a novas formas de
utilização destas máquinas, assim como conduziria a novos níveis de competência e
personalização.

A aprendizagem automática visa compreender o modo como criar programas que


permitam melhorar o desempenho das máquinas em determinadas tarefas,
nomeadamente através do conceito de “experiência”. Sendo assim, os algoritmos de
aprendizagem automática têm-se revelado extremamente úteis em diversos domínios,
desde logo têm sido especialmente importantes na resolução de problemas de
mineração de dados, onde universos de dados extensos poderão conter
implicitamente informação considerada de valor e que poderá ser descoberta
automaticamente.

9
Uma descrição mais detalhada do processo de descoberta de conhecimento poderá ser encontrada
em (Fayyad, Piatetsky-Shapiro, & Smyth, 1996).
40
Capítulo II: Desenho do Classificador

Nesta seccção são descritos os métodos de aprendizagem automática utilizados no


trabalho. A subsecção 2.3.1. trata de Árvores de Decisão, na subsecção 2.3.2.
descreve os Classificadores Bayesianos e na subsecção 2.3.3. descreve as Máquinas
de Vectores de Suporte.

2.2.1. Árvores de Decisão

As árvores de decisão caracterizam-se por utilizarem a estratégia de divisão e


conquista. Sendo assim, focam-se num problema considerado complexo, dividindo-o
em problemas mais simples e recursivamente aplicando a mesma estratégia a sub-
problemas. No final, as soluções dos sub-problemas podem ser combinadas para
gerar a solução do problema inicial (Gama, 1999 Apud Ferreira, 2010).

Têm sido aplicados com sucesso a uma vasta gama de problemas de aprendizagem,
que vai desde o diagnóstico médico até à análise de risco de concessão de créditos
(Mitchell, 1997, p. 52).

Segundo (Mitchell, 1997, pp. 52-53), as saídas são apresentadas na forma de árvores
de decisão. Uma árvore de decisão é uma estrutrura que pode ter dois tipos de nós:

 Nós de decisão: consiste numa pergunta (ou teste) relativa ao valor de um


atributo. Cada nó possui tantos ramos quanto as possíveis respostas à
pergunta.
 Nós folha: em cada nó, só pode haver instâncias pertencentes a mesma classe.

As árvores de decisão classificam instâncias ordenando-as desde a raíz até um


determinado nó-folha, o qual designa a classificação da instância em causa. Cada nó
na árvore especifica um determinado atributo da instância, enquanto cada ramo
descendente corresponde a um dos possíveis valores para o atributo em questão.
Uma instância é classificada começando pela raíz da árvore, testando o atributo
definido pelo nó e posteriormente descendo o ramo correspondente ao valor do
atributo dado. Todo este processo é depois repetido para a sub-árvore cuja raíz é um
novo nó.

A Figura 3 ilustra uma árvore de decisão típica. Neste caso particular, as manhãs de
sábado são classificadas consoante se são adequadas (sim) ou não para a prática de
ténis.
41
Capítulo II: Desenho do Classificador

Figura 3: Árvore de decisão que representa o conceito JogarTenis. Um exemplo é classificado


ordenando-o ao longo da árvore até ao nó-folha apropriado, retornando em seguida a classificação
associada a essa folha (neste caso, Sim ou Não) (Mitchell, 1997, p. 53).

Em geral, as árvores de decisão representam uma disjunção de conjunções de


restrições nos valores de atributos de instâncias. Cada caminho da raiz da árvore para
uma folha corresponde a uma conjunção de testes de atributo e a própria árvore a
uma disjunção dessas conjunções (Mitchell, 1997, p. 53). Por exemplo, a árvore de
decisão mostrada na Figura 3, corresponde a seguinte expressão:

𝑆𝑒 (𝐴𝑠𝑝𝑒𝑐𝑡𝑜 = 𝑆𝑜𝑙 𝛬 𝐻𝑢𝑚𝑖𝑑𝑎𝑑𝑒 = 𝑁𝑜𝑟𝑚𝑎𝑙)

𝑉 (𝐴𝑠𝑝𝑒𝑐𝑡𝑜 = 𝑁𝑢𝑏𝑙𝑎𝑑𝑜)

𝑉 (𝐴𝑠𝑝𝑒𝑐𝑡𝑜 = 𝐶ℎ𝑢𝑣𝑎 𝛬 𝑉𝑒𝑛𝑡𝑜 = 𝐹𝑟𝑎𝑐𝑜)

𝐸𝑛𝑡ã𝑜 𝑝𝑜𝑑𝑒 − 𝑠𝑒 𝑗𝑜𝑔𝑎𝑟 𝑡é𝑛𝑖𝑠

De acordo com Mitchell (1997, p. 54), as árvores de decisão se adaptam a problemas


com as seguintes características:

 Enquadrados no marco da aprendizagem supervisionada.

 A função-objectivo possui valores de saída discretos (classificação).

 Os valores dos atributos podem ser discretos ou numéricos. Valores numéricos


são tratados nas extensões do algoritmo básico.

 Requerem descrições disjuntivas. Conforme mencionado acima, as árvores de


decisão representam naturalmente expressões disjuntivas.

 Os dados de treino podem conter erros. Os métodos de aprendizagem de


árvores de decisão são robustos para erros, tanto nas classificações dos

42
Capítulo II: Desenho do Classificador

exemplos de treinamento, quanto nos valores de atributos que descrevem esses


exemplos.

 Os dados de treino podem conter valores de atributos omissos 10. Os métodos


da árvore de decisão podem ser usados mesmo quando alguns exemplos de
treinamento têm valores desconhecidos.

Dessa forma, uma das decisões mais importantes para a criação do modelo é, dado
um conjunto de dados e de variáveis, escolher a variável mais relevante para ser a
raíz da árvore. Tal escolha normalmente é realizada através do cálculo do ganho de
informação, que representa o quanto se ganha em média em pureza ao se dividir um
conjunto segundo a variável em questão, isso é equivalente a calcular a entropia da
distribuição da classe. A ideia é escolher a variável que produz o maior ganho de
informação.

Contudo, a árvore criada dessa forma pode ficar muito complexa e não generalizar
para instâncias diferentes dos dados de treinamento, ou seja, sobreajustar-se aos
dados de treino. Para evitar isso, é necessário podar a árvore, diminuindo sua
complexidade. Duas estratégias podem ser utilizadas para esse fim: pré-poda,
envolve decidir se expande ou não um determinado ramo durante o processo de
construção da árvore, enquanto a pós-poda, constrói a árvore primeiro e depois faz a
poda. Apesar de a primeira opção ser viável, pois evita o trabalho de construir a árvore,
a pós-poda é mais utilizada devido a outras vantagens como considerar atributos em
conjunto para avaliar a poda. Existem duas operações principais de poda (pós-poda),
a primeira, chamada subtree replacement, substitui uma sub-árvore inteira por uma
folha e a segunda, chamada subtree raising, envolve substituir uma sub-árvore por
outra sub-árvore descendente da primeira (Oliveira, 2016, p. 34). A segunda
operação, apesar de mais complexa é utilizada no principal algoritmo de construção
de árvores de decisão, o C4.5 (ou J48, na sua implementação em Java) que foi um
dos algoritmos utilizados neste trabalho.

10
Dados omissos, ver subsecção 2.1.1

43
Capítulo II: Desenho do Classificador

Existem vários algorítmos para a aprendizagem de árvores de decisão (Oliveira, 2016,


pp. 34-35), (Cruz, 2007, p. 17):

 Quinlan C4.5 (bem como seu antecessor ID3 e seu sucessor C5.0): é um dos
principais algoritmos para criação de árvores de decisão e funciona como
descrito anteriormente.

 CART (Classification And Regression Trees): é também um algoritmo muito


usado para a criação de árvores de decisão, ao contrário do C4.5 que constrói
árvores univariadas (que considera somente um atributo por nó da árvore) o
CART tem uma abordagem multivariada em que a árvore consiste numa
hierarquia de modelos lineares permitindo que mais de uma variável seja
testada a cada nodo. Porém CART é um algoritmo mais complexo
computacionalmente e seu modelo não é tão simples de interpretar.

 CHAID (CHi-squared Automatic Interaction Detection), baseado no teste de


Holm-Bonferroni, é outra opção para criar árvores de decisão.

2.2.2. Classificadores Bayesianos

O raciocínio bayesiano fornece uma abordagem probabilística para a inferência.


Baseia-se no pressuposto de que as quantidades de interesse são regidas por
distribuições de probabilidade e que as decisões óptimas podem ser feitas ao
raciocinar sobre essas probabilidades, juntamente com os dados observados. O
raciocínio bayesiano fornece a base para algoritmos de aprendizagem que manipulam
directamente probabilidades, bem como uma estrutura para analisar a operação de
outros algoritmos que não manipulam explicitamente probabilidades (Mitchell, 1997,
p. 154).

A base teórica é estabelecida pelo Teorema de Bayes (Reverendo Thomas Bayes,


1701 - 1761), designados por isso métodos de aprendizagem Bayesianos.

Segundo Mitchell (1997, pp. 154-155), os métodos de aprendizagem assentes em


redes bayesianas são relevantes para o estudo da aprendizagem automática por duas
razões essenciais:

 A primeira prende-se com o facto dos algoritmos de aprendizagem bayesiana que


calculam probabilidades para determinadas hipóteses, tal como o classificador

44
Capítulo II: Desenho do Classificador

Naïve Bayes, estão entre as abordagens mais práticas para certos tipos de
problemas de aprendizagem. Por exemplo, Michie et al. (1994) fornecem um
estudo detalhado comparando o classificador Naïve Bayes com outros algoritmos
de aprendizagem, incluindo algoritmos de Árvores de Decisão e Redes Neurais.
Essas pesquisas mostram que o classificador Naïve Bayes é competitivo com
esses outros algoritmos de aprendizagem em muitos casos e que, em alguns
casos, supera esses outros métodos. Neste trabalho, também foi usado o
algoritmo Naïve Bayes, e portanto, obtevemos bons resultados.

 A segunda razão pela qual os métodos bayesianos são importantes no estudo da


aprendizagem automática diz respeito ao facto de providenciarem uma perspectiva
útil na compreensão de diversos algoritmos de aprendizagem que não manipulam
explicitamente probabilidades. Aliás, uma das dificuldades inerentes à aplicação
de métodos bayesianos é o facto de habitualmente exigirem o conhecimento de
uma série de probabilidades. Nos casos em que estas probabilidades não são
conhecidas, são frequentemente alvo de estimativa baseada em conhecimento
prévio (dados disponíveis anteriormente ou suposições sobre a forma de
distribuições subjacentes).

As características dos métodos de aprendizagem Bayesianos incluem (Mitchell, 1997,


p. 155):

 Cada exemplo de treinamento observado pode diminuir ou aumentar


incrementalmente a probabilidade estimada de que uma hipótese seja
correcta.

 O conhecimento prévio pode ser combinado com dados observados para


determinar a probabilidade final de uma hipótese.

 Os métodos bayesianos podem acomodar hipóteses que fazem previsões


probabilísticas (por exemplo, hipóteses como "este paciente com pneumonia
tem 93% de chance de recuperação completa").

 Novas instâncias podem ser classificadas ao combinar as previsões de


hipóteses múltiplas, ponderadas pelas suas probabilidades.

45
Capítulo II: Desenho do Classificador

 Mesmo nos casos em que os métodos bayesianos se mostram


computacionalmente intratáveis, eles podem fornecer um padrão de decisão
óptimo contra a qual outros métodos práticos podem ser medidos.

Teorema de Bayes

O teorema de Bayes fornece uma maneira de calcular a probabilidade de uma


hipótese com base na sua probabilidade a priori, as probabilidades de observar vários
dados, dada a hipótese, e os dados observados em si (Mitchell, 1997, pp. 156-157).

Dado um espaço de hipósetes (H), estabelece um método para o cálculo da


probabilidade associada a uma hipótese (h ϵ H), dado um conjunto de exemplo (E),
mais qualquer conhecimento inicial sobre as probabilidades associadas a priori a cada
hipótese existente em H.

O teorema de Bayes é a pedra angular dos métodos de aprendizagem Bayesiana,


porque fornece uma maneira de calcular a probabilidade a posteriori P(h|E), a partir
da probabilidade a priori P(h), juntas com P(E) e P(E|h)

A seguinte equação é conhecida como Teorema de Bayes:

𝑃(𝐸 |ℎ)𝑃(ℎ)
P(h|E) =
𝑃(𝐸)

P(h): denota probabilidade inicial de que a hipótese h seja correcta, antes de


observarmos os dados de treino.

 Reflecte qualquer conhecimento básico que possuímos acerca da possibilidade


de que a hipótese h seja a correcta.

 Denominada probabilidade a priori.

 Se não possuímos nenhum conhecimento a priori, se atribui a mesma


probabilidade a priori a todas as hipóteses candidatas.

P(E): denota a probabilidade de que os dados de treino E sejam observados.

 Representa a probabilidade associada a observação dos dados E, sem


nenhum conhecimento acerca de que a hipótese h ϵ H é a correcta.

P(E|h): denota a probabilidade associada à observação dos dados E caso a hipótese


h seja a correcta.

46
Capítulo II: Desenho do Classificador

 Denominada verosimilhança do conjunto de dados E, dada a hipótese h.

P(h|E): denota a probabilidade de que a hipótese h seja correcta uma vez observados
os dados de treino E.

 Denominada probabilidade a posteriori de h.

 Reflecte a confiança em que h é uma hipótese correcta depois de haver sido


observados os dados de treino E.

 Reflecte a influência dos dados de treino E, a diferença da probabilidade a


priori, P(h), que é independente de E.

A probabilidade a posteriori permite a tomada de decisões óptimas acerca da


classificação de novos dados. Atribuindo ao novo vector de características a classe
com a maior probabilidade a posteriori se minimiza a probabilidade de erro ao realizar
a classificação (Bishop, 1995 Apud Makili, 2014).

Segundo Mitchell (Mitchell, 1997, p. 157), num cenário de aprendizagem, geralmente


se considera um conjunto de hipóteses candidatas H e se trata de buscar a hipótese
mais provável h ϵ H, dados os exemplos de treino E.

 É denominada hipótese máxima a posteriori (MAP)


𝑃 (𝐸 |ℎ )𝑃 (ℎ )
ℎ𝑀𝐴𝑃 = arg maxP(h|E) = argmax
ℎ𝜖𝐻 ℎ𝜖𝐻 𝑃 (𝐸 )

= argmax 𝑃(𝐸 |ℎ)𝑃(ℎ)


ℎ𝜖𝐻

Um classificador de Bayes é portanto uma regra que prevê a classe mais provável
para um dado exemplo, baseado na distribuição (assumida como sendo conhecida)
do conjunto de dados considerados (Lee, 2005 Apud Ferreira 2010).

Uma vantagem dessa abordagem é que ela lida bem com dados faltantes. Além disso,
é possível adicionar conhecimento de domínio na forma da estrutura do grafo ou das
probabilidades a priori. Uma desvantagem é que a inferência pode ser muito custosa
computacionalmente para redes complexas. Ainda, apesar de a probabilidade a priori
ser facilmente inferida dos dados, através de contagem de frequência, é muito difícil
estimar a melhor estrutura de dependências quando não se tem esse conhecimento
disponível.

47
Capítulo II: Desenho do Classificador

O classificador “Naïve Bayes11” é um método de aprendizagem bayesiano


amplamente usado, em muitos domínios, e apresenta rendimentos ao nível dos
métodos de top em matéria de classificação. Este método aplica-se a problemas de
classificação nos quais se pode assumir que os valores dos atributos são
independentes uns dos outros (Mitchell, 1997, p. 177). A principal vantagem do
classificador é a sua simplicidade computacional, pois não é necessário utilizar um
mecanismo de busca para encontrar as melhores hipóteses (Oliveira, 2016, p. 37).

Uma extensão do método Naïve Bayes que visa relaxar as suposições de


independência entre as variáveis mantendo a simplicidade computacional é o
classificador “Tree Augmented Naïve Bayes”. Tal estrutura permite que uma variável
tenha como ancestral outra variável além da variável-alvo (Oliveira, 2016, p. 37).

2.2.3. Máquinas de Vectores de Suporte

Nesta subsecção, faz-se uma revisão de fundamentos teóricos envolvidos na temática


de aprendizado de Máquina de Vectores de Suporte. Deste ponto em diante as
Máquinas de Vectores de Suporte serão muitas vezes referenciadas pela sua sigla,
SVM (abreviatura do inglês, Support Vector Machine).

As SVM são uma técnica estatística que pode ser usada em problemas de
classificação e de regressão, tendo este método de aprendizagem sido introduzido
por Vladimir Vapnik. São um conjunto de métodos supervisionados e procuram
solucionar o problema da classificação e reconhecimento encontrando hiperplanos de
N dimensões que melhor separem os objectos nas suas classes/categorias distintas
(Reis, 2015, p. 7).

SVM (Vapnik, 1995) é um classificador linear que, usando um hiperplano, separa um


conjunto de amostras positivas de um conjunto de amostras negativas.
Geometricamente, esse método pode ser visto como uma tentativa de busca da
melhor superfície σ𝑖 , no conjunto de todas as superfícies σ1 , σ2 , … , σ𝑛 no espaço de n-
dimensional que separa os exemplos de treinamento positivos dos negativos
(superfície de decisão). A superfície σ𝑖 separa os exemplos positivos dos negativos,

11
A designação “Naïve” é proveniente da suposição de independência.

48
Capítulo II: Desenho do Classificador

buscando maximizar a distância entre as superfícies limítrofes positivas e negativas


(Kinto, 2011, p. 8).

⃗⃗⃗1 , 𝑦1 ), (⃗⃗⃗⃗
Ou seja, dado um conjunto de treino (𝑥 𝑥2 , 𝑦2 ), … , (𝑥 ⃗⃗⃗𝑙 𝜖 𝑅𝑛 , 𝑦𝑖 𝜖 {−1, +1}.
⃗⃗⃗𝑙 , 𝑦𝑙 ), 𝑥
O objectivo é encontrar um hiperplano h, de dimensão n – 1, que separa os exemplos
da classe -1 dos exemplos da classe +1.

A superfície de decisão na forma de um hiperplano que realiza essa separação é


obtida pela Equação:

𝑤
⃗⃗ . 𝑥 + 𝑏 = 0

Onde 𝑥 é um vector de entrada, 𝑤


⃗⃗ é um vector de peso ajustável e b é o umbral.

Assim, a Equação anterior é reescrita com base nas classes y + 1 e y = −1, como
mostra a Equação a seguir:

𝑤
⃗⃗ . 𝑥 + 𝑏 ≥ 0 𝑝𝑎𝑟𝑎 𝑌 = +1

𝑤
⃗⃗ . 𝑥 + 𝑏 < 0 𝑝𝑎𝑟𝑎 𝑌 = −1

Figura 4: Hiperplano para separação de duas classes em dados separáveis linearmente.

Na figura 4, o hiperplano óptimo, em vermelho (linha contínua), é encontrado com


auxílio de dois vectores de suporte, por isso o nome “Máquinas de Vectores de
Suporte”. Estes vectores desempenham um papel importante na operação desta
máquina de aprendizagem. Em termos conceituais, os vectores de suporte são
aqueles pontos de dados que se encontram mais próximos da superfície de decisão
e são, portanto, os mais difíceis de classificar (Haykin, 2001 Apud Girardello, 2010, p.
9).

49
Capítulo II: Desenho do Classificador

Porém esta abordagem é restrita aos casos em que os dados de treinamento são
linearmente separáveis. Logo, para casos em que os dados não são linearmente
separáveis, existe uma solução, que consiste em mapear os dados para um espaço
de dimensão maior (espaço de características). Utilizando uma função kernel, é
possível fazer o mapeamento no espaço de características, então as máquinas de
vector de suporte constroem um hiperplano de separação óptimo neste espaço. Na
construção do hiperplano óptimo, são obtidos os multiplicadores de Lagrange (α), que
definem os vectores suporte (Girardello, 2010, pp. 14-15).

Na figura 5, mostra-se a aplicação de uma transformação não linear de forma a


realizar a optimização num espaço em que os dados são linearmente separáveis,
designado espaço de características.

Figura 5: Transfomação de dados não separáveis linearmente.

Porém existem alguns inconvenientes para transformação do espaço de entrada para


o espaço de características (Witten, Frank, & Hall, 2011, p. 226):

 Difícil definir uma função de transformação adequada a cada problema.

 Custo computacional da conversão dos vectores do espaço de entrada para o


estado de características.

 Custo computacional do cálculo de produtos escalares no espaço de


características.

Funções kernel

Permitem definir a função de transformação de forma implícita (não é necessário


calculá-la para todos os vectores de dados). Permitem calcular os produtos escalares
no espaço de características aplicando a função sobre os vectores no espaço de
entrada (Witten, Frank, & Hall, 2011, pp. 226-227).

50
Capítulo II: Desenho do Classificador

O kernel 𝑘 (𝑥 . 𝑦) é uma função que representa as funções de base utilizadas para


transformar o espaço de entrada original num espaço de altas dimensões (espaço de
características). A sua utilização permite, por um lado a construção de superfícies de
decisões não lineares no espaço de entradas, uma vez que os hiperplanos óptimos
determinados no espaço de características correspondem a superfícies de decisões
não lineares no espaço de entradas. Por outro lado, a utilizaçaõ de funções kernel
soluciona o problema do cálculo de produtos escalares entre os vectores no espaço
de características (Cherkassky, 2007 Apud Makili, 2014, p. 67-68).

Esta transposição baseia-se no Teorema de Cover sobre a separabilidade de


padrões, onde o mesmo afirma que um problema complexo de classificação de
padrões dispostos não linearmente em um espaço de alta dimensionalidade, tem
maior probabilidade de ser linearmente separável do que em um espaço de baixa
dimensionalidade (Haykin, 2001 Apud Girardello, 2010, p. 15).

A qualidade da classificação com SVM depende em alta medida da função kernel


empregada (Makili, 2014, p. 68). Neste trabalho foram usados as seguintes funções
kernel:

 Kernel linear: 𝑘 (𝑥 . 𝑦) = 𝑤
⃗⃗ . 𝑥

 Kernel polinómico: 𝑘 (𝑥 . 𝑦) = (𝑥 . 𝑦 + 𝑟)𝑝

⃗⃗ ||2
⃗⃗ − 𝑦
||𝑥

 Funções de Base Radial (RBF): 𝑘 (𝑥 . 𝑦) = 𝑒 2𝜎

A função Base Radial (RBF, abreviatura do inglês Radial Basis Function) também é
conhecida como função Gaussiana.

Os parâmetros p e 𝜎 são especificados a priori pelo usuário, podemos ver o resumo


na tabela 4.

51
Capítulo II: Desenho do Classificador

Tabela 4: Funções kernel usadas no trabalho.

Tipo de Kernel ⃗ . 𝒚
Função 𝒌 (𝒙 ⃗) Parâmetros livres

Linear 𝑤
⃗⃗ . 𝑥 nenhum

Polinómico (𝑥 . 𝑦 + 𝑟)𝑝 p≥2

RBF ||𝑥 − 𝑦⃗||2


𝑘 (𝑥 . 𝑦 ) = 𝑒 −
2𝜎 𝜎≥0

Margem suave

Em situações reais, é difícil encontrar aplicações cujos dados sejam linearmente


separáveis. Isso se deve a diversos factores, entre eles a presença de ruídos e outliers
nos dados ou a própria natureza do problema, que pode ser não linear (Lorena &
Carvalho, 2007)

Na classificação não separável linearmente (no espaço de entradas nem no espaço


de características), tem-se um conjunto de dados onde não é possível separar as
classes por meio de um hiperplano sem se deparar com erros de classificação. Apesar
disso, deseja-se encontrar um hiperplano óptimo que minimize a probabilidade de erro
de classificação (Haykin, 2001 Apud Girardello, 2010, p. 15).

Para isso, permite-se que alguns dados possam violar a restrição estabelecida, ou
seja, relaxa-se o problema admitindo certo grau de erro de classificação. A quantidade
de erro admitida é controlada por um parâmetro, definido como parâmetro de
penalização (C), esse valor é definido pelo usuário. Este parâmetro relaxa as
restrições impostas ao problema de optimização primal, como mostra a figura 6.

A aplicação desse procedimento suaviza as margens do classificador linear,


permitindo que alguns dados estejam entre os vectores de suporte e também a
ocorrência de alguns erros de classificação (Lorena & Carvalho, 2007).

52
Capítulo II: Desenho do Classificador

Figura 6: Aplicação do parâmetro de penalização (C); dados não separáveis.

2.3. Métodos de Validação dos Classificadores

Modelos preditivos nem sempre acertam as suas previsões, quanto mais complexo o
problema, mais difícil é realizar as previsões correctamente. Assim, é de fundamental
importância poder estimar correctamente a capacidade preditiva de um modelo
gerado para saber, por exemplo, a confiabilidade dele em aplicações reais,
especialmente em aplicações médicas. Além disso, a avaliação de modelos preditivos
também é essencial para escolher a configuração de parâmetros de um determinado
algoritmo que gera o modelo de maior capacidade preditiva ou ainda tentar escolher
modelos preditivos gerados por diferentes algoritmos.

De acordo com Makili (2014, p. 42), o rendimento de um modelo preditivo caracteriza


a qualidade das predições feitas pelo mesmo, pondo em evidência em que medida o
modelo se aproxima ao modelo verdadeiro desconhecido.

O objectivo da avaliação de modelos preditivos é estimar a probabilidade de o modelo


realizar previsões correctas quando um novo dado é apresentado (Oliveira, 2016, p.
40). As subsecções a seguir apresentam aspectos relevantes para realizar avaliação
de modelos.

2.3.1. Medidas de desempenho

A capacidade preditiva de um modelo sobre um conjunto de dados de teste (rotulados)


pode ser avaliada através de diversas métricas. Quando o objectivo da aplicação é
prever uma determinada classe, como por exemplo, estimar se um indivíduo de uma
população terá diabetes, pode-se considerar tal classe como a classe positiva,

53
Capítulo II: Desenho do Classificador

enquanto a ausência de diabetes seria a classe negativa (classificador binário).


Nesses casos, existem quatro medidas elementares que servem como base para as
métricas de avaliação de modelos (Oliveira, 2016, p. 40)12:

 Verdadeiros positivos (TP): são observações classificadas como positiva e que


possuem o rótulo de classe positiva;

 Verdadeiros negativos são observações negativas (TN) classificadas


correctamente;

 Falsos positivos (FP, ou falso alarme) são exemplos classificados


erroneamente como positivos;

 Falsos negativos (FN) são exemplos classificados erroneamente como


negativos.

Tais medidas elementares podem ser dispostas visualmente em uma Tabela de


contingência, também chamada de matriz de confusão.

Tabela 5: Matriz de confusão.

Classe Verdadeira

0 (+) 1 (-) Total

0 (+) tp fp p'
Classe predita
1 (-) fn tn n'

Total p n N

Por meio dos valores contidos nesta matriz de confusão é possível definir métricas
que podem ser utilizadas como avaliadores de tal classificação, como por exemplo:

 Taxa de êxito, também conhecida como accuracy, é a percentagem de


instâncias que o classificador previu correctamente. Corresponde à taxa de
exemplos positivos e negativos correctamente classificados. Esta métrica é
calculada de acordo com a seguinte fórmula:

12
Ao longo desta subsecção concentramo-nos em problemas com apenas duas classes, no entanto, é
importante referir que as noções aqui expostas poderão ser estendidas a várias classes.
54
Capítulo II: Desenho do Classificador

(𝑡𝑝 + 𝑡𝑛)
𝑇𝑒𝑥 = = 1 − 𝑇𝑒𝑟𝑟
𝑁

Neste trabalho foi usado a Taxa de êxito, como métrica para avaliação dos
classificadores. Portanto, para além desta métrica existem outras como: taxa de erro,
sensibilidade, Especificidade, curva ROC (Receiver Operating Characteristic)
(Witten, Frank, & Hall, 2011, pp. 140-150), (Makili, 2014, pp. 42-45).

Vários outros factores podem influenciar na escolha do algoritmo mais apropriado para
uma determinada aplicação, como, por exemplo, a complexidade computacional em
termos de tempo ou espaço, a claridade e interpretabilidade do modelo gerado, a
facilidade de programação, etc.

Os critérios de avaliação utilizados foram Taxa de êxito, e velocidade. Um classificador


tem alta taxa de êxito quando a percentagem da taxa de acertos for maior que 75%,
média quando estiver entre 40 e 75% e baixa quando for menor que 40% (Zheng,
1993). Estes valores foram considerados na análise dos resultados.

2.3.2. Métodos de Avaliação

A capacidade preditiva do modelo gerado é um dos principais factores e é fortemente


relacionada com o conjunto de dados utilizados para criar o modelo. Assim, um
algoritmo que gere modelos preditivos de maior êxito utilizando um determinado
conjunto de dados pode não ter o mesmo desempenho quando o conjunto de dados
for diferente.

Dessa forma, além de conhecer e entender o funcionamento e outras características


inerentes aos algoritmos para poder escolher aquele mais adequado para a aplicação
de interesse é importante avaliar a capacidade preditiva dos modelos gerados pelos
diferentes algoritmos no conjunto de dados que será utilizado.

De acordo com Witten (2011, p. 149), a taxa de erro determinada a partir dos dados
utilizados ao treinar um algoritmo de aprendizagem (conjunto de treino) não é um bom
indicador do seu desempenho futuro. Para avaliar o desempenho futuro é necessário
determinar o erro cometido utilizando um conjunto de dados independente que não foi
utilizado ao treinar o algoritmo (conjunto de teste).

55
Capítulo II: Desenho do Classificador

A aplicação dos diferentes métodos de aprendizagem automática requer um processo


que permita garantir que os resultados obtidos sejam fiáveis e estatisticamente
significativos. A continuação apresenta-se o método para a avalição dos modelos,
usado no trabalho:

Validação Cruzada

Para fazer a validação, o método mais utilizado em aprendizagem automática é a


validação cruzada. Consiste em dividir os dados em K subconjuntos (folhas) com
tamanhos aproximadamente iguais, sendo utilizados K–1 subconjuntos para treinar o
algoritmo e o restante para o teste. O processo é repetido variando o subconjunto de
teste, de forma que no fim do processo todos os estratos são utilizados como teste
exactamente uma vez (Oliveira, 2016, p. 42), (Witten, Frank, & Hall, 2011, p. 152).

Este processo resulta em k modelos construídos com diferentes conjuntos de dados


e testados com conjuntos de dados independentes dos de treinamento. A estimação
da taxa de erro é feita através da média das taxas obtidas ao repetir o processo K
vezes com as diferentes combinações de K–1 subconjuntos de treino.

Segundo (Witten, Frank, & Hall, 2011, p. 153), uma validação cruzada efectuada com
10 folhas dá-nos uma melhor estimação para validação de um classificador. Por esta
razão, neste trabalho foi usado validação cruzada com 10 folhas, para a selecção dos
melhores parâmetros (ou configurações) no treino de determinados classificadores e
validar o rendimento dos classificadores.

Outros métodos de validação podem ser usados como hold-out e leave-one-out


(Makili, 2014, pp. 50-52), (Oliveira, 2016, p. 42) , (Witten, Frank, & Hall, 2011, pp. 153-
154).

Sendo assim, a avaliação de modelos tem dois objectivos principais:

 Escolher dentre diversas configurações de um determinado esquema de


aprendizagem qual a que mais é adequada aos dados e;

 Estimar o desempenho que um determinado modelo teria caso fosse aplicado


a novos dados (generalização) com um determinado grau de certeza.

56
Capítulo II: Desenho do Classificador

2.4. Plataforma de Desenvolvimento: WEKA

Não sendo o objectivo deste trabalho escrever um manual de utilização do sistema de


mineração de dados WEKA, é no entanto, oportuno efectuar uma breve descrição
desta ferramenta. Portanto, a continuação trata-se de descrever as funcionalidades
do sistema WEKA, uma vez que foi a ferramenta a que recorremos para a realização
de todas as experiências inerentes a este trabalho.

Esta ferramenta foi criada na Universidade de Waikato na Nova Zelândia, o software


WEKA, Ambiente Waikato para Análise de Conhecimento (em inglês Waikato
Environment for Knowledge Analysis) foi desenvolvido na linguagem de programação
Java (linguagem orientada a objectos), implementando uma grande variedade de
técnicas (Witten, Frank, & Hall, 2011, p. 403). Uma vez que é escrito em Java, o código
encontra-se apto para ser executado em diferentes plataformas, conferindo um certo
grau de portabilidade ao sistema.

Disponibiliza igualmente diversos algoritmos de pré-processamento de dados, bem


como de análise de resultados. O conjunto de técnicas que implementa permite a
utilização da ferramenta em diversos problemas, tais como classificação, regressão e
clustering.

Neste trabalho usou-se o WEKA na sua versão 3.6.13, a considerada versão mais
estável da ferramenta.

Grande parte dos recursos do software WEKA encontra-se acessíveis através da sua
interface gráfica13. Além disso, a ferramenta WEKA, possui uma API (Interface de
Programação de Aplicações, do inglês, Aplication Program Interface) desenvolvida em
java.

2.5. Conjunto de dados

O conjunto de dados original utilizado no estudo para a construção dos modelos


preditivos é o Pima Indians Diabetes, que foi recolhido pelo Instituto Nacional de
Diabetes dos Estados Unidos. O mesmo refere-se a dados de pacientes que foram

13
Ver Anexos (Secção A.1)
57
Capítulo II: Desenho do Classificador

submetidos ao rastreio de diabetes, sendo os mesmos classificados em positivos (tem


diabetes) e negativos (não tem diabetes). Participaram um total de 768 pacientes, dos
quais 268 foram diagnosticados com diabetes.

O conjunto de dados possui 768 instâncias e 9 atributos (numéricos) incluindo a


classe, como podemos observar na figura 7.

Figura 7: Características do conjunto de dados.

2.5.1. Atributos

Como já referido na secção 2.1, o conjunto de dados utilizado possui 9 atributos


(numéricos), que são descritos pormenorizadamente na tabela 6.

As colunas da tabela 6 têm os seguintes significados. A coluna “Nome da variável”


mostra o nome de cada variável disponibilizada pelo conjunto de dados e serve como
um identificador da variável. A coluna “Descrição” mostra uma descrição sucinta do
significado da variável, enquanto que a coluna “intervalo de valores” mostra o intervalo
de valores da variável relativo aos dados existentes.

Nos valores referentes a classe 0 é interpretado como não tem diabetes, e 1 tem
diabetes.

58
Capítulo II: Desenho do Classificador

Tabela 6: Descrição dos atributos do conjunto de dados.


Nome da variável Descrição Intervalo de valores
Preg Número de vezes em que esteve 0 - 17
grávida
Plas Concentração de glucose no 0 - 199
sangue em 2 horas de jejum, no
Teste de Tolerança a Glicose Oral
Pres Pressão sanguínea (mm Hg) 0 - 122
Skin Espessura da pele (mm) 0 - 99
Insulin Insulina sérica (mu U/ml) 0 - 846
Mass Índice de massa corporal 0 – 67,1
Pedi Função pedigree de diabete 0,078 – 2,42
Age Idade (anos) 21 - 81
Class Classificação dos pacientes 0-1

2.5.2. Instâncias ou exemplos do conjunto de dados

Instância é um objecto individual e independente, representante do conceito a ser


aprendido. Pode-se observar na figura 8 algumas instâncias do conjunto de dados.

Observa-se na figura 8, a primeira coluna é referente a enumeração das instâncias, e


as demais colunas representam os atributos descritos a tabela 6, respectivamente.
Podemos tomar como exemplo de observação a instância número 7 e os seus valores
para os respectivos atributos.

Das 768 instâncias do conjunto de dados, 500 foram classificadas como negativas
(não têm diabetes) e 268 foram classificadas como positivas (têm diabetes).

59
Capítulo II: Desenho do Classificador

Figura 8: Algumas instâncias do conjunto de dados.

2.6. Conclusão

Neste capítulo foi apresentado um estudo das principais técnicas e metodologias


envolvidas em todo processo de desenho e avaliação dos classificadores. No mesmo
se abordou sobre as técnicas de descoberta de conhecimento, os métodos de
validação, bem como os métodos e algoritimos de Aprendizagem Automática usados
na construção dos classificadores.

Realizou-se, também, uma descrição de forma sucinta da plataforma de


desenvolvimento WEKA, dos classificadores e bases de dados utilizadas.

60
Capítulo III: Testes e Resultados

CAPÍTULO III: TESTES E RESULTADOS

Este capítulo descreve as etapas, testes e metodologias utilizadas para a construção


dos modelos preditivos de diabetes e mostra os resultados alcançados em cada etapa.

O objectivo deste capítulo é, portanto, apresentar de forma experimental, como os


conceitos introduzidos no capítulo anterior foram aplicados no trabalho, além dos
testes realizados com seus respectivos resultados e trata também de analisar os
resultados dos mesmos.

3.1. Metodologia

Para a construção e avaliação dos modelos foram realizadas em três etapas


sequenciais:

(i) Pré-processamento;

(ii) Afinação dos parâmetros configuráveis de cada algoritmo e estimativa


de erro;

(iii) Teste de generalização com o conjunto de dados completo.

Nas subsecções a seguir, são descritas cada etápa com mais detalhes.

3.1.1. Pré-processamento

O conjunto de dados original não possui dados faltantes. A técnica de pré-


processamento usada foi a discretização, para converter atributos com valores
numéricos em valores nominais. Porém essa técnica foi experimentada apenas para
a construção de modelos com algoritmo Naïve Bayes.

Em outros casos não se realizou qualquer transformação ao conjunto de dados,


deixando com que a ferramenta ou o protótipo do algoritmo faça o tratamento
adequado as diferentes escalas dos valores.

A fim de avaliar os modelos, foi adotado o método de particionamento do conjunto de


dados. A proporção utilizada foi de 60% das amostras para treino (para achar os
melhores parâmetros em cada método)

61
Capítulo III: Testes e Resultados

3.1.2. Afinação dos parâmetros e estimativa de erros

A primeira etapa avaliou cada algoritmo de aprendizagem automática utilizando


diferentes configurações de parâmetros para descobrir qual configuração produz o
melhor resultado em termos da métrica de avaliação utilizada para cada algoritmo. Os
parâmetros testados de cada algoritmo estão listados e descritos na Tabela 7.

Tabela 7: Parâmetros analisados de cada algoritmo.


Algoritmo Parâmetro Descrição Intervalo de Valores usado
Número mínimo de
C4.5

M 10 - 42
instâncias por folha.
O factor de confiança
usado para a poda (os
C valores menores 0,05 - 0,50
incorrem em mais
podas).
Use um estimador de
Naïve Bayes

kernel para atributos


K True - False
numéricos em vez de
uma distribuição normal.
Use a discretização
supervisionada para
D converter os atributos True - False
numéricos em valores
nominais.
Parâmetro de
SVM

C 0,4 - 200
penalização.
p Valor do expoente. 2-8
G Valor de gamma. 0,01 - 100

Devido a grande quantidade de valores possíveis dos parâmetros, foi necessário


adoptar uma estratégia de busca. Primeiramente começou-se a validação cruzada
com 10 folhas, com os menores valores de parâmetros, e foi aumentando-se para um
escala maior, nos intervalos onde obtiveram-se maiores êxitos, foram feitos novos

62
Capítulo III: Testes e Resultados

treinos dos classificadores com os valores daquele intervalo que não fizeram parte do
treino anterior. E assim até seleccionar a melhor configuração de parâmetros.O critério
usado para a selecção foi a taxa de êxito.

Para avaliar o rendimento dos classificadores, usou-se a validação cruzada com 10


folhas. Pois uma validação cruzada feita com 10 folhas, estatisticamente dá-nos uma
boa estimação do rendimento de um classificador.

Os resultados desse teste serviram como indicativos para escolher o esquema de


aprendizagem (combinação de valores de parâmetros e transformação utilizada) a ser
utilizado na construção de modelos preditivos na prática.

3.1.3. Teste de generalização

Por fim, foi realizado o teste de generalização com o objectivo de avaliar o


comportamento dos modelos preditivos quando apresentados a dados ainda não
vistos em nenhuma das etapas anteriores. Para isso, todos os dados de
treinamento/validação utilizados nas etapas anteriores foram utilizados para a criação
dos modelos preditivos e esses modelos foram testados no conjunto de dados total.
Foi realizado um teste para cada algoritmo utilizando o esquema de aprendizagem
que obteve melhores resultados na validação cruzada anterior. Os resultados obtidos
nessa etápa serviram como métrica de qualidade para os modelos que foram
utilizados na prática ou para futuros testes.

3.2. Construção e validação dos modelos

Os modelos preditivos de diabetes foram criados através dos seguintes algoritmos de


aprendizagem de máquina: C4.5, Naïve Bayes e SVM. Usou-se a taxa de êxito (em
“%”) para avaliação do classificador.

Os detalhes de implementação da construção dos modelos são independentes para


cada algoritmo, e a seguir descrevemos.

3.2.1. Afinação dos parâmetros e estimativa de erros

Nesta subsecção são apresentados os resultados da etapa (II).

63
Capítulo III: Testes e Resultados

C4.5 (Árvores de decisão)

Para gerar modelo de árvores de decisão, usou-se o método J48 que é a


implementação no WEKA do algoritmo C4.5 para a aprendizagem de árvores de
decisão. A continuação apresenta-se os resultados obtidos.

A tabela 8, mostra os resultados da validação dos modelos, com e sem efectuar a


poda da árvore.

Em realce (a “verde”), a configuração com maior taxa de êxito. Portanto, nesta fase
de acordo com os resultados da tabela 8, a maior taxa de êxito foi de 79,18%, que
aparece em duas configurações. com M = 39 (“sem podar a árvore”), e com M = 39
e C = 0,50.

Tabela 8: Taxa de éxito (%) do classificador C4.5.

C M 10 15 30 39 42

__ 76,14 78,53 78,53 79,18 77,66

0,05 76,79 77,87 76,36 76,57 76,57

0,10 76,79 78,30 77,44 77,87 77,22

0,15 77,01 78,31 78,53 77,87 77,22

0,20 76,79 78,74 78,30 77,87 77,44

0,25 76,14 78,09 78,53 78,09 77,44

0,50 75,92 78,53 78,53 79,18 77,66

Obtivemos diferentes tamanho das árvores para cada configuração de parâmetros,


conforme mostra a tabela 9.

Como critério de desempate, para escolher entre as duas configurações que


apresentaram a melhor taxa de êxito para esta fase, efectuou-se o teste de
generalização com ambas as configurações e seleccionamos a que obteve melhor
resultado. De acordo a este teste de generalização, com a configuração M = 39 (“sem
poda”) obteve taxa de êxito de 74,48%, e com a configuração M = 39 e C = 0,50 obteve
taxa de êxito de 74,09%. No entanto a configuração seleccionada para essa etapa foi
a sem efectuar a poda, com o mínimo de 39 instâncias por folha (M = 39).

64
Capítulo III: Testes e Resultados

Tabela 9: Tamanho das árvores geradas pelo classificador C4.5.

C M 10 15 30 39 42

__ 21 15 11 9 9

0,05 11 11 11 9 9

0,10 11 11 11 9 9

0,15 15 11 11 9 9

0,20 15 11 11 9 9

0,25 15 11 11 9 9

0,50 21 11 11 9 9

A figura 9, ilustra a árvore gerada pelo modelo com a melhor configuração de


parâmetros.

Figura 9: Árvore de decisão J48, com a melhor configuração de parâmetros.

65
Capítulo III: Testes e Resultados

Naïve Bayes

Nesta subsecção apresenta-se os resultados do treino do classificador Naïve Bayes,


para a construção dos modelos preditivos de diabetes. O classificador Naïve Bayes,
faz parte do pacote bayes no WEKA.

Após o treino do classificador Naïve Bayes com o conjunto de dados separado para o
treino e validação obteve-se o seguinte rendimento (tabela 10).

A tabela 10 apresenta a avaliação do classificador com a activação de alguns


parâmetros e empregando a discretização (parâmetro “D”).

De acordo com os resultados da tabela 10, obtivemos maior êxito na construção do


classificador quando efectuamos a discretização (conversão dos atributos numéricos
em valores nominais). Portanto, este foi o modelo escolhido para fazer o teste de
generalização e incorporar no protótipo desenvolvido.

Tabela 10: Taxas de êxito (%) Naïve Bayes.

Parâmetro Usado Taxa de Êxito (%)

- 77,01

K 77,01

D 77,66

Máquinas de Vectores de Suporte14

Para criar modelos com SVMs, usou-se o algoritmo SMO (Sequential Minimal
Optimization), que faz parte do pacote functions no WEKA.

Utilizaram-se três funções kernel: Linear, Polinomial de grau = 2; 4 e 8 e RBF com


gamma = 10; 20; 50; 70 e 100 . Em ambas as análises foram adicionadas um custo C
(parâmero de penalização), para que o modelo fosse susceptível a possíveis ruídos.
Os valores para a constante de penalização foram variando num intervalo de 0,4 à
200.

14
Devido a complexidade temporal elevada em SVM tratou-se de registrar os tempos em segundos
necessários para a construção dos modelos.
66
Capítulo III: Testes e Resultados

Kernel linear

A tabela 11 mostra os resultados obtidos ao construir os modelos com diferentes


valores do parâmetro de penalização C.

Após treinar o classificador com diferentes valores de C, obteve-se maior taxa de êxito
quando usamos como argumento 0,4.

Tabela 11: Taxas de êxito (%) e tempo de construção (s) com SVM, Kernel linear.

Parâmetro C Tempo de Construção (s) Taxa de Êxito (%)

0,4 0,02 79,61

1 0,02 78,74

10 0,03 78,31

50 0,11 78,52

100 0,2 78,74

200 0,41 78,96

Kernel polinomial

Usando Kernel Polinomial, avaliamos agora a taxa de êxito na construção dos


modelos com SVM, com diferentes valores de C e p.

De acordo com os resultados da tabela 12, é notável que se obteve maior êxito ao
treinar o classificador com os valores C = 4 e p = 2, com 79,83% de taxa de êxito.

Tabela 12: Taxas de êxito (%) SVM com kernel polinomial.

C p 2 4 6 8

0,4 79,18 78,96 77,87 75,92

1 78,74 78,09 77,66 74,62

4 79,83 78,09 76,35 73,54

10 78,96 77,87 74.19 72,89

50 76,57 75,48 72,67 72,02

Os tempos levados para construção dos modelos foram registados na tabela 13.
67
Capítulo III: Testes e Resultados

Tabela 13: Tempo de construção (s) SVM com kernel polinomial.

C p 2 4 6 8

0,4 0,19 0,17 0,36 2,09

1 0,09 0,19 0,91 4,53

4 0,09 0,41 2,55 30,1

10 0,14 1 10,99 64,59

50 0,52 4,36 76,57 142,8

Kernel RBF

A tabela 14 mostra os resultados do treino do classificador com Kernel RBF.

Os resultados da tabela 14 demostram que obteve-se maior êxito com argumentos


C=20 e G=0,01, que obteve uma taxa de êxito de 79,61%.

Tabela 14: Taxas de êxito (%) SVM com kernel RBF.

C G 0,01 0,1 1 10 50

10 73,97 78,53 77,22 74,84 67,68

20 79,61 78,53 77,44 72.,67 67,68

50 78,74 79,18 78,09 71,37 67,68

70 78.96 79,18 77,44 70,93 67,68

100 78,31 79,18 77,01 70,50 67,68

Os tempos levados para construção dos modelos foram registados na tabela 13.

Após a realização dos treinos com classificador SVM, em cada fase seleccionou-se
os melhores argumentos de cada Kernel. Portanto, como observamos, obteve-se
maior êxito com a seguinte configuração: kernel = Polinomial, C = 4 e p = 2, que
obteve 79,83% de taxa de êxito. Que foi a configuração seleccionada para a última
etapa, e consequentemente, para ser incorporada na interface gráfica construída.

68
Capítulo III: Testes e Resultados

Tabela 15: Tempo de construção (s) SVM com kernel RBF.

C G 0,01 0,1 1 10 50

10 0,11 0,08 0,11 0,28 0,23

20 0.09 0.09 0,16 0,3 0,22

50 0,11 0,11 0,27 0,53 0,23

70 0.09 0,11 0,28 0,47 0,22

100 0.09 0,11 0,5 0,55 0,22

3.2.2. Teste de generalização

Nesta subsecção se apresentam as melhores configurações dos classificadores


encontradas na subsecção anterior, e no entanto apresentar os resutados da última
etapa (“teste de generalização”).

A tabela 16 mostra um resumo dos resultados para as melhores configurações de


cada classificador.

Tabela 16: Teste de generalização das melhores configurações de cada classificador.

Classificador Parâmetros Teste (%)

C4.5 M (39) 74,48

Naïve Bayes D 74,35

SVM C (4) P (2) 77,87

Portanto, foram essas as configurações incorporadas no protótipo que se


desenvolveu, que permitirá a classificação de novas instâncias em uma interface
gráfica.

3.3. Conclusão

Neste capítulo foram descritas as etapas, testes e metodologias utilizadas para a


construção dos modelos preditivos de diabetes e mostrou os resultados alcançados
em cada etapa.

69
Capítulo III: Testes e Resultados

Portanto, em cada classificador, tratou-se de encontrar a melhor configuração para o


problema proposto.

Para o caso dos classificadores C4.5 e Naïve Bayes apresentaram média taixa de
acuidade. A taxa de êxito da melhor configuração do classificador SVM é superior a
75%. De acordo com Zheng (1993), um classificador tem alta taxa de acuidade quando
a percentagem da taxa de êxito for maior que 75%. Portanto, concluímos que, os
modelos construídos têm um alto poder de predição.

70
Capítulo IV: Desenho da Aplicação

CAPÍTULO IV: DESENHO DA APLICAÇÃO

Este capítulo se descreve de forma breve o protótipo desenvolvido, a interface gráfica


em que foi incorporada os modelos aprendidos no capítulo anterior.

4.1. Protótipo desenvolvido

No final do processo, o esquema de aprendizagem que obteve melhor resultado na


etapa 2 (validação cruzada para estimativas de erro) e também obteve resultado
satisfatório no teste de generalização, incluindo: algoritmo e parâmetros de
configuração do algoritmo; foram seleccionados para servir de base para a construção
de um protótipo informático, que é uma interface gráfica para a previsão de diabetes
de novos dados a que serão introduzidos.

Este protótipo foi desenvolvido usando a linguagem de programação JAVA, no


ambiente de desenvolvimento NetBeans na sua versão 8.1. O desenvolvimento do
protótipo foi possível pelo facto de a ferramenta WEKA ser um software de código
aberto, no entanto ela trás consigo a uma biblioteca de desenvolvimento.

Usou-se a biblioteca disponibilizada pelo WEKA para construir um protótipo


independente, a secção a seguir ilustra a interface gráfica construída.

4.1.1. Interface gráfica

Desenvolveu-se uma interface gráfica simples, que permite a previsão de diabetes,


ela recebe os valores das caractéristicas do paciente e disponibiliza como resultado a
referida classificação. Esta classificação é feita de forma automática por via dos
modelos incorporados na interface.

A figura 10 ilustra a interface desenvolvida. Conforme a figura ela permite que o


usuário introduza os dados referentes ao paciente, permite a escolha do classificador
a utilizar (C4.5, Naïve Bayes ou SVM) e o botão classificar que quando clicado,
permite com que os dados preenchidos sejam analisados, e assim retornar a
classificação correspondende.

71
Capítulo IV: Desenho da Aplicação

Figura 10: Interface gráfica para previsão de diabetes.

72
Conclusões

CONCLUSÕES

O principal objectivo do trabalho foi o de construir modelos preditivos para o auxílio no


diagnóstico imediato da Diabetes, modelos esses que foram criados a partir de
diferentes técnicas e algoritmos de Aprendizagem Automática. Para se atingir esse
objectivo, algumas tarefas de investigação foram levadas a cabo.

Revisou-se um conjunto abrangente de fontes bibliográficas publicadas em relação ao


tema de estudo, desde publicações avulsas, jornais, revistas, livros, pesquisas,
monografias, teses, atlas, relatórios de conferências etc. Esta revisão permitiu-nos
saber em que ponto o estudo da aplicação da Aprendizagem Automática na detecção
da diabetes se encontra, e assim enquadrar a linha de investigação.

Estudou-se um conjunto de ferramentas para a elaboração do trabalho, e seleccionou-


se as mais convenientes, a ferramenta WEKA (para o estudo dos classificadores),
NetBeans (para o desenho da interface gráfica) e a linguagem Java foi usada para
programação.

Seleccionou-se os classificadores C4.5, Naïve Bayes e SVM para a construção dos


modelos preditivos de diabetes.

Os métodos automáticos foram treinados e avaliados com dados de antigos pacientes


que foram submetidos ao exame de diabetes. Foram descritos e discutidos os
principais conceitos e algoritmos utilizados para gerar os modelos. Como também
foram apresentados os principais problemas e desafios existentes para realizar esse
tipo de tarefa bem como os meios e orientações para abordá-los de forma eficiente.

O processo de criação e validação dos modelos foi realizado em três etapas principais:
pré-processamento (I), afinação dos parâmetros e estimativa de erros (II) e
generalização (II).

Como resultado do estudo, construiu-se uma interface gráfica na qual foram


integrados os modelos seleccionados na segunda etapa, para a previsão da
classificação a atribuir aos novos pacientes cujos dados forem introduzidos.

Os modelos aprendidos tiveram uma taxa de êxito superior a 75%, pelo que se
consideram como modelos com alto poder preditivo. Portanto, se pode concluir que a

73
Recomendações

classificação automática de diabetes usando os modelos aprendidos pode alcançar


resultados semelhantes ou mesmo superiores aos obtidos pelos próprios especialistas
e que usando os modelos aprendidos auxiliaria os médicos no diagnóstico imediato
da diabetes.

RECOMENDAÇÕES

Por meio deste trabalho várias linhas de investigação podem surgir em função de
algumas limitações constatadas no decorrer do presente trabalho. Tendo em conta as
mesmas, são formuladas algumas recomendações para trabalhos futuros.

A intenção inicial era trabalhar com conjuntos de dados locais, porém houve
dificuldades na obtenção desses dados; pois se verificou que não existia uma base
de dados local organizada e disponível para o estudo. Portanto, recomendamos que
se crie sistemas de captação dos dados dos pacientes submetidos ao exame da
diabetes.

Como trabalho futuro, se pode estender este estudo a universos de dados maiores e
geograficamente distintos, assim como aplicar outras técnicas de aprendizagem
automática.

O processo utilizado também pode servir como referência para futuras comparações
de algoritmos com o objectivo de decidir qual produz os modelos com maior
capacidade preditiva, como para verificar a viabilidade de outros conjuntos de dados
para detectar outras doenças crônicas. ´

74
Bibliografia

BIBLIOGRAFIA15

AAAI. (2017). AAAI. Obtido em Dezembro de 2016, de www.aaai.org

Alpaydın, E. (2010). Introduction to Machine Learning (2nd ed.). (T. Dietterich, C.


Bishop, D. Heckerma, M. Jordan, & M. Kearns, Edits.) London, England: The
MIT Press.

Associação Americana de Diabetes. (21 de Novembro de 2016). Associação


Americana de Diabetes. Obtido em 27 de Julho de 2017, de ADA:
www.diabetes.org/diabetes-basics/diagnosi

Barros, J. D. (2010). A revisão bibliográfica – uma dimensão fundamental para o


planejamento da pesquisa. Instrumento, 103-111.

Bellazzi, R., Ferrazzi, F., & Sacchi, L. (2011). Predictive data mining in clinical
medicine: a focus on selected methods and applications. WIREs Data Mining
and Knowledge Discover, I, 416-430. Obtido em Outubro de 2017

Bonesso, D. (2013). Estimação dos Parâmetros do Kernel em um Classificador SVM


na Classificação de Imagens Hiperespectrais em uma Abordagem Multiclasse.
Dissertação de Mestrado, UNIVERSIDADE FEDERAL DO RIO GRANDE DO
SUL, Porto Alegre.

Bordinhon, M. R. (2017). Sistema Inteligente Fuzzy Para A Classificação Dos Fatores


De Risco À Saúde. Tese de Doutorado, UNESP - Universidade Estadual
Paulista “Júlio de Mesquita Filho”, Ilha Solteira.

Borrajo Millán, D. G. (2006). Aprendizaje Automático. Editorial Sanzy Torres.

Bouckaert, R. R., Eibe, F., Hall, M., Richard, K., Reutemann, P., Seewald, A., &
Scuse, D. (2015). Manual WEKA Versão 3-6-13.

Buijsse, B., Simmons, R. K., Griffin, S. J., & Schulze, M. B. (2011). Risk
Assessment Tools for Identifying Individuals at Risk of Developing Type 2

15
Elaborada de acordo com a norma APA (American Physicological Association), 6ª ed..
75
Bibliografia

Diabetes. Oxford Journals, Epidemiologic Reviews, 46-60. Obtido em Julho de


2017, de https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3132807/

Castela, A. d. (12 de Fevereiro de 2015). Diabetes mellitus tipo 1 em Angola: dilemas.


NewsFarma. Obtido em 27 de Julho de 2017, de
http://www.newsfarma.pt/artigos.html

Claro, D. B., & Sobral, J. B. (2008). Programação em JAVA. Pearson Education.

Cruz, A. J. (2007). Data Mining via Redes Neuronais Artificiais e Máquinas de


Vectores de Suporte. Dissertação de Mestrado, Universidade do Minho,
Departamento de Sistemas de Informação. Obtido de
https://repositorium.sdum.uminho.pt/bitstream/1822/8181/1/Tese%20de%20M
estrado.pdf

Fayyad, U., Piatetsky-Shapiro, G., & Smyth, P. (1996). From Data Mining to
Knowledge Discovery in Databases. AI Magazine, 37-54.

Ferrari, A. T. (1974). Metodologia da Ciência. Kennedy Editora.

Ferreira, P. M. (2010). Aplicação de Algoritmos de Aprendizagem Automática para a


Previsão de Cancro de Mama. Tese de Doutorado, Faculdade de Ciências da
Universidade do Porto, Departamento de Ciência de Computadores, Porto.

Futi, M. (21 de 11 de 2012). Situação da diabetes em Angola preocupa o Ministério


da Saúde. AngoNotícias. Obtido em Maio de 2017, de
http://www.angonoticias.com/Artigos/item/36707/situacao-da-diabetes-em-
angola-preocupa-o-ministerio-da-saude#

Girardello, A. D. (2010). Um Estudo sobre o Uso de Máquinas de Vetores de Suporte


em Problemas de Classificação. Monografia de Bacharelato, UNIOESTE,
Cascavel.

Han, J., Kamber, M., & Pei, J. (2012). Data Mining: Concepts and Techniques (3rd
ed.). Elsevier. Obtido de
http://ccs1.hnue.edu.vn/hungtd/DM2012/DataMining_BOOK.pdf

Heart. (Agosto de 2015). Obtido em 27 de Julho de 2017, de


http://www.heart.org/HEARTORG/Conditions/More/Diabetes/AboutDiabetes/A
bout-Diabetes_UCM_002032_Article.jsp

76
Bibliografia

Hsu, C.-W., Chang, C.-C., & Chih-Jen, L. (2016). A Practical Guide to Support Vector
Classification.

IA EXPERT. (2017). IA EXPERT. Obtido em 14 de Janeiro de 2017, de


http://iaexpert.com.br/

IDF. (2015). Federação Internacional de Diabetes. Obtido em 27 de Julho de 2017, de


www.diabetes.org/diabetes-basics/diagnosis/?loc=db-slabnav

IDF. (2015). IDF Diabetes Atlas (7th ed.). (D. Cavan, J. d. Fernandes, L. Makaroff, K.
Ogurtsova, & W. Sara, Edits.) International Diabetes Federation. Obtido de
www.diabetesatlas.org

Journal of Machine Learning Research. (Maio de 2017). Obtido de


http://www.jmlr.org/

Journal of Health Informatics. (Agosto de 2017). Obtido de http://www.jhi.org/

KGMM, A., & PZ, Z. (1999). Definition, diagnosis and classification of diabetes
mellitus. Provisional report of WHO Consultation.

KGMM, A., & Zimmet, P. (1998). Definition, diagnosis and classification of diabetes
mellitus and its complications. Part 1: diagnosis and classification of diabetes
mellitus. Provisional report of WHO Consultation.

Kinto, E. A. (2011). Otimização e Análise das Máquinas de Vectores de Suporte


Aplicadas à Classificação de Documentos. Tese de Doutorado, Escola
Politécnica da Univesidade de São Paulo, Porto.

Lorena, A. C., & Carvalho, A. C. (2007). Uma Introdução às Support Vector


Machines.

Lourenço, P. M. (2003). Sistema Especialista para Auxílio no Diagnóstico de Diabetes


Mellitus. Trabalho de Bacharelato, Universidade Presidente Antônio Carlos,
Curso de Ciência da Computação.

Makili, L. E. (2014). Sistemas de Classificacion Automáticos com Confianza y


Credibilidad en Fusión Termonuclear. Tesis doctoral, UNED, Departamento de
Informática y Automática, Madrid.

77
Bibliografia

Marconi, M. d., & Lakatos, E. M. (2003). Fundamentos de Metodologia Científica (5ª


ed.). São Paulo: Editora Atlas.

Marins, O. L., Barros, E. F., Romão, W., Constantino, A. A., & Souza, C. L. (2012).
Aplicação de Algoritmos de Aprendizagem de Máquina para Mineração de
Dados Sobre Beneficiários de Planos de Saúde Suplementar. Journal of Healf
Infomatics, 44-49.

Medical News Today. (5 de Janeiro de 2016). Obtido em 28 de Julho de 2017, de


http://www.medicalnewstoday.com/info/diabetes/

Mitchell, T. M. (1997). Machine Learning. New York, USA: McGraw Hill.

Mitchell, T. M. (2006). The Discipline of Machine Learning. CMU–ML.

National Institute of Diabetes and Digestive and Kidney Diseases. (2017). NHI.
Obtido em Maio de 2017, de https://www.niddk.nih.gov/health-information

NetBeans. (2017). NetBeans. Obtido em 2 de Agosto de 2017, de www.netbeans.com

Oliveira, R. A. (2016). Comparação de Algoritmos de Aprendizagem de Máquina para


Construção de Modelos Preditivos de Diabetes não Diagnosticado. Dissertação
de Mestrado, UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL , Porto
Alegre.

OMS. (2015). Obtido em Abril de 2017, de World Hearth Organization:


http://www.who.int/diabetes

Peterson, A. H., & Martinez, T. (2005). Estimating The Potential for Combining
Learning Model. Proceedings of the ICML-2005 Workshop on Meta-Learning.
Obtido de http://axon.cs.byu.edu/papers/peterson.icmlws05.pdf

Piatetsky-Shapiro, G., Brachman, R., Khabaza, T., Kloesgen, W., & Simoudis, E.
(1996). An Overview of Issues in Developing Industrial Data Mining and
Knowledge Discovery Applications. IA Magazine, 89-95.

Rath, R., Zamberlan, A. d., & Vieira, S. A. (2013). Sistema de Recomendação para
Controle da Diabetes.

78
Bibliografia

Reis, T. (2015). TrustNet: Aprendizagem Automática de Modelos de Confiança em


Sistemas Multi-agente. Preparação da dissertação de Mestrado,
UNIVERSIDADE DO PORTO, FACULDADE DE ENGENHARIA.

Sá, A. G. (2014). Evolução Automática de Algoritmos de Redes Bayesianas de


Classificação. Dissertação de Mestrado, Instituto de Ciências Exatas da
Universidade Federal de Minas Gerais , Departamento de Ciência da
Computação, Belo Horizonte.

Saúde Prática. (s.d.). Diabetes. Empala.

Sociedade Portuguesa de Diabetologia. (8 de Julho de 2017). Sociedade


Portuguesa de Diabetologia. Obtido de http://www.spd.pt/

SUN. (2017). Obtido em 2 de Agosto de 2017, de SUN: www.java.sun.com

SVM - Support Vector Machines. (2017). SVM - Support Vector Machines. Obtido
em Outubro de 2017, de http://www.support-vector-
machines.org/SVM_soft.html

Theodoridis, S., & Koutroumbas, K. (2003). Pattern Recognition (2nd ed.). Elsevier.

UCI. (2016). Obtido em Dezembro de 2016, de


http://www.ics.uci.edu/~mlearn/MLRepository.html

WEKA the University of Waikato. (2017). Wikispaces. Obtido em Outubro de 2017,


de https://weka.wikispaces.com/Use+WEKA+in+your+Java+code

WHO. (1980). Diabetes Mellitus. Organização Mundial da Saúde, Who Expert


Comitee, Genova.

WHO. (1985). Diabetes Mellitus. WHO Study Group, Genova.

Wikispace. (2017). Obtido em 29 de Setembro de 2017, de www.weka.wikispace.com

Witten, I. H., Frank, E., & Hall, M. A. (2011). Data Mining. Practical Machine Learning
Tools and Techniques (3rd. ed.). Elsevier Inc.

Zheng, Z. (1993). A Banchmark for Classifier Learning. Technical Report 474, The
University of Sydney, Basser Department of Computer Science, Sydney.

79
Glossário

GLOSSÁRIO

Aprendizagem Automática. Ou aprendizagem de máquina (em inglês: "machine


learning") é um subcampo da ciência da computação que evoluiu do estudo de
reconhecimento de padrões e da teoria do aprendizado computacional em inteligência
artificial. Define-se como o campo de estudo que dá aos computadores a habilidade
de aprender sem serem explicitamente programados. A aprendizagem Automática
explora o estudo e construção de algoritmos que podem aprender de seus erros e
fazer previsões sobre dados. Tais algoritmos operam construindo um modelo a partir
de inputs amostrais a fim de fazer previsões ou decisões guiadas pelos dados.

Diabetes. É um grupo de doenças metabólicas, em que se verificam níveis elevados


de glicose no sangue durante um longo intervalo de tempo.

Diagnóstico. Em medicina, é o processo analítico de que se vale o especialista ao


exame de uma doença ou de um quadro clínico, para chegar a uma conclusão. É
também o nome dado à conclusão em si mesma.

Espaço de características. Nos métodos kernel, como nos casos das Máquinas de
Vectores de Suporte, designa a um espaço de elevadas dimensões definidos através
de um conjunto de funções de base não lineares.

Espeço de entrada. Espaço abstrato onde se encontram uma colecção de vectores


relaccionados a um problema determinado.

Incidência. Usada em estatística e em epidemiologia, a Incidência pode referir-se a:


(I) número de novos casos surgidos numa determinada população e num determinado
intervalo de tempo; (II) proporção de novos casos surgidos numa determinada
população e num determinado intervalo de tempo.

Kernel. é uma função que representa as funções de base utilizadas para transformar
o espaço de entrada original num espaço de altas dimensões (espaço de
características). A sua utilização permite, por um lado a construção de superfícies de
decisões não lineares no espaço de entradas, uma vez que os hiperplanos óptimos
determinados no espaço de características correspondem a superfícies de decisões
não lineares no espaço de entradas.

80
Glossário

Mineração de Dados (MD). Processo de descobrir padrões em dados. O processo


deve ser automático ou (mais geralmente) semi-automático. Os padrões descobertos
devem ser significativos na medida em que levam a alguma vantagem, geralmente
económica.

Modelo descritivo. O objectivo fundamental é, tal como o próprio nome indica,


descrever padrões interessantes relactivos ao universo de dados em causa.
Clustering, por exemplo, é uma das tarefas do modelo descritivo e consiste em
agrupar todos os dados semelhantes entre si em subconjuntos. Este tipo de modelo
pode igualmente ser utilizado para previsão nos casos em que apresentamos uma
nova instância e este decide em qual grupo esta nova instância irá pertencer. Modelos
baseados em regras também são considerados modelos descritivos.

Modelos preditivos. podem ser vistos como funções matemáticas que mapeiam um
conjunto de valores de entrada (variáveis preditoras) para um valor de saída (variável-
alvo). O objectivo principal é prever o valor de alguma variável num determinado
universo de dados.

Pré-diabetes. significa que os níveis de açúcar no sangue são superiores ao normal,


mas não alcançam os níveis para que se diagnostique a diabetes.

Prevalência. Usada em estatística e em epidemiologia, a prevalência pode referir-se


a: (I) número total de casos existentes numa determinada população e num
determinado momento temporal; (II) proporção de casos existentes numa determinada
população e num determinado momento temporal.

Previsão. Implica assumir eventos futuros, com base em dados conhecidos ou sinais
que a precedem.

Vectores de suporte. Em Máquinas de Vectores de Suporte são aqueles pontos de


dados que se encontram mais próximos da superfície de decisão e são, portanto, os
mais difíceis de classificar.

Outlier. É um ponto cujo valor se encontra muito distante do valor médio da


correspondente variável aleatória. A distância é medida com relação a um limiar
determinado, geralmente um múltiplo do desvio padrão.

81
Anexos

ANEXO A - FERRAMENTAS USADAS

Para elaboração deste trabalho usamos as seguintes ferramentas:

A.1 - WEKA

Ambiente Waikato para Análise de Conhecimento (Waikato Environment for


Knowledge Analysis) já descrita na secção 2.1. Essa ferramenta foi usada para
mineração de dados, pois ela provém com uma série de classificadores automáticos
e com funcionalidades para estudo dos mesmos classificadores. Por intermédio dessa
ferrramenta fez-se um estudo em torno dos classificadores seleccionados e a criação
dos modelos preditivos para a previsão de diabetes.

Interface gráfica

A interface gráfica da ferramenta WEKA, do inglês Graphical User Interface (GUI),


possui uma janela – WEKA GUI Chooser – (Figura 11) que permite aos utilizadores
escolherem quais as aplicações que pretendem utilizar de modo a extraírem
informação dos seus dados.

Figura 11: Janela inicial do WEKA (GUI chooser).

Como vemos na figura 6, este menu é composto por quatro botões, cada um deles
para cada uma das quatro principais funcionalidades que compõem o sistema WEKA.
Sendo assim, estes botões poderão ser utilizados para abrirem as seguintes
aplicações:

 Explorer:

Proporciona um ambiente gráfico de manipulação de dados pela utilização de diversos


algoritmos. Trata-se da interface mais fácil de usar, conduzindo o utilizador através de
menus e formulários, impedindo-o de fazer escolhas não aplicáveis e

82
Anexos

simultaneamente apresentando pop-ups de informação relactivos ao preenchimento


de vários campos. Embora seja intuitivo, torna-se necessário evidenciar alguns
elementos estratégicos desta aplicação Explorer. Sendo assim, a Figura 12 apresenta
elementos de pré-processamento (Silva, 2004 Apud Ferreira, 2010):

Figura 12: Pré-processamento no WEKA Explorer (Preprocess).

o (1) - Open File, Open URL, Open DB: através destes botões é possível
seleccionar, respectivamente, bases de dados a partir de ficheiros locais
(formato arff), bases de dados remotas (Web) ou apenas diferentes tipos de
bases de dados (via JDBC16);

o (2) - No botão Filter é possível efectuar sucessivas filtragens de atributos e


instâncias na base de dados previamente carregada (aplicação de operações
de selecção, discretização, entre outras);

o (3) - Uma vez escolhidos os principais atributos que serão alvo de estudo,
todos os outros poderão ser removidos através do botão Remove, que se
encontra no final da lista de atributos;

o (4) - Navegando interactivamente pelos atributos (quadro Attributes (5)) é


possível obter informações quantitativas e estatísticas sobre os mesmos
(quadro Selected attribute (4)). Por exemplo, o atributo seleccionado na lista de

16
Java Database Connectivity – Conjunto de classes e interfaces escritas em Java que fazem o envio
de instruções SQL para qualquer base de dados relacional.
83
Anexos

atributos da Figura 7 - Class - permite-nos constatar que a distribuição de


valores tested_negative e tested_positive na base de dados é relativamente
homogénea, tal como ilustrado pelos histogramas coloridos presentes no canto
inferior direito da imagem (6). Sendo assim, neste caso concreto, temos 500
instâncias tested_negative (rectângulo azul) e 268 instâncias tested_positive
(rectângulo vermelho).

No WEKA Explorer é também possível desenvolver tarefas de classificação, tal como


ilustrado na Figura 13:

Figura 13: Classificação no WEKA Explorer (Classify).

o (7) - Selecção e parametrização do algoritmo a ser utilizado (J48,


RandomForest, SMO, Naïve Bayes, BayesNet, etc.);

o (8) - Permite seleccionar a opção de teste e validação do modelo gerado. Entre


as opções de teste temos: a utilização do próprio conjunto de dados de treino
(Using training set), o uso de um outro conjunto apenas para testes (Supplied
test set), a aplicação de validação cruzada aos dados (Cross-validation), assim
como a separação de parte do conjunto de treino para teste (Hold-Out
Percentage Split);

o (9) - Selecção do atributo classe para a tarefa de classificação;

84
Anexos

o (10) - Resumo da tarefa efectuada com dados estatísticos, nomeadamente


métricas de desempenho, matrizes de confusão, entre outros;

o (11) - Pressionando o botão direito do rato em cima de uma entrada que se


encontre na Result list, é possível aceder a um menu que permite, entre outras
coisas, a visualização de uma representação gráfica da estrutura do
classificador gerado (como árvores de decisão, redes bayesianas).

As opções Cluster, Associate e Select attributes possuem interfaces semelhantes,


fornecendo determinadas opções a estas tarefas. No caso de tarefas de clustering a
interface disponibiliza a opção de ignorar atributos, uma vez que é extremamente
comum que neste tipo de tarefa, um ou mais atributos gerem “ruído” ao longo deste
processo. Já na fase de selecção (Selected attributes) é possível escolher o algoritmo
avaliador de atributos, assim como o método de busca para a tarefa em causa (Silva,
2004 Apud Ferreira, 2010).

 Experimenter:

Permite ao usuário criar, executar, modificar e analisar experimentos de forma mais


conveniente do que é possível ao processar os esquemas individualmente. Apesar
destas operações serem igualmente possíveis quer no Explorer como no
KnowledgeFlow, no Experimenter, no entanto, é possível escolher desde diversos
conjuntos de dados a serem utilizados numa só experiência, como várias técnicas a
serem experimentadas, e até o número de repetições (runs) do teste em questão,
entre outras escolhas (Bouckaert, et al., 2015, p. 53).

Posteriormente, a experiência em causa é executada sem ser necessária a supervisão


do utilizador. Os resultados são depois guardados num ficheiro para análise.

 KnowledgeFlow:

Esta aplicação, é uma parte da ferramenta WEKA que permite o desenvolvimento de


projectos de mineração de dados num ambiente gráfico com fluxos de informação.
Por outro lado, de entre as várias vantagens que possui, é de destacar o layout

85
Anexos

intuitivo, assim como o facto de permitir o processamento de dados em batch17 ou de


modo incremental, que por sua vez permitem a sua aplicação a conjuntos de dados
de elevada dimensão. Além do mais, possibilita o processamento paralelo, em que
cada fluxo de dados distinto é processado na respectiva thread18 (Bouckaert, et al.,
2015, p. 95), (Ferreira, 2010, p. 76).

 SimpleCLI (Command Line Interface)

Proporciona uma interface que permite a execução directa de comandos do WEKA.


Embora disponibilize todas as funcionalidades, requer um elevado grau de
conhecimento dos comandos que poderão ser utilizados (Ferreira, 2010, p. 76).

Sendo assim, tal como vimos, é possível referir que a ferramenta WEKA permite
aplicar as quatro tarefas principais de aprendizagem automática relativa à mineração
de dados, ou seja, podemos dizer que esta ferramenta permite a aplicação das tarefas
de classificação, regressão, regras de associação e clustering a inúmeros conjuntos
de dados.

Como nota de conclusão, o WEKA disponibiliza portanto uma variedade bastante


grande de algoritmos de mineração de dados, desde algoritmos relativos a redes
neuronais até support vector machines (SVM’s), árvores de decisão, entre outros
(Ferreira, 2010). Como tal, na subsecção seguinte iremos concentrar-nos nos
algoritmos/classificadores a que recorremos para a realização das experiências.

 Classificadores

Tal como ora mencionado, o WEKA reúne um vasto conjunto de algoritmos de


aprendizagem automática para a resolução de tarefas de mineração de dados.

Deste modo, durante a utilização desta ferramenta, três desses algoritmos foram
aplicados ao universo de dados alvo de estudo. A escolha destes três algoritmos deve-
se ao facto de estarem subjacentes a diferentes métodos de aprendizagem

17
Termo referente a um processamento de dados que ocorre através de um conjunto de tarefas que
se encontram enfileiradas, sendo que o sistema operativo apenas processa a próxima tarefa após o
término completo da tarefa anterior.
18
Forma de um determinado processo se dividir em duas ou mais tarefas que possam ser executadas
simultaneamente.
86
Anexos

automática, desde árvores de decisão, SVM e redes bayesianas. Com esta


abordagem multidisciplinar pretende-se, acima de tudo, estudar o comportamento dos
diferentes algoritmos na classificação dos dados em causa e por conseguinte extrair
os classificadores que se revelem mais exactos.

Nesta senda, a Tabela 17 apresenta uma síntese das principais características dos
três algoritmos a que recorremos para a execução das diversas experiências.

87
Anexos

Tabela 17: Síntese dos três algoritmos aplicados ao conjunto de dados alvo de estudo.

Métodos de
Aprendizagem
Automática Algoritmos Características

Árvores de Decisão J48 Implementação em Java


do algoritmo C4.5. Gera
uma árvore de decisão.

Redes Bayesianas Naïve Bayes Classificador


probabilístico baseado na
aplicação do teorema de
Bayes (estatística
bayesiana). É designado
Naïve uma vez que os
valores dos atributos são
condicionalmente
independentes.

Máquinas de Vectores de SMO Algoritmo eficiente para a


Suporte implementação da técnica
SVM. Substitui todos os
valores em falta e
transforma atributos
nominais em binários.
Normaliza, por default,
todos os atributos.

Sendo assim, descrevemos em detalhe os três algoritmos:

J48

Este permite a criação de modelos de decisão em árvore. Faz uso de uma estratégia
greedy para induzir árvores de decisão para posterior classificação. O modelo de
árvore de decisão é construído pela análise dos dados de treino, sendo

88
Anexos

posteriormente utilizado para classificar dados ainda não classificados (Soman e


Bobbie, 2005 Apud Ferreira, 2010). A indução por árvore de decisão é um algoritmo
que habitualmente “aprende” um conjunto de regras com elevada acuidade.

Naïve Bayes

Trata-se de um dos classificadores probabilísticos mais simples. O modelo construído


por este algoritmo é um conjunto de probabilidades. Essas probabilidades são
estimadas pela contagem da frequência dos valores de cada característica para as
instâncias dos dados de treino. Dada uma nova instância, o classificador estima a
probabilidade dessa mesma instância pertencer a uma classe específica, baseada no
produto das probabilidades condicionais individuais para os valores característicos da
instância (Soman e Bobbie, 2005 Apud Ferreira, 2010).

O cálculo exacto utiliza o teorema de Bayes, sendo por essa mesma razão que o
algoritmo é denominado um classificador de Bayes. Este algoritmo é igualmente
designado Naïve, uma vez que todos os atributos são independentes, dado o valor da
variável de classe. Apesar deste pressuposto, o algoritmo apresenta um bom
desempenho em muitos dos cenários de previsão de classes. Estudos experimentais
revelam a eficácia deste algoritmo para “aprender” mais rapidamente que a maioria
dos algoritmos de indução, daí a sua utilização no decorrer das experiências.

SMO

Optimização Mínima Sequencial (do inglês - Sequential Minimal Optimization), é um


algoritmo conceitualmente simples, fácil de implementar e geralmente é mais rápido
que a implementação tradicional do algoritmo de treinamento do SVM (Platt, 1999
Apud Bonesso, 2013).

O algoritmo é iterativo e adopta uma solução analítica para a optimização de um par


de Multiplicadores de Lagrange em cada iteração, evitando o armazenamento de
matrizes de grandes dimensões em memória (Bonesso, 2013). O SMO executa três
tarefas por iteração, nomeadamente (Ferreira, 2010):

 Selecção de um par de coeficientes (𝑡1 );


 Optimização do par de coeficientes seleccionado (𝑡2 );
 Actualização de dados globais (𝑡3 ).

89
Anexos

O algoritmo executa um total de 𝐼𝑡 iterações até que todos os coeficientes satisfaçam


um conjunto de condições denominadas de Karush-Kuhn-Tucker (KKT) (Platt, 1999
Apud Ferreira, 2010). O tempo total de execução (𝑇𝑆𝑀𝑂 ) pode ser calculado segundo
a igualdade:

𝑇𝑆𝑀𝑂 = 𝐼𝑡 (𝑡1 + 𝑡2 + 𝑡3 ) ,

Sendo (𝑡1 + 𝑡2 + 𝑡3 ) o tempo médio de execução de cada iteração.

Em modo de conclusão, torna-se essencial referir que devido a sua importância,


designadamente pelo facto de providenciar resultados robustos e generalizados,
muitos autores têm efectuado optimizações ao algoritmo SMO de forma a reduzirem
o seu tempo de execução, uma das principais limitações deste classificador
(Hernadez, 2009 Apud Ferreira, 2010).

A.2 - NetBeans

É um ambiente de desenvolvimento integrado, que permite desenvolver aplicações


Desktop, móvel e páginas Web usando a linguagem java, em alguns casos outras
linguagens. Usou-se essa ferramenta para o desenho da interface gráfica que
permititui a incorporação dos modelos aprendidos para prevêr a classificação de
novas instâncias. Usou-se esta ferramenta por usar a linguagem Java para
desenvolvimento, pois foi esta a linguagem usada para desenvolver a biblioteca do
WEKA. Usamos a versão 8.1 do NetBeans, como vemos na figura 14.

Figura 14: Ambiente de desenvolvimento NetBeans.

A.3 - Linguagem Java

Java é uma linguagem de programação orientada a objectos, desenvolvida pela Sun


Microsystems, capaz de criar tanto aplicativos para desktop, aplicações comerciais,
softwares robustos, completos e independentes, aplicativos para a Web. Alem disso,

90
Anexos

caracteriza-se por ser muito parecida com C++, eliminando as características


consideradas complexas, dentre as quais ponteiros e herança múltipla.

Programas escritos em Java, podem ser Applets, Aplicativos ou ainda Servlets. Os


aplicativos são programas que necessitam de um interpretador instalado na máquina.
Enquanto que Applets são programas carregados juntamente com páginas HTML. O
interpretador, no caso das Applets, é o próprio browser. Não necessita instalação,
basta que o browser usado ofereça suporte a Java. Já no caso dos Servlets, são
programas desenvolvidos em Java que são interpretados pelo Servidor Web. Os
servlets são utilizados na geração dinâmica de páginas HTML. Atualmente, são muito
utilizados na combinação com JSP (Java Server Pages) para a utilização do MVC
(Model View Controller) (Claro & Sobral, 2008).

Além de ser uma linguagem com fortes propriedades como a sua robustes,
multiplataforma, segura, orientada a objecto, a principal escolha dessa linguagem é
pelo facto da sua compatibilidade com a ferramenta WEKA, pois a biblioteca de
desenvolvimento disponibilizada pelo WEKA está programada em java.

91
Apêndice

APÊNDICE A – ENTREVISTAS

Foram entrevistados um total de oito profissionais da área de saúde: três médicos,


dois estudantes de medicina e três enfermeiros.

O tipo de entrevista usado foi não estruturada, dando assim a liberdade de


desenvolver cada situação em qualquer direcção e poder explorar amplamente as
questões.

A.1 – Guia das entrevistas

1. O que é a diabetes?
2. Qual a taxa de prevalência e incidência em Angola e em Africa?
3. Como é feito o dignóstico da diabetes?
4. Existe uma base de dados dos pacientes que são submetidos ao exame de
diabetes?
5. Como é feito o acompanhamento aos pacientes de risco?
6. Quais as dificuldades encontradas em todo o processo de diagnóstico,
acompanhamento e combate da doença?

92

Você também pode gostar