• Nenhum resultado encontrado

Aprendizagem por Treinamento de Redes Neurais

N/A
N/A
Protected

Academic year: 2021

Share "Aprendizagem por Treinamento de Redes Neurais"

Copied!
40
0
0

Texto

(1)

Aprendizagem por Treinamento

de Redes Neurais

Marco H. Terra

(2)

Introdução

● Neste capítulo aprende-se como neurônios organizados em redes podem

ser usados para reconhecer instâncias de padrões e aprende-se como redes neurais podem aprender usando procedimento backpropagation.

● Serão descritas propriedades de neurônios reais e como estas

propriedades são modeladas em redes neurais.

● Também, como o procedimento backpropagation altera o efeito de um

neurônio simulado para melhorar o desempenho de toda a rede.

● Através de ilustração, verifica-se como uma rede neural simulada pode ser

concebida para reconhecer quais pessoas, em um grupo de seis, que são conhecidas e amigas.

● Portanto, os objetivos deste capítulo são: aprender como funcionam as

redes neurais simuladas e entender como o procedimento backpropagation melhora o desempenho das redes.

(3)

Redes neurais simuladas

● Neurônios reais consistem de sinapses, dendrites, axônios e corpos de

células, veja Figuras 1 e 2.

● Axônio é uma protuberância que conecta a saída do neurônio com outros

neurônios.

● Dendrites, são protuberâncias que fornecem uma área suficiente para

facilitar a conexão com axônios de outros neurônios.

● Um neurônio faz com que a influência coletiva de todas as entradas dele

alcancem um limiar. Se este nível de limiar é alcançado, o neurônio produz um pulso estreito que se propaga do corpo da célula até os

braços do axônio. Quando isto acontece diz-se que o neurônio disparou.

● Um neurônio é um dispositivo do tipo tudo ou nada pois ele se comporta

(4)

Redes neurais simuladas

Axônios influenciam dendrites sobre pequenos gaps

chamados sinapses. Estímulos em algumas sinapses.

encorajam o neurônio a disparar um pulso, estímulos em

outras sinapses. desencorajam o neurônio a disparar.

Existem evidências de que a aprendizagem acontece nas

vizinhanças das sinapses e está relacionada com o controle

do envio de pulsos que são transferidos através do axônio de

um neurônio até a inibição ou excitação do próximo neurônio.

Neurônios simulados são formados por multiplicadores,

somadores e limiares (thresholds).

(5)

O neurônio

● Figura 1. Um neurônio consiste de uma célula, um axônio e muitos dendrites.

Dendrites recebem entradas de axônios de outros neurônios via sinapses. de excitação ou inibição. Neurônios reais podem ter muitos dendrites.

(6)

O neurônio

(7)

Neurônio simulado

● Figura 3: Neurônio simulado. Entradas de outros neurônios são multiplicadas por pesos e somadas.

A soma é comparada com um limiar. Se a soma está acima deste limiar, a saída é 1; caso contrário a saída é 0.

(8)

Neurônio simulado

O neurônio simulado é visto como um nó conectado a outros

nós através de ligamentos que correspondem a conexões

axônio-sinapse-dendrite. Cada ligamento é associado com um

peso. O peso determina a natureza e abrangência da influência

de um nó sobre outro.

A influência de um nó sobre o outro é o produto da saída de um

neurônio vezes o peso da conexão dos ligamentos. Um valor de

um peso positivo corresponde a uma excitação forte e um peso

negativo corresponde a uma inibição.

Cada nó combina as influências separadas recebidas das

entradas com as influências combinadas de todas as entradas

usando uma função de ativação.

(9)

Neurônio simulado

Em resumo, simplificadamente pode-se dizer que um neurônio é

formado por: propriedades sinápticas que modelam os pesos;

somador que modela a capacidade de influência-combinação dos

dendrites; e limiar que modela a característica tudo ou nada imposta

