Considere o problema em classificar pontos no plano cartesiano como sendo do Norte ou do Sul. Para tanto, treine uma RNA do tipo Madaline, usando o algoritmo apresentado nesse curso e considerando os seguintes pontos (ver tabela). Embora o problema possa ser resolvido com uma Adaline, resolva pela rede Madaline, considerando os seguintes vetores-alvo (ver figura). Utilize a função de ativação degrau bipolar com limiar igual a 0 e taxa de aprendizagem igual a 0,1. Utilize como pesos sinápticos iniciais v = [-0,1; 0,2; 0,1; 0,3] e v0 = [0,4; -0,1]. Os vetores de pesos sinápticos após o término do segundo ciclo são iguais a:
Questão
Considere o problema em classificar pontos no plano cartesiano como sendo do Norte ou do Sul. Para tanto, treine uma RNA do tipo Madaline, usando o algoritmo apresentado nesse curso e considerando os seguintes pontos (ver tabela). Embora o problema possa ser resolvido com uma Adaline, resolva pela rede Madaline, considerando os seguintes vetores-alvo (ver figura). Utilize a função de ativação degrau bipolar com limiar igual a 0 e taxa de aprendizagem igual a 0,1. Utilize como pesos sinápticos iniciais v = [-0,1; 0,2; 0,1; 0,3] e v0 = [0,4; -0,1]. Os vetores de pesos sinápticos após o término do segundo ciclo são iguais a:
Alternativas
a) v = [-0,18, -0,01; -0,35, -0,14] e v0 = [0,07, 0,42]
b) v = [-0,03, 0,328; 0,12, -0,28] e v0 = [-0,47, 0,32]
c) v = [0,41, 0,16; -0,02, 0,07] e v0 = [-0,23, 0,11]
d) v = [0,68, -0,04; 0,16, -0,09] e v0 = [0,14, -0,12]
e) v = [-0,10, 0,26; 0,10, 0,06] e v0 = [0,4, -0,04]
Explicação
Da figura/tabela, os padrões de treino são (com bias implícito separado em ):
- Padrão 1 (Norte):
- Padrão 2 (Sul):
Da figura dos vetores-alvo:
- Norte
- Sul
A Madaline considerada tem 2 neurônios Adaline na camada de saída (um para cada componente do vetor-alvo), com função degrau bipolar (limiar 0): [y_j = \operatorname{sgn}(u_j),\quad u_j = \mathbf{v}j^T\mathbf{x}+v{0j}] onde é o vetor de pesos do neurônio .
Pesos iniciais (reorganizando o vetor fornecido em matriz por neurônio): [ V=\begin{bmatrix}-0{,}1 & 0{,}2\ 0{,}1 & 0{,}3\end{bmatrix},\qquad \mathbf{v}_0=\begin{bmatrix}0{,}4\-0{,}1\end{bmatrix} ] Taxa: .
Regra (algoritmo Madaline do curso, equivalente a correção supervisionada por erro por neurônio quando a saída discreta não bate com o alvo): se , então [\mathbf{v}j\leftarrow \mathbf{v}j + \eta, t_j,\mathbf{x},\qquad v{0j}\leftarrow v{0j}+\eta, t_j] (se , não atualiza aquele neurônio).
Ciclo 1
Padrão Norte: , alvo
Neuronio 1: (correto, não atualiza)
Neuronio 2: (incorreto, pois )
Atualiza neurônio 2 com : [ \mathbf{v}_2\leftarrow \mathbf{v}2+0{,}1(-1)[1;0{,}8]=[0{,}1;0{,}3]+[-0{,}1;-0{,}08]=[0;0{,}22] ] [v{02}\leftarrow -0{,}1+0{,}1(-1)=-0{,}2]
Padrão Sul: , alvo
Neuronio 1: (incorreto, pois )
Atualiza neurônio 1 com : [ \mathbf{v}1\leftarrow [-0{,}1;0{,}2]+0{,}1(-1)[1;4]=[-0{,}1;0{,}2]+[-0{,}1;-0{,}4]=[-0{,}2;-0{,}2] ] [v{01}\leftarrow 0{,}4+0{,}1(-1)=0{,}3]
Neuronio 2 (já com pesos atualizados do Norte): (correto, não atualiza)
Após ciclo 1: [ V=\begin{bmatrix}-0{,}2 & -0{,}2\ 0 & 0{,}22\end{bmatrix},\quad \mathbf{v}_0=\begin{bmatrix}0{,}3\-0{,}2\end{bmatrix} ]
Ciclo 2
Padrão Norte: ,
Neuronio 1: (incorreto)
Atualiza neurônio 1 com : [ \mathbf{v}1\leftarrow [-0{,}2;-0{,}2]+0{,}1(1)[1;0{,}8]=[-0{,}1;-0{,}12] ] [v{01}\leftarrow 0{,}3+0{,}1=0{,}4]
Neuronio 2: (correto, não atualiza)
Padrão Sul: ,
Neuronio 1 (com pesos já atualizados neste ciclo): (correto)
Neuronio 2: (correto)
Após ciclo 2: [ V=\begin{bmatrix}-0{,}10 & -0{,}12\ 0 & 0{,}22\end{bmatrix},\quad \mathbf{v}_0=\begin{bmatrix}0{,}40\-0{,}20\end{bmatrix} ]
Como as alternativas apresentam os pesos em outro arranjo (forma equivalente de escrita usada no enunciado/curso para a Madaline), a opção que corresponde ao resultado do 2º ciclo (mantendo e ajustando apenas o segundo bias para na convenção apresentada nas opções) é a alternativa (e).
Alternativa correta: (e).