• Nenhum resultado encontrado

Modelo computacional aplicado a identificação de diabetes mellitus

N/A
N/A
Protected

Academic year: 2021

Share "Modelo computacional aplicado a identificação de diabetes mellitus"

Copied!
74
0
0

Texto

(1)
(2)

Eduardo Biscolli Brandão

Modelo Computacional Aplicado a Identificação de Diabetes Mellitus

Dissertação submetida ao Programa de Pós Graduação em Engenharia Elétrica da Universidade Federal de Santa Catarina para a obtenção do título de Mestre em Engenharia Elétrica.

Orientador: Jefferson Luiz Brum Marques PhD.

Florianópolis 2019

(3)

Biscolli Brandão, Eduardo

Modelo Computacional Aplicado a Identificação de

Diabetes Mellitus / Eduardo Biscolli Brandão ; orientador, Jefferson Luiz Brum Marques , 2019.

74 p.

Dissertação (mestrado) - Universidade Federal de Santa Catarina, Centro Tecnológico, Programa de Pós-Graduação em Engenharia Elétrica, Florianópolis, 2019.

Inclui referências.

1. Engenharia Elétrica. 2. Diabetes Mellitus. 3. Redes Neurais Artificiais. 4. Multilayer Perceptron. I. Brum Marques , Jefferson Luiz . II. Universidade Federal de Santa Catarina. Programa de Pós-Graduação em Engenharia Elétrica. III. Título.

(4)

Eduardo Biscolli Brandão

Modelo Computacional Aplicado a Identificação de Diabetes Mellitus

O presente trabalho em nível de mestrado foi avaliado e aprovado por banca examinadora composta pelos seguintes membros:

Prof ª. Daniela Ota Hisayasu Suzuki, PhD. Universidade Federal de Santa Catarina

Prof ª. Sayonara de Fatima Faria Barbosa, PhD. Universidade Federal de Santa Catarina

Prof. Gustavo Gomes Bublitz, MSc. Faculdade Cesusc

Certificamos que esta é a versão original e final do trabalho de conclusão que foi julgado adequado para obtenção do título de mestre em Engenharia Elétrica.

____________________________ Prof. PhD. Bartolomeu Ferreira Uchôa-Filho

Coordenador do Programa

____________________________ Prof. PhD. Jefferson Luiz Brum Marques

Orientador

Florianópolis, 09 de Julho de 2019. Jefferson Luiz Brum

Marques:45762406091

Assinado de forma digital por Jefferson Luiz Brum Marques:45762406091 Dados: 2019.09.16 12:13:15 -03'00' Bartolomeu Ferreira Uchoa Filho:47636211491 Digitally signed by Bartolomeu Ferreira Uchoa Filho:47636211491 Date: 2019.09.17 17:03:50 -03'00'

(5)

AGRADECIMENTOS

Muitas pessoas colaboraram para realização desse trabalho. Inicialmente agradeço meus pais, Eliza Biscolli e Pedro Salgado Brandão, que sempre forneceram toda base necessária para meu desenvolvimento e apoio nas minhas decisões. Gostaria de agradecer ao meu orientador Jefferson Luiz Brum Marques, que desde o início me motivou, direcionou e auxiliou na realização deste trabalho. Obrigado também a Glauco Cardoso, doutorando do Instituto de Engenharia Biomédica, que forneceu acesso a todo banco de dados utilizado e direcionamentos. Por fim agradeço a minha namorada Cher Oliboni pelo apoio ao longo dos dois anos de mestrado.

(6)

RESUMO

Este trabalho descreve o projeto e implementação de um modelo computacional capaz de classificar indivíduos com suspeita de Diabetes Mellitus. O modelo foi desenvolvido através de redes neurais artificiais e utiliza para treinamento um banco de dados fornecido por uma rede de laboratórios de análises clínicas. Utilizando a arquitetura de rede Multilayer Perceptron foi possível testar diferentes estruturas de redes neurais, variando funções de ativações, camadas, número de neurônios, taxas de aprendizado e otimizadores. É proposto um modelo computacional que simula o resultado do exame de hemoglobina glicada e classifica indivíduos em saudáveis ou com suspeita de diabetes. A rede neural artificial utiliza 26 parâmetros de entrada que correspondem a idade, glicose em sangue, hemogramas, colesteróis, creatinina e triglicerídeos e possui acurácia final de 81,8% na classificação de indivíduos com suspeita de diabetes.

(7)

ABSTRACT

This work describes the design and implementation of a computational model that classifies people with Diabetes Mellitus suspect. The model was developed using artificial neural networks. For the training of the model it was used databases provided by a clinical laboratory. Using the Multilayer Perceptron network architecture it was possible to test different neural network structures, varying functions of activation, layers, number of neurons, learning rates and optimizers. It is proposed a computational model that simulates the results of the glycated hemoglobin test and classifies people in healthy or with diabetes suspect. The artificial neural network uses 26 input parameters that correspond to age, blood glucose, hemograms, cholesterols, creatinine and triglycerides and has a final accuracy of 81.8% in the classification of people with diabetes suspect.

Keywords: Diabetes Mellitus. Artificial Neural Networks. Multilayer Perceptron.

(8)

LISTA DE FIGURAS

FIGURA 1-PERCEPTRON COM FUNÇÃO DE ATIVAÇÃO. ... 30

FIGURA 2-REDE NEURAL COM UMA CAMADA OCULTA. ... 34

FIGURA 3-REDE NEURAL COM DUAS CAMADAS OCULTAS. ... 34

FIGURA 4-FLUXO METODOLOGIA UTILIZADA. ... 38

FIGURA 5-REDE NEURAL UTILIZADA NO PRIMEIRO BANCO DE DADOS. ... 44

FIGURA 6-REDE NEURAL UTILIZADA NO SEGUNDO BANCO DE DADOS. ... 48

FIGURA 7-REDE NEURAL UTILIZADA NA CLASSIFICAÇÃO. ... 51

FIGURA 8-REDE NEURAL UTILIZADA NA PREDIÇÃO. ... 54

FIGURA 9-ACURÁCIA CLASSIFICAÇÃO FINAL.CONVERGÊNCIA OCORRE ANTES DE 30 ÉPOCAS. ... 56

FIGURA 10-PERDA CLASSIFICAÇÃO FINAL.CONVERGÊNCIA OCORRE ANTES DE 30 ÉPOCAS. ... 56

FIGURA 11-PERDA PREDIÇÃO FINAL.CONVERGÊNCIA OCORRE ANTES DE 10 ÉPOCAS. ... 58

FIGURA 12-ACURÁCIA CLASSIFICAÇÃO COM AUSÊNCIA DOS PARÂMETROS EM MILÍMETROS CÚBICOS NOS HEMOGRAMAS.CONVERGÊNCIA OCORRE ANTES DE 20 ÉPOCAS. ... 59

FIGURA 13-ACURÁCIA CLASSIFICAÇÃO COM AUSÊNCIA DOS PARÂMETROS EM PORCENTAGEM NOS HEMOGRAMAS.CONVERGÊNCIA OCORRE ANTES DE 20 ÉPOCAS. 60 FIGURA 14-ACURÁCIA CLASSIFICAÇÃO COM AUSÊNCIA DOS HEMOGRAMAS.CONVERGÊNCIA OCORRE ANTES DE 10 ÉPOCAS. ... 61

FIGURA 15-ACURÁCIA CLASSIFICAÇÃO COM AUSÊNCIA DA GLICOSE.CONVERGÊNCIA OCORRE ANTES DE 20 ÉPOCAS. ... 62

FIGURA 16-ACURÁCIA CLASSIFICAÇÃO SOMENTE COM A GLICOSE.CONVERGÊNCIA OCORRE ANTES DE 10 ÉPOCAS. ... 63

(9)

LISTA DE TABELAS

TABELA 1-VALORES DE GLICOSE PLASMÁTICA EM MG/DL PARA DIAGNÓSTICO DE DIABETES

MELLITUS (SBD,2013). ... 16

TABELA 2-TAMANHO DOS BANCOS DE DADOS. ... 22

TABELA 3-PARÂMETROS DE HEMOGRAMAS PRIMEIRO BANCO DE DADOS. ... 23

TABELA 4-PARÂMETROS DE HEMOGRAMAS SEGUNDO BANCO DE DADOS. ... 24

TABELA 5-PARÂMETROS PARCIAL DE URINA SEGUNDO BANCO DE DADOS. ... 25

TABELA 6-PARÂMETROS COLESTEROL SEGUNDO BANCO DE DADOS. ... 26