pelo mecanismo eletromecânico situado no corpo da célula.

Redes feed-forward podem ser vistas como redes de restrições

aritméticas.

Uma rede neural é uma representação que é uma rede de restrição

aritmética na qual:

Operações denotam restrições aritméticas modelando sinapses. e neurônios;Procedimentos demonstrativos propagam estímulos através de sinapses. e

(10)

Redes neurais

Quando um valor é escrito em um slot de entrada da sinapse,

escreve-se o produto deste valor e o peso da sinapse no slot da

saída da sinapse.

Quando um valor é escrito no slot de saída da sinapse, cheque o

neurônio seguinte para ver se todas as saídas das sinapses. e a

entrada dele têm valores:

Se todas tiverem, some os valores das saídas das sinapses. de entrada

juntos, compare a soma com o limiar do neurônio, e escreva o valor apropriado no slot de saída do neurônio.

Caso contrário, não faça nada.

Redes feed-forward podem reconhecer regularidade nos dados,

(11)

Exemplo de rede neural

Figura 4. Rede neural que reconhece conhecidos e irmãos. Os pesos

(12)

Exemplo de rede neural

● A rede da Figura 4 está equipada com pesos que permitem reconhecer

propriedades de pares de pessoas.

● Alguns dos pares envolvem amigos e outros envolvem conhecidos. ● Duas conexões de entrada recebem valor 1 para identificar o par de

pessoas que estão sendo consideradas. Todas as outras conexões de entrada recebem valores 0 porque as pessoas correspondentes não fazem parte do par que está sendo considerado.

● Assume-se que as pessoas do grupo de cima (as três primeiras) são

amigas e que as pessoas do grupo de baixo também são amigas.

Assuma também que qualquer par de pessoas que não seja de amigas são de conhecidas.

● Os nós à direita dos ligamentos de entrada, H1 e H2, são denominados

(13)

Exemplo de rede neural

Os nós de saída geram as conclusões. O nó de amigos, por exemplo,

recebe um valor 1 quando a entrada corresponde a duas pessoas

que são amigas.

Qualquer uma das três primeiras entradas da rede da Figura 4 produz

simulação suficiente para disparar H1, porque todos os pesos

conectados valem 1.0 e porque o limiar de H1 é 0.5. Similarmente os

três últimos nomes produzem simulação o bastante para disparar H2.

H1 e H2 funcionam como portas lógicas OU. No mínimo um dos H1 e

H2 tem que disparar porque duas entradas estão sempre no nível

alto.

Se ambos H1 e H2 disparam, então a soma ponderada apresentada

para o nó conhecidos é 2 porque ambos os pesos envolvidos valem 1

e porque o limiar do nó conhecidos é 1.5.

(14)

Exemplo de rede neural

● Se somente 1 nó de H1 e H2 dispara, então o nó de pessoas conhecidas

não dispara. Assim, o nó de conhecidos atua como uma porta lógica AND: Dispara somente quando os pares de entradas são de conhecidos.

● Por outro lado, se ambos H1 e H2 disparam, então a soma ponderada

apresentada para o nó amigos é -2 em virtude dos pesos de inibição -1. O valor -2 é menor que o limiar -1.5, então o nó não dispara. Se somente um dos nós H1 ou H2 disparar, então a soma ponderada é -1 que está acima do limiar do nó amigos que é -1.5, então ele dispara. O nó amigos dispara se e somente se o par de entrada causar o disparo de um nó escondido, isto acontece somente quando os pares de entrada são de amigos.

● Note que cada nó e cada ligamento neste exemplo possui uma função

clara. Mas em geral estes nós e ligamentos são concebidos de maneira difusa e nem sempre é possível interpretá-los apropriadamente.

(15)

Treinamento de redes

neurais

● Subida de encosta e backpropagation.

● Existem procedimentos simples que permitem às redes neurais aprenderem

automaticamente dos exemplos de treinamento.

