Page 12 - Revista_60.pub
P. 12
A PROGRAMAR
ATRAVÉS DOS OLHOS DE UMA REDE NEURONAL
Neste artigo, vou apresentar um dos modelos de canais de cor: Red, Green, Blue), é separada nos 3 canais
Deep Learning mais utilizados para o reconhecimento e clas- de cor, sendo cada um destes varrido por filtros (feature de-
sificação de imagens: a Convolution Neural Network (CNN); tectors), de determinada dimensão (por exemplo 3x3xRGB),
cujo objetivo é aprender a reconhecer objetos, através de um para identificar elementos (features) específicos.
processo de treino de visualização sucessiva de imagens pré Para se perceber melhor o conceito, podemos usar
classificadas.
um software de edição de imagem como o GIMP, que dispõe
As aplicações de um algoritmo capaz de classificar de uma série de filtros pré definidos. No exemplo seguinte, à
imagens, são fáceis de encontrar, desde o reconhecimento mesma imagem vamos aplicar: gaussian blur, edge detect,
de escrita, condução autónoma, diagnóstico médico por ima- outline, relief, emboss.
gem, etc.
Assim, uma CNN é uma Artificial Neural Network
(ANN ou rede neuronal), tal como apresentada no artigo da
edição anterior, cuja leitura é recomendada para uma melhor
compreensão do presente artigo: Deep Learning passo a
passo; onde os dados de entrada da rede, em vez de serem Concretizando aplicação de um filtro para uma ima-
variáveis independentes são antes uma imagem pré proces- gem de 5x5 à esquerda (um smile), vamos aplicar o filtro de
sada. 3x3 da direita (que identificar a zona dos olhos e nariz).
Como exemplo, vamos utilizar um dataset de imagens
peças de fruta, onde o desafio é criar um modelo que apren-
da a classificar corretamente imagens de 6 tipos diferentes
de fruta.
Como algoritmo de Supervised Learning, este modelo
passa por um processo de treino onde analisa sucessiva-
mente sequências de imagens, para aprender os padrões
comuns a cada objeto, e dessa forma ser capaz de os classi-
ficar corretamente. Durante o treino, a rede é otimizada, O filtro é aplicado à imagem através de um varrimento
ajustando os pesos, até convergir para um erro mínimo, mo- que utiliza um deslizamento, neste caso de 1 pixel (stride de
mento em que o modelo converge na aprendizagem.
1), multiplicando pixel a pixel os valores da imagem e do filtro
De uma forma análoga, quando ensinamos uma cri- e somando os valores resultantes.
ança sobre o que é uma maçã, mostramos diferentes exem-
plos e dizemos: “isto é uma maçã, isto é uma maçã, isto é
uma maçã, isto é uma maçã...”, até esta aprender as formas,
cores, texturas, das maçãs e estar pronta a reconhece-las
sem auxilio.
O algoritmo funciona em quatro passos: Convolution
+ ReLU (uma ou várias iterações em sequência), pooling,
flatten, full connection (entrada na rede neuronal).
Convolution + ReLU
Uma imagem, constituída por um vetor de valores
(pixeis) e definida pelas dimensões: largura, altura, RGB (3
12