Você está na página 1de 6

INSTITUTO FEDERAL DE ALAGOAS

ARTHURNOVIC SEVERO DE HOLANDA SANTOS


CARLOS MIGUEL MELO DA SILVA
LUCAS DANIEL DANTAS DOS PASSOS
RONNY MAYCON DOS SANTOS
RYAN PEREIRA OLIVEIRA
524-B

TÓPICOS ESPECIAIS
DEEP LEARNING

PALMEIRA DOS ÍNDIOS-AL


19 DE FEVEREIRO DE 2020
ARTHURNOVIC SEVERO DE HOLANDA SANTOS
CARLOS MIGUEL MELO DA SILVA
LUCAS DANIEL DANTAS DOS PASSOS
RONNY MAYCON DOS SANTOS
RYAN PEREIRA OLIVEIRA
524-B

TÓPICOS ESPECIAIS
DEEP LEARNING

Trabalho final, apresentado ao IFAL,


como parte das exigências para a
obtenção de nota da disciplina de Tópicos
Especiais.

Professor: Prof. Carlos Jean

PALMEIRA DOS ÍNDIOS-AL


19 DE FEVEREIRO DE 2020
Deep Learning
A aprendizagem profunda, do inglês Deep Learning (também conhecida
como aprendizado estruturado profundo, aprendizado hierárquico ou aprendizado de
máquina profundo) é um ramo de aprendizado de máquina (Machine Learning) baseado
em um conjunto de algoritmos que tentam modelar abstrações de alto nível de dados
usando um grafo profundo com várias camadas de processamento, compostas de várias
transformações lineares e não lineares.
A aprendizagem profunda é parte de uma família mais abrangente de métodos
de aprendizado de máquina baseados na aprendizagem de representações de dados. Uma
observação (por exemplo, uma imagem), pode ser representada de várias maneiras, tais
como um vetor de valores de intensidade por pixel, ou de uma forma mais abstrata como
um conjunto de arestas, regiões com um formato particular, etc. Algumas representações
são melhores do que outras para simplificar a tarefa de aprendizagem (por exemplo,
reconhecimento facial ou reconhecimento de expressões faciais). Uma das promessas da
aprendizagem profunda é a substituição de características feitas manualmente por
algoritmos eficientes para a aprendizagem de características supervisionada ou a extração
hierárquica de características.
A pesquisa nesta área tenta fazer representações melhores e criar modelos para
aprender essas representações a partir de dados não rotulados em grande escala. Algumas
das representações são inspiradas pelos avanços da neurociência e são vagamente
baseadas na interpretação do processamento de informações e padrões de comunicação
em um sistema nervoso, tais como codificação neural que tenta definir uma relação entre
vários estímulos e as respostas neuronais associados no cérebro.
Várias arquiteturas de aprendizagem profunda, tais como redes neurais
profundas, redes neurais profundas convolucionais, redes de crenças profundas e redes
neurais recorrentes têm sido aplicadas em áreas como visão
computacional, reconhecimento automático de fala, processamento de linguagem natural,
reconhecimento de áudio e bioinformática, onde elas têm se mostrado capazes de
produzir resultados do estado-da-arte em várias tarefas.
Aprendizagem profunda foi caracterizada como a expressão na moda, ou uma
recaracterização das redes neurais.
Definições
A área de aprendizagem profunda tem sido caracterizada de várias maneiras. Por
exemplo, em 1986, Rina Dechter introduziu os conceitos de aprendizagem profunda de
primeira e segunda ordens no contexto de satisfação de restrições. Posteriormente, a
aprendizagem profunda foi caracterizada como uma classe de algoritmos de
aprendizagem de máquina que:
 Usa uma cascata de diversas camadas de unidades de processamento não-linear
para a extração e transformação de características. Cada camada sucessiva usa a
saída da camada anterior como entrada. Os algoritmos podem ser supervisionados
ou não supervisionados e as aplicações incluem a análise de padrões (não
supervisionada) e de classificação (supervisionada).
 São baseados na aprendizagem (supervisionada) de vários níveis de características