● No contexto de aprendizagem de redes neurais, cada subida de encosta

proporciona pequenas mudanças para os pesos.

● A medida de qualidade é uma medida de quão bem a rede interage com

exemplos nas entradas para os quais saídas apropriadas são conhecidas.

● O procedimento dito subida de encosta requer que a cada passo seja

escolhido, dentre os passos possíveis, aquele que seja mais conveniente.

● Se a aprendizagem for feita alterando-se simultaneamente todos os pesos

de maneira a melhorar o desempenho da rede é dito que se está

caminhando na direção do gradiente no espaço de pesos e se está fazendo um gradiente ascendente.

(16)

Backpropagation

● O procedimento backpropagation é um caminho relativamente eficiente

para se calcular o quanto melhora o desempenho de uma rede com mudanças de pesos individuais. O procedimento é chamado de

backpropagation porque calcula-se as mudanças dos pesos primeiro na camada final da rede, em seguida altera-se os pesos na penúltima camada e por último retorna-se à camada inicial.

● Limiares não nulos podem ser eliminados.

● Veja na Figura 5 que um neurônio com limiar não nulo é

computacionalmente equivalente a um neurônio com limiar nulo com um ligamento extra conectado a uma entrada que está sempre em -1. Estes pesos com limiares equivalentes (pois com esta aproximação pode-se

tratar os limiares como se fossem pesos) podem ser mudados no decorrer da aprendizagem como se fossem pesos, simplificando a aprendizagem.

(17)

Backpropagation

Gradiente ascendente requer uma função limiar

suave.

Uma função limiar tipo degrau não é apropriada para

o gradiente ascendente que, por evoluir em pequenos

passos ,não seria captado no transcorrer do

aprendizado, ocorreriam apenas mudanças abruptas

em determinados momentos, o que prejudicaria o

desempenho do aprendizado.

Uma função limiar suavizada é mais apropriada, veja

(18)

Backpropagation

Figura 5. Limiares são equivalentes a ligamentos,

com valores de pesos iguais aos valores dos

(19)

Backpropagation

● Figura 6. Função suavizada S e uma derivação dela. A derivação da função suavizada S vai a zero

quando a soma das entradas ou resulta muito positiva ou muito negativa; esta derivação alcança o máximo, 0.25, quando a entrada é 0.

(20)

Backpropagation

● Backpropagation (BP) pode ser entendido heuristicamente.

● O principal objetivo do procedimento BP é fazer uma alteração grande em

um determinado peso, w, se a mudança resultar em uma grande redução dos erros observados nos nós das saídas, caso uma alteração no peso não influenciar de forma significativa o erro da saída deve-se, praticamente,

desprezar o ajuste deste peso.

● Para cada combinação da amostra da entrada, considera-se cada valor

desejado da saída, d, o valor atual dele, o, e a influência de um peso particular, w, no erro, d-o.

● A fórmula BP é descrita da seguinte maneira:

Δ wi→ j=r oioj(1−oj)β j,

β j=

k

(21)

Backpropagation

● Figura 7. Rede neural treinável. Cada ligamento possui um peso que pode ser alterado para melhorar a habilidade da rede para produzir as saídas corretas em função das combinações das entradas no conjunto de treinamento. Ligamentos que substituem limiares não são

(22)

Backpropagation

● O procedimento backpropagation é deduzido a partir do gradiente

descendente e da regra da cadeia.

● Estes são os argumentos matemáticos para a dedução de BP. ● Suponha que y é uma função suave de várias variáveis x

i .

● Suponha também que se quer conhecer como fazer mudanças incrementais

para valores iniciais de cada xi assim como incrementar o valor de y o mais rápido possível.

● A mudança para cada valor inicial x

i deve ser proporcional à derivada

parcial de y com respeito a um particular xi

● Esta relação proporcional é dita gradiente ascendente.

Δ xi∝ ∂

y

(23)

Backpropagation

