• Nenhum resultado encontrado

6 Módulo III Contexto

6.2.2 ART2 com Contexto

No geral, a arquitetura do ART2 com Contexto é bem similar à do ART2 (Figura6.3), a principal diferença é a inserção das unidades de contexto com conexões recorrentes. O objetivo das unidades de contexto é armazenar o histórico dos últimos padrões de entrada recebidos pela rede e permitir que este contexto influencie tanto na fase de busca quanto na fase de reconhecimento de padrões, no algoritmo do ART2.

Camada F2 contexto Intra F1 Camada F1 Unidades de Contexto Ym PCi realimentação B T reset Ri Controle do reset Wi Qi Vi Xi normalização normalização normalização ... Si bf(q)i f(x)i aui cpi UCi Ui Yj Y1 Pi ...

Figura 6.3 Estrutura do ART2 com Contexto. Observe que, além da informação das unidades Pi, as

matrizes T e B também armazenam a informação contextual vinda das unidades de contexto PCi.

O modelo tem a camada F2 idêntica a camada F2 do ART2. Porém, as unidades de contexto, UCe PC, foram acrescidas ao modelo. Cada unidade UCicontém uma espécie de média dos

uma característica do padrão de entrada, na representação interna da rede ART2, devidamente normalizada e com supressão de ruídos.

Cada unidade UCi recebe duas conexões: a alimentação com o novo padrão de entrada,

vindo de Uie uma realimentação, com seu próprio valor armazenado no passo anterior. Esta

realimentação é ponderada por um parâmetro, retro, que indica o peso do valor anterior de cada unidade UCiem relação ao novo padrão em Ui, no cálculo do novo valor de UCi. Ao final da

apresentação dos estímulos, o contexto formado e armazenado nas unidades UC se aproxima de um valor médio, o qual servirá para representar o contexto atual.

As unidades PC são utilizadas para fazer interface das unidades de contexto com a camada F2. Elas têm papel equivalente ao desempenhado pelas unidades P na rede ART2 original, no caso, informar o valor armazenado nas unidades UC à camada F2 e manter este valor temporariamente armazenado para ser utilizado pelo mecanismo de reset. Porém, enquanto que as unidades P armazenam apenas a entrada mais recente, as unidades PC armazenam informação contextual. A adição das conexões entre Y e PC implicou na adição de linhas à matriz B e colunas à matriz T , para armazenar os pesos destas conexões.

Além dos parâmetros do ART2, o ART2 com Contexto possui também os parâmetros listados abaixo, que permitem ajustar o comportamento do contexto:

Parâmetros adicionais do ART2 com Contexto back: peso do contexto no intervalo de [0,1]

contextWeight: razão de influência da informação do contexto sobre o mecanismo de reset, dentro do intervalo [0,1]

dcontext: efeito equivalente ao d usado na unidade de contexto. αcontext: razão de aprendizagem do contexto.

O algoritmo de treinamento (Alg. 6.2) consiste nos seguintes passos: Após a inicialização das variáveis (linha 1) um laço é executado para cada época de treinamento.

Para cada padrão de entrada, as ativações das unidades nas camadas U, W, P, Q, X e V são inicializadas (linha 5) e atualizadas para refletir os efeitos dos padrões de entrada (linhas 7 e 8).

Então, os valores computados são propagados para as unidades de contexto UC (linha 10) e os novos valores são reescalados (linha 12) e copiados para a unidade PC (linha 14).

Em seguida, os valores armazenados nas unidades P e PC são propagados para a camada F2, onde ocorre uma competição entre os grupos, com cada grupo produzindo uma ativação yj

(linha 16). Então, o laço iniciado na linha 18 se repete até que o grupo vencedor seja definido e atualizado, ou seja, até que a condição de reset, inicializada como verdadeira na linha 17,

Algoritmo 6.2: Treinamento do ART2 com Contexto.

1 Inicialize: a, b, c, d, e, α, θ , ρ, nbrE pochs, nbrIterations, n, back, contextWeight, dcontext, αcontext; 2 para nbrE pochs faça

3 para cada vetor de entrada sifaça

4 Inicialize a ativação das unidades em F1:

5 ui= 0; wi= si; pi= 0; qi= 0; xi= si/(e + ||s||); vi= f (xi); 6 Atualize a ativação das unidades em F1:

7 ui= vi/(e + ||v||); wi= si+ aui; pi= ui;

8 xi= wi/(e + ||w||); qi= pi/(e + ||p||); vi= f (xi) + b f (qi); 9 Propague os valores para as unidades UC:

10 uci= (back)(uci) + (1 − back) f (ui); 11 Normalize as unidades de contexto: 12 uci= uci/(e + ||uc||);

13 Propague o contexto para as unidades PC: 14 pci= uci;

15 Calcule a ativação das unidades em F2:

16 yj= (1 − contextWeight) ∑ibi, jpi+ contextWeight ∑i(bi+n, jpi);

17 reset= true;

18 enquanto reset faça

19 Encontre a unidade em F2 com a maior ativação yJ: 20 yJ= max[yj], 1 ≤ j ≤ q;

21 se yJ= −1 então

22 J= uma unidade ainda não utilizada;

23 reset= f alse;

24 fim

25 se reset então

26 ui= vi/(e + ||v||); pi= ui+ dtJ,i; pci+n= tJ,i+n;

27 ri= (ui+ cpi+ contextWeight)/(e + ||u|| + c||p|| + contextWeight||pc||);

28 se ||r|| < (ρ − e) então

29 reset= true, yJ= −1;

30 senão

31 reset= f alse, wi= si+ au, xi= wi/(e + ||w||); 32 qi= pi/(e + ||p||), vi= f (xi) + b f (qi);

33 fim

34 senão

35 para nbrIterations faça

36 Atualize os pesos associados a unidade vencedora J:

37 tJi= αdui+ [1 + αd(d − 1)]tJ,i;

38 biJ= αdui+ [1 + αd(d − 1)]bi,J;

39 tJ,i+n= αcontextdcontextuci+ [1 + αcontextdcontext(dcontext− 1)]tJ,i+n; 40 bi+n,J= αcontextdcontextuci+ [1 + αcontextdcontext(dcontext− 1)]bi+n,J;

41 Normalize os vetores atualizados:

42 tJ,i= tJ,i/||tJ||; 43 bi,J= bi,J/||bJ||; 44 tJ,i+n= tJ,i+n/||tJ||; 45 bi+n,J= bi+n,J/||bJ||;

46 Atualize a ativação das unidades em F1:

47 ui= vi/(e + ||v||); wi= si+ aui; pi= ui + dtJi; 48 xi= wi/(e + ||w||); qi= pi/(e + ||p||); vi= f (xi) + b f (qi); 49 fim 50 fim 51 fim 52 fim 53 fim

torne-se e permaneça falsa.

Inicialmente, o grupo J com maior ativação é encontrado (linha 20). Se este grupo estiver desativado (ativação = -1), todos os grupos são desativados por causa do sinal de reset, e um novo grupo é criado (linhas 21 a 24).

Entretanto, é verificado se o grupo vencedor é suficientemente similar ao padrão apresentado (usando o parâmetro ρ), se não for, o grupo é desativado e ocorre o reset, então outro grupo pode ser encontrado (linhas 25 a 33).

Se o grupo vencedor for considerado suficientemente similar ao padrão de entrada, ele é aproximado do padrão de entrada (linhas 36 a 40), os vetores atualizados são normalizados (linhas 42 a 45) e as ativações na camada F1 são atualizadas (linhas 47 e 48).

6.3

Aplicação do Modelo

O ART2 com Contexto descrito acima, apresenta todas as características necessárias para implementar o Módulo de Contexto desta Tese. No entanto, o modelo será utilizado com estímulos que possuem características significativamente distintas dos estímulos considerados por Pacheco (2004), de forma que as suposições básicas não são as mesmas dos trabalhos anteriores.

Em Araújo et al. (2010), os estímulos eram palavras codificadas em uma representação fonética e semântica. No entanto, apenas a parte semântica era utilizada na formação do contexto, pois, naquele caso, apenas o contexto semântico foi investigado pelos autores. Nesta Tese, por outro lado, não há representação semântica propriamente dita, e a informação perceptiva composta pelo Módulo de Representação é que será utilizada na construção do contexto.

As representações semânticas das palavras de uma mesma lista compartilham propriedades, possuindo uma forte relação de similaridade, já que estão semanticamente correlacionadas com um mesmo distraidor crítico. No entanto, isto não é necessariamente verdade para as representações das percepções de um mesmo contexto. Por exemplo, as percepções produzidas por vários elementos contidos em um mesmo ambiente, pressupostamente associadas a um mesmo contexto, podem ser significativamente distintas, visto que alguns dos objetos deste ambiente podem ter variadas formas e cores. Portanto, construir uma representação contextual deste ambiente a partir das percepções é uma tarefa mais complexa do que reconstruir o contexto de listas de palavras semanticamente correlacionadas.

