Escolar Documentos
Profissional Documentos
Cultura Documentos
NITERÓI
2018
MAURÍCIO MARQUES SOARES FILHO
ORIENTADOR:
CLEDSON OLIVEIRA DE SOUSA
NITERÓI
2018
Ficha catalográfica automática - SDC/BEE
Gerada com informações fornecidas pelo autor
CDD -
Banca Examinadora:
_________________________________________
Prof.: Cledson Oliveira de Sousa, MSc. – Orientador
UFF – Universidade Federal Fluminense
_________________________________________
Prof. Leandro Soares de Sousa, DSc. – Avaliador
UFF – Universidade Federal Fluminense
A Gisele Vieira Rocha, que me ajudou
uma última vez.
AGRADECIMENTOS
IA Inteligência Artificial
RC Resistor-Capacitor
RESUMO ................................................................................................................. 8
LISTA DE ILUSTRAÇÕES .............................................................................. 9
LISTA DE ABREVIATURAS E SIGLAS.......................................................... 10
1 Introdução .................................................................................................... 13
1.1 Escopo ................................................................................................... 15
1.2 Justificativa e Objetivos .................................................................... 16
1.3 Metodologia ........................................................................................... 16
2 Modelos Conceituais das RNA ............................................................... 18
2.1 O Que São Redes Neurais Artificiais – RNAs ............................... 19
2.2 Insights Biológicos ................................................................................. 21
2.3 Modelos de Neurônio ......................................................................... 22
2.3.1 Neurônios Artificiais .................................................................... 24
2.3.2 Função de Ativação Sigmoide................................................... 25
2.3.3 Realimentação .................................................................................. 26
2.4 Principais Arquiteturas de RNAs ..................................................... 27
2.4.1 Redes Alimentadas Adiante com Camada Única ................. 27
2.4.2 Redes Alimentadas Adiante com Múltiplas Camadas ........ 27
2.4.3 Redes Recorrentes ....................................................................... 28
3 Aprendizagem em RNAs .......................................................................... 30
3.1 Aprendizagem Supervisionada ........................................................ 31
3.2 Aprendizagem Não-Supervisionada................................................ 33
3.3 Aprendizado por Reforço ................................................................... 34
4 Perceptrons de Camada Única ............................................................... 38
4.1 O Perceptron ......................................................................................... 39
4.1.1 Algoritmo de Aprendizagem ...................................................... 40
4.1.2 Exemplo de Implementação do Algoritmo de Treinamento
42
5 Perceptrons Multicamadas ...................................................................... 44
5.1 Arquitetura ............................................................................................. 46
5.1.1 Bias and Variance Dilemma ....................................................... 48
5.2 Treinamento de Perceptrons Multicamadas ................................. 50
5.2.2 Problemas Associados ao Algoritmo ...................................... 52
6 Redes Neurais Convolucionais .............................................................. 54
6.1 Cérebro, ConvNets e Deep Learning ................................................. 56
6.2 A Operação de Convolução ................................................................. 62
6.2.1 Exemplo Unidimensional de Convolução ................................. 65
6.3 Arquitetura das ConvNets .................................................................... 67
6.3.1 Camada Convolucional .................................................................. 68
6.3.2 Parâmetros Compartilhados e Convolução.............................. 70
6.3.3 Pooling................................................................................................ 71
6.3.4 Camadas Não-Lineares .................................................................. 72
6.3.5 Camadas de Normalização ............................................................ 73
6.3.6 Camadas Totalmente Conectadas .............................................. 74
6.3.7 Exemplos de Arquitetura ............................................................... 74
7 Conclusão .................................................................................................... 77
7.1 Trabalhos Futuros................................................................................... 79
13
1 Introdução
1.1 Escopo
1.3 Metodologia
1
Conexionismo é um conjunto de técnicas de diversos campos que modelam fenômenos
mentais e de comportamento.
20
mas não se sabe ao certo como as funções cerebrais são realizadas. Contudo,
a estrutura fisiológica básica destas redes e neurônios naturais é conhecida, e
é nela que se baseiam as RNAs. O cérebro humano tem em torno de 1011
neurônios (Figura 1), e cada um destes processa sinais da comunicação com
milhares de outros continuamente e em paralelo – a estrutura individual das
unidades, a topologia de suas conexões e o seu comportamento em conjunto
são a base para o projeto das RNAs.
(fonte: http://www.psiqweb.med.br/site/?area=NO/LerNoticia&idNoticia=290).
𝑦 = 𝜑(𝑢 + 𝑏 ) (2.2)
2
Na geometria, uma transformação afim, um mapa afim ou uma afinidade é uma função entre
espaços afins que preserva pontos, linhas retas e planos. Além disso, conjuntos de linhas
paralelas permanecem paralelas após uma transformação afim. São exemplos a translação,
escala, rotação, reflexão e o cisalhamento.
24
𝑦 = 𝜑(𝑣 ) (2.5)
de uma RNA em particular. Será descrita aqui a Função Sigmoide, uma função
não-linear útil para aplicações em redes neurais artificiais multicamada.
Função Sigmoide: essa classe de funções de ativação é bastante
comum no projeto de RNAs, conforme ver-se-á nos próximos capítulos: sua
característica é ser crescente em todo seu domínio e possuir segmentos de
comportamento não-linear e aproximadamente linear. Pode-se exemplificar a
classe de funções sigmoides pela chamada função logística, definida como:
𝜑(𝑣) = ( )
(2.7)
2.3.3 Realimentação
3
Uma rede neural recorrente pertence a uma classe de RNAs que inclui conexões ponderadas
entre camadas anteriores e posteriores (em comparação com as redes de feed forward
tradicionais, onde conecta alimentação apenas para camadas subsequentes). O fato desse tipo
de rede incluir loops implica que elas podem armazenar informações ao processar novas
entradas. Essa memória os torna ideais para tarefas de processamento onde as entradas
anteriores devem ser consideradas (como dados da série temporal). (fonte:
https://imasters.com.br/data/um-mergulho-profundo-nas-redes-neurais-recorrentes, visitado em
10/12/2018)
27
3 Aprendizagem em RNAs
A linha vermelha determina a separação entre duas classes de dados (círculos claros e
círculos escuros) que foram submetidos à classificação por uma rede neural, em um espaço de
fase bidimensional. Em (a) temos um problema linearmente separável (aqui o separador é
representado por uma reta; em um espaço 3D seria um plano, e quando houver mais
dimensões, um hiperplano), e em (b), um problema não-linearmente separável.
(Fonte: https://stackabuse.com/introduction-to-neural-networks-with-scikit-learn/).
4.1 O Perceptron
4
Percebe-se de pronto que o processo de treinamento age também sobre os thresholds associados a
cada neurônio, dada a inclusão de 𝜃 no vetor 𝑤⃗.
42
5 Perceptrons Multicamadas
5.1 Arquitetura
5
Com muitas unidades de processamento disponíveis, a rede tem maior tendência a memorizar padrões
específicos, ao invés de determinar características que vão permitir a generalização de classes sobre um
conjunto de dados.
49
𝑛𝑒𝑡 = ∑ 𝑥 𝑤 (5.3)
onde a constante 𝑛 representa o número de conexões de entrada do nodo 𝑗, e
𝑤 o peso da conexão entre a entrada 𝑥 e o nodo 𝑗.
6
A derivada da função sigmoide pode ser posta na forma 𝑜 (1 − 𝑜 ), onde 𝑜 é a saída do
neurônio. Quando 𝑜 se aproxima de 0.0 ou 1.0, a derivada da função sigmoide se aproxima de
zero.
54
Neste modelo, as imagens são formadas pela luz incidente no olho e que
estimula a retina. Os neurônios presentes na retina executam algum pré-
processamento sobre a entrada, mas não alteram substantivamente sua
apresentação. A imagem, traduzida em excitações nervosas pela retina, passa
através do nervo ótico e de uma região chamada núcleo geniculado lateral
(LGN) – para as pretensões deste trabalho, o papel dessas duas regiões
anatômicas é simplesmente guiar o sinal do olho ao V1, localizado este na
parte de trás da cabeça.
Conforme (Goodfellow, et al., 2016), uma rede neural artificial
convolutiva deve ser projetada para mimetizar três propriedades de V1:
1. V1 é organizada em um mapa espacial. Isso quer dizer que
possui uma estrutura bidimensional espelhando a estrutura da
imagem na retina. Por exemplo, luz que chega à metade inferior
da retina afeta somente a metade correspondente de V1. Redes
convolucionais capturam essa propriedade tendo suas
características definidas em termos de mapas bidimensionais
(matrizes, resultados das operações ou sobre a matriz de entrada
– a “imagem” – ou sobre as saídas das camadas anteriores).
2. V1 contém muitas células simples. A atividade de uma célula
simples pode até certo ponto ser caracterizada por uma função
linear da imagem em um campo receptivo pequeno,
espacialmente localizado. As unidades detectoras da rede
convolucional são desenhadas para emular essas propriedades
de células simples.
3. V1 também contém muitas células complexas. Essas células
respondem por características que são similares àquelas
detectadas por células simples, mas células complexas são
invariantes a pequenas translações na posição da característica.
Isso inspira as unidades de pooling (subamostragem: quando um
processo age sobre um conjunto inicial de forma a produzir outro
conjunto de dimensão – número de entradas – inferior) da rede
convolucional. Células complexas são também invariantes a
algumas mudanças na iluminação que não põem ser capturadas
simplesmente pelo pooling sobre localizações espaciais. Essas
58
7
A ideia de “célula avó” é uma maneira lúdica de descrever a capacidade de um neurônio de
disparar diante uma excitação simples específica, independente das transformações de
entrada que venha a ser submetida: metaforicamente, o neurônio dispararia quando se visse a
imagem da avó, mesmo estando ela de perfil, estando do lado direito ou esquerdo da imagem,
fosse um retrato da face ou uma captura de corpo inteiro, estando ela sob diferentes graus de
iluminação, etc.
59
8
Para uma ConvNet que trabalha com uma imagem que possua características de cor e semelhantes (ou
entradas que possam ser reduzidas a este formato), dizemos que a rede tem como entrada um volume
[𝑀𝑥𝑁𝑥𝐻] que é uma matriz tridimensional: a fatia do volume [𝑀𝑥𝑁] (índices nas coordenadas espaciais
de cada canal) é uma matriz bidimensional 𝑀𝑥𝑁 que carrega as informações relativas a um canal, e 𝐻 é
a profundidade (número total de canais).
63
𝐴 0 1 2 3 2 1 0
𝐵 -1 3 1
𝐴∗𝐵 1
𝐴 0 1 2 3 2 1 0
𝐵 -1 3 1
𝐴∗𝐵 1 5 8 9 4 1
do volume de entrada.
Em geral, fixando o preenchimento em zero em 𝑃 = (𝐹 − 1)/2
quando o passo for 𝑆 = 1 garante-se que o volume de entrada e o de saída
possuam o mesmo tamanho espacial.
Deve-se perceber que arranjos espaciais dos hiperparâmetros
apresentam constrições mútuas: a equação do número de neurônios da
camada de saída deve resultar em um número inteiro. De outra forma, o
conjunto de hiperparâmetros é considerado inválido: o uso de preenchimento
com zero pode ser útil neste caso.
70
𝑊 = + 1;
𝐻 = + 1;
𝐷 =𝐾
Com o compartilhamento de parâmetros são introduzidos 𝐹 ∙ 𝐹 ∙ 𝐷
pesos por filtro, perfazendo um total de (𝐹 ∙ 𝐹 ∙ 𝐷 ) ∙ 𝐾 pesos e 𝐾
bias.
No volume de saída, a i-ésima fatia de profundidade (de
dimensões 𝑊 𝑥𝐻 ) é o resultado de se perfazer uma convolução
entre o volume de entrada e o i-ésimo filtro com passo 𝑆, e então
deslocada pelo i-ésimo bias.
Conforme (Desjardins, et al., 2008), trazido por (de Oliveira, 2017), o
compartilhamento de pesos em um mapa de características gradualmente
reduz o número de parâmetros livres, tornando o overfitting menos provável,
dado que a invariância de posições da imagem – reforço baseado no
conhecimento prévio das imagens naturais – age como mecanismo de
regularização que facilita o treinamento da rede.
Conforme (Desjardins, et al., 2008), trazido por (de Oliveira, 2017), o
compartilhamento de pesos em um mapa de características gradualmente
reduz o número de parâmetros livres, tornando o overfitting menos provável,
dado que a invariância de posições da imagem – reforço baseado no
conhecimento prévio das imagens naturais – age como mecanismo de
regularização que facilita o treinamento da rede.
6.3.3 Pooling
𝐷 =𝐷 .
Pooling não introduz informação. Também não é comum aplicar o
preenchimento com zeros no volume resultante.
Ao lado do Max Pooling exemplificado aqui – mais relevante na
implementação de ConvNets já que dá origem a uma subamostragem não-
linear (Samer, et al., 2015) – há possibilidade de designar outras funções
matemáticas a serem executadas sobre o volume de entrada na camada de
pooling: médias (pooling médio), normas matriciais, etc.
7 Conclusão
Referências Bibliográficas