● Suponha que y é uma função de várias variáveis intermediárias xi e que cada xi está

em função de uma variável z. Suponha que se quer derivar y com relação a z da seguinte maneira

● Para calcular esta derivada, usa-se a regra da cadeia.

● Uma medida de desempenho para uma rede neural pode ser dada através de um

índice quadrático

● sendo: P uma medida de desempenho, s é um índice que abrange todas as entradas

de amostras, z é um índice que abrange todos os nós da saída, dsz é a saída desejada para uma entrada de amostra s no nó z, osz é a saída atual para uma entrada de amostra s no nó z. dy dz =

i ∂ y ∂ xi dxi dz =

i dxi dz ∂ y ∂ xi P=−

s (

z (dsz−osz) 2 ),

(24)

Backpropagation

● Cada peso da rede neural será então ajustado levando em consideração o índice

de desempenho P, através da seguinte derivada parcial:

● sendo que o peso w

i→j conecta a i-ésima camada de nós para a j-ésima camada

de nós.

● O objetivo é encontrar uma maneira eficiente para calcular a derivada parcial de P

com respeito a wi→j . Pode-se reescrever esta derivada parcial da seguinte maneira:

● Determina-se o

j somando-se todas as entradas do nó j e passando esta soma

através de uma função limiar

∂ P ∂ wi→ j , ∂ P ∂ wi→ j = ∂ P ∂ oj ∂oj ∂ wi→ j = ∂oj ∂wi→ j ∂ P ∂ oj

(25)

Backpropagation

sendo f uma função limiar. Tratando esta soma como uma

variável intermediária:

pode-se aplicar a regra da cadeia novamente:

Substituindo este resultado nas equações anteriores

tem-se:

o j=f (

i oiwi→ j),

σ

j=

i oiwi→ j, ∂ oj ∂ wi→ j = df (

σ

j) d

σ

j

σ

j ∂ wi→ j = df (

σ

j) d

σ

j oi=oi df (

σ

j) d

σ

j . ∂ P =o df (

σ

j) ∂ P

(26)

Backpropagation

Pode-se aplicar a regra da cadeia para o termo ∂P/∂o

j

:

Considerando a função limiar e regra da cadeia,

tem-se:

Tem-se então:

∂ P ∂ oj =

k ∂ P ∂ok ∂ ok ∂oj =

k ∂ok ∂ oj ∂ P ∂ ok . ∂ ok ∂oj =df (

σ

k) d

σ

k

σ

k ∂ oj =df (

σ

k) d

σ

k wj→k=wj→k df (

σ

k) d

σ

k ∂ P ∂ oj =

k wj→k df (

σ

k) d

σ

k ∂ P ∂ ok

(27)

Backpropagation

● Dois aspectos devem ser ressaltados: primeiro, a derivada parcial do

desempenho com respeito a um peso depende da derivada parcial do

desempenho com respeito à saída seguinte; e segundo, a derivada parcial do desempenho com respeito a uma saída depende das derivadas parciais do desempenho com respeito às saídas da próxima camada.

● Ou seja a derivada parcial de P com respeito a qualquer peso na i-ésima

camada deve ser dada em termos dos cálculos da camada à direita, a j-ésima camada. O desempenho de cada saída na última camada é dado por:

● E escolhendo uma função limiar do tipo sigmoide a derivada é definida

como segue: ∂ P ∂ oz = ∂ ∂ oz [−(dz−oz) 2 ]=2(dz−oz).

(28)

Backpropagation

As mudanças nos pesos dependem de uma taxa r que deve

ser tão grande quanto possível para resultar em uma rápida

aprendizagem, mas não deve gerar valores exagerados nas

saídas que ultrapassem os valores desejados.

f (

σ

) = 1 1+e−σ df (

σ

) d

σ

= d d

σ

[ 1 1+e−σ ] = (1+e−σ )−2e−σ = f (

σ

)(1−f (

σ

)) = o(1−o)

