Buscar

Deep Learning - Luis Ricardo - Qualificacao

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 63 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 63 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 63 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Deep Learning: Explorando os Principais
Conceitos em Redes Convolutivas e Redes
Recorrentes
Msc. Luis Ricardo Arantes Filho
Doutorando em Computação Aplicada – INPE
Orientadores:
Dr. Lamartine N. F. Guimarães e Dr. Reinaldo Roberto Rosa
Roteiro
• Aprendizado de Máquina e Redes Neurais
• Aprofundamento das Redes Neurais Artificiais
• Formalismos: Generalização, Overfitting, Underfitting e The Curse of
Dimensionality.
• Deep Learning e Redes Neurais Profundas
• Redes Neurais Convolutivas
• Redes Neurais Recorrentes
• Ferramenta Keras (Python)
• Discussão
• Conclusão
Inteligência 
Artificial
O Teste de 
Turing
A Definição de 
Inteligência
Can Machines 
Think?
Ex Machina
• Modificação do Teste de 
Turing.
• Verifica diversos atributos do 
objeto de estudo.
• Neste ponto é definido o 
objetivo da inteligência de 
máquinas.
• Inteligência Artificial
• Visão utópica (Atualmente).
• Estamos longe deste ponto?
• Cabe ao tipo de definição de 
Inteligência.
Aprendizado 
de Máquina
• Inteligência de máquinas é a habilidade de 
interpretar dados de entrada, executar tarefas e 
tomar decisões com acurácia e rapidez.
• Classificação de objetos, identificação de 
padrões, predição de sequências em dados, 
obtenção de relações entre dados.
Aprendizado 
de Máquina
• "Processos computacionais desenvolvidos com 
o propósito de realizar tarefas de tal forma a 
simular a habilidade humana para obter a 
melhor solução para um determinado 
problema."
Aprendizado 
de Máquina
• As principais técnicas ML são descritas como o 
aprendizado de uma função alvo f que mapeia 
os dados de entrada (x) para suas respectivas 
saídas (classes) (y) de forma que y = f(x).
Técnicas de 
Estatística
Aprendizado 
de Máquina
Inteligência 
Computacional
Sensibilidade ao 
conhecimento do 
especialista e aos 
dados produzidos
• Representações diferentes de dados para o
mesmo problema podem acarretar em
diferentes respostas mesmo que sejam
utilizados os mesmos algoritmos de
Aprendizado de Máquina.
• Existe a divisão destes dados quando um
algoritmo de Aprendizado de Máquina é
aplicado.
Etapas do 
Aprendizado 
de Máquina
EDA (Exploratory Data Analysis)
Exploratory Data Analysis – Data Science
Tipos de 
Aprendizado 
de Máquina
No aprendizado supervisionado, um especialista 
disponibiliza um rótulo, uma categoria, uma 
classe ou um custo para cada padrão no conjunto 
de treinamento, busca-se reduzir a soma dos 
custos para estes padrões.
O aprendizado não-supervisionado pode ser 
definido pela busca de relações e similaridades 
entre dados de maneira não orientada, ou seja, 
sem a interferência de um especialista.
Aprendizado em Camadas
• Uma arquitetura de camadas, no sentido
computacional, pode ser definida como o
processo de computação envolvido na
produção de uma saída através de dados de
entrada.
• Uma propriedade particular dos grafos é a
profundidade, ou seja, o tamanho do maior
caminho que uma entrada percorre até chegar
no valor de saída.
Redes Neurais Artificiais
• Uma rede neural é 
baseada especificamente 
no neurônio biológico 
que, de maneira 
simplificada, pode ser 
definido em três 
componentes principais: 
dendritos, axônios e 
soma (núcleo).
Redes Neurais Artificiais (RNAs)
Redes Perceptron
• Desenvolvida por Rosemblat nos
anos de 1960.
• Problemas Linearmente Separáveis
e Não-Linearmente Separáveis.
• O Problema do XOR - Minsky e 
Papert (1969).
• Retardamento das pesquisas em
Inteligência Artificial.
Aprofundamento das RNAs
• Redes Neurais tradicionais 
possuem sua profundidade 
definida como o número de 
camadas (neurônios agrupados 
como unidades intermediárias).
• Solucionar o problema da não-
linearidade.
• Redes Perceptron de Múltiplas 
Camadas – MultiLayer
Perceptron (MLP).
Formalismos
• Princípio da Generalização Local
• Overfitting, Underfitting, "Goodfitting" -
• The Curse of Dimensionality
Deep Learning
• Agregado a necessidade e complexidade do 
processamento de diversos tipos de dados, foi 
desenvolvido o conceito de Deep Learning.
• As técnicas e fundamentos de Deep Learning são 
voltados a redes neurais artificiais (são a nova 
geração de redes neurais), com o objetivo de 
explorar e amplificar o poder de análise não linear 
de dados utilizando uma grande quantidade de 
camadas intermediárias.
• A definição de Deep Learning basicamente é 
colocada como uma classe de técnicas em ML e CI 
que exploram o aprendizado e análise não linear em 
muitas camadas de forma hierárquica de maneira 
Supervisionada, Não-Supervisionada e Hibrida.
Definição
Métodos baseados em Inteligência Computacional e Aprendizado de 
Máquina, que possuem como característica principal a utilização do 
processamento não-linear de informações em muitos níveis e 
camadas. Estes níveis de processamento são responsáveis por extrair 
e tratar informações dos dados de entrada de forma a obter 
características e relações complexas destes dados de maneira 
hierárquica, ou seja, as informações são extraídas em termos de 
baixo nível até termos de alto nível.
Segundo Deng et al. (2014), Goodfellow et al. (2016), Francois
(2017), Manaswi et al. (2018) o conceito geral de Deep Learning 
pode ser definido da seguinte maneira:
Redes Neurais 
Profundas
• A motivação para as Redes Neurais Profundas, 
Deep Neural Networks (DNN), provêm da 
criação de modelos e algoritmos estruturados 
em muitas camadas de processamento em que 
não exista prejuízo a generalização e ao 
aprendizado de máquina.
• A inclusão de mais camadas intermediárias em 
RNAs vem da constatação de que o 
processamento de informações não lineares e o 
mapeamento das funções torna-se mais 
eficiente.
• Problemas no aprofundamento das redes 
clássicas.
Problemas
• Quanto maior o número de camadas mais refinada é 
abstração de características. Isso não garante um 
aprendizado ótimo já que a adição de mais camadas pode 
gerar uma generalização rígida (overfitting).
• Quanto maior for a dimensionalidade dos dados maior 
será a quantidade de camadas para descrever estes 
dados.
• Em certos pontos, o número de camadas cresce 
exponencialmente à medida que os dados tornam-se 
mais complexos.
• O aprofundamento em muitas camadas (n > 4) gera um 
prejuízo durante o treinamento do modelo, pois o erro 
medido é propagado para as camadas anteriores. Muitas 
camadas intermediárias receberiam a informação do erro 
de treinamento com uma grande imprecisão.
"Arquiteturas rasas podem generalizar 
qualquer função matemática assim como 
arquiteturas profundas. Mas, boas 
generalizações e representações de funções 
feitas por arquiteturas profundas 
dificilmente podem ser representadas por 
arquiteturas rasas."
Redes Neurais 
Convolutivas
• Possuem uma arquitetura profunda e 
hierárquica, ou seja, redes CNNs tem a 
capacidade de extrair informações dos 
dados brutos e representá-las em 
muitos níveis de abstração, isto é, das 
representações das características mais 
simples às mais complexas.
• Utilizadas para o reconhecimento e 
classificação de imagens.
• Este processo de extração de características e de mapeamento de
características é feito de maneira não-supervisionada, cada estrutura de
camadas convolucionais, bem como suas dimensões, realizam a extração de
características de uma forma.
CNNs
• LeNets, propostas por LeCun et al. (1995).
• Desenvolvidas para o reconhecimento de 
padrões em imagens.
• A arquitetura desta rede pode ser descrita em 3 
componentes:
• Camadas Convolucionais.
• Camadas de amostragem.
• Camadas totalmente conectadas.
Camada Convolutiva• A camada convolutiva é 
responsável pelo 
processamento dos dados 
brutos de forma a extrair 
destes dados informações. 
Geralmente esta camada 
consiste de filtros e 
mapeamentos sobre os 
dados, de forma a obter 
padrões locais de dados 
matriciais.
Convolução
A operação de convolução 
extrai características 
preservando as relações 
espaciais entre os pixeis, 
aprendendo os padrões locais 
utilizando pequenas matrizes 
(Filtros) com tamanhos pré-
definidos que podem extrair 
informações de borda, cor, 
intensidade, etc.
A convolução é realizada 
através do produto escalar 
entre uma região da imagem 
(com as dimensões do filtro) 
e o Filtro. Na sequência, o 
filtro é movido para outra 
região e o produto escalar é 
realizado novamente até que 
toda a imagem seja 
percorrida.
Os valores da matriz de pesos
(Filtros) são atualizados no
decorrer do treinamento
permitindo a identificação de
regiões importantes para a
extração das características
principais dos dados.
Camada de Amostragem -
Pooling
• A camada de pooling
sumariza os valores de saída
do mapeamento de
características feito pela
camada convolutiva. O
objetivo desta operação é
reduzir o tamanho das
matrizes de mapeamento
geradas pela convolução
abstraindo apenas as
características mais
importantes desta matriz.
Camada Totalmente Conectada
• Após a etapa de extração e 
mapeamento de 
características feitas pelas 
camadas convolutivas e de 
pooling todos estes 
parâmetros aprendidos são 
inseridos em camadas 
totalmente conectadas. Estas 
camadas se comportam como 
RNAs clássicas.
• São Ativadas pela função 
Softmax().
Redes Neurais 
Recorrentes
(Clássicas) & LSTM
• As Redes Neurais Recorrentes,
Recorrent Neural Networks (RNN) são
uma categoria de RNAs aplicáveis à
classificação e reconhecimento de
padrões em dados sequenciais, tais
como, séries temporais, voz,
linguagem, dados textuais, etc. As RNN
são capazes de classificar, agrupar e
realizar predições sobre dados, pois
conseguem manter uma espécie de
memória entre os neurônios da rede.
Arquitetura
• Uma RNN pode ser estruturada como uma
rede MLP com a adição de loops e
interconexões nos neurônios da camada
intermediária. Em redes deste tipo o
aprendizado de um dado elemento depende
do aprendizado dos elementos que o
precedem.
Séries temporais
• Esta arquitetura garante que
uma saída no tempo {t = n}
seja dependente das
entradas no tempo {t = n, t =
n−1, t = n−2, ..., t = 1}.
• O processo de treinamento é
feito pelo algoritmo
backpropagation, se a
sequência de dados for longa
existe a possibilidade da
função convergir para
mínimos ou máximos locais.
• RNN podem ser
consideradas como tendo
arquiteturas rasas.
t
Long Short-
Term Memory 
(LSTM)
• Propostas por Hochreiter e Schmidhuber (1997b).
• Aprofundamento das RNN clássicas. Aumento da 
Capacidade de Memória.
• Estas redes foram desenvolvidas para lidar com o 
problema da convergência do treinamento em 
grandes sequências de dados de entrada.
• Problemas Vanishing Gradient e Exploding Gradient.
• A rede LSTM visa estabelecer relações nos dados 
que possuem dependências temporais de longo 
prazo. Esta rede inclui células de memória na 
camada intermediária (neurônios de memória, nós 
de contexto) que mantém as informações por 
longos períodos de tempo durante as épocas de 
treinamento.
Células de 
Memória I
• Estas células são ativadas de acordo com portões (gate units) que
controlam o fluxo de informações ativando cada célula por vez.
• Podem haver n células deste tipo em cada camada intermediária de uma
rede LSTM e, sendo assim, a sua arquitetura é profunda.
Células de 
Memória II
• A arquitetura descrita na Figura indica uma célula de memória c_j, os portões in_j
e a unidade de saída out_j . A conexão auto-recorrente (com peso 1,0) indica o 
feedback com um atraso de um intervalo de tempo.
• Os portões ativam e desativam a célula de memória (HOCHREITER; 
SCHMIDHUBER, 1997a).
• As conexões recorrentes adicionam estado ou memória à rede e permitem que ela 
aprenda e aproveite a natureza ordenada das observações dentro das sequências 
de entrada.
• A memória interna indica que as saídas da rede são condicionadas ao contexto 
recente na sequência de entrada e não a sequência que acaba de ser apresentada 
como entrada para a rede.
Deep LSTM
Modelos de redes LSTM com sequencias de entradas gerando as saídas
Ferramenta Keras
Prototipagem rápida e fácil 
(total modularidade, 
minimalismo e 
extensibilidade),
Suporte a redes convolutivas 
e recorrentes, incluindo 
combinação de ambas,
Suporte a esquemas de 
conectividade arbitrária 
(incluindo treino de N para 
N).
Execução em CPU ou GPU.
Aplicações 
Redes CNNs
Foram geradas um total de 1810 imagens (50% para evento e 50% para 
não-evento) para o treinamento e teste dos modelos de Deep Learning.
Estrutura e características
Arquitetura
Camada de Entrada com as dimensões de 300 x 300 x 1;
1a Camada: Camada de Convolução com as dimensões 32 x 32, e Filtro 
de tamanho 3 x 3; Função de Ativação ReLU;
2a Camada: Camada de Pooling com o Filtro de tamanho 2 x 2 com a 
operação de Maxpooling;
3a Camada: Camada de Convolução com as dimensões 64 x 64, e Filtro 
de tamanho 3 x 3; Função de Ativação ReLU;
4a Camada: Camada de Pooling com o Filtro de tamanho 2 x 2 com a 
operação de Maxpooling;
5a Camada: Camada de Convolução com as dimensões 64 x 64, e Filtro 
de tamanho 3 x 3; Função de Ativação ReLU;
6a Camada: Camada de Totalmente Conectada com 64 neurônios; 
Função de Ativação ReLU;
7a Camada: Camada de Saída (Totalmente Conectada) com 2 neurônios, 
caracterizando a classificação binária; Função de Ativação Softmax;
Resumo das 
características 
do modelo
Como as 
camadas se 
comportaram 
durante o 
treinamento 
de um dado 
padrão
1º Camada + 2º Camada de Pooling
3º Camada
4º Camada
5º Camada
Resultados do Treinamento
Resultados
Estatísticas do Modelo – Treinamento
Erro médio quadrático: 0.0015723270440251573
Acurácia: 0.9984276729559748
Precisão: [0.99689441]
Recall: [0.9968254]
F1 -Score: [0.99844479]
Estatísticas do Modelo – Testes
Erro médio quadrático: 0.014652014652014652
Acurácia: 0.9853479853479854
Precisão: [0.97142857]
Recall: [0.97080292]
F1 -Score: [0.98550725]
Comparação com o modelo MLP Clássico
Configurações Testadas
Resultados para o mesmo conjunto
• Estatísticas do Modelo – Testes
Erro médio quadrático: 0.104
Acurácia: 0.895
Precisão: [0.897]
Recall: [0.895]
F1 -Score: [0.894]
Aplicações 
Redes LSTM
A série temporal utilizada contém de 3242 pontos contabilizando a
quantidade mensal de manchas solares desde 1749 a 2019. Para o
treinamento do modelo de rede LSTM foram utilizados uma sequência de
entrada de 3210 pontos que cobrem os anos de 1749 a 2016. O objetivo da
construção do modelo foi prever os pontos até o ano de 2019 e desta
forma indicar a capacidade do modelo de realizar a predição.
Estrutura e Características
Camada de 
Entrada 
considerando 66% 
dos pontos da 
série temporal;
Constata-se um 
Modelo de rede de 
N para N, ou seja, 
um conjunto de 
entradas para 
gerar um conjunto 
de saídas;
Uma camada com 
4 células de 
memória;
Uma camada 
totalmente 
conectada para 
geração das 
sequências de 
predição.
Resultados – Erro da função de custo = 0,0004
RNASs e a Extrapolação e Interpolação
Conclusão
• O aprofundamento das RNAs não é trivial, já que 
não basta apenas adicionar um grande número 
de camadas para melhorar o aprendizado do 
modelo. 
• Em redes profundas o processamento dos dados 
e a redução de dimensionalidadesem que se 
percam informações importantes é o que difere 
os modelos profundos dos modelos clássicos.
• O que se buscou com esta pesquisa foi instanciar 
os principais métodos e evidenciar uma forma 
simples de implementação destes métodos. A 
área de Deep Learning é recente e está sujeita a 
muitos desafios que envolvam a exploração de 
métodos, o trabalho com os dados e a adequação 
de determinados modelos de redes profundas 
para tipos específicos de dados.
Datas das Referências
Obrigado
• "Não Existe Inteligência Artificial"
Lamartine, 2016

Continue navegando