Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE COMPUTAÇÃO CURSO DE CIÊNCIA DA COMPUTAÇÃO VINICIOS HENRIQUE WENTZ REDES NEURAIS DENSAMENTE CONECTADAS PARA DETECÇÃO DE CÂNCER DE MAMA EM IMAGENS HISTOPATOLÓGICAS TRABALHO DE CONCLUSÃO DE CURSO MEDIANEIRA 2019 VINICIOS HENRIQUE WENTZ REDES NEURAIS DENSAMENTE CONECTADAS PARA DETECÇÃO DE CÂNCER DE MAMA EM IMAGENS HISTOPATOLÓGICAS Trabalho de Conclusão de Curso apresentado ao Departamento Acadêmico de Computação da Universidade Tecnológica Federal do Paraná como requisito parcial para obtenção do tı́tulo de “Bacharel em Computação”. Orientador: Prof. Dr. Pedro Luiz de Paula Filho Co-orientador: Prof. Dr. Arnaldo Candido Junior MEDIANEIRA 2019 Ministério da Educação Universidade Tecnológica Federal do Paraná Diretoria de Graduação e Educação Profissional Coordenação do Curso de Ciência da Computação TERMO DE APROVAÇÃO REDES NEURAIS DENSAMENTE CONECTADAS PARA DETECÇÃO DE CÂNCER DE MAMA EM IMAGENS HISTOPATOLÓGICAS Por VINICIOS HENRIQUE WENTZ Este Trabalho de Conclusão de Curso foi apresentado às 10:20h do dia 2 de mês de Julho 2019 como requisito parcial para a obtenção do tı́tulo de Bacharel no Curso de Ciência da Computação, da Universidade Tecnológica Federal do Paraná, Câmpus Medianeira. O candidato foi arguido pela Banca Examinadora composta pelos professores abaixo assinados. Após deliberação, a Banca Examinadora considerou o trabalho aprovado. Prof. Pedro Luiz de Paula Filho UTFPR - Câmpus Medianeira Prof. Arnaldo Candido Junior UTFPR - Câmpus Medianeira Prof. Paulo Lopes de Menezes UTFPR - Câmpus Medianeira Prof. Paulo Ricardo Knob UTFPR - Câmpus Medianeira A folha de aprovação assinada encontra-se na Coordenação do Curso. RESUMO WENTZ, Vinicios Henrique. REDES NEURAIS DENSAMENTE CONECTADAS PARA DETECÇÃO DE CÂNCER DE MAMA EM IMAGENS HISTOPATOLÓGICAS. 65 f. Trabalho de Conclusão de Curso – Curso de Ciência da Computação, Universidade Tecnológica Federal do Paraná. Medianeira, 2019. Mesmo com todos os avanços das tecnologias médicas, o câncer continua sendo um dos maiores responsáveis por morte no mundo. Nas mulheres o câncer de mama é o segundo câncer com mais incidência, se diagnosticado precocemente pode ser curado. Um dos procedimentos de diagnósticos é a biopsia, que produz uma imagem que deve ser analisada através de um microscópio por um patologista. Com o grande avanço da visão computacional e aprendizado profundo, é possı́vel fazer com que computadores auxiliarem médicos para uma melhor taxa de diagnósticos corretos, com as experiências dos médicos é o poder computacional das máquinas que hoje se tem. Pode-se melhorar a qualidade de vida de pessoas que sofrem desta enfermidade fazendo um diagnostico mais preciso e precoce. A DenseNet é uma arquitetura de redes neurais apresentadas em 2017 por Huang et al. (2017) que surgiram destes avanços, visando um melhor desempenho tem um padrão de conexão nunca antes vistos entre as camadas, lida muito bem com o problema da dissipação do gradiente e requer menos parâmetros. Este trabalho apresenta os conceitos chaves, técnicas e implementações para que esse objetivo em relação a medicina seja alcançado, será utilizado aprendizado profundo, redes neurais e processamento de imagem os quais mostraram a viabilidade de tal prática aplicada na medicina para reconhecer imagens de biopsias dos seios que contenham câncer. Foram feitas classificações binarias e multi classes. Palavras-chave: Redes neurais, Medicina, Câncer de Mama ABSTRACT WENTZ, Vinicios Henrique. DENSELY CONNECTED NEURAL NETWORKS FOR BREAST CANCER DETECTION ON HISTOPATHOLOGICAL IMAGES. 65 f. Trabalho de Conclusão de Curso – Curso de Ciência da Computação, Universidade Tecnológica Federal do Paraná. Medianeira, 2019. Even with all the advances in medical technologies, cancer still is one of the biggest causes of death on earth. Women breast cancer is second cancer with more incidence if diagnosed early can be cured. One procedure to the diagnosis of cancer is the biopsy, which produces images that must be analyzed through a microscope by a pathologist. With computational vision and deep learning advances, it’s possible to have computer help doctors for a better rate of correct cancer diagnosis, with the experience of the doctors and the computational power of actual machines, the life quality of the people which suffer from cancer can be improved, doing diagnosis with more precision. The DenseNet is one architecture of the artificial neural network that emerged from these advances presented by Huang et al. (2017), aiming a better performance, has connection patterns never seen before between the layers, handles very well with the vanish gradient problem and requires fewer parameters. The following paper presents key concepts, techniques, and implementations to achieve this objective in relation to medicine, it will be used deep learning, neural network and image processing techniques that showed the viability of applying deep learning in medicine to recognize biopsy images of the breast region that may contain cancer Were made binary and multi-class classification in this work. Keywords: Neural networks, Medicine, Breast Cancer AGRADECIMENTOS Venho por meio desta dedicatória agradecer minha famı́lia e minha namorada, sempre me apoiaram e nunca me deixaram pensar em desistir dessa jornada, quero agradecer tudo o que vocês fizeram/fazem por min, o amor de vocês é essencial na minha vida. Também gostaria de agradecer os professores Pedro Luiz de Paula Filho e Arnaldo Candido Junior por me orientar durante a escrita deste trabalho, sem a orientação e os conselhos de vocês a execução deste trabalho não seria possı́vel. Who are we? We find that we live on an insignificant planet of a humdrum star lost in a galaxy tucked away in some forgotten corner of a universe in which there are far more galaxies than people. - Carl Sagan LISTA DE FIGURAS –FIGURA 1 Neurônio Biológico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 –FIGURA 2 Perceptron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 –FIGURA 3 Hiperplano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 –FIGURA 4 Detalhes de um neurônio artificial de uma MLP . . . . . . . . . . . . . . . . . . . . . . . . 18 –FIGURA 5 Rede neural feedforward totalmente conectada . . . . . . . . . . . . . . . . . . . . . . . . . 19 –FIGURA 6 Função Passo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 –FIGURA 7 Função Sigmoide Logı́stica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 –FIGURA 8 Tangente Hiperbólica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 –FIGURA 9 Unidade Retificada Linear. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 –FIGURA 10 Leaky ReLU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 –FIGURA 11 Comparação de uma rede totalmente conectada com uma convolucional. . 27 –FIGURA 12 Digitos do MNIST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 –FIGURA 13 Camadas convolucionais 2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 –FIGURA 14 Kernel Convolucional. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 –FIGURA 15 Max Pooling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 –FIGURA 16 Densenet . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 –FIGURA 17 Bloco denso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 –FIGURA 18 Biópsia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 –FIGURA 19 Processo de coleta de tecido. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 –FIGURA 20 Imagens dos tumores e suas ampliações . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 –FIGURA 21 Transformações aplicadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 –FIGURA 22 Aproximação local classifier per cevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 –FIGURA 23 Fluxograma de trabalho para a implementação da rede neural. . . . . . . . . . . . 49 –FIGURA 24 Gráfico de treino do experimento 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 –FIGURA 25 Matriz de confusão do experimento 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 –FIGURA 26 Gráfico de treino do experimento 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 –FIGURA 27 Matriz de confusão do experimento 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 –FIGURA 28 Gráfico de treino do experimento 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 –FIGURA 29 Matriz de confusão do experimento 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 –FIGURA 30 Gráfico de treino do experimento 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 –FIGURA 31 Matriz de confusão do experimento 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 –FIGURA 32 Matriz de confusão do experimento 2 com região de perigo . . . . . . . . . . . . . 58 –FIGURA 33 Matriz de confusão do experimento 4 com regiões de perigo . . . . . . . . . . . . 58 LISTA DE TABELAS –TABELA 1 Distribuição das imagens seus grupos com suas magnitudes. . . . . . . . . . . . . 43 –TABELA 2 Tipos de tumores contidos no BreaKHis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 –TABELA 3 Distribuição das imagens de tumores benignos. . . . . . . . . . . . . . . . . . . . . . . . . 43 –TABELA 4 Distribuição das imagens de tumores malignos. . . . . . . . . . . . . . . . . . . . . . . . . 45 –TABELA 5 Resultado experimento 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 –TABELA 6 Resultado experimento 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 –TABELA 7 Resultado experimento 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 –TABELA 8 Resultado experimento 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 LISTA DE SIGLAS CAD Sistemas de Diagnóstico Assistido por Computador CNNs Redes Neurais Convolucionais CPUs Unidade de Processamento Central DenseNet Redes Neurais Convolucionais Densas GAN Generative Adversarial Networks GPUs Unidade de Processamento Gráfica IARC Agência Internacional de Pesquisa sobre o Câncer MAE Erro Absoluto Médio MLP Perceptron Multicamada PNG Portable Network Graphics RGB Red Green Blue RM Ressonância Magnética RNA Redes Neurais Artificiais ReLU Unidade Retificada Linear ResNet Rede Neural Residual TC Tomografia Computadorizada TNM Tumor, Nódulo, Metástase TPUs Unidade de Processamento de Tensores UICC União Internacional Contra o Câncer UV Ultra Violeta VGG Visual Geometry Group WFC Fundo de Pesquisa do Câncer Mundial SUMÁRIO 1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.1 OBJETIVOS GERAIS E ESPECÍFICOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.2 OBJETIVOS ESPECÍFICOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.3 JUSTIFICATIVA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.4 ORGANIZAÇÃO DO DOCUMENTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2 FUNDAMENTAÇÃO TEÓRICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.1 REDES NEURAIS ARTIFICIAIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2 PERCEPTRON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.3 PERCEPTRONS MULTICAMADAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.3.1 Arquitetura de um Perceptron Multicamada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.3.2 Algoritmo Backpropagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.4 FUNÇÕES DE ATIVAÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.4.1 Função Passo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.4.2 Sigmoide Logı́stica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.4.3 Tangente Hiperbólica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.4.4 Unidade Linear Retificada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.4.5 Unidade Linear Retificada com Vazamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.4.6 Softmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.5 REDES NEURAIS CONVOLUCIONAIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.6 TRANSFERÊNCIA DE APRENDIZADO E DATA AUGMENTATION . . . . . . . . . . . . 29 2.7 REDES NEURAIS CONVOLUCIONAIS DENSAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2.8 CÂNCER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2.8.1 Exames de Imagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.8.2 Exames Laboratoriais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 2.8.3 Estadiamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.9 CÂNCER DE MAMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.10 TRABALHOS CORRELATOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3 MATERIAIS E MÉTODOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.1 LINGUAGEM DE PROGRAMAÇÃO E BIBLIOTECAS . . . . . . . . . . . . . . . . . . . . . . . . 40 3.2 HARDWARE UTILIZADO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.3 BASE DE DADOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.4 APROXIMAÇÃO EXPERIMENTAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 4 RESULTADOS E DISCUSSÕES . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 50 4.1 RESULTADOS DO EXPERIMENTO 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4.2 RESULTADOS DO EXPERIMENTO 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.3 RESULTADOS DO EXPERIMENTO 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.4 RESULTADOS DO EXPERIMENTO 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5 CONCLUSÕES E TRABALHOS FUTUROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5.1 CONCLUSÕES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 5.2 TRABALHOS FUTUROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 10 1 INTRODUÇÃO As células cancerı́genas se diferem das normais na capacidade de crescimento, enquanto as células normais morrem, as cancerı́genas não, com isso, elas continuam crescendo e formando mais células anormais as quais tem a habilidade de invadir outras estruturas orgânicas. Então uma das definições do câncer é a perda dos organismos de ter controle sobre a divisão celular (INCA, 2011). O diagnóstico e tratamento do câncer evoluı́ram, porém, ele ainda é considerado um dos grandes problemas de saúde ao redor no mundo, sendo considerado a segunda maior causa de morte. De acordo com a Fundo de Pesquisa do Câncer Mundial (WFC), houve um aumento de 20% nos casos de câncer na última década (SPANHOL, 2018). Depois do câncer de pulmão, o câncer de mama é o câncer mais comum e a principal causa de morte entre as mulheres (CHUN, 2017). Por isso qualquer mı́nima mudança que a mulher perceba nos seus seios é o suficiente para lhe causar aflição (DRONKERS et al., 2002). De acordo com a Agência Internacional de Pesquisa sobre o Câncer (IARC), estimou que em 2012 tenham ocorrido 14,1 milhões de novos casos e o número de mortes causadas por câncer foi de aproximadamente 8,2 milhões. A previsão para 2030 é que ocorram um total de 27 milhões de novos casos (BARDOU et al., 2018). Para o Brasil, calcula-se que para os anos de 2018-2019 que ocorra cerca de 600 mil novos casos de câncer (FERREIRA et al., 2017). O método de diagnóstico do câncer de mama pode ser feito através de histologia e imagens radiológicas. A radiologia ajuda a identificar as regiões que podem possuir uma anomalia, no entanto não é possı́vel identificar se a anormalidade é cancerosa. A biópsia, onde são retiradas amostras dos tecidos e analisadas com a ajuda de um microscópio é que determina se o câncer está realmente presente (SPANHOL, 2018). Esse processo ainda é completamente dependente de um patologista, o qual procura por certos padrões. Se este profissional não foi bem treinado, o diagnóstico pode não ser correto (BARDOU et al., 2018). Com a grande evolução da Aprendizagem Profunda na área do Aprendizagem de Máquina, essa área tem chamado a atenção de várias pessoas da comunidade cientı́fica, muitos pesquisadores tem desenvolvido uma ampla variedade de pesquisas para produção de sistemas de diagnóstico assistido por computador (CAD) para detecção de câncer de mama usando 11 bibliotecas de Aprendizagem Profunda (LI et al., 2018). Desde a AlexNet (KRIZHEVSKY et al., 2012), as redes neurais convolucionais não pararam de evoluir. Hoje em dia, as redes neurais convolucionais são os classificadores mais populares quando se fala em visão computacional (LI et al., 2018), porém, as redes neurais convolucionais foram introduzidas na década de 80 (LECUN et al., 1989). Com hardware e redes mais avançados foi permitido fazer treinamentos de rede neurais cada vez mais profundas (LECUN et al., 1998). E com isso possibilitando a aplicação em vários campos, como por exemplo em vários campos da área medica (ALOM et al., 2018), com isso ajudando profissionais da área médica com softwares melhores. 1.1 OBJETIVOS GERAIS E ESPECÍFICOS Fazer o uso de redes neurais densamente conectadas, analisar sua aplicabilidade na tarefa de classificação binaria e multi-classe para imagens histopatológicas das regiões das mamas, fazendo a predição da classe e tipo dos tumores contidos na base de dados. 1.2 OBJETIVOS ESPECÍFICOS • Estabelecer uma base de dados compostas por imagens histopatológicas, contendo tumores das regiões mamarias; • Utilizar redes neurais convolucionais densamente conectadas para classificar tumores das regiões das mamas nas imagens histopatológicas; • Treinar a Rede Neural Densamente Conectada para a classificação das imagens histopatológicas; • Analisar resultados e concluir se a Rede Neural Densamente Conectada é capaz de auxiliar o diagnóstico de câncer de mama com uma alta precisão por meio de classificação. 12 1.3 JUSTIFICATIVA Erros em diagnósticos sempre tiveram uma grande presença na medicina. Na análise histológica de amostras de tecido das mamas, de acordo com Jonel Aleccia (2015), patologistas foram testados nos Estado Unidos da América. Quando analisaram amostras de Carcinoma Ductal eles obtiveram uma taxa de sucesso 87% do tempo. Essa taxa varia dependendo o câncer e do tipo do exame. Na mamografia, de acordo com o INCA (2012), há uma taxa de erro de 10%. Como visto há uma taxa significativa de erro, esses diagnósticos incorretos podem custar a vida dos pacientes. Com o propósito de investigar métodos com o potencial de diminuir a taxa de erro nos diagnósticos foi o motivo pelo qual foi-se idealizado este trabalho. Uma maneira a qual a área da Ciência da Computação pode ajudar no diagnóstico de câncer é com a aplicação de redes neurais convolucionais. Redes neurais convolucionais (CNNs) foram idealizadas com o objetivo de fazer a classificação de imagens (LECUN et al., 1998). E hoje já fazem classificação de imagens com uma pequena taxa de erro, como na base de dados CIFAR-10+ 1 a DenseNet com 190 camadas obteve uma taxa de erro de 3.46 (HUANG et al., 2017). Como visto, CNNs hoje são muito eficazes em tal prática. Grande parte dos exames para o diagnóstico de câncer produzem imagens, com isso, pode-se fazer a aplicação de CNNs no diagnóstico do câncer, para classificar amostras as quais podem contem tumores malignos e benignos. Com uma implementação de uma CNN para que sejam feitas tais análises, pode-se auxiliar profissionais da área da saúde, para que se obtenha uma maior taxa de acurácia no diagnóstico precoce. 1.4 ORGANIZAÇÃO DO DOCUMENTO Este documento está organizado em capı́tulos. No Capı́tulo 2, divide-se o conteúdo em seções, onde são todos conceitos chaves para o entendimento deste trabalho, serão abordados os assuntos sobre redes neurais, funções de ativação, câncer e câncer de mama. No Capı́tulo 3, também separado em seções, está todo conteúdo de como este trabalho será implementado, abordando assuntos como, linguagem de programação, bibliotecas e base de dados que serão 1https://www.cs.toronto.edu/ kriz/cifar.html 13 utilizados e a metodologia para o desenvolvimento da obra. Já no Capı́tulo 4 será falado sobre os experimentos propostos e os resultados atingidos por eles e no Capı́tulo 5 será apresentado a conclusão do trabalho e se abordará aspectos sobre trabalhos futuros. 14 2 FUNDAMENTAÇÃO TEÓRICA Para que esta obra tenha um melhor entendimento pelo leitor, deve-se conceituar alguns pontos chaves, o qual é o objetivo deste capı́tulo. Primeiramente serão abordados os assuntos relativos a redes neurais, em seguida, câncer é o próximo assunto a ser abordado e por fim câncer de mama. 2.1 REDES NEURAIS ARTIFICIAIS O cérebro biológicofoi o objeto o qual inspirou os estudos em redes neurais artificiais, sendo construı́do de uma rede complexa de neurônios interconectados (MITCHELL, 1997). O cérebro é um sistema de processamento de informação complexa, não linear e paralelo (HAYKIN, 2008). O neurônio biológico (Figura 1) é a célula fundamental do sistema nervoso de todos os animais, os neurônios se comunicam uns com os outros e trocam impulsos eletroquı́micos por um processo chamado sinapse, esses impulsos devem ser fortes o bastante para ativar a liberação de substâncias quı́micas através desta fissura sináptica (PATTERSON, 2017). Na Figura 1 são mostradas todas as partes que constituem a anatomia de um neurônio biológico. O centro metabólico do neurônio é seu corpo celular. Ele faz parte do núcleo do neurônio, que contém os genes e retı́culo endoplasmático, o qual é uma extensão do núcleo onde as proteı́nas da célula são sintetizadas. O corpo celular se estende em vários dendritos e um longo axônio tubular. Os dendritos se subdividem em uma forma de árvore e sua principal funcionalidade é o recebimento de estı́mulos de outras células nervosas. O Axônio se distância um pouco do corpo celular, e sua principal função é carregar estı́mulos para outras células nervosas. O axônio tem a capacidade de fazer a transmissão de sinais elétricos em distâncias variantes a 0,1mm a 2mm. Tais sinais elétricos são chamados de potência de ação, os impulsos elétricos são inicializados em uma região de disparo especializada próxima a origem do axônio 15 Figura 1 – Neurônio Biológico Fonte: (RUSSELL, 2010) (KANDEL et al., 2013). Haykin (2008) define Redes Neurais Artificiais (RNAs) como um processador distribuı́do altamente paralelo o qual é composto por unidades de processamento simples que tem uma capacidade natural para armazenar conhecimento experimental e o faz disponı́vel para o uso. O conhecimento é adquirido pela rede através de um processo de aprendizagem. RNAs tem dois aspectos os quais se assemelham ao cérebro, é através do ambiente e de um processo de aprendizagem que a rede neural adquire conhecimento, e as informações são armazenadas por meio das conexões entre elas, também conhecida como pesos sinápticos. 2.2 PERCEPTRON Agora que se tem um conhecimento prévio de redes neurais, pode-se abordar o primeiro modelo de rede neural, o Perceptron. Criado em 1957 por Frank Rosenblatt dentro do laboratório de aeronáutica de Conrell, foi construı́do utilizando o modelo de neurônio de McCulloch e Pitts (ROSENBLATT, 1960). O Perceptron é um modelo de classificador linear binário, ele possui uma simples relação de entradas xi e saı́da, sua arquitetura pode ser vista na Figura 2. Sendo a forma mais simples de uma rede neural, o Perceptron é usado para classificação de padrões ditos linearmente separáveis, são padrões que se pode encontrar valores de um hiperplano que se dividirá claramente em duas classes. Basicamente construı́do com um único neurônio com 16 pesos sinápticos ajustáveis wi j e um bias ou limitante θ j (HAYKIN, 2008; PATTERSON, 2017). Figura 2 – Perceptron Fonte: (PATTERSON, 2017) A Equação 1 é a que define a tomada de decisão do Perceptron, ela é definida pelo somatório das suas entradas x1,x2, . . . ,xn ponderadas pelos seus respectivos pesos w1,w2, . . . ,wn aplicando um bias b, o bias pode ser dito como um valor de interceptação, com isso pode-se deixar o modelo mais geral, esse bias, normalmente é modelado como um peso vindo de uma unidade de polarização extra (ALPAYDIN, 2014; HAYKIN, 2008). v = n ∑ i=1 xiwi +b (1) O objetivo do Perceptron é fazer a classificação correta para o conjunto de entradas x1,x2, . . .xn passadas para ele. Ele dividirá essas entradas em duas classes C1 ou C2, essa classificação é feita quando o resultado da Equação 1 for enviada para a função de ativação que é dada pela Equação 2, essa função de ativação é composta por um limitante, o qual excitará ou inibirá o neurônio (PATTERSON, 2017; ALPAYDIN, 2014; HAYKIN, 2008). f (x) = 0 x < 01 x≥ 1 (2) Para o entendimento do classificador é comum plotar um mapa da região de decisão em um espaço m-dimensional, com isso se tem duas regiões de decisão separadas por um hiperplano que é definido pela Equação 1 (HAYKIN, 2008). Na Figura 3, duas entradas x1 e x2, para qual o limite de decisão toma a forma de uma linha reta. Pontos (x1,x2) que ficarem em cima da linha limitante são da classe C1 e os pontos que 17 Figura 3 – Hiperplano Fonte: (HAYKIN, 2008) ficam abaixo desta linha são da classe C2. Nota-se que o bias, tem como objetivo afastar a linha para longe da origem (HAYKIN, 2008). 2.3 PERCEPTRONS MULTICAMADAS Perceptrons simples podem somente expressar planos de decisões lineares como as funções logicas AND e OR. Os Perceptrons Multicamadas (MLP) possuem a capacidade de aproximar discriminantes não lineares, com isto o MLP, que também são conhecidas como redes neurais feedforward, conseguem resolver problemas, como, aprender a porta lógica XOR, a qual tem um discriminante não linear (PATTERSON, 2017; ALPAYDIN, 2014). Os neurônios artificiais usado em MLP (Figura 4) diferem-se pouco do seu antecessor o Perceptron, a diferença está na flexibilidade na camada de ativação. Em uma MLP tem-se a possibilidade de fazer o uso de diferentes funções de ativação em cada uma das 18 camadas, dependendo de seu propósito, as funções de ativação serão abordadas na Seção 2.4 (PATTERSON, 2017). Figura 4 – Detalhes de um neurônio artificial de uma MLP Fonte: (PATTERSON, 2017) Redes feedForward são extremamente importantes para o aprendizado de máquina. Elas são a base para muitas outras redes, como a rede neural convolucional que é uma categoria de redes feedforward usadas para o reconhecimento de imagens e também são a base para redes neurais recorrentes, muito utilizadas em processamento de linguagem natural. (GOODFELLOW et al., 2016). 2.3.1 Arquitetura de um Perceptron Multicamada A arquitetura de uma MLP é composta de neurônios artificiais organizados em grupos chamados de camadas, um MLP também deve possuir uma camada de entrada, uma ou mais camadas escondidas e uma camada de saı́da (Figura 5). Uma rede feedforward multicamada é composta por uma camada de entrada que é por onde a rede é alimentada com os dados, uma camada de saı́da e uma ou mais camadas intermediarias. As camadas escondidas as quais ficam entre as camadas de entrada e saı́da atuam como extratores de caracterı́sticas, essas camadas tem um papel essencial no funcionamento de uma MLP. Cada camada pode ter uma ou mais neurônios artificiais, na camada de entrada e na de saı́da normalmente o número de neurônios é igual ao número de 19 Figura 5 – Rede neural feedforward totalmente conectada Fonte: (PATTERSON, 2017) recursos de entrada para a rede. Os pesos entre as conexões entre as camadas são como a rede faz a codificação das informações aprendida pelos dados da camada de entrada. A camada de saı́da é por onde a rede retorna à predição do modelo com base nos dados os quais alimentaram a camada de entrada. Tal resultado é definido pela função de ativação utilizada na camada de saı́da (PATTERSON, 2017; AGGARWAL, 2018; HAYKIN, 2008). As redes feedforward chamam-se assim por serem tipicamente representadas pela composição de diferentes funções. O modelo é associado com um grafo acı́clico direto representando a disposição de como as funções são compostas (Figura 5). Por exemplo pode-se ter três funções f (1), f (2) e f (3) conectada em cadeia para formar f (x) = f (3)( f (2)( f (1)(x))). Essa formação é mais comumente utilizada em estruturas de redes neurais. Nesse caso f (1) é a primeira camada, f (2) é chamada de segunda camada e f(3) é a última camada. O nome Aprendizado Profundo vem daquantidade de funções encadeadas. Treinar uma RNA significa fazer com que f (x) aproxime-se de f ∗(x). Os dados de treinamento nos fornecem exemplos aproximados e ruidosos de f ∗(x) avaliados em diferentes pontos de treinamento (GOODFELLOW et al., 2016). Redes feedforward tem esse nome pelo fato de que a informação flui através da função a ser avaliada a partir de x, através dos cálculos intermediários usados para definir f e, finalmente, para a saı́da y (GOODFELLOW et al., 2016; PATTERSON, 2017). 20 2.3.2 Algoritmo Backpropagation Agora que já se tem uma intuição sobre MLP, pode-se abordar os problemas de se treinar a mesma. O algoritmo de Backpropagation é um conceito importante para o cálculo e redução de erros nas RNA. O Backpropagation é um algoritmo iterativo com base no gradiente descendente para a minimização de erro no vetor de saı́da de uma RNA. Ou seja, o algoritmo de Backpropagation é uma regra generalizada para o aprendizado dos pesos da RNA (PATTERSON, 2017; BELL, 2015; CHOW, 2007; MITCHELL, 1997). Durante o treino de uma RNA, o Backpropagation opera em uma sequência de duas etapas, a fase foward e a fase backward. Na fase foward, alimenta-se a entrada da rede com os dados de treinamento. Tal atividade resultante flui camada por camada através das camadas usando o conjunto de pesos atuais. A saı́da pode ser comparada com a instância de treinamento e a derivada da função de perda com relação a saı́da computada. Na fase backward o principal objetivo é aprender o gradiente da função de perda em relação aos diferentes pesos usando a regra da cadeia do cálculo diferencial que pode ser visto na Equação 3. Utiliza-se os gradientes para fazer a atualização dos pesos da RNA (CARVALHO, 2009; AGGARWAL, 2018). dz dt = ∂ z ∂x · dx dt + ∂ z ∂y · dy dt (3) Porem, o Backpropagation enfrenta um problema, existe um grande espaço de hipóteses o qual se define por todas as possı́veis combinações de pesos para todas as unidades da rede (MITCHELL, 1997). 2.4 FUNÇÕES DE ATIVAÇÃO As funções de ativação são de uma grande importância nas RNAs (GUPTA, 2017). Essas funções são usadas para a ativação dos neurônios, com isso a propagação da saı́da das camadas, para a próxima camada. A grande parte das funções de ativação são escalar- para-escalar, as funções de ativação usadas nas camadas escondidas de uma rede neural (PATTERSON, 2017). Aqui serão apresentadas algumas funções de ativação importantes usadas para redes neurais. 21 2.4.1 Função Passo A função passo ou função degrau já foi demostrada na Seção 2.2, onde foi falado sobre Perceptron. A função passo Equação 2 é extremamente simples. Pode ser usada quando se deseja fazer um classificador binário, seu gráfico pode ser visto na Figura 6. A função passo é mais teórica do que prática, levando em consideração que normalmente os dados possuem muito mais do que uma classe. Além de que, seu gradiente é zero, tornando-a inútil para o algoritmo de Backpropagation, amplamente utilizado no treinamento de RNAs, quando os gradientes são usados para os cálculos de erro afim de otimizar a rede (GUPTA, 2017). Figura 6 – Função Passo. Fonte: Autoria Própria. 2.4.2 Sigmoide Logı́stica A função sigmoide logı́stica mostrada na Equação 4, é uma função continuamente diferenciável. Sua maior vantagem em relação a função passo é que a função sigmoide logı́stica 22 não é linear. Isso significa que tendo vários neurônios implementando a função sigmoide logı́stica como função de ativação é que suas saı́das não serão lineares. A sigmoide logı́stica varia de 0 a 1 tendo um formato de S como pode ser visto na Figura 7. Figura 7 – Função Sigmoide Logı́stica. Fonte: Autoria Própria. A sigmoide logı́stica tenta aproximar o valor para os extremos. Essa caracterı́stica é desejável quando se tem de classificar valores para uma classe especı́fica. A sigmoide logı́stica é utilizada até hoje, porém, ela tem alguns problemas. Com a sigmoide logı́stica existe o problema de que quando os gradientes se tornam muito pequenos ou muito grandes, isso faz com que ela sature para entradas negativas tanto quanto para entradas positivas, dificultando o aprendizado do algoritmo Backpropagation. Outro problema da sigmoide logı́stica são que seus valores variam apenas entra 0 e 1. Não sendo simétrica em torno da origem e com isso seus valores recebidos são todos positivos. As vezes se quer que os valores enviados para os neurônios não sejam do mesmo sinal (GUPTA, 2017). sigmoide(x) = 1 1+ e−x (4) 23 2.4.3 Tangente Hiperbólica A função Tangente Hiperbólica ou também conhecida como tanh é muito semelhante a função sigmoide logı́stica como pode ser visto na Figura 8. A função tanh, na verdade pode ser dita como uma versão escalonada da função sigmoide logı́stica. Figura 8 – Tangente Hiperbólica. Fonte: Autoria Própria. Funcionando de forma semelhante a função sigmoide logı́stica, porém, a tanh Equação 5, tem uma relação de simetria á origem, variando de −1 a 1 (GUPTA, 2017). O problema com a função tanh é que quando a entrada da rede está muito longe do zero, ela assume uma forma muito plana. Isso resulta em um gradiente pequeno, o que significa que a rede pode levar muito tempo para mudar seu comportamento (OSINGA, 2018). tanh(x) = ex− e−x ex + e−x (5) 24 2.4.4 Unidade Linear Retificada A função unidade retificada linear ReLU é uma das transformações mais interessantes, o nó será ativado somente se a entrada estiver acima de uma certa quantidade. Enquanto a entrada estiver abaixo de zero, a saı́da será zero, porém, quando a entrada atingir um centro limite, ela terá uma relação linear com a variável dependente (Figura 9). Figura 9 – Unidade Retificada Linear. Fonte: Autoria Própria. A função ReLU (Equação 6) atualmente é o estado da arte, essa função tem provado seu potencial em diferentes situações. O gradiente da ReLU é zero ou uma constante, com isso, ela consegue lidar com o problema do gradiente (vanishing gradient) que desaparece de forma eficaz (PATTERSON, 2017). f (x) = max(0,x) (6) 25 2.4.5 Unidade Linear Retificada com Vazamento A função unidade linear retificada com vazamento também conhecida como leaky ReLU, que se pode dizer que se trata de uma ReLU melhorada. Como visto na função ReLU seu gradiente é 0 para x < 0 o que faz com que o neurônio não ativo nesta região. A leaky ReLU, contorna este problema. Em vez de definir 0 para x < 0, define-se um pequeno componente linear para x como visto na Equação 7. f (x) = max(0,0.01x) (7) A principal vantagem da leaky ReLU é remover a linha horizontal que consequentemente remove o gradiente 0 (Figura 10). Figura 10 – Leaky ReLU. Fonte: Autoria Própria. Neste caso o gradiente o lado esquerdo do gráfico não chega a ser 0, então nesta região os neurônios ainda conseguem ser ativados (GUPTA, 2017). 26 2.4.6 Softmax A função softmax é um tipo de função sigmoide logı́stica. Ela é útil quando se está lidando com problemas de classificação. A softmax “comprime”as classes para 0 e 1 e também dividirá pela soma das saı́das (Equação 8). Isso dá a probabilidade de a entrada estar em uma classe particular. σ(z) j = ex j ∑ k k=1 ezk para j = 1, . . . ,k (8) A função softmax é ideal para se usar nas camadas de saı́da de um classificador quando se precisa ter probabilidades para definir a classe que cada entrada (GUPTA, 2017). 2.5 REDES NEURAIS CONVOLUCIONAIS Redes neurais convolucionais são uma categoria especializada de rede neural multicamada para se processar dados com uma topologia estilo de grade. Foram projetadas com o intuito de reconhecer padrões visuais. Essa arquitetura de rede neural, tem a capacidade de reconhecer padrões com uma grande variabilidade e robusteza (GOODFELLOW et al., 2016;LECUN et al., 1998). Ganharam uma grande importância há alguns anos sendo muito importantes para o aprendizado profundo. Enraizadas no processamento de imagens digitais, as camadas convolutivas trabalham muito bem em outros sub-campos do aprendizado profundo e com grande taxa de sucesso (HOPE YEHEZKEL S. RESHEFF, 2017). CNNs tiveram como inspiração o córtex visual dos animais, as células desta região são sensı́veis a pequenas sub-regiões da entrada. Isso é chamado de campo receptivo. Tais pequenas regiões são distribuı́das uma do lado da outra cobrindo todo campo receptivo. As células são adequadas para explorar a forte correlação local espacial encontradas nos tipos de imagens processadas por nossos cérebros e atuam como filtros locais sobre o espaço de entrada. Nesta região do cérebro há dois tipos de células. As células mais simples são ativadas quando detectam padrões de bordas, e as células de maior complexidade são ativadas quando o campo receptivo é maior e são invariantes à posição do padrão (PATTERSON, 2017). As CNNs são chamadas assim por causa de uma operação matemática que essas redes empregam, chamada de convolução. As convoluções são um tipo especializado de 27 operação linear. As CNNs são simplesmente redes neurais que usam convolução no lugar de multiplicação de matriz em pelo menos uma de suas camadas escondidas (GOODFELLOW et al., 2016). Outro diferencial das CNNs são que, cada unidade se conecta parcialmente com unidades próximas da camada anterior, o mesmo ocorrendo da segunda para a primeira, com compartilhamento de pesos. Na Figura 11 pode-se ver a diferença entre uma rede neural totalmente conectada e uma rede neural convolucional (HOPE YEHEZKEL S. RESHEFF, 2017). Figura 11 – Comparação de uma rede totalmente conectada com uma convolucional. Fonte: Adaptado (HOPE YEHEZKEL S. RESHEFF, 2017) RNAs regulares lidam muito bem com desafios, por exemplo, o MNIST 1. No MNIST as imagens têm 28×28 pixeis contêm tons de cinza como pode ser visto na Figura 12. Como resultado um neurônio em uma rede totalmente conectada obteria 784 pesos. Essa técnica não escala bem quando as imagens crescem, por exemplo, com imagens 200× 200 pixeis, a camada de saı́da teria 200×200×3 = 120.000. A rede iria precisar de muitos desses neurônios em múltiplas camadas, a conectividade completa tem um número massivo de parâmetros, o que pode rapidamente levar a um overfitting durante o treinamento com o conjunto de dados (BUDUMA, 2017). As redes convolucionais tem uma grande vantagem por suas entradas e com isso restringem a arquitetura de uma maneira mais sensata, os neurônios das CNNs são organizados em um formato 3D, largura, altura e profundidade (KARPATHY, 2017). A operação fundamental das CNNs são as convoluções, também chamadas de kernel convolucional. Que ao em vez de aplicar uma função na imagem inteira, a convolução escaneia pequenas matrizes da imagem. Para cada local é aplicado o kernel, tipicamente a convolução é uma multiplicação de matriz seguida por uma função de ativação. Com isso, quando aplicado, o kernel pode criar um mapa de caracterı́sticas (Figura 14) (OSINGA, 2018). Para imagens é comum rotular o tamanho do campo receptivo em termos do número 1http://yann.lecun.com/exdb/mnist/ 28 Figura 12 – Imagens da base de dados do MNIST Fonte: (LECUN et al., 1998) Figura 13 – Camadas convolucionais 2D organizam neurônios em três dimensões, largura, altura e profundidade. Fonte: Adaptado (KARPATHY, 2017) de pixeis em cada tamanho do campo receptivo. Por exemplos tamanhos como 5×5 e 7×7 são comuns de se encontrar em CNNs (RAMSUNDAR, 2018). Caso se queira construir mapas de caracterı́sticas menores, deve-se configurar o tamanho do stride. O stride configura como o filtro vai se mover por aplicação da função de filtro (PATTERSON, 2017). Para ter um controle sobre o tamanho espacial da saı́da pode-se usar a técnica de zero- padding. Essa técnica consiste em preencher o volume de entrada com zeros ao redor da borda como visto na Figura 14 (KARPATHY, 2017). Muitas CNNs usam camadas de pooling para diminuir suas entradas (Figura 15). A camada pooling se classifica como uma outra forma de convolução, porém, ao invés de fazer alguma operação matricial é aplicado uma operação de pooling. Comumente o pooling usa as operações e máximo ou média. No caso do max pooling é pego o maior valor dos canais de cores sobre a região analisada. O average pooling calcula a media de todos os valores sobre a região (OSINGA, 2018). 29 Figura 14 – Kernel Convolucional. Fonte: Adaptado (RAMSUNDAR, 2018) Figura 15 – Max Pooling Fonte: Adaptado (RAMSUNDAR, 2018) As camadas de pooling se tornaram menos necessárias com a evolução dos hardwares. O pooling é ainda muito usado como redutor de dimensionalidade, pesquisas recentes tentam evitar o uso do pooling devido a sua inconsistência inerente, pois, não é possı́vel recuperar os dados que originaram a ativação (RAMSUNDAR, 2018). Para computar as classes da saı́da das CNNs, se utiliza uma camada totalmente conectada. Camadas totalmente conectadas tem sua parametrização normal para suas camadas e para seus hiper parâmetros. Essas camadas aplicam transformações na entrada que são funções de ativação na entrada e nos seu parâmetros (PATTERSON, 2017). 2.6 TRANSFERÊNCIA DE APRENDIZADO E DATA AUGMENTATION Hoje em dia com a popularização das RNAs se popularizou também duas técnicas, a Transferência de Aprendizado e Data Augmentation. A transferência de aprendizado é uma 30 técnica muito comum no aprendizado profundo. Ela consiste em utilizar um modelo já treinado e fazer seu uso em novos problemas relacionados, que se quer resolver, sua vantagem é a possibilidade de fazer o treinamento de redes neurais com uma quantidade menor de dados, outra vantagem é a diminuição do tempo de treinamento da rede neural. Com a utilização da transferência de aprendizado, não se tem a necessidade de fazer o ajuste de peso de todas as camadas de uma rede neural. Para a adequação da rede neural para um problema especı́fico se altera os pesos somente da última camada da rede neural (CHANG et al., 2017). Outra técnica essencial para este trabalho é a técnica de data augmentation, treinar uma rede neural muitas vezes pode ser difı́cil pois necessita-se de uma grande quantidade de dados para que se tenha um treinamento adequado, a técnica do data augmentation consiste em gerar novos dados a partir dos já obtidos, por exemplo, em uma base de dados de imagens, para se gerar novas imagens pode-se aplicar transformações, as mais comumente utilizadas são, cortes aleatórios, rotações e inversões aleatórias, mudança de alguns fatores de cores e a adição de ruı́dos (SHIJIE et al., 2017). Uma outra aproximação que pode ser usada para data augmentation é a utilização de Generative Adversarial Networks (GAN) (GOODFELLOW et al., 2014), a ideia por trás dessa arquitetura é a utilização de duas redes adversas generativas, onde G(z) (geradora), gera imagens foto realı́sticas para enganar D(z) (discriminador), ou seja, o trabalho da rede geradora é minimizar a função de custo V (D,G), enquanto o papel da rede discriminadora é de maximizar a função (MIKOŁAJCZYK; GROCHOWSKI, 2018). E já se tem publicações onde os autores utilizam redes derivadas da GAN para data augmentation de imagens de mamografias (WU et al., 2018). 2.7 REDES NEURAIS CONVOLUCIONAIS DENSAS Como visto na seção acima, as CNNs se tornaram dominantes para o reconhecimento de imagens. Porém elas foram introduzidas há quase 20 anos. Com as evoluções recentes nos hardwares, se tornaram possı́veis treinar CNNs cada vez mais profundas. A LeNet5 (LECUN et al., 1998) era composta por 5 camadas, as redes VGG (SIMONYAN; ZISSERMAN, 2014), possuı́am 19 camadas. E foi somente noano de 2017 que se começou a ver Redes Highway (SRIVASTAVA et al., 2015) e ResNets (HE et al., 2015) com mais de 100 camadas (HUANG et al., 2017). 31 Porém com esse incremento massivo das camadas um problema surge, o problema da dissipação do gradiente, ou do inglês vanishing gradient. Quando uma rede neural faz o Backpropagation e calcula o gradiente de perda com os respectivos pesos, isso faz com que os gradientes fiquem cada vez menores quando a rede move seus gradientes para as camadas anteriores. Portanto os neurônios das camadas mais rasas tendem a aprender muito devagar comparado aos neurônios das camadas mais profundas, significando uma demora no aprendizado da rede (WALIA, 2017). Fora publicados muitos artigos o qual falam sobre esse problema ou problemas relacionados. Por exemplo Resnets (HE et al., 2016) e Redes Highways (SRIVASTAVA et al., 2015), desviam sinais de uma camada para a próxima por meio de conexões de identidade. A profundidade estocástica (HUANG et al., 2016) faz o encurtamento da Resnet fazendo a desconexão randômica de algumas camadas durante o treinamento assim permitindo um melhor fluxo do gradiente. Já as redes fractais (LARSSON et al., 2016) fazem repetidamente a combinação várias sequências de camadas paralelas com números diferentes de conversos para obter uma grande profundidade, enquanto ainda assim mantem vários caminhos curtos pela rede. Essas abordagens se diferencias nas topologias da rede, mas elas dividem uma caracterı́stica em comum, todas elas criam nossos caminhos das camadas iniciais para as posteriores. As redes neurais convolucionais densas, também conhecidas como DenseNet são uma das mais novas arquiteturas de redes neurais para a classificação de imagens. A Densenet tem algumas semelhanças com a ResNet. Figura 16 – Uma DenseNet com 5 blocos densos Fonte: (HUANG et al., 2017) Sua arquitetura é baseada em um padrão simples de conexões como as arquiteturas antes citadas (Figura16). Para garantir ao máximo o fluxo de informação entre as camadas, uma 32 conexão direta entre todas as camadas é feita. Para a preservação do feedfoward, nesta nova arquitetura, cada camada recebe entradas adicionais que se originam nas camadas precedentes e passa o próprio mapa de caracterı́sticas. A combinação dos recursos nas DenseNets são feitos por meio de uma concatenação (Figura17), na Equação 9 é mostrado a concatenação com certo formalismo matemático, onde, [x0, . . . ,xl−1] são as múltiplas concatenações dos mapas de caracterı́sticas das camadas 0, . . . , l1 (HUANG et al., 2017). Com isso a camada lth tem l entradas. Isso constitui os mapas de caracterı́sticas de todos os blocos das camadas precedentes, passando seus próprios mapas de recursos para L− l camadas subsequentes, introduzindo L(L+1)2 conexões em uma rede L-camadas, ao em vez de L, como em algumas arquiteturas tradicionais. É deste conceito arquitetural de onde surge o nome DenseNet (HUANG et al., 2017). xl = Hl([x0, . . . ,xl−1]), (9) Por causa desse padrão de conexões esta arquitetura requer menos parâmetros em comparação a redes convolucionais tradicionais, por isso a rede não tem a necessidade de reaprender mapas de caracterı́sticas redundantes. Ter menos parâmetros é uma das grandes vantagens das DenseNets. Com menos parâmetros se tem uma melhora no fluxo da informação e dos gradientes através da rede, com isso ganhando facilidade no treinamento. Cada camada possui acesso ao gradiente da função de perda e o sinal da entrada original, isso faz com que se tenha a possibilidade de treinar arquiteturas mais profundas de redes, outra vantagem é a diminuição do overfiting com quantidades baixas de dados, isso se dá ao fato de que as conexões densas tem um efeito de regulamentação (HUANG et al., 2017). Figura 17 – Um bloco denso simplificado, com duas camadas convolucionais e duas concatenações dos mapas de caracterı́sticas. Fonte: (LEMAIRE, 2017) Na arquitetura da Densenet a uma pequena diferença explicita entre a informação que 33 é adicionada na rede e a informação a qual é preservada. As camadas da DenseNet são muito compactas, aproximadamente doze mapas de caracterı́sticas por camada, a Desenet adiciona um pequeno conjunto ao conhecimento coletivo da rede e o resto dos mapas de carteiristas ela mantem imutáveis - e o classificador final toma a decisão baseado em todos os mapas de caracterı́sticas contidos na rede (HUANG et al., 2017). 2.8 CÂNCER A palavra câncer é originada do grego krakı́nos, que significa caranguejo. Hipócrates, conhecido como pai da medicina a utilizou pela primeira vez. O câncer não é uma doença nova. Já foram observadas múmias egı́pcias que tinham sinais de câncer a mais de 3 mil anos antes de Cristo (INCA, 2011). O câncer são células sui generis2 com uma capacidade de crescimento descontrolada e com habilidade de invasão de outros conjuntos conjunto de células. De acordo com Strayer (2015), a neoplasia, se distingue em dois grupos tumores benignos e malignos, que são os cânceres. O tumor dito benigno é aquele o qual suas caracterı́sticas macro e microscópicas são consideradas inofensivas, isso restringe a sua localização e é passı́vel de remoção cirúrgica. Já a neoplasia maligna tem a capacidade de invasão e destruição de outras estruturas orgânicas, o que pode causar a morte do hospedeiro (KUMAR ABUL K. ABBAS, 2017). Na grande parte das vezes, os tumores malignos tem a capacidade de matar, porém quando um tumor benigno se forma em uma região crı́tica ele pode ser mortal, por exemplo, um tumor na meninge pode matar por exercer muita pressão no cérebro (STRAYER, 2015). De acordo com INCA (2011), as causas de câncer em uma população são dependentes de fatores como conduções sociais, ambientais, polı́ticas e econômicas as quais esta população se encaixa. Existem causas externas e causas internas que ocasionam o câncer. Essas causas podem interagir de várias formas, com isso aumentando a probabilidade de mutações malignas nas células normais. O surgimento dos cânceres depende da intensidade e duração da exposição das células a agentes cancerı́genos. Causas externas são, por exemplo, associadas a irradiação, vı́rus, substâncias quı́micas e alguns fatores comportamentais. Os últimos são responsáveis por 80% a 90% das causas, alguns desses fatores são: 2Expressão em latı́m que significa ”de seu próprio gênero”ou ”de espécie única” 34 • Tabagismo, pode ocasionar câncer de pulmão; • Alcoolismo, quando associado ao fumo pode causar câncer na boca, orofaringe e laringe. E também pode causar câncer no esófago e fı́gado; • Raios UV, pode causar câncer de pele; • Vı́rus, alguns podem ocasionar em cânceres como, leucemia, câncer no colo do útero e câncer de fı́gado. Alguns fatores internos conhecidos para o surgimento de cânceres são hormônios, condições imunológicas e mutações genéticas. Por mais que o fator genético exerça um fator fundamental para o aparecimento dos tumores, são raros a exclusividade dos casos de câncer por fatores apenas hereditários, familiares ou étnicos. Os cânceres de mama, intestino e estômago tem um forte envolvimento familiar (INCA, 2011). De acordo com a Stanford Health Care (2017), não há um único teste que dê o diagnóstico com uma grande acurácia. A avaliação completa do paciente normalmente requer uma história completa com exames fı́sicos juntamente com testes laboratoriais. Os testes de diagnósticos são usados para a confirmação ou a eliminação da presença da enfermidade, para o monitoramento do câncer e também para planejar e fazer a avaliação da eficácia do tratamento. Os procedimentos para se fazer o diagnóstico de câncer podem envolver exames de imagens e exames laboratoriais. Entende-se por exames laboratoriais, biópsias, exames endoscópicos, cirurgiase testes genéticos. 2.8.1 Exames de Imagens De acordo com National Cancer Institute (2015), essa categoria de exames produz imagens de dentro do organismo a ser analisado, com isso ajuda os médicos detectar se o tumor está presente. O Instituto Oncoguia mostra os seguintes itens como exames de imagens: • Tomografia Computadorizada (TC): mostra um corte da seção transversal do corpo, onde consegue-se visualizar órgãos, ossos e tecidos moles com uma clareza maior; • Ressonância Magnética (RM): cria-se imagens transversais do interior do organismo, muito parecido com a TC, porém neste procedimento utiliza-se fortes campos magnéticos para a produção das imagens, a vantagens da RM é que se consegue localizar e diagnosticar alguns tipos de câncer e fazer sua diferenciação; • Exames radiológicos: fornecem uma imagem interna do corpo, identificando ossos e 35 alguns órgãos. Esse exame é excelente para identificar problemas ósseos e tem um preço muito menor que os demais; • Ultrassom: difere-se dos demais por não fazer o uso de radiação ionizante para fazer a formação das imagens. Em vez disso, nesse exame, usa-se ondas sonoras de alta frequência que ao encontrarem os órgãos do corpo produzem ecos, os quais são convertidos em imagens. É muito bom para mostrar doenças nos tecidos moles que não aparecem de forma ideal em radiografias; • Exames de Medicina Nuclear: essa especialidade médica usa uma diversidade de radionuclı́deos incorporados a compostos especı́ficos, avaliando a fisiologia e o metabolismo do corpo, mediante o registro da detecção da radioatividade em curvas de atividade em função do tempo, tanto para fins diagnósticos quando para fins terapêuticos. 2.8.2 Exames Laboratoriais De acordo com o National Cancer Institute (2015), na grande maioria dos casos, para se ter a confirmação da presença do câncer, o médico terá que fazer uma biópsia. Na biópsia, são retiradas amostras de tecidos. Um patologista analisará essas amostras com a ajuda de um microscópio a procura de tumores, na Figura 18 pode ser visto uma imagem a qual foi originada deste processo de análise. As biópsias podem ser coletadas de diversas maneiras: • O médico pode fazer a utilização de uma agulha de biópsias para coletar amostras de tecidos ou fluidos; • Com a utilização de um endoscópio o médico o insere em alguma cavidade natural do corpo, como a boca, e com isso faz a coleta do tecido por meio de uma ferramenta; • Por meio de cirurgia, as cirurgias podem ser excecionais ou incisional. Na cirurgia excecional, o cirurgião faz a remoção completa do tumor, assim como algumas partes de tecidos que o rodeiam. E na cirurgia incisional, o cirurgião remove apenas uma parte do tumor. 36 Figura 18 – Biópsia analisada por um patologista por meio de um microscópio. Fonte: (APESTEGUı́A; PINA, 2009) 2.8.3 Estadiamento O estadiamento é realizado quando o paciente recebe o diagnóstico inicial do câncer, antes de qualquer tratamento ser iniciado. Este procedimento ajuda a descrever a localização do câncer, ou de onde se espalhou e também se está afetando outras partes do organismo (Cancer.Net, 2018). Outra caracterı́stica do estadiamento é poder classificar o câncer. Isso descreve a semelhança entre células cancerosas e células normais (UK Cancer Research, 2017). O Sistema TNM (Tumor, Nódulo, Metástase) de Classificação dos Tumores Malignos é o sistema mais utilizado e preconizado pela União Internacional Contra o Câncer (UICC). Esse sistema baseia-se nas propriedades anatômicas da doença, levando em conta as caracterı́sticas do tumor primário (T), as caracterı́sticas dos linfonodos das cadeias de drenagem linfática do órgão em que o tumor se localiza (N) e a ausência ou presença de metástases à distância (M). Cada um desses parâmetros recebe classificações, geralmente T0 a T4, de N0 a N3 e de M0 a M1 (INCA, 2017). 2.9 CÂNCER DE MAMA O câncer já foi definido como sendo a perda de controle do crescimento celular, o que ocasiona a formação de tumores. O câncer de mama é esse descontrole do crescimento celular na região das mamas (The American Cancer Society, 2017). O câncer de mama é o 37 tumor maligno mais comum entre as mulheres nos paı́ses Europeus, América do Norte, muitos paı́ses da América do Sul, Austrália e Nova Zelândia. É também a principal causa de morte entre as mulheres com idades de 35 a 55 anos nesses paı́ses, aproximadamente uma entre oito mulheres são afetadas por essa doença (DRONKERS et al., 2002). Foi estimado que em 2011 aproximadamente 508 mil mulheres morreram devido ao câncer de mama (World Health Organization, 2016). Depois que a mulher perceber os sintomas ou notar o aparecimento de nódulos em seu seio, o câncer de mama pode ser detectado com um exame por meio de imagens. Quando se tem a suspeita de câncer, se torna necessário fazer uma biópsia para coletar tecido do seio e fazer a análise com a ajuda de um microscópio tanto para determinar sua extensão quanto seu estadiamento. A biopsia da mama é feita com a ajuda de uma agulha especial. A biopsia também pode ser feita com incisões cirúrgicas. Essa seleção do tipo da biópsia é baseada em múltiplos fatores, como a localização e o tamanho da massa (American Cancer Society, 2017). Figura 19 – Processo de coleta do tecido. Fonte: (DRONKERS et al., 2002) Na Figura 19, tem-se o processo de aquisição do tecido o qual se deve analisar: a) a agulha é posicionada perto da lesão; b) o empuxo move a agulha interna para a frente; c) a agulha exterior move-se para frente coletando a amostra; d) amostra é removida após a retirada a agulha (DRONKERS et al., 2002). De acordo com Ferreira et al. (2017), estima-se 59.700 novos casos de câncer de mama 38 para cada ano do biênio 2018-2019 no Brasil, tendo uma estimativa de risco de 56,33 casos a cada 100 mil mulheres. Excluindo-se os tumores de pele não melanoma, o câncer de mama é o mais frequente entre as mulheres das regiões Sul com (73,07/100 mil), sudeste com (69,50/100 mil), Centro-Oeste (51,96/100 mil) e Nordeste (40,36/100 mil). Na região Norte, é o segundo tumor mais incidente (19,21/100 mil). De acordo com o INCA, o prognóstico o câncer de mama depende de alguns fatores, como o estadiamento do tumor e suas caracterı́sticas. Quando a doença for diagnosticada e tratada no inı́cio, há um maior potencial de cura. Quando há evidências de metástase, o tratamento tem como função prolongar a sobrevivência ou melhorar a qualidade de vida do paciente. Os tratamentos para o câncer de mama podem ser divididos em: • Tratamento local: cirurgia, radioterapia; • Tratamento sistêmicos: quimioterapia, hormonoterapia e terapia biológica. Para entender como se prevenir do câncer deve-se se olhar para os fatores de riscos e os fatores protetores. Tudo que aumenta a chance de desenvolver câncer é chamado de fator de risco, e tudo o que pode ser usado para a prevenção é chamado de fator protetor. Alguns fatores de risco podem ser evitados, como fumar. Outros fatores de riscos não podem ser evitados, como fatores genéticos e histórico de câncer de mama na famı́lia, pois há uma associação entre câncer de mama e histórico familiar do paciente. Existem alguns fatores protetores que foram estudados que ajudam na prevenção do câncer, como ter hábitos saudáveis (National Cancer Institute, 2015). 2.10 TRABALHOS CORRELATOS Spanhol et al. (2016) fez a utilização de uma modificação da AlexNet em seu trabalho, o autor também propôs um método baseado na extração de patches da imagem para o treinamento da rede neural convolucional e para uma classificação final uma junção desses patches. Esse método proposto pelo autor permite o uso das imagens histopatológicas do dataset BreakHis com um alta resolução como entrada para e CNN, com isso consegue-se fugir da adaptaçãoda rede neural o que pode levar ao uso de arquiteturas mais computacionalmente custosas, com isso obtendo uma media de 84,8% de acurácia na classificação entre benigno e maligno. Outra abordagem experimental feita pelo autor foi a combinação de CNNs usando simples regras de fusão, as regras de fusão aplicadas pelo autor foram, soma, produto e máximo, 39 com essa abordagem o autor teve a media das classificações 83,25% de acurácia, por mais que a precisão da abordagem fazendo a utilização de regras de fusão tenha tido um decaimento, ela foi bem próxima ao resultado da primeira abordagem utilizada. Em seu trabalho Nawaz et al. (2018) fez o uso de varias arquiteturas de redes neurais convolucionais, incluindo uma DenseNet, fazendo a utilização do dataset BreaskHis. A aproximação experimental do autor teve como objetivo fazer a classificação multi classe dos tumores de mama. Tendo como melhor classificação a DenseNet com 95,4% de acurácia em nı́vel de imagens, o autor modificou-a para fazer a extração extrair recursos globais das imagens histopatológicas e fazer o seu uso no processo de treinamento. Um trabalho interessante na área da segmentação de imagens aplicada em imagens de mamografia é o proposto por Li et al. (2019). Em seu trabalho é proposto um método automático baseado em aprendizado profundo para a segmentação de massa mamaria, o qual faz a combinação de uma U-Net densamente conectada com portões de atenção. A rede contem um encoder e um decoder. O encoder da rede é uma rede neural densamente conectada e o decoder é um decoder de uma U-Net. A rede neural proposta pelo autor obteve uma acurácia de 86% na tarefa de segmentação. O trabalho citado é interessante, pois como trabalho futuro pretende- se fazer a utilização de uma rede segmentadora para fazer a segmentação e classificação das imagens histológicas. 40 3 MATERIAIS E MÉTODOS Depois de toda a conceituação dos elementos chave para o entendimento deste trabalho, agora serão abordados os recursos e caminhos que serão utilizados para a implementação da proposta. Este capı́tulo abordará a linguagem de programação, bibliotecas, aspectos do hardware, a base de dados e o método que se empregou para a concretização do trabalho. 3.1 LINGUAGEM DE PROGRAMAÇÃO E BIBLIOTECAS Para implementação deste trabalho, foi utilizada a linguagem de programação Python 1. Python é uma linguagem de programação poderosa, rápida, portável e com uma sintaxe que facilita seu aprendizado. Por ser uma linguagem de programação fácil, muitas universidades já ensinam Python no primeiro ano de graduação de ciência da computação (GUO, 2014). A escolha desta linguagem, para o desenvolvimento deste projeto se dá aos fatos citados acima e juntamente por a linguagem Python possuir muitas bibliotecas de inteligência artificial, as quais serão citadas a seguir. Uma das principais bibliotecas difundidas por usuários Python e principalmente na área de inteligência artificial que se utilizou nesta publicação é a biblioteca Numpy 2. A biblioteca Numpy tem como sua principal funcionalidade estender funções de cálculos de vetores e matrizes multidimensionais na linguagem Python. Tendo em vista que uma das principais estruturas matemáticas utilizadas no aprendizado de máquina e no aprendizado profundo são tensores, essa biblioteca é de grande importância para os estudos de tais áreas. Sua implementação é feita na linguagem C, fazendo com que seja uma das bibliotecas mais otimizadas do ecossistema Python. 1www.python.org 2http://www.numpy.org/ 41 Para o desenvolvimento da rede neural, utilizou-se o TensorFlow 3, que é definida como uma biblioteca de código aberto de alto desempenho para computação numérica. Umas das vantagens do uso do Tensorflow é seu funcionamento em diversas plataformas como CPUs, GPUs e TPUs. Sendo desenvolvida pelo Google Brain, Tensowflow ganhou popularidade rapidamente por ser simples de se utilizar (ABADI et al., 2015). Outra biblioteca para computação numérica que merece menção e a Pytorch 4, ela é a versão em Python da biblioteca Torch 5 que originalmente era escrita na linguagem de programação Lua. A Pytorch é primariamente desenvolvida pelo grupo de inteligência artificial do Facebook. Sendo uma biblioteca de código aberto, para aprendizado profundo, ela provê uma abordagem perfeita de prototipagem da pesquisa para a implementação em produção. Uma grande vantagem do Pytorch é a possibilidade de construir seu modelo dinamicamente, isso é ótimo para quando se tem entradas de tamanhos variados. Para a visualização das imagens e seus estudos, a biblioteca Matplotlib 6 foi escolhida. A Matplotlib é uma biblioteca para a linguagem Python que permite fazer a plotagem 2D, tal biblioteca contém uma grande variedade de gráficos, as figuras da Seção 2.4 foram produzidas utilizando esta biblioteca. Para a codificação do trabalho escolheu-se a aplicação web Jupyter Notebook 7. Ela é definida como uma aplicação web de código aberto que permite criar e compartilhar documentos que contém código executável, equações, visualizações e textos com narrativa. Seu uso é muito difundido na área da ciência de dados, e as aplicações incluem, limpeza e transformações de dados, simulações numéricas, modelagem estatı́stica, visualização de dados e aprendizado de máquina (MCKINNEY, 2018; VANDERPLAS, 2017; GÉRON, 2017). A instalação dessas ferramentas foi feita utilizando-se o software Anaconda 8. O anaconda é uma distribuição de código aberto da linguagem Python e R. Essa distribuição é voltada para a ciência de dados, vindo com grande parte das bibliotecas para tal função e facilita o gerenciamento dos pacotes centralizando a instalação das mesmas. Existem outras bibliotecas para a linguagem Python com o objetivo de facilitar o estudo na área de inteligência artificial, porém, em um primeiro estudo realizado foram levantadas a utilização das bibliotecas acima citadas pois, além de terem grande aplicação em tais estudos, também possuem boa facilidade de uso. 3https://www.tensorflow.org/ 4https://pytorch.org/ 5http://torch.ch/ 6https://matplotlib.org 7http://jupyter.org/ 8https://www.anaconda.com/ 42 3.2 HARDWARE UTILIZADO O treinamento de redes neurais é totalmente dependente de hardware. Por isso, se têm a necessidade de uma máquina relativamente moderna e com uma grande capacidade computacional. Para o desenvolvimento deste trabalho, a máquina utilizada para concretizar este trabalho tem as seguintes especificações técnicas: • Processador: 2 vCPU’s • Memoria: 8 GB • 5 TPU’s com 180 teraflops de processamento e 64 GB de memória de alta largura de banda O hardware utilizado para este trabalho foi concedido pela Google por meio do programa Tensorflow Research Cloud 9. O TensorFlow Research Cloud é uma nuvem de máquinas composta por 1.000 TPUs sendo possı́vel o uso gratuito de até 105 TPUs preemptivas ou 5 TPUs exclusivas por um perı́odo de 30 dias. 3.3 BASE DE DADOS A base de dados a qual utilizou-se neste trabalho foi a BreaKHis, disponibilizada por Spanhol (2016), contendo imagens de biópsias das mamas e está disponı́vel para download 10. A BreaKHis é dividida em dois grupos: tumores benignos e tumores malignos. Os tecidos que compõe a base de imagens foram coletados de 82 pacientes usando diferentes fatores de magnitude (Tabela 1). Os tumores benignos e malignos contidos na base, dividem-se em 4 tipos cada (Tabela 2) essa distinção é feita pela aparência das células vistas sob um microscópio, a Tabela 3 apresenta a distribuição de imagens dos tumores benignos e a Tabela 4 apresenta a distribuição das imagens do tumores malignos. A base de dados composta por amostras que foram geradas de laminas de procedimentos de biópsias dos seios, essas amostras foram preparadaspara estudos histológicos e classificadas por um patologista, como dito anteriormente os fatores de magnitude são 9https://www.tensorflow.org/tfrc 10http://web.inf.ufpr.br/vri/databases/breast-cancer-histopathological-database-breakhis/ 43 Tabela 1 – Distribuição das imagens seus grupos com suas magnitudes. Magnitude Benigno Maligno Total 40x 652 1,370 1,995 100x 644 1,437 2,081 200x 623 1,390 2,013 400x 588 1,232 1,820 Total 2,480 5,429 7,909 # Laminas 24 58 82 Fonte: (SPANHOL, 2018) Tabela 2 – Tipos de tumores contidos no BreaKHis. Benigno Maligno Acrônimo Denominação Acrônimo Denominação A Adenose DC Carcinoma Ductal F Fibroadenoma LC Carcinoma Lobular PT Tumor Phyllodes MC Carcinoma Mucinoso TA Adenoma Tubular PC Carcinoma Papilar Fonte: (SPANHOL, 2018) variados, as imagens usam o esquema de cores RGB e estão no formato PNG com um total de 756 X 582 pixeis. Na base atualmente há 7,909 mil imagens de biopsia. Na Figura 20 tem-se um modelo de distribuição dos tumores contidos base, nas colunas se tem as magnitudes das imagens (40X, 100X, 200X e 400X) e nas linhas se tem a separação por classe e tipo, as quatro primeiras linhas são compotas por tumores benignos do tipo A (Adenose), F (Fibroadenoma) , PT (Tumor Phyllodes) e TA (Adenoma Tubular) e nas quatro últimas linhas estão contidos tumores da classe maligno do tipo DC (Carcinoma Ductal), LC (Carcinoma Lobular), MC (Carcinoma Mucinoso) e PC (Carcinoma Papilar). Tabela 3 – Distribuição das imagens de tumores benignos. Magnitude A F PT TA Total 40x 114 253 109 149 598 100x 113 260 121 150 614 200x 111 264 108 140 594 400x 106 237 115 130 562 Total 444 1014 453 569 2368 # Pacientes 4 10 3 7 24 Fonte: (SPANHOL, 2016) 44 Figura 20 – Imagem dos tumores com suas ampliações. Fonte: Autoria Propria. 45 Tabela 4 – Distribuição das imagens de tumores malignos. Magnitude DC LC MC PC Total 40x 864 156 205 145 1370 100x 903 170 222 142 1437 200x 896 163 196 135 1390 400x 788 137 169 138 1232 Total 3451 626 792 560 5429 # Pacientes 38 5 9 6 58 Fonte: (SPANHOL, 2016) 3.4 APROXIMAÇÃO EXPERIMENTAL Uma das primeiras etapas para a realização desta obra é a obtenção das bases de dados, e a escolha do modelo pré-treinado para a utilização no desenvolvimento, treinamento da rede neural, em seguida foi feito o pré-processamento dos dados, ajuste da última camada do modelo pré-treinado para a resolução para o problema proposto, treinamento da rede neural e validação dos resultados, caso não seja validado os resultados, o treinamento se repetirá com os parâmetros atualizados e caso seja validado os resultados serão divulgados, o fluxograma da aproximação experimental pode ser vista na Figura 23. O modelo escolhido foi a DenseNet201 pois obteve uma taxa de erro de 21,46 no top- 1 e 5.54 no top-5 (HUANG et al., 2017). A primeira etapa foi fazer o redimensionamento das imagens, a dimensão utilizada foi 224 X 224, também foi feito um aumento de dados para se obter uma maior quantidade de imagens, as técnicas aplicadas foram rotações para 90◦, 180◦ e 270◦ e também foi aplicado um filtro de blur (Figura 21). Foram propostos 4 experimentos para a avaliação deste trabalho, os experimentos propostos podem ser vistos abaixo: • Experimento 1: Classificação da classe do câncer separado pela ampliação da imagem extraı́da das lâminas; • Experimento 2: Classificação do tipo do câncer separado pela ampliação da imagem extraı́da das lâminas; • Experimento 3: Classificação da classe e tipo do câncer sem a separação por ampliação da imagem extraı́da das lâminas; • Experimento 4: Classificação do tipo do tumor sem a distinguir pela ampliação da imagem extraı́da das lâminas. Os quatro experimentos propostos vem da escolha do método de ataque que foi 46 Figura 21 – Transformações aplicadas, a) Rotação em 90◦, b) Rotação em 180◦ , Rotação em 270◦, d) Filtro de blur. Fonte: Autoria Própria. utilizado para o problema hierárquico, esse problema foi notado quando se analisou a base de dados contendo as imagens de tumores. Para este trabalho foi escolhido o local classifier per level para abordar o problema da hierarquia, esse método, consiste em treinar um classificador multiclasse por nı́vel da hierarquia, considerando este trabalho terı́amos dois classificadores, um para classificar a classe do tumor e outro para classificar a subclasse do tumor. A figura 22 ilustra esse método., pois com essa abordagem tem-se uma melhor classificação dos tumores e uma melhor representação de como uma analise é feita por um patologista. Outras duas técnicas também empregadas para que este trabalho pudesse ser realizado e tivesse um tempo de desenvolvimento adequado e minimização de custos referentes a uma possı́vel aquisição de hardwares, foi levantado a necessidade de utilização da técnica de transferência de aprendizado (transfer learning). Para o desenvolvimento deste trabalho foi utilizado um modelo pré treinado do repositório encontrado no Github da DenseNet 11 onde o próprio autor do artigo ((HUANG et al., 2017)) das DenseNets disponibiliza. Para os Experimentos 1 e 2 foram feitas as classificações das imagens histopatológicas com a distinção pela ampliação, para esses dois experimentos separou-se um total de 4.000 imagens fazendo sua separação em treino (80%) e validação/teste (20%) ficando com um 11https://github.com/liuzhuang13/DenseNet 47 Figura 22 – aproximação local classifier per level Fonte: Autoria Própria. total de 3.200 imagens para treino e 400 imagens para teste e 400 para validação, para estes experimentos usou-se 30 épocas na fase de treino. Para os Experimentos 3 e 4 foram feitas as mesmas classificações dos dois experimentos anteriores porem sem a distinção de ampliação, com a tentativa de verificar se a rede neural atingiria uma mesma performance sem a magnitude das imagens, ou seja, as ampliações de 40X, 100X, 200X e 400X foram tratadas como sendo do mesmo grupo, para estes dois experimentos utilizou-se um total de 9.600 imagens, sendo 7.680 para treino, 960 para validação e 960 para teste, para estes experimentos decidiu-se aumentar o número de épocas para 60, pois assim a rede teria mais tempos para a generalização. Para os experimentos 1 e 3 utilizou-se binary crossentropy como função de perda enquanto que para os experimentos 2 e 4 se utilizou categorical crossentropy como função perda, como otimizador, para todos os experimentos se utilizou o Adam proposto em (KINGMA; BA, 2015). Outros parâmetros utilizados no treinamento que não se alterou entre os experimentos foram, a taxa de aprendizado que foi de 10−5 com um tamanho de lote de 32, o total de passos por época pode ser definido pela Equação 10. e para todos os experimentos se utilizou a técnica do data augmentation e transferência de aprendizado. Iters = número de amostras tamanho do lote (10) O método de avaliação utilizado foi acurácia (Equação 11) e erro absoluto médio (Equação 12). A acurácia basicamente é a taxa que um modelo classificou corretamente, formalmente a acurácia pode ser definida como: 48 acurácia = TruePositive(%)+TrueNegative(%) 2 (11) O Erro Absoluto Médio (MAE) mede a magnitude média dos erros em um conjunto de previsões, sem considerar sua direção. É a média da amostra de teste das diferenças absolutas entre a previsão e a observação real, em que todas as diferenças individuais têm peso igual. O MAE tem uma interpretação clara como a diferença absoluta média entre yi e ŷ. MAE = 1 n n ∑ i=1 |yi− ŷi| (12) O fluxograma da aproximação experimental pode ser visto na Figura 23. A duas primeiras etapas foram a escolha do modelo pré-treinado e a obtenção da base de dados, logo em seguida entra a fase de pré-processamento dos dados, com os dados pré-processamento foi dado a fase de treinamento da rede neural,
Compartilhar