(29)

Backpropagation

Portanto as fórmulas do procedimento

backpropagation são definidas como segue:

Δ w

i→ j

=r o

i

o

j

(1−o

j

)

β

j

,

β

j

=

k

w

j→k

o

k

(1−o

k

)

β

k

para nós nas camadas escondidas,

β

z

=d

z

−o

z

para nós na camada de saída.

(30)

Aplicação de redes

neurais

Um exemplo de treinamento será mostrado para a

rede da Figura 8. Assume-se que exatamente duas

das entradas apresentadas à rede tenham valor 1 e

que as entradas restantes tenham valor 0. A proposta

da rede é determinar se as duas pessoas

correspondentes às entradas são conhecidas

(acquaintances). As duas pessoas são julgadas

conhecidas se o valor da saída é maior que 0.9; elas

serão julgadas não conhecidas se a saída for menor

que 0.1; e se não for nem uma coisa nem outra o

(31)

Aplicação de redes

neurais

● Figura 8. Um problema de aprendizagem envolvendo pessoas conhecidas. A tarefa é aprender que

qualquer um no grupo de cima das três pessoas é um conhecido de qualquer um do grupo de baixo, dos três abaixo. Ligamentos que substituem os limiares não são mostrados.

(32)

Aplicação de redes

neurais

(33)

Aplicação de redes

neurais

(34)

Aplicação de redes

neurais

● Figura 11. Resultados para o experimento de aprendizagem. A raiz quadrada do erro médio

quadrático visto nos nós da saída versus o número de backpropagations feito durante a aprendizagem sobre as pessoas conhecidas.

(35)

Aplicação de redes

neurais

● Figura 12. Comportamento da aprendizagem pode aprender consideravelmente da taxa de

aprendizagem. Seis diferentes taxas de 0.25 até 8 produzem os seis resultados descritos neste gráfico.

(36)

Aplicação de redes

neurais

● Figura 13. Um problema de aprendizagem envolvendo conhecidos e irmãos. Tendo aprendido que

qualquer um do grupo de cima é um conhecido de qualquer um do grupo de baixo, a rede aprende que cada grupo consiste de amigos. Ligamentos substituindo limiares não são mostrados.

(37)

Aplicação de redes

neurais

(38)

Resultados do

treinamento

(39)

Resultados do

treinamento

● Figura 16. A linha pontilhada mostra a raiz quadrada do erro médio quadrático visto nos nós de saída durante o

(40)

Resultados do

treinamento

Referências

Documentos relacionados

5.1. O SISTEMA IBI concederá em favor do TITULAR um limite de crédito para TRANSAÇÕES e, ainda, a seu exclusivo critério, para financiamentos decorrentes da utilização

Ao olhar para si mesmo, a empresa deverá identificar se ela tem condições de atender esse mercado e buscar a melhor forma de fazê-lo, seja reduzindo seus custos

Para comparações dos tempos de performance de 5km, assim como da freqüência cardíaca, concentração de lactato sanguíneo e percepção de esforço entre

5 Cs e 1 contexto : uma experiência de ensino de português língua estrangeira conforme os parâmetros de ensino de língua norte-americanos – Standards for Foreign Language Learning

O gráfico nº11 relativo às agências e à escola representa qual a percentagem que as agências tiveram no envio de alunos para a escola Camino Barcelona e ainda, qual a percentagem de

João VI: nascimento do “herói”, sua infância de endiabrado, suas desditas de filho abandonado mas sempre salvo de dificuldades pelos padrinhos, não casados (a parteira e

Os resultados obtidos pela análise de eficiência produtiva e economica em empreendimentos agropecuários com múltiplos produtos e insumos através de DEA mostram que este

Por isso, salientamos que a experiência linguística prévia por crianças surdas que recebem IC precocemente, inclusive na língua de sinais, pode ser um fator que favorece a aquisição