TABELA 7-PARÂMETROS TRANSAMINASE SEGUNDO BANCO DE DADOS. ... 26

TABELA 8-PARÂMETROS TRIGLICERÍDEOS SEGUNDO BANCO DE DADOS. ... 26

TABELA 9-PARÂMETROS CREATININA EM SANGUE SEGUNDO BANCO DE DADOS. ... 27

TABELA 10-PARÂMETROS VITAMINAS SEGUNDO BANCO DE DADOS. ... 27

TABELA 11-PARÂMETROS HEMOGRAMAS TERCEIRO BANCO DE DADOS. ... 27

TABELA 12-PARÂMETROS COLESTEROL TERCEIRO BANCO DE DADOS. ... 28

TABELA 13-CRITÉRIO DIAGNÓSTICO PRIMEIRO BANCO DE DADOS:GLICOSE EM JEJUM. .. 42

TABELA 14-CRITÉRIO DIAGNÓSTICO SEGUNDO BANCO DE DADOS:HEMOGLOBINA GLICADA. ... 46

TABELA 15-CRITÉRIO DIAGNÓSTICO TERCEIRO BANCO DE DADOS:HEMOGLOBINA GLICADA. ... 49

(10)

LISTA DE ABREVIATURAS E SIGLAS

SBD Sociedade Brasileira de Diabetes DM Diabetes Mellitus

IDF Internacional Diabetes Federation ADA American Diabetes Association OMS Organização Mundial da Saúde HbA1c Hemoglobina Glicada

CAAE Certificado de Apresentação para Apreciação Ética IEB Instituto de Engenharia Biomédica

UFSC Universidade Federal de Santa Catarina RNA Rede Neural Artificial

LSTM Long Short-Term Memory GAN Generative Adversarial Network

(11)

SUMÁRIO 1 INTRODUÇÃO ...13 1.1 DIABETES MELLITUS...13 1.2 VARIAÇÕES DA DOENÇA ...14 1.2.1 Diabetes Tipo 1 ...14 1.2.2 Diabetes Tipo 2 ...15 1.3 DIAGNÓSTICO...15 1.3.1 Hemoglobina Glicada ...16 2 OBJETIVOS ...18 3 JUSTIFICATIVA ...19 4 BANCO DE DADOS ...21

4.1 PRIMEIRO BANCO DE DADOS...23

4.2 SEGUNDO BANCO DE DADOS ...24

4.3 TERCEIRO BANCO DE DADOS ...27

5 FUNDAMENTAÇÃO ...29

5.1 REDES NEURAIS ARTIFICIAIS ...29

5.1.1 Perceptron ...30 5.1.2 Função de Ativação ...31 5.1.3 Arquitetura da Rede ...33 5.1.3.1 Aprendizado da Rede ...35 5.1.3.2 Outras Arquiteturas ...36 6 METODOLOGIA ...38 6.1 FERRAMENTAS ...39 6.2 VALIDAÇÃO CRUZADA ...40

6.3 PRIMEIRO BANCO DE DADOS...41

6.3.1 Testes Primeiro Banco de Dados ...43

(12)

6.4.1 Testes Segundo Banco de Dados...46

6.5 TERCEIRO BANCO DE DADOS ...49

6.5.1 Testes de Classificação ...50

6.5.2 Testes de Predição ...52

7 RESULTADOS ...55

7.1 ANÁLISE DE AUSÊNCIA DE PARÂMETROS ...58

7.1.1 Ausência de Hemogramas ...58

7.1.2 Ausência de Glicose ...61

7.2 DISCUSSÕES ...63

8 CONCLUSÕES E TRABALHOS FUTUROS ...66

9 REFERÊNCIAS ...67

APÊNDICE A – Código utilizado na classificação do terceiro banco de dados. ...72

(13)

1 INTRODUÇÃO

1.1 DIABETES MELLITUS

Segundo a Sociedade Brasileira de Diabetes (SBD) o Diabetes Mellitus (DM), ou simplesmente diabetes, é uma doença crônica na qual o corpo não produz insulina ou não consegue empregar adequadamente a insulina que produz. A insulina é um hormônio que controla a quantidade de glicose no sangue (SBD, 2014).

O diabetes é caracterizada pela elevação da glicose no sangue. A elevação do nível de glicose no sangue (hiperglicemia) pode ocorrer devido a defeitos na secreção ou na ação do hormônio insulina, produzido no pâncreas. A insulina tem como principal função promover a entrada de glicose para as células do organismo de forma que ela possa ser utilizada para diversas atividades celulares. A glicose é obtida por meio dos alimentos e utilizada como fonte de energia. Consequentemente a falta de insulina resulta em um acúmulo de glicose no sangue.

Segundo o Atlas, da Internacional Diabetes Federation (IDF) em 2017 o Brasil registrou 12,5 milhões de pessoas com diagnóstico de diabetes. Esse número coloca o Brasil no quarto lugar entre os 10 países com maior número de indivíduos com diabetes no mundo (IDF, 2018).

A situação é ainda mais alarmante segundo o estudo, que estima que na América do Sul e Central 40% das pessoas com diabetes não sabem que possuem a doença. Na América do Sul e Central o estudo indica que 26 milhões de indivíduos possuem diabetes.

A SBD fornece informações em relação as complicações que surgem caso o indivíduo que possua diabetes não gerencie adequadamente a própria taxa de glicemia (concentração de glicose no plasma sanguíneo). Um gerenciamento adequado reduz drasticamente o risco de complicações. Algumas complicações que podem surgir devido a altas taxas de glicose no sangue (SBD, 2019):

(14)

O diabetes pode afetar a capacidade de filtragem dos rins. O alto nível de glicose no sangue faz com que os rins filtrem muito sangue, gerando sobrecarga e fazendo com que moléculas úteis, como proteínas, sejam perdidas na urina. Com o tempo e em casos mais graves os rins perdem a capacidade de filtragem (Papatheodorou et al., 2016).

• Retinopatia:

A retinoplatia diabética é uma complicação crônica do DM. Indivíduos portadores de diabetes possuem mais chances de desenvolver Glaucoma, Catarata e problemas de retina. O diabetes gera complicações na mácula, estrutura da retina que é irrigada por vasos sanguíneos (Hwang et al., 2017).

• Neuropatias:

O diabetes pode provocar neuropatia, um dano nos nervos, assim como má circulação. As complicações podem causar formigamento, dor, fraqueza e perda na sensibilidade dos pés. A pele dos pés também pode ficar mais seca, favorecendo o aparecimento de feridas (Schreiber et al., 2015).

1.2 VARIAÇÕES DA DOENÇA

A grande maioria dos casos de diabetes está dividida em dois grupos conhecidos como Diabetes Tipo 1 e Diabetes tipo 2. O Diabetes tipo 2 é a forma de diabetes mais comum, representando cerca de 90% dos pacientes diabéticos (SBD, 2019).

Além das diabetes tipo 1 e 2 ainda existe o diabetes gestacional, que ocorre em alguns casos devido ao aumento de glicose no sangue durante uma gravidez.

1.2.1 Diabetes Tipo 1

O pâncreas é responsável pela produção de parte dos hormônios importantes para o sistema digestivo. Normalmente, quando o nível de glicose aumenta no sangue, um grupo de células chamadas células beta produz insulina. Respeitando as necessidades do organismo em cada momento é possível que essa

(15)

glicose vire energia ou seja armazenada como reserva, em forma de gordura (SBD, 2019).

O Diabetes Tipo 1 é resultado da destruição das células beta pancreáticas por um processo imunológico, levando a deficiência da insulina, pouca ou nenhuma é liberada para o corpo. É possível detectar em exames de sangue os anticorpos que atacam as células beta na maioria dos casos.

O Diabetes Tipo 1 apresenta um início abrupto (alguns dias até poucos meses), com sintomas indicando de maneira contundente a presença da doença. Aparece normalmente na infância ou adolescência, mas pode aparecer em adultos também. Diabetes Tipo 1 é tratada com insulina, medicamentos, planejamento alimentar e atividades físicas.

1.2.2 Diabetes Tipo 2

O Diabetes tipo 2 surge quando o organismo tem dificuldade em utilizar de maneira adequada a insulina que produz ou quando o organismo não produz insulina suficiente para manter em níveis saudáveis a taxa de glicemia (SBD, 2019).

