27
Prof. Frederico Brito Fernandes [email protected] Redes Neurais Artificiais (RNA): Aprendizado 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 Disciplina: Inteligência Artificial

Prof. Frederico Brito Fernandes [email protected] Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Embed Size (px)

Citation preview

Page 1: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Prof. Frederico Brito [email protected]

Redes Neurais Artificiais (RNA): Aprendizado

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

Disciplina: Inteligência Artificial

Page 2: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 2/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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.

Page 3: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 3/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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.

Page 4: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 4/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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.”

Page 5: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 5/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(1) Aprendizado

• Tipos de aprendizado:– Supervisionado;– Não-Supervisionado.

• Outros tipos:– Por Reforço (supervisionado);– Por Competição (não-supervisionado).

Page 6: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 6/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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.

Page 7: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 7/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(2) Aprendizado Supervisionado

Professor

RNA ∑

Erro

Saída

Entrada

+

-

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.

Page 8: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 8/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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

Page 9: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 9/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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.

Page 10: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 10/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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.

• A fórmula para alteração dos pesos por correção de erros é dado por:

• η é a taxa de aprendizado

e(t) = d(t) – y(t)

wi(t+1) = wi(t) + ηe(t)xi(t)w

Page 11: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 11/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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.

Page 12: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 12/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(2.1) Aprendizado por reforço

• A única informação de realimentação é se uma determinada saída está ou não correta;

• Muitas vezes chamado de aprendizado por crítica.

Crítico

RNA

Reforço/Penalidade

Ação

Page 13: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 13/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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;

Page 14: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 14/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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;

Page 15: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 15/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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;

• Ex: separar laranjas de maças (tamanho, formato)

Meio Externo RNA

Estado do meio externo Resposta

Page 16: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 16/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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;

Page 17: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 17/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(3.1) Aprendizado por competição

• Caso particular de aprendizado não-supervisionado;

• 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.

Page 18: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 18/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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;

Page 19: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 19/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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;

• M – número de entradas ativas no vetor

Δwj = ηxj/M - ηwj

Page 20: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 20/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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;

Page 21: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 21/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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;

Page 22: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 22/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(3.2) Aprendizado hebbiano

• Modificação do peso sináptico:

– 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

Δwij(t) = ηyi(t)xj(t)

Page 23: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 23/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(3.3) Modelo de Linsker

• Modelar os primeiros estágios do modelo visual dos mamíferos;

• Baseado na abordagem de Hebb

EntradaCamada A Camada B Camada C

Page 24: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 24/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(3.3) Modelo de Linsker

• Função de Ativação:

• O treinamento é feito camada a camada;

• Entrada: Padrões gerados aleatoriamente;

• As camadas atualizam os seus pesos utilizando uma regra hebbiana;

yj(t) = a1 + ∑ xi(t)wji(t)i=1

n

Page 25: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 25/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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;

• Para evitar que os pesos assumam um valor muito alto, é utilizado uma constante de saturação: Valor máximo (+w) e mínimo (-w).

Δwji(t) = a2xi(t)yj(t) + a3xi(t) + a4yj(t) + a5

Page 26: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 26/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(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:

• Algoritmo que garante a convergência da rede;

Δwi = ηy(xi - ywi)

Page 27: Prof. Frederico Brito Fernandes unipe@fredbf.com Redes Neurais Artificiais (RNA): Aprendizado CONTEÚDO (1) Aprendizado (2) Aprendizado Supervisionado (2.1)

Professor: Frederico Brito FernandesProfessor: Frederico Brito Fernandes 27/27Disciplina: Inteligência ArtificialDisciplina: Inteligência Artificial

(4) Reconhecendo um T e H com Perceptron

• Uma representação simples

• Uma representação real