Buscar

Redes Neurais para Detecção de Câncer de Mama

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,

Continue navegando

Outros materiais