ou representações dos dados. Características de nível superior são derivadas das
características de nível inferior para formar uma representação hierárquica.
 Fazem parte de uma área da aprendizagem de máquina mais ampla que é a
aprendizagem de representações de dados.
 Aprendem vários níveis de representações que correspondem a diferentes níveis
de abstração; os níveis formam uma hierarquia de conceitos.
Estas definições têm em comum (1) várias camadas e unidades de processamento
não linear e (2) a aprendizagem ou representação supervisionada ou não supervisionada
de características em cada camada, com as camadas formando uma hierarquia das
características de baixo nível para as de alto nível. A composição de uma camada de
unidades de processamento não linear usada em um algoritmo de aprendizagem profunda
depende no problema a ser resolvido. Camadas que foram usadas em aprendizagem
profunda incluem camadas ocultas de uma rede neural artificial e conjuntos de fórmulas
proposicionais complicadas. Elas também podem incluir variáveis latentes organizadas
em camadas em modelos geradores profundos tais como os nós em redes de crenças
profundas e máquinas de Boltzmann profundas.
Algoritmos de aprendizagem profunda transformam suas entradas usando mais
camadas do que algoritmos de aprendizagem mais superficial. Em cada camada, o sinal
é transformado por uma unidade de processamento, como um neurônio artificial, cujos
parâmetros são "aprendidos" por meio de treinamento. Uma cadeia de transformações da
entrada até a saída é um caminho de atribuição de crédito (em inglês, abreviado como
CAP, credit assignment path). Os CAP descrevem conexões potencialmente causais entre
entradas e saídas e podem variar em comprimento. Para uma rede neural de alimentação
direta, a profundidade dos CAPs, e, portanto, a profundidade da rede, é o número de
camadas ocultas, mais um (a camada de saída também é parametrizada). Para as redes
neurais recorrentes, nas quais um sinal pode se propagar por uma camada mais de uma
vez, o CAP tem comprimento potencialmente ilimitado. Não há um limite aceito
universalmente para distinguir aprendizagem superficial de aprendizagem profunda, mas
a maioria dos pesquisadores da área concordam que a aprendizagem profunda tem várias
camadas não-lineares (CAP > 2) e Juergen Schmidhuber considera CAP > 10 como
aprendizagem muito profunda.

Conceitos fundamentais
Algoritmos de aprendizagem profunda são baseados em representações
distribuídas. A suposição subjacente por trás de representações distribuídas é que os
dados observados são gerados pelas interações de fatores organizados em camadas.
A aprendizagem profunda inclui a suposição de que essas camadas de fatores
correspondem a níveis de abstração ou de composição. Podem ser usadas quantidades e
tamanhos de camadas diferentes para fornecer quantidades diferentes de abstração.
A aprendizagem profunda explora essa ideia de fatores explicativos hierárquicos,
em que conceitos de nível superior, mais abstratos, são aprendidas a partir dos de nível
mais baixo. Muitas vezes essas arquiteturas são construídas com um
método ganancioso camada-por-camada. A aprendizagem profunda ajuda a desvendar
essas abstrações e a escolher quais características são úteis para a aprendizagem.
Para tarefas de aprendizado supervisionado, os métodos de aprendizagem
profunda tornam desnecessária a engenharia de características, convertendo os dados em
representações intermediário compactas semelhantes às de componentes principais, e
derivam estruturas em camadas que removem redundâncias na representação.
Muitos algoritmos de aprendizagem profunda são aplicados em tarefas de
aprendizagem supervisionada. Este é um benefício importante porque dados não
rotulados geralmente são mais abundantes do que dados rotulados. Entre os exemplos de
estruturas profundas que podem ser treinadas de forma não supervisionada estão
compressores de histórias neurais e redes de crença profundas.

Interpretação