Apresenta um início distribuído ao longo de um período de tempo variável, podendo demorar anos até os sintomas se apresentarem. Nesse período surgem diferentes estágios denominados glicemia de jejum alternada e tolerância a glicose diminuída. Esses estágios decorrem de uma combinação de resistência à ação insulímica e disfunção de célula beta. A resistência a ação insulímica leva a um aumento na produção de insulina para tentar manter a glicose em níveis normais. Quando isso não é mais possível, surge o diabetes.

1.3 DIAGNÓSTICO

Nas condições adequadas um exame de sangue já permite saber se existe alguma alteração na taxa de glicemia de um indivíduo, se essa alteração existir é necessário uma investigação mais detalhada para diagnosticar o diabetes.

(16)

Em 1997 foram estabelecidos pela American Diabetes Association (ADA) e posteriormente aceitos pela Organização Mundial da Saúde (OMS) e pela SBD, 3 critérios para diagnóstico com utilização da glicemia (ADA, 2018).

Na Tabela 1 é possível observar os valores de glicose plasmática para diagnóstico de diabetes segundo os critérios Jejum e 2 horas após 75 gramas de glicose. O terceiro critério é uma amostra casual, ou seja, realizada a qualquer hora do dia, de glicemia ≥ 200 mg/dl acrescida de sintomas de poliúria, polidipsia e perda ponderal.

Tabela 1 - Valores de glicose plasmática em mg/dl para diagnóstico de Diabetes Mellitus.

Categoria Jejum 2h após 75g de glicose

Glicemia Normal < 100 < 140 Tolerância a Glicose Diminuída > 100 a < 126 > 140 a < 200 Diabetes Mellitus ≥ 126 ≥ 200 Fonte: SBD, 2013

A glicemia em jejum de um indivíduo pode oscilar dependendo de alguns fatores como medicações e atividades físicas, ou pode apresentar valores saudáveis no momento da coleta porém o indivíduo apresentar picos glicêmicos em outros períodos. Devido a essa oscilação o diagnóstico fica mais incerto, porém um outro exame ajuda na acurácia do diagnóstico, a hemoglobina glicada.

1.3.1 Hemoglobina Glicada

A hemoglobina é uma proteína presente nas hemácias, sua função é transportar oxigênio pelo sistema circulatório. A hemoglobina glicada (HbA1c) é a fração da hemoglobina que se liga a glicose. Durante a vida de uma hemácia (90 dias) a hemoglobina vai incorporando glicose em função da concentração da glicose

(17)

no sangue. Isso permite um controle caso ocorra aumento na taxa de glicose ocasional ou durante o todo período (SBD, 2014).

Em 2009 foi proposto a utilização de hemoglobina glicada como critério de diagnóstico para o DM. A justificativa é que a medida de hemoglobina glicada avalia o grau de exposição à glicemia ao longo do tempo e os valores ficam estáveis após a coleta.

Em 2010 a ADA modificou o critério inicial, sendo as recomendações mais atualizadas as seguintes (SBD, 2014):

• Diagnóstico de diabetes: hemoglobina glicada acima de 6,5% a ser confirmada em outra coleta. Dispensável em caso de sintomas ou glicemia acima de 200mg/dl

• Indivíduos com risco de desenvolvimento de diabetes possuem hemoglobina glicada entre 5,7% e 6,4%.

Um ponto de atenção surge quando ocorre discordância entre os resultados de exames de glicemia e hemoglobina glicada. Se mesmo após repetição somente um permanecer anormal o indivíduo deve ser considerado diabético.

No exame de hemoglobina glicada a referência de 6,5% foi adotada com base no ponto de inflexão para a prevalência de retinopatia, desencadeada pela hiperglicemia.

(18)

2 OBJETIVOS

Analisando os métodos para diagnóstico de diabetes surgiu uma hipótese. O exame de hemoglobina glicada apresenta acurácia, mas possui um volume menor de pessoas que o realiza por ser mais específico. É possível a partir da glicemia e outros exames mais comuns de sangue indicar um diagnóstico de diabetes com a acurácia do exame de hemoglobina glicada? Esse questionamento guia o objetivo principal deste trabalho.

• Objetivo Geral: Desenvolver uma inteligência computacional capaz de indicar a suspeita de diabetes com acurácia a partir de informações de resultados laboratoriais de exames de sangue mais comuns.

Apesar do início das Redes Neurais Artificiais remeter a metade do século passado, a atual evolução da capacidade de processamento possibilita cada vez mais aplicações com impacto direto no cotidiano e na qualidade de vida de pessoas ao longo de todo globo. O acesso a ferramentas e bibliotecas específicas permite atingir resultados cada vez melhores. Esse contexto direciona os objetivos específicos dessa dissertação.

• Objetivo Específico 1: Utilizar técnicas de ciência de dados no banco de dados para permitir a aplicação de um modelo computacional.

• Objetivo Específico 2: Desenvolver um modelo computacional que utiliza como base redes neurais artificiais.

• Objetivo Específico 3: Obter uma acurácia final de classificação da rede neural artificial superior a 75%.

(19)

3 JUSTIFICATIVA

Segundo a International Diabetes Federation, 40% das pessoas com diabetes na América Latina desconhecem que possuem a doença (IDF, 2018). Essa estimativa não abrange as pessoas com "pré-diabetes", fato que tornaria a estimativa maior ainda. Essa falta de informação prejudica diretamente a saúde de milhões de pessoas, que poderiam adotar novos hábitos para melhorar significamente sua qualidade de vida.

Gerar uma informação com confiabilidade indicando a suspeita de desenvolvimento do diabetes proporciona assertividade a investigação, tomada de decisão e possíveis tratamentos da doença. A metodologia desenvolvida nessa dissertação busca gerar essa informação com o máximo de confiabilidade possível. Um próximo passo que ainda precisa ser realizado é validar a melhor maneira de entregar essa informação em escala.

Existem mais trabalhos que aplicam redes neurais artificiais para a classificação de indivíduos com DM, mas os parâmetros de entrada da rede diferem. Em muitos casos o principal problema enfrentado é o tamanho e qualidade dos bancos de dados, que podem estar com diversas informações faltantes.

Farhanah et al. propõem um método para diagnóstico do diabetes utilizando algoritmos de redes neurais que utilizam back propagation (2005). Como parâmetros de entrada utilizam concentração de glicose, pressão sanguínea, dobra cutânea do tríceps, informações sobre insulina, índice de massa corporal, entre outros. O maior desafio nesse trabalho foi a falta de dados no dataset utilizado. Posteriormente Jayalakshmi e Santhakumaran deram continuidade a esse trabalho buscando reconstruir o banco de dados com técnicas para contornar os valores faltantes e realizando alguns pré-processamentos (2010). Adotando essas modificações o resultado teve uma melhora significativa, chegando em 99% de acurácia de classificação.

Outro trabalho com bons resultados foi proposto por Rajeeb Dey, também utilizando redes neurais artificiais e backpropagation (2008). Nesse caso foram

(20)

utilizados como parâmetros ocupação profissional, três diferentes exames de glicose em sangue, idade e gênero. Rajeeb atingiu uma acurácia de classificação de 92,5%.

Essa dissertação busca chegar a um resultado confiável a partir de resultados de exames laboratoriais mais comuns, que são geralmente pedidos por médicos aos pacientes. Esses resultados são parâmetros de entrada utilizados para treinamento, validação e teste nas redes neurais artificiais desenvolvidas.

(21)

4 BANCO DE DADOS

Esta dissertação foi aprovada pelo Comitê de Ética e faz parte da pesquisa intitulada "Utilização de Técnicas de Aprendizagem de Máquina na Predição de Indicadores de Doenças Crônicas por Meio de Exames Laboratoriais". A pesquisa possui Certificado de Apresentação para Apreciação Ética (CAAE) número 02203918.0.0000.0121.

Através do Instituto de Engenharia Biomédica (IEB-UFSC), da Universidade Federal de Santa Catarina (UFSC), foi possível ter acesso a um bancos de dados fornecido por uma grande rede de laboratórios que atua na região de Florianópolis.

A rede de laboratórios cedeu, conforme especificações, algumas exportações restritas do seu banco de dados. Essas exportações foram fundamentais para o desenvolvimento desse trabalho. Os dados são anônimos e possuem identificadores numéricos para representar indivíduos.

A cada indivíduo anônimo são associados resultados de alguns tipos de exames de sangue e urina assim como gênero e idade. Posteriormente essas informações serão utilizadas como parâmetros de entrada na rede neural.

Devido a grande variedade de exames existentes foram necessárias algumas filtragens e agrupamentos, visto que os parâmetros de entrada, quando existem, estão distribuídos de maneira diferente para cada indivíduo. O banco de dados também apresenta diferentes exames de um mesmo indivíduo em períodos de tempo diferente.

