18.11.2014 Views

Anais - Engenharia de Redes de Comunicação - UnB

Anais - Engenharia de Redes de Comunicação - UnB

Anais - Engenharia de Redes de Comunicação - UnB

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

diferentes representações internas (o 1 , o 2 , . . . , o k ) que resultam no mesmo valor <strong>de</strong><br />

y [Ruttor 2007].<br />

O processo <strong>de</strong> sincronização tem início com os pesos das TPM A e B sendo<br />

inicializados com valores aleatórios, não relacionados e secretos. Após isso, para<br />

cada passo da sincronização, é gerada publicamente uma lista <strong>de</strong> valores aleatórios<br />

<strong>de</strong> tamanho K × N que alimenta as entradas A e B, em que as saídas y A e y B são<br />

calculadas [Ruttor 2007].<br />

Caso y A ≠ y B nenhuma ação é tomada e caso y A = y B é aplicada uma das<br />

regras <strong>de</strong> aprendizado, que são [Prabakaran e P. 2010]:<br />

• Regra <strong>de</strong> aprendizado <strong>de</strong> Hebb:<br />

w A/B<br />

i<br />

• Regra <strong>de</strong> aprendizado anti-Hebb:<br />

w A/B<br />

i<br />

(t + 1) = w A/B<br />

i (t) + x i y A/B Θ(y A/B o A/B<br />

i )Θ(y A y B ) (6)<br />

(t + 1) = w A/B<br />

i (t) − x i o i Θ(y A/B o A/B<br />

i )Θ(y A y B ) (7)<br />

• Regra <strong>de</strong> aprendizado Passeio Aleatório<br />

w A/B<br />

i<br />

(t + 1) = w A/B<br />

i (t) + x i Θ(y A/B o A/B<br />

i )Θ(y A y B ) (8)<br />

On<strong>de</strong> Θ é a função <strong>de</strong>grau,<br />

Θ(x) = 1 + sgn(x)<br />

2<br />

⎧<br />

⎪⎨ 0, x < 0<br />

1<br />

=<br />

2<br />

⎪⎩<br />

, x = 0<br />

1, x > 0<br />

(9)<br />

<strong>de</strong>ssa forma, apenas são atualizadas as unida<strong>de</strong>s on<strong>de</strong> o i = y A/B quando y A = y B .<br />

Essa restrição na atualização dos pesos é especialmente útil, já que torna impossível<br />

saber quais pesos foram atualizados sem conhecer os seus valores na camada oculta<br />

[Firmino Filho 2009].<br />

Os passos da sincronização <strong>de</strong>vem ser repetidos até que as duas re<strong>de</strong>s estejam<br />

sincronizadas. As re<strong>de</strong>s são consi<strong>de</strong>radas sincronizadas quando para cada peso w A i<br />

das K unida<strong>de</strong>s ocultas <strong>de</strong> A e o peso correspon<strong>de</strong>nte w B i em B tem-se que w A i = w B i .<br />

Porém, como as TPM A e B possuem pesos secretos, essa comunicação não<br />

é possível. Como alternativa para a <strong>de</strong>tecção <strong>de</strong> sincronização entre as re<strong>de</strong>s, é proposto<br />

que seja feito um teste cifrando uma mensagem pré-<strong>de</strong>terminada com um algoritmo<br />

criptográfico usando como chave o estado dos pesos <strong>de</strong> A e B e comparando-os,<br />

<strong>de</strong> forma que se a mensagem cifrada m A seja igual à m B , então A e B estão sincronizados.<br />

Para reduzir os custos <strong>de</strong> processamento <strong>de</strong>sse algoritmo, acrescenta-se<br />

a regra <strong>de</strong> que o teste <strong>de</strong> sincronização <strong>de</strong>ve ser executado apenas caso a condição<br />

y A = y B tenha ocorrido nos últimos M passos.<br />

O processo <strong>de</strong> sincronização é baseado na competição entre forças aleatórias<br />

atrativas e repulsivas. Um passo atrativo ocorre quando y A = o A i = o B i = y B ,<br />

situação on<strong>de</strong> os pesos <strong>de</strong> ambas as re<strong>de</strong>s são atualizados. Com os pesos das re<strong>de</strong>s<br />

315

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!