Redes neurais profundas geralmente são interpretadas em termos do teorema da


aproximação universal ou inferência probabilística.
 Interpretação baseada no teorema da aproximação universal
O teorema da aproximação universal refere-se à capacidade de redes
neural de alimentação direta com uma única camada oculta, de tamanho finito,
de aproximar funções contínuas.
Em 1989, a primeira prova foi publicada por George Cybenko funções de
ativação sigmóide e foi generalizada para arquiteturas de alimentação direta
multi-camada em 1991 por Kurt Hornik.

 Interpretação probabilística
A interpretação probabilística deriva-se da área de aprendizagem de
máquina. Ela inclui inferência, e também conceitos da otimização como
treinamento e testes, relacionados à adaptação e generalização, respectivamente.
Mais especificamente, a interpretação probabilística considera a não-linearidade
da ativação como uma função de distribuição cumulativa. Ver rede de crença
profunda. A interpretação probabilística levou à introdução de abandono como
regularizador em redes neurais.
A interpretação probabilística foi introduzida e popularizada por Geoff
Hinton, Yoshua Bengio, Yann LeCun e Juergen Schmidhuber.

Redes artificiais
Alguns dos métodos mais bem-sucedidos de aprendizagem profunda
envolvem neurais artificiais. Redes neurais artificiais são inspiradas pelo modelo
biológica de 1959 proposto por David H. Hubel e Torsten Wiesel, ambos premiados com
o Nobel, que descobriram que dois tipos de células no córtex visual primário: células
simples e células complexas. Muitas redes neurais artificiais podem ser vistas como
modelos em cascata de tipos de células inspirados por estas observações biológicas.
Neocognitron de Fukushima introduziu redes neurais convulsionais parcialmente
treinadas por aprendizagem não-supervisionada com características direcionadas por
humanos no plano neural. Yann LeCun et al. (1989), aplicaram retro
propagação supervisionada a estas arquiteturas. Weng et al. (1992) publicaram redes
neurais convolucionais Cresceptron para o reconhecimento de objetos 3-D a partir de
imagens de cenas desordenadas e para a segmentação de tais objetos a partir de imagens.
Uma necessidade óbvia para o reconhecimento de objetos 3-D em geral é uma
menor invariância a deslocamentos e tolerância à deformação. O max-pooling parece ter
sido proposto pela primeira vez por Cresceptron para permitir que a rede tolerasse de
pequenas a grandes deformações de uma forma hierárquica, ao mesmo tempo em que é
utilizada a convolação. O max-pooling ajuda, mas não garante, invariância a
deslocamentos no nível dos pixels.
Com o advento do algoritmo de retro propagação baseado na diferenciação
automática, muitos pesquisadores tentaram treinar artificiais profundas supervisionadas a
par tir do zero, inicialmente com pouco sucesso. A tese de Sepp Hochreiter de 1991
identificou formalmente o motivo para esta falha como o problema da dissipação do
gradiente, que afeta redes de alimentação direta de muitas camadas e redes neurais
recorrentes. Redes recorrentes são treinadas desdobrando-as em redes de alimentação
direta muito profundas, em que uma nova camada é criada para cada passo de tempo de
uma sequência de entrada processada pela rede. Conforme os erros se propagam de
camada para camada, eles diminuem exponencialmente com o número de camadas,
impedindo o ajuste dos pesos dos neurônios, que são baseados nesses erros.
Para superar este problema, foram propostos vários métodos. Um deles é a
hierarquia de vários níveis de redes de Jürgen Schmidhuber (1992), pré-treinada nível por
nível por aprendizagem não supervisionado, ajustada por retro propagação. Aqui, cada
nível aprende uma representação compactada das observações que alimentam o próximo
nível.
Sven Behnke, em 2003, baseou-se apenas no sinal do gradiente (Rprop) ao treinar
a sua Pirâmide de Abstração Neural para resolver problemas como a reconstrução de
imagens e a localização de faces.

Você também pode gostar