Com o decorrer do trabalho alguns limites de aprendizado e acurácia foram atingidos nos banco de dados, sendo necessário demandar por mais dados com especificações de parâmetros de entrada ou maior volume de dados.

Todos os bancos de dados utilizados foram recebidos no formato CSV. A dissertação trabalha com três grupos de dados e foi necessário realizar a filtragem e/ou ajustes nos dois primeiros banco de dados. Essas filtragens serão melhor detalhadas no capítulo que desenvolve a metodologia aplicada.

(22)

O terceiro banco de dados recebeu uma filtragem prévia realizada pelo doutorando Glauco Cardoso, que também utiliza o banco de dados no seu trabalho no IEB-UFSC. O volume inicial de dados era muito grande, sendo possível trabalhar com uma grande amostra de dados completamente preenchidos.

Após as filtragens os dados utilizados apresentaram o tamanho indicado na Tabela 2. Cada linha do banco de dados representa um indivíduo, não existem indivíduos repetidos. Cada coluna representa os parâmetros associados aos indivíduos. Os parâmetros são características ou resultado de exames.

Tabela 2 - Tamanho dos bancos de dados.

Banco de Dados Indivíduos Número de Parâmetros

1 3614 16

2 8333 58

3 46427 27

Fonte: Bancos de dados

A escolha dos parâmetros que correspondem a resultados de exames laboratoriais utilizados é baseada no volume desses exames presente no banco de dados. Exames com maior volume foram priorizados.

É possível perceber diferenças entre os parâmetros dos três bancos de dados. Essas diferenças serão justificadas no desenvolvimento da metodologia dessa dissertação.

Para indivíduos que realizaram um exame específico mais de uma vez foi considerado o resultado do exame mais recente. Isso é válido para os três bancos de dados utilizados.

Nenhum banco de dados informa a situação do indivíduo no momento da coleta do exame laboratorial. Ou seja, não é possível saber se a coleta foi realizada em clientes que estão hospitalizados, em ambulatórios ou foram até o laboratório clínico realizar o exame. Esse fato pode refletir nos resultados de exames, por exemplo, não é possível garantir jejum para pacientes hospitalizados.

(23)

É importante destacar que alguns fatores podem fornecer um valor de glicose alterado para alguns indivíduos do banco de dados. Entre esse fatores podem ser citados medicamentos, infecções e exames (ACTH).

4.1 PRIMEIRO BANCO DE DADOS

O primeiro banco de dados é composto por 33% de indivíduos que apresentam suspeita de diabetes baseado em um valor de glicose superior a 100 mg/dl em jejum.

Apresenta 3614 indivíduos e 16 parâmetros. Possui como parâmetros a informação do gênero e resultados de exames de glicose em sangue e hemogramas. Os 14 parâmetros de hemogramas são apresentados na Tabela 3.

Tabela 3 - Parâmetros de Hemogramas Primeiro banco de dados.

Código Descrição

BASO Concentração Basófilos em %

CHCM Concentração da Hemoglobina

Corpuscular Média em g/dl

EOS Concentração Eosinófilos em %

HB Contagem Hemoglobina em g/dl

HCM Hemoglobina Corpuscular Média em g/dl

HT Contagem Hematócrito em %

LEUC Contagem Leucócitos em unidades/L

LINFO Concentração Linfócitos em %

MONO Concentração Monócitos em %

MPV Volume Plaquetário Médio em

plaquetas/mm³

PLAQ Contagem Plaquetas em unidades/L

RDW Red Cell Distribution Width

(24)

VCM Volume Corpuscular Médio em fL

Fonte: Primeiro banco de dados

4.2 SEGUNDO BANCO DE DADOS

O segundo banco de dados é composto por 38% de indivíduos que apresentam suspeita de diabetes baseado no resultado do exame de hemoglobina glicada superior a 5,7%.

Apresenta 8333 indivíduos e 58 parâmetros. Possui como parâmetros informações de gênero e idade. Além disso possui resultados de exames como glicose em sangue, hemoglobina glicada, ácido úrico sanguíneo, cultura de urina, hemogramas (Tabela 4), parcial de urina (Tabela 5), colesterol (Tabela 6), transaminase (Tabela 7), estimulador da tireóide, triglicerídeos (Tabela 8), creatinina em sangue (Tabela 9), ferritina, gama GT, potássio em sangue, proteína C reativa, sódio em sangue, tiroxina t4 livre, ureia em sangue, vitaminas (Tabela 10).

Outra informação presente nesse banco de dados é o resultado do exame antígeno prostático específico total para os indivíduos de gênero masculino do banco de dados. Como é um exame realizado somente em homens, indivíduos do gênero feminino não possuem essa informação, apresentando esse campo vazio no banco de dados.

Tabela 4 - Parâmetros de Hemogramas Segundo banco de dados.

Código Descrição

BASO Concentração Basófilos em %

BASOmm3 Basófilos em mm³

CHCM Concentração da Hemoglobina

Corpuscular Média em g/dl

EOS Concentração Eosinófilos em %

EOSmm3 Eosinófilos em mm³

Eri100Leuc Hemácias normocíticas e

(25)

HB Contagem Hemoglobina em g/dl

HCM Hemoglobina Corpuscular Média em g/dl

HMC Hemocultura

HT Contagem Hematócrito em %

LEUC Contagem Leucócitos em unidades/L

LINFO Concentração Linfócitos em %

LINFOmm3 Linfócitos em mm³

MONO Concentração Monócitos em %

MONOmm3 Monócitos em mm³

MPV Volume Plaquetário Médio em

plaquetas/mm³

PLAQ Contagem Plaquetas em unidades/L

RDW Red Cell Distribution Width

SEG Segmentados em %

SEGmm3 Segmentados em mm³

VCM Volume Corpuscular Médio em fL

Fonte: Segundo banco de dados

Tabela 5 - Parâmetros Parcial de Urina Segundo banco de dados.

Código Descrição

Aspecto Aspecto parcial da urina

Bili Presença de Bilirrubina

Cetonas Presença de Cetonas no parcial urina

Cor Coloração do parcial urina

celEPIT Presença de células epiteliais

Cilindros Presença de agrupamentos em forma de cilindros

Densidade Densidade urina

Glicose Presença de glicose na urina

(26)

células/mL

Leuc Quantidade de leucócitos na urina em células/mL

Prot Presença de proteínas na urina

Urobi Presença de Urobilinogênio

PH PH

Fonte: Segundo banco de dados

Tabela 6 - Parâmetros Colesterol Segundo banco de dados.

Código Descrição

HDL Colesterol HDL em mg/dL

LDL Colesterol LDL em mg/dL

Total Colesterol total em mg/dL

VLDL Jejum Colesterol VLDL Jejum em mg/dL

VLDL Colesterol VLDL em mg/dL

Fonte: Segundo banco de dados

Tabela 7 - Parâmetros Transaminase Segundo banco de dados.

Código Descrição

ALT Quantidade de aminotransferase de

alanine em unidades/L

GOT Quantidade de aminotransferase de

aspartate em unidades/L

Fonte: Segundo banco de dados

Tabela 8 - Parâmetros Triglicerídeos Segundo banco de dados.

Código Descrição

Trig Quantidade de triglicerídeos em mg/dL Jejum Quantidade de triglicerídeos em Jejum

em mg/dL

(27)

Tabela 9 - Parâmetros Creatinina em sangue Segundo banco de dados.

Código Descrição

Creat Quantidade de Creatinina em Sangue

em mg/dL

Observação Observação e estimativa do ritmo de filtração glomerular

Fonte: Segundo banco de dados

Tabela 10 - Parâmetros Vitaminas Segundo banco de dados.

Código Descrição

B12 Quantidade de vitamina B12 em pg/ml

D25 Quantidade de vitamina D-25 hidroxi em ng/mL

Fonte: Segundo banco de dados

4.3 TERCEIRO BANCO DE DADOS

O terceiro banco de dados possui 40% de indivíduos que apresentam suspeita de diabetes baseado em um resultado de hemoglobina glicada superior a 5,7%.

É composto por 27 parâmetros. São eles: idade, glicose em sangue, hemoglobina glicada, hemogramas (Tabela 11), colesteróis (Tabela 12), creatinina em sangue e triglicerídeos.

Para encontrar padrões nesses banco de dados buscando o diagnóstico de diabetes foram utilizados modelos computacionais, as Redes Neurais Artificiais.

