Redes Neurais Artificiais (RNA): Aprendizado
Disciplina:
Inteligência Artificial
Prof. Frederico Brito Fernandes
[email protected]
CONTEÚDO
(1) Aprendizado
(2) Aprendizado Supervisionado
(2.1) Aprendizado por Reforço
(3) Aprendizado Não-Supervisionado
(3.1) Aprendizado Competitivo
(3.2) Aprendizado Hebbiano
(3.3) Modelo de Linsker
(3.4) Regra de Oja
(1) Aprendizado
• RNAs aprendem por exemplos
– Determinação da intensidade de conexões entre
neurônios
• Algoritmo de aprendizado:
– Conjunto de procedimentos bem definidos para
adaptar os parâmetros de uma RNA, para que
ela possa aprender.
• Conjunto de ferramentas com diversos
algoritmos, cada qual com suas vantagens e
desvantagens.
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
2/27
(1) Aprendizado
• Inicialmente, a RNA passa pela fase de
aprendizado
– Extrai informações de exemplos apresentados a
rede;
– Cria-se uma representação própria para o
problema.
• Aprendizado:
– Ajuste de parâmetros (pesos);
– Guarda o conhecimento que a rede adquiriu do
ambiente.
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
3/27
(1) Aprendizado - Definição
• “Aprendizagem é o processo pelo qual os
parâmetros de uma rede neural são
ajustados através de uma forma continuada
de estímulo pelo ambiente no qual a rede
está operando, sendo o tipo específico de
aprendizagem realizada definido pela
maneira particular como ocorrem os ajustes
realizados nos parâmetros.”
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
4/27
(1) Aprendizado
• Tipos de aprendizado:
– Supervisionado;
– Não-Supervisionado.
• Outros tipos:
– Por Reforço (supervisionado);
– Por Competição (não-supervisionado).
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
5/27
(2) Aprendizado Supervisionado
• O método mais comum de treinamento de
RNAs
– A entrada e saída da rede são fornecidas por um
supervisor (professor) externo;
– Ajusta-se os parâmetros da rede, encontrando
alguma ligação entre os pares de entrada e
saída;
– O professor indica um comportamento bom ou
ruim da rede.
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
6/27
(2) Aprendizado Supervisionado
Saída
Professor
+
Entrada
RNA
-
∑
A rede tem uma resposta
(saída) que é comparada
com a saída desejada,
recebendo informações do
supervisor sobre o erro da
resposta atual.
Erro
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
7/27
(2) Aprendizado Supervisionado
• Os pesos da rede, a cada iteração, são
ajustados com o intuito de minimizar o erro.
• A desvantagem:
– Na ausência de professor, a rede não aprende
novas estratégias;
• Algoritmos conhecidos:
– Regra Delta, Backpropagation
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
8/27
(2) Aprendizado Supervisionado
• Pode ser implementado de duas formas: off-line e
on-line.
– Off-line: Os dados do conjunto de treinamento não
mudam, sendo a solução obtida, fixa. Se novos dados
são adicionados, um novo treinamento deve ser
realizado.
– On-line: Os dados mudam continuamente e a rede está
em contínuo processo de adaptação.
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
9/27
(2) Aprendizado Supervisionado: Correção de Erros
• Tenta minimizar a diferença entre a soma
ponderada das entradas pelos pesos (saída
calculada) e saída desejada.
e(t) = d(t) – y(t)
• A fórmula para alteração dos pesos por correção de
erros é dado por:
wi(t+1) = wi(t) + ηe(t)xi(t)
w
• η é a taxa de aprendizado
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
10/27
(2.1) Aprendizado por reforço
• Caso particular de aprendizado supervisionado;
• A diferença é a medida de desempenho adotada;
– Aqui, qualquer medida que possa ser fornecida ao
sistema;
– Ao contrário da comparação entre as saídas gerando um
erro.
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
11/27
(2.1) Aprendizado por reforço
• A única informação de realimentação é se uma
determinada saída está ou não correta;
Crítico
Reforço/Penalidade
RNA
Ação
• Muitas vezes chamado de aprendizado por crítica.
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
12/27
(2.1) Aprendizado por reforço
• É uma forma de aprendizado on-line;
– Mapeamento entrada-saída;
– Processo de triagem (escolha de alguns padrões) e
erro, maximizando o índice de desempenho – sinal
de reforço;
– Verificando como a rede se comporta para
determinadas entradas;
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
13/27
(2.1) Aprendizado por reforço
• Aprendizado por reforço pode ser:
– Aprendizado associativo: O meio fornece outras
informações além do reforço (estímulos).
Mapeamento estímulo-ação deve ser aprendido
(fazendo x vai obter y);
– Aprendizado não-associativo: O sinal de reforço é a
única entrada. Seleciona uma única ação ótima;
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
14/27
(3) Aprendizado não-supervisionado
• Não há professor ou supervisor;
– Estágios iniciais da visão e audição humana;
• Temos apenas os padrões de entrada;
• Codifica características da entrada;
• Só é possível com redundância dos dados;
Meio Externo
Estado do
meio externo
Resposta
RNA
• Ex: separar laranjas de maças (tamanho, formato)
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
15/27
(3) Aprendizado não-supervisionado
• A estrutura da rede pode adquirir várias formas:
– Camada de entrada, saída, conexões feedfoward
(entrada e saída) e conexões laterais entre os neurônios
da camada de saída;
– Ligações feedfoward de múltiplas camadas;
• Aprendizado: Modificar repetidamente os pesos de
todas as conexões;
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
16/27
(3.1) Aprendizado por competição
• Caso particular de aprendizado nãosupervisionado;
• Dado um padrão de entrada, fazer as unidades de
saída disputarem entre si para serem ativadas;
• Saída ativada terá os seus pesos atualizados no
treinamento;
• A saída com maior ativação inicial, terá maior
chance de vencer a disputa.
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
17/27
(3.1) Aprendizado por competição
• A unidade mais forte, fica cada vez mais forte;
• Com o tempo, todas ficaram inibidas, exceto a
vencedora;
• Algoritmo simples:
–
–
–
–
Apresentar um vetor de entrada;
Calcula a ativação inicial de cada saída;
Deixá-las competir, até que apenas 1 fique ativa;
Aumentar o peso entre a saída ativa e entrada ativa;
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
18/27
(3.1) Aprendizado por competição
• Desvantagem:
– Saída torna-se dominante, captando para si o espaço de
entradas;
– Solução: Racionar os pesos – Soma dos pesos não deve
ser maior que 1;
– Aumentar o peso de alguém é diminuir o peso de outro;
Δwj = ηxj/M - ηwj
• M – número de entradas ativas no vetor
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
19/27
(3.2) Aprendizado hebbiano
• Resultados de Hebb motivaram os primeiros métodos de
aprendizado em RNAs;
• Peso deve ser ajustado se houver sincronismo entre os
“níveis de atividade” das entradas e saídas;
• Se 2 neurônios entre uma sinapse são ativados
sincronamente, temos o fortalecimento da sinapse, caso
contrário, o enfraquecimento;
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
20/27
(3.2) Aprendizado hebbiano
• Resumo: Se o neurônio pré-sináptico tiver grande
influência na ativação do pós-sináptico, a conexão
deve ser reforçada;
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
21/27
(3.2) Aprendizado hebbiano
• Modificação do peso sináptico:
Δwij(t) = ηyi(t)xj(t)
– Onde η é a taxa de aprendizagem
• Vetores de entrada e saída são fornecidos;
• O treinamento é feito independentemente da
resposta da rede;
– Sem professor ou supervisor
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
22/27
(3.3) Modelo de Linsker
• Modelar os primeiros estágios do modelo visual
dos mamíferos;
• Baseado na abordagem de Hebb
Entrada
Disciplina: Inteligência Artificial
Camada A
Camada B
Professor: Frederico Brito Fernandes
Camada C
23/27
(3.3) Modelo de Linsker
• Função de Ativação:
n
yj(t) = a1 + ∑ xi(t)wji(t)
i=1
• O treinamento é feito camada a camada;
• Entrada: Padrões gerados aleatoriamente;
• As camadas atualizam os seus pesos utilizando uma regra
hebbiana;
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
24/27
(3.3) Modelo de Linsker
• Os novos pesos, para cada padrão de entrada, é
definido de acordo com os valores das entradas e
saídas produzidas;
Δwji(t) = a2xi(t)yj(t) + a3xi(t) + a4yj(t) + a5
• Para evitar que os pesos assumam um valor muito
alto, é utilizado uma constante de saturação: Valor
máximo (+w) e mínimo (-w).
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
25/27
(3.4) Regra de Oja
• Solução inicial:
– normalizar todo os pesos através de uma constante
• Porém, não é necessário usar normalização
– Basta usar a Regra de Oja:
Δwi = ηy(xi - ywi)
• Algoritmo que garante a convergência da rede;
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
26/27
(4) Reconhecendo um T e H com Perceptron
• Uma representação simples
• Uma representação real
Disciplina: Inteligência Artificial
Professor: Frederico Brito Fernandes
27/27
Download

Aprendizagem - Frederico Brito Fernandes