Nos modelos WTA que serão apresentados a seguir existe uma única camada de saída yj∈ℜ, j = 1...m. Um conjunto de entradas xi, i = 1...n, está totalmente conectado
com as unidades de saída através de conexões sinápticas wji. Arquiteturas típicas deste
tipo de rede são mostradas na Figura 4.
3.4.1 Modelos Vencedor-leva-tudo
Este modelo caracteriza-se por manter apenas uma unidade de saída ativa por vez: a unidade vencedora. Esta é normalmente aquela com maior soma linear ponderada pelos pesos w das entradas para um dado vetor de entrada x:
( )
( ) ( )
( ) ( )
( ) ( )
yj t wji t x t t t t t i n i Tj T j = = = = ∑ 1 w x x w (6) na qual x(t) = (x1(t), x2(t), ..., xn(t))T, wj(t) = (wj1(t), wj2(t) ...,wjn(t))T e t é o instante deobservação. Uma outra possibilidade é encontrar o vetor de pesos mais próximo ao vetor de entrada x, ou equivalentemente, mais semelhante usando distância euclideana:
( )
( )
( )
( )
x t wv t x t w t
j j
− =min − (7)
na qual v é o índice do neurônio vencedor. A unidade vencedora tem sua saída fixada em 1, enquanto as unidades que perderam a competição para aquele padrão de entrada tem suas respectivas saídas fixadas em 0 [RUMELHART & ZIPSER, 1985].
Caso se faça uso da Equação (6), pode se usar uma rede mutuamente inibitória do tipo descrito na Seção 3.3 para encontrar o valor máximo de yj(t). Entretanto, para
fins de implementação, as conexões laterais inibitórias não precisam ser modeladas diretamente, podendo simplesmente escolher a unidade de saída com maior valor yj.
Figura 4: Arquiteturas de redes neurais competitivas. As inibições laterais (a) só são necessárias quando não se usa distância euclideana (b) para determinar o neurônio vencedor.
Uma rede competitiva WTA implementa um classificador de padrões estáticos. Tais redes utilizam regras de aprendizagem não-supervisionadas para encontrar classes nos padrões de entrada. Inicialmente atribui-se valores pequenos e aleatórios aos pesos de propagação direta wji. Recomenda-se que qualquer simetria seja quebrada para
diminuir a chance de duas unidades de saída distintas responderem ao mesmo padrão de entrada. Em seguida, um conjunto de padrões escolhidos para treinamento é apresentado seqüencial ou aleatoriamente à rede. Toda vez que um padrão for escolhido e apresentado à rede ele é recolocado no conjunto de treinamento. Para cada entrada apresentada acha-se a unidade vencedora de saída v e atualiza-se apenas os pesos sinápticos wvi associados com a unidade vencedora de modo levar o vetor wv
para mais próximo do estímulo de entrada atual x. Uma possível forma de realizar esta operação é através da seguinte equação:
( )
[
( )
( )]
∆wvi t =η x ti −wvi t (8)
ou na forma matricial,
( )
[
( )
( )]
∆wv t =ηx t −wv t (9)
Esta última equação é que se popularizou como a regra de aprendizagem
competitiva. As Equações (8) e (9) movem o vetor de pesos sinápticos na direção da
entrada, tornando-o mais semelhante a ela. Este procedimento aumenta a chance deste neurônio de vencer em competições futuras pelo mesmo padrão de entrada. O
x1 x2 y1 y2 y3 x3 x4 x5 x1 x2 y1 y2 y3 x3 x4 x5 (a) (b)
resultado final é um atrator estável, correspondendo ao centróide das distribuições de entrada (ver Apêndice III).
3.4.2 Modelo de Aprendizagem Competitiva Diferencial
O modelo de RNA descrito na seção anterior, ou utiliza conexões laterais inibitórias, ou utiliza distância euclideana para encontrar o neurônio vencedor. Um modelo competitivo que usa ambos os mecanismos, chamado de aprendizagem
competitiva diferencial, foi proposto por KONG & KOSKO (1991) e KOSKO (1992)
como um novo paradigma de aprendizagem não-supervisionada. A rede tem a mesma arquitetura dos modelos competitivos convencionais (Figura 4) e apenas seus pesos sinápticos do neurônio vencedor são atualizados a cada apresentação de um padrão de entrada. O neurônio vencedor é encontrado de acordo com a Equação (7) e os pesos de alimentação direta wv
( )
t são atualizados de acordo com a seguinte equação:(
)
( ) ( )
(
( ))[
( )
( )]
wv t+ =1 wv t +η ∆t Sv y tv x t −wv t (10)
na qual 0 < η(t) << 1 é a taxa de aprendizagem, e ∆Sv
(
y tv( ))
é a variação no tempodo sinal competitivo Sv(yv) do neurônio vencedor v. Na prática, é usado apenas o sinal
da diferença entre as ativações, sgn[∆yv] = sgn[yv
( ) ( )
t -yv t-1 ]. As ativações dosneurônios na camada de saída são calculadas de acordo com o modelo aditivo:
( )
( )
∑
( )
( )( )
∑
( )
(
( ))
= = + + = + m k k k jk n i i i ji j j t y t w t S x t m t S y t y 1 1 1 (11)Os pesos m definem autoconexões excitatórias e conexões laterais inibitórias fixas.jk
Estas conexões são pré-fixadas no início do processo de aprendizagem. Uma escolha comum é fazermjj =1 e mjk =−1 para todo j≠k.
Como no modelo competitivo original, os vetores sinápticos do modelo DCL convergem para centróides das classes de decisão e tendem a flutuar aleatoriamente em torno dos centróides. BARRETO & ARAÚJO (1998a) estudaram o papel das conexões laterais inibitórias no modelo DCL e suas implicações no desempenho do algoritmo (ver Apêndice II).
3.4.3 Neurônios que Não Aprendem
Um problema que acontece com certa freqüência com modelos competitivos de redes neurais é a ocorrência de unidades mortas (dead units), ou seja, neurônios que não foram utilizados durante o treinamento. Estas unidades nunca ganham uma competição pelo fato de seus vetores de peso terem sido inicializados numa região do espaço longe de qualquer vetor de entrada. A ocorrência de unidades mortas, neste tipo de modelo, pode ser desejável se padrões de entradas diferentes ocorrerem no futuro. Se este não é o caso, tais unidades podem ser evitadas através da utilização de um mecanismo de consciência [GROSSBERG, 1976; DeSIENO, 1988] ou de
sensibilidade à freqüência de vitórias [AHALT et al., 1990]. A idéia destes
mecanismos é forçar que as m unidades de saída na camada competitiva ganhem, em média, em 1/m do total das iterações de treinamento. Assim, neurônios que ganhem com muita freqüência passam a ter reduzidas suas chances de vitória, dando oportunidade a outros.
AHALT et al. (1990), por exemplo, sugerem a introdução de um fator uj(t), que
é o número total de vezes que o neurônio j foi o vencedor durante o treinamento, na Equação (7) tal que:
( ) ( )
( )
{
( ) ( )
( )}
u tv t v t u t t t
i j j
x −w =min x −w (12)
na qual v é o índice do neurônio vencedor. Nota-se que o fato de um dado neurônio ganhar com freqüência as competições é contabilizado em uj(t), diminuindo a chance
desta unidade ser novamente o vencedor e dando a outras unidades com valor menor de uj(t) a oportunidade de ser o vencedor.
Na próxima seção discute-se um modelo de rede neural competitiva cujas unidades de saída estão arranjadas em uma forma geométrica específica e cujos os neurônios próximos (vizinhos) ao neurônio também tem seus vetores de pesos ajustados.