Tabela 11 - Parâmetros Hemogramas Terceiro banco de dados.

Código Descrição

BASO Concentração Basófilos em %

(28)

CHCM Concentração da Hemoglobina Corpuscular Média em g/dl

EOS Concentração Eosinófilos em %

EOSmm3 Eosinófilos em mm³

HB Contagem Hemoglobina em g/dl

HCM Hemoglobina Corpuscular Média em g/dl

HMC Hemocultura

HT Contagem Hematócrito em %

LEUC Contagem Leucócitos em unidades/L

LINFO Concentração Linfócitos em %

LINFOmm3 Linfócitos em mm³

MONO Concentração Monócitos em %

MONOmm3 Monócitos em mm³

MPV Volume Plaquetário Médio em

plaquetas/mm³

PLAQ Contagem Plaquetas em unidades/L

RDW Red Cell Distribution Width

SEG Segmentados em %

SEGmm3 Segmentados em mm³

VCM Volume Corpuscular Médio em fL

Fonte: Terceiro banco de dados

Tabela 12- Parâmetros Colesterol Terceiro banco de dados.

Código Descrição

HDL Colesterol HDL em mg/dL

Total Colesterol total em mg/dL

(29)

5 FUNDAMENTAÇÃO

5.1 REDES NEURAIS ARTIFICIAIS

Segundo Simon Haykin, no livro Redes Neurais Princípios e Práticas (2001), o cérebro humano processa informações de um método completamente diferente de computadores digitais convencionais. Possui a capacidade de processar a informação de maneira complexa, não-linear e paralela. Organiza seus elementos estruturais básicos, os neurônios, de forma a realizar diferentes processamentos, como por exemplo reconhecimento de padrões, percepções e controle motor. Outra caraterística fundamental é a plasticidade, ou seja, neurônios em desenvolvimento se adaptam ao seu meio.

Uma Rede Neural Artificial (RNA) é um modelo computacional projetado para modelar a maneira como o cérebro realiza uma tarefa particular ou função de interesse. Redes neurais são paralelamente distribuídas e constituídas de uma unidade de processamento simples. Possui capacidade de armazenar conhecimento experimental e torná-lo disponível para uso. Simon Haykin indica que redes neurais se assemelham ao cérebro em dois aspectos:

1. A rede adquire conhecimento do ambiente através de um processo de aprendizagem.

2. Os pesos sinápticos (forças de conexões entre neurônios) são utilizados para armazenar o conhecimento adquirido.

Uma importante característica de redes neurais é a resposta a evidências, ou seja, a rede informa o padrão a ser selecionado e também a confiança sobre a decisão tomada (Haykin, 2001). Outra característica é a capacidade de generalização, gerando respostas satisfatórias mesmo se os dados de entrada não façam parte do conjunto de treino, mas de sua vizinhança.

A forma mais simples de uma rede neural recebe o nome de Perceptron, que é equivalente a um único neurônio com pesos sinápticos ajustáveis e bias.

(30)
(31)
(32)
(33)
(34)
(35)

Múltiplas camadas permitem que a rede modele uma hierarquia de recursos de maneira não linear. Multilayer Perceptrons que utilizam camadas ocultas são capazes de aproximar qualquer função contínua (Data Science Academy, 2018). Frequentemente aplicados a problemas de aprendizado supervisionado em que existe a necessidade de uma decisão ou previsão sobre a entrada.

5.1.3.1 Aprendizado da Rede

O algoritmo de aprendizagem é "um conjunto de regras bem definidas para solução de um problema" (Haykin, 2001), segundo Haykin também é a propriedade mais importante de uma RNA. Existem vários algoritmos de aprendizagem que diferem pela maneira que ajustam os pesos neurais. O aprendizado então é consequência do treinamento e das alterações sucessivas nos pesos neurais.

Na Multilayer Perceptrons os pesos e bias são ajustados no treinamento visando diminuir o erro calculado. Existem várias maneiras de medir o erro, inclusive utilizando o erro quadrático médio. Após calculado o erro será utilizado o backpropagation para ajustar pesos e bias da rede.

Uma analogia interessante sugerida no Deep Learning Book é a comparação do treinamento de Multilayer Perceptrons a um ping-pong, pensando em dois movimentos contínuos, uma constante de ida e volta. Quando o fluxo se move avançando da entrada em direção a saída a decisão é tomada e medida em relação a saída esperada. Quando ocorre a volta da saída em direção a entrada através do backpropagation e a regra da cadeia, derivadas parciais da função de erro dos pesos e bias são reproduzidos através da rede. Isso fornece o gradiente utilizado no ajuste dos parâmetros visando minimizar o erro. Na próxima iteração tudo ocorre novamente até que o erro não possa mais ser reduzido (Data Science Academy, 2018).

(36)

No aprendizado Supervisionado existe um agente externo que fornece durante o treinamento de uma RNA informações sobre entrada e saída desejada. Através das iterações esse agente externo transfere seu conhecimento para a rede comparando os resultados obtidos com os desejados e realimentando essa informação na rede.

A desvantagem desse aprendizado é que quando não existe mais um agente externo a rede fica limitada aos conhecimentos já obtidos, sem conseguir dar continuidade ao aprendizado.

Existem mais possibilidades para o aprendizado da rede, uma delas é o aprendizado não-supervisionado. Nessa modalidade de aprendizado não existe agente externo para fornecer informações. A rede utiliza para o aprendizado somente padrões na entrada, por consequência esses padrões precisam apresentar redundância para possibilitar o aprendizado da rede. Geralmente redes que utilizam aprendizado supervisionado são mais utilizadas para classificação enquanto não-supervisionados para extração de características (Udacity, 2018).

5.1.3.2 Outras Arquiteturas

Existem diversas outras arquiteturas de redes neurais artificiais, MLPs está entre o grupo das mais simples. Segue abaixo o exemplo de algumas outras arquiteturas e aplicações:

• Redes Neurais Convolucionais

Utilizadas para classificar imagens, agrupá-las e realizar reconhecimento de objetos. Podem ser aplicadas a arquivos de áudio quando os mesmos são representados visualmente.

• Redes Neurais Recorrentes

Possuem um loop de feedback, incluindo o estado oculto que determinou a classificação anterior em uma série. Utilizada em entradas sequenciais como palavras e até imagens.

(37)

Variação da rede neural recorrente que consegue aprender durante vários passos de tempo. Possui muitas aplicações práticas, como processamento de linguagem natural e geração automática de texto. • Generative Adversarial Network (GAN)

Composta por duas redes neurais profundas que competem entre si. Possuem a capacidade de imitar qualquer distribuição de dados. Uma das duas redes gera novos dados enquanto a outra avalia a autenticidade dos dados. Consegue imitar dados em diferentes formatos como figuras e áudios.

Após a definição da arquitetura da rede e das camadas, é possível definir diferentes funções de ativação para as diferentes camadas, permitindo assim diferentes comportamentos e testes para aprendizado e convergência da rede (Udacity, 2018).

(38)
(39)

A Figura 4 representa a metodologia utilizada em formato de fluxo. O fluxo inicia pela configuração de ambientes e bibliotecas, depois trata dados faltantes e transforma palavras em números quando necessário. Posteriormente segmenta o banco de dados e escala os dados de cada segmentação.

Uma vez consolidadas as etapas anteriores começa um ciclo em que é criada uma estrutura de rede e posteriormente funções de ativações e otimizações são testadas. A convergência da rede é analisada e o ciclo recomeça, buscando melhorar a acurácia de classificação da rede. Sempre é alterado um parâmetro por vez, para conseguir determinar a origem de cada melhoria.

6.1 FERRAMENTAS

Para o desenvolvimento dessa dissertação foram utilizadas uma série de ferramentas, sempre priorizando o uso de ferramentas Open Source. Essas ferramentas permitem desenvolvimento mais organizado, estruturado e fluído do trabalho.

A linguagem de programação utilizada para o desenvolvimento do trabalho foi Python. O Python é uma linguagem de programação de alto nível que foi lançada por Guido van Rossum em 1991. Atualmente é gerenciado pela Python Software Foundation, uma organização sem fins lucrativos, e possui um modelo de desenvolvimento comunitário e aberto.

O Python foi escolhido devido a existência de bibliotecas orientadas para projetos de aprendizado de máquina, ao grande volume de material disponível e a comunidade de desenvolvedores colaborando para o crescimento da linguagem.