É esperado que o contexto formado a partir de uma sequência de estímulos convirja para uma média, que represente melhor os estímulos mais recentes do que os antigos. E por mais que estes estímulos sejam distintos, espera-se que haja uma quantidade de características em comum que seja suficiente para que em conjunto estas características se sobressaiam, e formem

um contexto distinto.

Assim sendo, a suposição básica adotada nesta Tese é a de que o contexto formado com as percepções de uma dada situação será suficientemente distinto do contexto formado com percepções de outras situações. Esta suposição é válida assumindo-se que as características compartilhadas serão provavelmente distintas em contextos distintos.

Na seção seguinte, será avaliado se o ART2 com Contexto é capaz de operar conforme descrito acima, e portanto, se servirá para implementar as funções atribuídas ao Módulo de Contexto considerado nesta Tese.

6.4

Validação do Módulo de Contexto

Diversas propriedades do ART2 com Contexto foram avaliadas emPacheco(2004), tais como tolerância a ruído, capacidade de agrupar estímulos semelhantes, sua escalabilidade e plastici- dade. Portanto, não cabe aqui reproduzir estas análises. Sendo assim, a validação consiste em verificar se o ART2 com Contexto funciona de forma satisfatória com os estímulos utilizados nesta Tese. Ou seja, será avaliado se ele é capaz de associar contextos semelhantes para estímu- los apresentados em instantes próximos e contextos distintos para estímulos apresentados em instantes distantes.

Para verificar isto, a arquitetura exibida na Figura6.4foi implementada. Ela é semelhante àquela utilizada no Capítulo5para avaliar a representação produzida, com a diferença que as representações produzidas pelo Módulo II, desta vez são enviadas para o Módulo de Contexto. Os parâmetros de cada rede foram ajustados por tentativa e erro e estão exibidos na Tabela6.1. Os estímulos fornecidos nas entradas do Módulo I são formados a partir de duas listas de palavras. As palavras escolhidas foram bat, armoire, snake, dog, cat, cheese, trap para a primeira lista (A) e speaker, printer, computer, notebook, monitor, keyboard, mouse para a segunda lista (B). Imagens referentes a cada uma das palavras foram obtidas através do Google Images®. Com isso foi possível criar os estímulos auditivos e visuais para cada palavra, os quais foram apresentados para o Módulo I, da seguinte maneira: 21 palavras da lista A, em ordem aleatória, seguidas de 21 palavras da lista B, em ordem aleatória. Cada estímulo auditivo foi apresentado duas vezes: uma simultaneamente com seu respectivo estímulo visual e outra com um outro estímulo visual, escolhido aleatoriamente da mesma lista. Este processo foi repetido três vezes intercalando-se as listas.

O parâmetro de vigilância do ART2 com Contexto foi ajustado para um valor alto1(ρ =

1Este parâmetro é muito sensível, sendo um valor como 0.99 considerado alto, e 0.95 considerado moderado uma vez que krk varia muito sutilmente. Quando ρ diminui, permite que estímulos com maiores diferenças entre si compartilhem um mesmo agrupamento.

B - Representação C - Contexto

SOM - Palavras SOM - Imagens

12 características por fonema

/k /or /f /ar /e /ch

4 fonemas descritor de 128 características (sift)

Detector de pontos de interesse Hessian Affine

chair fork

Representação fonética

A - Percepção ... ... ... ... ...

ART2 com Contexto

Figura 6.4 Ilustração das etapas de processamento executadas nos experimentos de contexto. A - aquisição das percepções; B - composição da representação; C - criação e reconhecimento do contexto.

0, 999), fazendo com que seja criado aproximadamente um nodo na camada F2 para cada estímulo distinto. O que de fato ocorreu, conforme pode ser verificado através do gráfico exibido na Figura6.5.

Figura 6.5 Índice do nodo vencedor na camada F2 para cada estímulo apresentado. Palavras da lista A estão em vermelho e palavras da B estão em azul. Por falta de espaço, nem todas as palavras apresentadas para o modelo estão visíveis no eixo horizontal.

No eixo horizontal deste gráfico, são exibidos alguns dos estímulos apresentados para o modelo e no eixo vertical está indicado o respectivo índice do nodo vencedor na camada F2. Ao final da primeira apresentação das palavras da lista A (em vermelho), foram criados aproximadamente 20 nodos e ao final da primeira apresentação da lista B (em azul), foram criados aproximadamente 38 nodos. Uma vez que os estímulos se repetem, deste ponto em diante, poucos nodos são criados. É possível observar ainda que as palavras da lista A, na

