Redes Neurais Artificiais (RNA): Aprendizado Disciplina: Inteligência Artificial 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
RNAs aprendem por exemplos (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.
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.
(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.”
(1) Aprendizado Tipos de aprendizado: Outros tipos: Supervisionado; Não-Supervisionado. Outros tipos: Por Reforço (supervisionado); Por Competição (não-supervisionado).
(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.
(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.
(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
(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.
(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
(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.
(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
(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;
(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;
(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) Estado do meio externo Meio Externo RNA Resposta
(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;
(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.
(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;
(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
(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;
(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;
(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)
Modelar os primeiros estágios do modelo visual dos mamíferos; (3.3) Modelo de Linsker Modelar os primeiros estágios do modelo visual dos mamíferos; Baseado na abordagem de Hebb Camada A Camada B Camada C Entrada
(3.3) Modelo de Linsker Função de Ativação: yj(t) = a1 + ∑ xi(t)wji(t) 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
(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
Porém, não é necessário usar normalização (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)
(4) Reconhecendo um T e H com Perceptron Uma representação simples Uma representação real