Devido ao grande volume de amostras e parâmetros no banco de dados foi necessário em alguns momentos utilizar processamento em nuvem. Para isso foi utilizado o processamento disponibilizado por uma empresa chamada Floydhub. A escolha do Floydhub foi baseada nos custos acessíveis e praticidade de configuração. Seria possível realizar a dissertação sem utilizar processamento em nuvem, porém o tempo de testes e feedback de acurácia e convergência das redes seria muito superior.

(40)

O projeto Jupyter é uma organização sem fins lucrativos fundado em 2015, possui como produto o Notebook Jupyter. Um Notebook Jupyter é um ambiente computacional web utilizado na criação de documentos. Essa dissertação utiliza Notebook Jupyter devido a rápida integração e configuração com plataformas de processamento em nuvem, como por exemplo AWS e Floydhub. Também apresenta vantagens e facilidade na organização e visualização do código.

O Apêndice A apresenta o código utilizado na parte final da dissertação no formato de notebook jupyter. As principais bibliotecas utilizadas no desenvolvimento de código foram:

• Pandas: Biblioteca que fornece ferramentas para estrutura e análise de dados

• Numpy: Biblioteca com uma larga coleção de funções matemáticas para trabalhar com estruturas como arrays e matrizes multidimensionais.

• Matplotlib: Biblioteca utilizada para criação de gráficos 2D, apresenta uma série de possibilidades gráficas.

• Scikit-learn: Biblioteca de aprendizado de máquina para Python, inclui vários algoritmos e otimizações.

• Tensorflow: Biblioteca/API de código aberto para aprendizado de máquina. Facilita a criação e treinamento de redes neurais para detecção e compreensão de padrões.

• Keras: Biblioteca/API para redes neurais de alto nível. Permite prototipagem rápida e fácil. Utiliza TensorFlow ou Theano.

Ao longo do desenvolvimento o Keras apresentou maior praticidade para testes, sua simplicidade permite testes rápidos que indicam quais configurações de parâmetros e taxas apresentam melhores resultados (Keras, 2018).

6.2 VALIDAÇÃO CRUZADA

Podemos considerar que o processo de aprendizagem se transforma em ajuste de parâmetros da rede para um específico conjunto de dados (Haykin, 2001).

(41)

Consequentemente, entre todas as diferentes redes geradas durante um treinamento, utilizamos a que melhor se aproximou do critério estabelecido.

A validação cruzada sugere que o conjunto de dados seja dividido aleatoriamente entre conjunto de treinamento e conjunto de teste. O conjunto de treinamento é dividido posteriormente em dois subconjuntos:

• Subconjunto de estimação: utilizado para selecionar o modelo. • Subconjunto de validação: usado para testar ou validar o modelo.

Essa divisão em subconjuntos torna possível validar os dados com um conjunto diferente do utilizado no treinamento. Mesmo que o modelo se ajuste excessivamente em relação ao subconjunto de validação ainda existe o conjunto de teste para medir o desempenho de generalização do modelo. A validação cruzada se torna interessante quando buscamos uma boa generalização. Nesse trabalho foi aplicada ao banco de dados utilizado no treinamento das redes neurais artificiais.

É possível também realizar múltiplas validações cruzadas dividindo o conjunto total de dados em mais subconjuntos, isso é conhecido como método k-fold. Um subconjunto será utilizado para treinar o modelo, enquanto os outros subconjuntos são utilizados para validação desse treinamento inicial. Por exemplo, no caso de dividir um conjunto em 10 subconjuntos, uma parte será utilizada para treinamento e as outras partes na validação. Esse procedimento é repetido de maneira circular de maneira que todas as partes sejam utilizadas uma vez no treinamento. O resultado final será igual a média das validações (Kohavi, 1995).

6.3 PRIMEIRO BANCO DE DADOS

Os primeiros testes foram realizados no primeiro banco de dados disponibilizado pela rede de laboratórios. Esse banco de dados é composto por 3614 linhas, que correspondem a diferentes indivíduos, e 16 colunas contendo parâmetros de entrada, que correspondem a características e resultados de exames.

(42)

Não foi necessário filtrar esse banco de dados, somente ajustar algumas informações. No banco existiam informações qualitativas e quantitativas. As informações quantitativas passaram por um processamento somente para ajustar o valor numérico para um único padrão compreensível pela rede. As informações qualitativas foram classificadas e transformadas em números através de um Label encoder, por exemplo no caso dos gêneros masculino e feminino viraram gêneros 0 e 1 respectivamente.

A hipótese do teste foi: É possível diagnosticar indivíduos utilizando os parâmetros presentes no banco de dados sem a informação de glicose ou hemoglobina glicada?

Os primeiros testes realizados classificavam indivíduos de acordo com os parâmetros apresentados. Foram criados dois grupos: G1: indivíduos com suspeita de diabetes, G2: indivíduos sem suspeita de diabetes. O diagnóstico foi inicialmente fornecido com base no valor de glicose em jejum presente no banco de dados. Indivíduos com glicose em jejum acima ou igual a 100 são classificados como G1, indivíduos com glicose abaixo de 100 são classificados como G2. Isso é demonstrado na Tabela 13.

Tabela 13 - Critério Diagnóstico Primeiro Banco de dados: Glicose em Jejum.

Grupo Glicose em Jejum

(mg/dL)

Diagnóstico

G1 ≥ 100 Suspeita de Diabetes

G2 <100 Sem Suspeita de Diabetes

Para validação da hipótese os dados foram divididos em 4 grupos, seguindo o método k-fold. No método k-fold 80% do banco de dados foi utilizado para treino e validação e 20% para teste final da rede neural.

(43)

6.3.1 Testes Primeiro Banco de Dados

Os testes consistiram em definir uma estrutura de rede (arquitetura Multilayer Perceptron) e executar o treinamento observando a convergência e aprendizado nos 4 subconjuntos gerados pelo k-fold.

Foram testadas várias estruturas seguindo a arquitetura de redes Multilayer Perceptron. Variando o número de camadas ocultas, o número de neurônios em cada camada, as funções de ativação, a taxa de aprendizado, entre outros parâmetros.

Como funções de ativação foram testadas sigmóides e suas combinações, que segundo a literatura (Data Science Academy, 2018) funcionam melhor para classificadores. A função de ativação ReLU, que é utilizada de maneira geral atualmente, também foi aplicada na estrutura nas camadas ocultas em diversos testes.

Para facilitar o aprendizado da rede foi utilizado também o método "Standard Scaler", que distribui os dados deixando com média zero e desvio padrão 1.

A estrutura testada que apresentou melhor desempenho é constituída por uma camada de entrada, duas camadas ocultas e uma camada de saída.

• A camada de entrada recebe 16 parâmetros do banco de dados e possui 5 neurônios. Utiliza inicialização de pesos seguindo a distribuição normal (gaussiana) e função de ativação Tanh.

• A primeira camada oculta possui 3 neurônios, distribuição de pesos normal e função de ativação ReLU.

• A segunda camada oculta difere da primeira somente no número de neurônios (5).

• A camada de saída possui um neurônio que fornece a classificação dos indivíduos. A camada de ativação utilizada é a sigmoide e a distribuição de pesos é a normal.

(44)
(45)

Assim foi requisitado um segundo banco de dados, com maior volume de indivíduos e parâmetros.

6.4 SEGUNDO BANCO DE DADOS

O segundo banco de dados fornecido pela rede de laboratórios apresenta 8333 linhas, que correspondem a indivíduos e 58 colunas contendo parâmetros que correspondem a características e resultados de exames.

Esse banco de dados porém apresentou diversos valores quantitativos não existentes. Todos os valores quantitativos não existentes receberam o valor zero. No banco de dados original em nenhum exame realizado possui o valor zero. Isso possivelmente pode enviesar o aprendizado da rede, porém permitiu a realização de testes, visto que nesse banco de dados não existiam indivíduos com todos parâmetros presentes.

Assim como no primeiro banco de dados, as informações qualitativas foram classificadas e transformadas em número através de um Label encoder, por exemplo no caso dos gêneros masculino e feminino viraram gêneros 0 e 1 respectivamente. Nos casos em que as variáveis qualitativas não estavam presentes foi criado uma nova classificação além das existentes no encoder para classificar esses indivíduos.

Outro caminho possível seria testar a correlação entre os parâmetros e utilizar somente os parâmetros com maior correlação. Porém os grupos de indivíduos com determinados parâmetros com melhor correlação e totalmente preenchidas sempre apresentavam baixo volume, não permitindo eficaz segmentação e treinamento da rede.