Tabela 6.1 Parâmetros das redes utilizados nos experimentos de contexto.

Parâmetro valor

Módulo de Representação (percepções visuais) - SOM

Taxa de aprendizagem (α) 0,10

Decaimento da taxa de aprendizagem (λ2 1,60

Vizinhança (σ ) 0,40

Decaimento da vizinhança (λ1) 1,60

Nº de iterações 10 × S

Módulo de Representação (percepções auditivas) - SOM

Taxa de aprendizagem (α) 0,10

Decaimento da taxa de aprendizagem (λ2 1,60

Vizinhança (σ ) 0,40

Decaimento da vizinhança (λ1) 1,60

Nº de iterações 10 × S

Módulo de Contexto - ART2 com Contexto

Peso fixo em F1 (a) 10

Peso fixo em F1 (b) 10

Peso da condição de reset (c) 0,1

Atividade da unidade vencedora em F2 (d) 0,9

Parâmetro para evitar divisão por zero (e) 0,0001

Parâmetro de supressão de ruído (θ ) 0,0739221

Taxa de aprendizagem (α) 0,8

Parâmetro de vigilância (ρ) 0,999

Número de épocas (nbrE pochs) 1

Número de iterações (nbrIterations) 1

Taxa de retropropagação do contexto (back) 0,9

Influência do contexto sobre o mecanismo de reset (contextWeight) 0,0002

Atividade da unidade vencedora em F2 para o contexto (dcontext) 0,9

Taxa de aprendizagem contexto (αcontext) 0,8

maioria das vezes são agrupadas em nodos com índices de 1 a 20, enquanto as palavras da lista B, em nodos com índices de 21 a 41.

No entanto, é preciso verificar como se comportam os contextos associados a cada um dos nodos em F2. Espera-se que os contextos recuperados para palavras da lista A sejam semelhantes entre si e distintos dos contextos recuperados para palavras da lista B e vice-versa.

Para avaliar isto, foi computada a média dos contextos associados a estímulos da lista A (MCA) e a média dos contextos associados a estímulos da lista B (MCB). Estes valores foram

comparados com os contextos recuperados para cada estímulo apresentado para o modelo. O nível de similaridade foi calculado através do cosseno do ângulo entre os vetores. Ou seja, valores próximos de 1 significam alta similaridade.

Figura 6.6 Similaridade entre o contexto recuperado após a apresentação de cada estímulo e o contexto médio dos estímulos de uma mesma lista.

A Figura6.6apresenta a evolução do nível de similaridade entre os contextos recuperados para cada estímulo e os contextos médios MCA (linha vermelha) e MCB (linha azul). Conforme

esperado, observa-se que palavras da lista A foram associadas a contextos mais distantes daqueles que foram associados às palavras da lista B, e vice-versa. Por outro lado, palavras de uma mesma lista foram associadas a contextos relativamente semelhantes. Com isso, foi possível demonstrar que o ART2 com Contexto apresenta as propriedades necessárias para implementar a função do Módulo de Contexto.

6.5

Conclusão

Neste capítulo, foi apresentada a implementação do Módulo de Contexto, incluindo sua base metodológica, seus algoritmos e sua validação com respeito ao tipo de estímulo considerado nesta Tese.

O módulo se mostrou capaz de formar um contexto, ou seja, uma representação que se aproxime do conjunto de dados de entrada que já foram apresentadas ao sistema, privilegiando os dados mais recentes, em detrimento dos mais antigos e de associar este contexto a cada novo dado de entrada recebido.

Uma vez que o ART2 possui as características de escalabilidade e plasticidade, é plausível assumir que o ART2 com Contexto também possua estas características. No entanto, esta é uma questão importante, que será deixada para trabalhos futuros. Nesta Tese será considerado apenas casos em que existem poucos contextos a serem aprendidos e diferenciados.

Mais experimentos incluindo o Módulo de Contexto serão apresentados no Capítulo 8. Nestes experimentos, espera-se que os contextos recuperados possam ser utilizados na desambi- guação de palavras homógrafas, ou seja, aquelas que apresentam grafia e pronúncia idênticas, mas com significados distintos em contextos distintos, tais como: bat, que pode significar

morcego ou taco, ou rock que pode significar pedra ou estilo musical.

Por fim, conforme descrito no Capítulo3, o contexto associado a cada estímulo de entrada, juntamente com as entradas recebidas, inalteradas, serão enviadas para o Módulo de Associação, o qual será apresentado no Capítulo seguinte.

7