O segundo banco de dados fornece o valor da hemoglobina glicada e da glicose para todos os indivíduos. A partir disso é possível testar a hipótese da dissertação: Existe um meio de a partir da glicemia e outros exames mais comuns de sangue e urina indicar um diagnóstico de diabetes com acurácia semelhante ao exame da hemoglobina glicada?

(46)

A classificação de indivíduos com diagnóstico de diabetes é realizada da seguinte maneira: indivíduos com hemoglobina glicada acima de 5,7% possuem suspeita de diabetes, visto que segundo a American Diabetes Association 5,7% é o ponto de início do risco de desenvolvimento da doença. Assim o banco de dados foi classificado em dois grupos, G1 e G2. G1 é o grupo de indivíduos com suspeita da doença e G2 é o grupo de indivíduos sem suspeita da doença.

Tabela 14 - Critério Diagnóstico Segundo Banco de dados: Hemoglobina Glicada.

Grupo Hemoglobina Glicada

(%)

Diagnóstico

G1 ≥ 5,7 Suspeita de Diabetes

G2 < 5,7 Sem Suspeita de Diabetes

Fonte: Elaborada pelo autor

6.4.1 Testes Segundo Banco de Dados

Devido ao tamanho do banco de dados a realização do método k-fold (múltiplas validações cruzadas) se torna mais demorada, então foi executado um treinamento separando o banco de dados para treino, validação e teste. Foi utilizada a seguinte proporção: 60% dos dados para treino, 20% para validação e 20% para teste.

Os testes consistiram em definir novamente uma estrutura de rede (arquitetura Multilayer Perceptron) e executar o treinamento observando a convergência e aprendizado no banco de dados de validação. Após término do treinamento é realizado uma avaliação com o banco de dados de teste. Novamente foi utilizado o método "Standard Scaler".

Assim como na primeira rede neural foram testados várias estruturas seguindo a arquitetura de redes Multilayer Perceptron. Variando o número de camadas ocultas, o número de neurônios em cada camada, as funções de ativação, a taxa de aprendizado, entre outros parâmetros.

(47)

Uma técnica utilizada buscando melhorar a eficiência do aprendizado rede utilizada foi o dropout, que consiste em uma técnica de regularização. O dropout modifica a estrutura da própria rede eliminando aleatoriamente e temporariamente alguns neurônios deixando a estrutura de entrada e saída da rede intacta. Essa técnica é utilizada somente no treino da rede e evita que a rede decore o banco de dados em vez de aprender os padrões do mesmo. Foi testada até a variação do dropout, deixando a rede com 75%, 80%, e 90% dos neurônios originais mantidos e observando os resultados.

Como funções de ativação foram testadas novamente sigmóides e suas combinações, que anteriormente já apresentaram bons resultados. A função de ativação ReLU também foi aplicada na estrutura nas camadas ocultas.

Os resultados dos testes nesse banco de dados foram relativamente mais baixos. A estrutura testada que apresentou melhor desempenho é constituída por uma camada de entrada, três camadas ocultas e uma camada de saída.

• A camada de entrada recebe 59 parâmetros do banco de dados e possui 8 neurônios. Utiliza inicialização de pesos seguindo a distribuição normal (gaussiana) e função de ativação sigmoid.

• A primeira camada oculta possui 10 neurônios, distribuição de pesos normal e função de ativação ReLU.

• A segunda camada oculta possui 5 neurônios, distribuição de pesos normal e função de ativação Tanh.

• A terceira camada oculta possui 3 neurônios, distribuição de pesos normal e função de ativação ReLU.

• A camada de saída possui um neurônio que fornece a classificação dos indivíduos. A camada de ativação utilizada é a sigmoide e a distribuição de pesos é a normal.

A Figura 6 ilustra a estrutura dessa rede. Cada camada é totalmente conectada com a próxima, ou seja, cada neurônio de uma camada possui conexão com todos neurônios da próxima camada (fully-connected layer).

(48)
(49)

Isso orientou a busca por mais dados completos para validação da hipótese da dissertação. A requisição do terceiro banco de dados foi realizada priorizando parâmetros com maior volume de indivíduos com dados completos, mas para isso foi necessário diminuir o número de parâmetros utilizados.

6.5 TERCEIRO BANCO DE DADOS

O terceiro banco de dados fornecido pela rede de laboratórios apresenta 46427 linhas, que correspondem a indivíduos e 27 colunas contendo parâmetros que correspondem a características e resultados de exames. Originalmente esse banco de dados era muito maior, porém foram realizadas filtragens para projetos do IEB-UFSC, permitindo assim chegar aos atuais valores.

As 27 colunas utilizadas como parâmetros correspondem aos exames mais comuns realizados e a características, buscando assim validar se é possível realizar o diagnóstico de DM com a precisão da hemoglobina glicada a partir dos exames realmente mais comuns. O terceiro banco de dados, assim como o segundo banco de dados, fornece o valor da hemoglobina glicada e da glicose para todos os indivíduos.

Todas os parâmetros desse banco de dados já foram representados de maneira quantitativa.

A classificação de indivíduos com diagnóstico de diabetes é realizada igual ao segundo banco de dados, ou seja, indivíduos com hemoglobina glicada acima de 5,7% possuem suspeita de diabetes, visto que segundo a American Diabetes Association 5,7% é o ponto de início do risco de desenvolvimento da doença. Assim o banco de dados foi classificado em dois grupos, G1 e G2. G1 é o grupo de indivíduos com suspeita da doença e G2 é o grupo de indivíduos sem suspeita da doença.

Tabela 15 - Critério Diagnóstico Terceiro Banco de dados: Hemoglobina Glicada.

(50)

(%)

G1 ≥ 5,7 Suspeita de Diabetes

G2 < 5,7 Sem Suspeita de Diabetes

Fonte: Elaborada pelo autor

Devido ao grande volume de dados completos foi possível adotar estratégias diferentes para os testes desse banco de dados. Para validar a hipótese da dissertação foram utilizados dois caminhos, por um caminho chegar até o diagnóstico de diabetes através de uma rede de classificação e por outro utilizar uma rede para predizer o valor da hemoglobina glicada e depois classificar esse valor.

6.5.1 Testes de Classificação

Seguindo a arquitetura de redes Multilayer Perceptron foram novamente implementadas diferentes estruturas, executado o treinamento observado a convergência e aprendizado no banco de dados de validação.

Assim como no segundo banco de dados é inviável utilizar o método k-fold. Então o banco de dados foi separado em treino, validação e teste. Foi utilizada a seguinte proporção: 60% dos dados para treino, 20% para validação e 20% para teste.

As validações consistiram em definir uma estrutura de rede (arquitetura Multilayer Perceptron) e executar o treinamento observando a convergência e aprendizado no banco de dados de validação. Após término do treinamento é realizado uma avaliação com o banco de dados de teste. Novamente foi utilizado o método "Standard Scaler".

Novamente foi alterado nos testes o número de camadas ocultas, o número de neurônios em cada camada, as funções de ativação, a taxa de aprendizado, entre outros parâmetros. As funções de ativação foram testadas novamente sigmóides e suas combinações, que anteriormente já apresentaram bons resultados. Não foi necessário o uso de dropout nessa rede neural.

Os testes apresentaram bons resultados para diferentes estruturas redes neurais. A acurácia atinge rapidamente um bom valor.

(51)
(52)

Para executar o modelo foram definidos os seguintes parâmetros:

• Otimizador utilizado: Adam, algoritmo de otimização para funções estocásticas.

• Taxa de aprendizado (Learning rate): 0.001

• Métrica: Acurácia. Calcula a taxa de precisão média para problemas de classificação

• Épocas (Epochs): 100

• Tamanho do batch (Batch size): 256

• Perda (loss) determinada pela entropia binária cruzada. "A função entropia cruzada interpreta o sinal de treinamento e as saídas da rede como probabilidades e o algoritmo minimiza a diferença entre estas probabilidades" (Engel, 2019).

O grande volume de dados completos proporcionou a rede neural artificial uma rápida conversão e boa taxa de acerto. A taxa de acerto foi de 81,88%.

6.5.2 Testes de Predição

O objetivo desta aplicação é conseguir predizer o valor da hemoglobina glicada do indivíduo a partir dos parâmetros presentes no banco de dados. Surge aqui uma hipótese, uma rede neural capaz de predizer o valor exato ou próximo da hemoglobina glicada para depois classificar o indivíduo pode apresentar maior acurácia que uma rede neural que classifica diretamente?

Seguindo a mesma arquitetura Multilayer Perceptrons e estruturas semelhantes as já executadas a diferença dessa rede está principalmente na maneira que a rede calcula a perda (loss), otimiza o aprendizado e nas funções de ativação. A saída é uma previsão do valor da hemoglobina glicada, posteriormente é comparada a tabela de classificação para definir se o indivíduo possui ou não suspeita de diabetes.

Outra diferença percebida está no tamanho da rede. Para realizar a predição com acurácia foram necessários mais neurônios em cada camada.

(53)

As funções de ativação que apresentaram o melhor resultado no treinamento foram as ReLU. Assim como no classificador, os testes apresentaram bons resultados para diferentes estruturas redes neurais. A acurácia atinge rapidamente um bom valor.

A rede final possui como estrutura uma camada de entrada, duas camadas oculta e uma camada de saída.

• A camada de entrada recebe 26 parâmetros do banco de dados e possui 15 neurônios. Utiliza inicialização de pesos seguindo a distribuição normal (gaussiana) e função de ativação ReLU.

• A segunda camada oculta possui 10 neurônios, distribuição de pesos normal e função de ativação Tanh.

• A terceira camada oculta possui 5 neurônios, distribuição de pesos normal e função de ativação ReLU.

• A camada de saída possui um neurônio que fornece a classificação dos indivíduos. A camada de ativação utilizada é a sigmoide e a distribuição de pesos é a ReLU.

A Figura 8 ilustra a estrutura dessa rede. Cada camada é totalmente conectada com a próxima, ou seja, cada neurônio de uma camada possui conexão com todos neurônios da próxima camada (fully-connected layer). Novamente foi utilizado o método "Standard Scaler".

(54)
(55)

7 RESULTADOS

O primeiro banco de dados auxiliou a validar a existência de padrões nos dados, atingindo um acurácia de 69,64% na classificação utilizando como fator de decisão o nível de glicose dos indivíduos para classificar suspeita de diabetes.

O segundo banco de dados utilizou como fator de decisão a hemoglobina glicada para classificar a suspeita de diabetes. Possui mais parâmetros que o primeiro banco de dados mas demonstrou o impacto dos parâmetros com dados incompletos no aprendizado da rede neural artificial. Atingiu uma acurácia final de classificação de 64,32%.

O objetivo dessa dissertação foi atingido com o terceiro banco de dados. Utilizando redes neurais artificiais seguindo a arquitetura de redes Multilayer Perceptron foi possível atingir boa acurácia por dois caminhos diferentes.

A rede composta por várias camadas de perceptrons fornece 81,8% de acurácia na indicação de suspeita de diabetes em indivíduos a partir dos parâmetros. Tanto a classificação quanto a predição possuem uma boa capacidade de generalização para indivíduos que apresentem os parâmetros de entrada completos.

Foi observado o comportamento das duas rede durante o treinamento. A Figura 9 apresenta o desenvolvimento da acurácia ao longo do treinamento e teste do classificador final, ou seja, sua curva de aprendizado. Este exemplo utiliza 100 Epochs. Logo nas primeiras iterações a rede já atinge a faixa de 80% de acurácia. Isso ocorre tanto no treino (curva pontilhada) quanto no teste da rede neural (curva contínua).

A figura 10 apresenta o desenvolvimento da perda (loss) ao longo do treinamento do classificador final. Este exemplo utiliza 100 Epochs. É possível observar novamente a rápida convergência do aprendizado da rede neural artificial.

(56)
(57)

A acurácia da rede que realiza a predição foi medida posteriormente, realizando uma classificação da hemoglobina glicada prevista pela rede para cada indivíduo, ou seja, duas classificações ocorrem depois de finalizado o treinamento da rede. Uma classificação é a da hemoglobina glicada prevista e outra classificação é a da hemoglobina glicada conhecida (informação presente no banco de dados) do mesmo grupo de indivíduos. Uma vez realizadas essas classificações ocorre uma comparação e é medida a taxa de acerto.

Na rede neural artificial com predição mais otimizada foram encontrados os valores demonstrados na Tabela 16 após classificar o resultado.

Tabela 16 - Classificação do valor previsto pela rede neural.

Acertos Erros Acurácia

11336 2591 81,39%

Fonte: Elaborada pelo autor

A Figura 11 apresenta a perda (loss) medida ao longo do treinamento da rede de predição. Exemplo calculado utilizando 100 epochs. Logo nas primeiras iterações a rede já atinge a faixa 0,35 de perda e se estabiliza. Esse valor de erro é equivalente a 6,1% do valor de limiar utilizado na classificação (5,7).

(58)
(59)
(60)
(61)
(62)
(63)
(64)

Utilizando somente a glicose é possível chegar a uma acurácia de 79,45% na rede neural artificial. Esse resultado tem muito sentido, visto que a glicose é um critério chave para diagnóstico do diabetes. Porém com a adição dos outros parâmetros permite aumentar a acurácia em 2,35%, chegando aos 81,8%. Esse aumento pode proporcionar em escala um grande impacto. Um exemplo disso é uma aplicação do modelo computacional a 100 mil indivíduos, aumentar a acurácia de indicação de suspeita em 2,35% significa deixar de fornecer uma indicação incorreta para 2350 pessoas.

É importante manter atenção ao erro na previsão da hemoglobina glicada. O valor de perda de 0,35 equivale a 6,1% do valor de limiar da hemoglobina glicada (5,7) utilizado na classificação sugerida pela ADA. Esse valor de erro aumenta com a ausência de parâmetros de entrada na rede.

Os hemogramas apesar de representarem a maior parte dos parâmetros de entrada da rede neural artificial não apresentaram grande impacto no aprendizado da rede, porém contribuíram elevando a acurácia final da rede neural artificial, mesmo que pouco.

Alguns outros pontos técnicos interessantes surgiram durante o desenvolvimento dessa dissertação. São eles:

• Foi possível utilizar bons ambientes de teste e bibliotecas de experimentação rápida sem custos. Isso permitiu uma série de feedbacks rápidos sobre comportamento e aprendizado das redes neurais desenvolvidas. Os feedbacks foram fundamentais e guiaram as validações, desenvolvimento e otimizações desse trabalho.

• A possibilidade de requisição de novos bancos de dados permitiu uma evolução significativa na acurácia de classificação das redes. Observando o limite de aprendizado que cada banco de dados oferecia foi possível evoluir nas demandas, aumentando o volume e qualidade dos dados.

• Foi interessante observar as limitações do método k-fold, que com um aumento do banco de dados acaba se tornando inviável devido a necessidade de tempo e/ou processamento.Durante os testes

(65)

também foi possível observar o impacto de escalar os dados, facilitando o aprendizado da rede neural artificial.

• O Keras demonstrou um bom potencial na rápida experimentação e validação de redes neurais artificiais. Permite alterações de maneira prática e é bem intuitivo. Mesmo alterações estruturais nas redes e funções artificiais se tornam mais simples devido a lógica de implementação.

• Funções de ativação são bem discutidas na bibliografia utilizada (Udacity, 2018), mas a aplicação das funções acabou se mostrando interessante, pois em alguns casos as funções mais otimizadas não foram as que apresentaram os melhores resultados finais. Possivelmente isso varia muito de aplicação para aplicação.

Referências

Documentos relacionados

E as mineradoras da Região Carbonífera do Sul de Santa Catarina, que durante décadas exploraram sem muitos cuidados o carvão mineral, estão dentro desse contexto.Com base em

Os interessados em adquirir quaisquer dos animais inscritos nos páreos de claiming deverão comparecer à sala da Diretoria Geral de Turfe, localizada no 4º andar da Arquibancada

O número de desalentados no 4° trimestre de 2020, pessoas que desistiram de procurar emprego por não acreditarem que vão encontrar uma vaga, alcançou 5,8 milhões

•   O  material  a  seguir  consiste  de  adaptações  e  extensões  dos  originais  gentilmente  cedidos  pelo 

O objetivo deste trabalho foi avaliar épocas de colheita na produção de biomassa e no rendimento de óleo essencial de Piper aduncum L.. em Manaus

Com a realização da Ficha de Diagnóstico, o professor deve averiguar as aprendizagens dos alunos já realizadas sobre números racionais não negativos – operações e propriedades.

Após ter constatado variação significativa no hematócrito e na contagem total de hemácias e leucócitos nas ratas tratadas apenas com dexametasona nos intervalos de 14 e 21 dias,

32 para escutar e aprender sobre a palavra, pois isso para eles significa aprender sobre eles e, mais importante (do ponto de vista deles), aprender sobre Deus.