3.0 Introdução
Desde o trabalho de Fisher [Johnson et al, 1988], em 1936, numerosos trabalhos têm sido desenvolvidos com o propósito de análise discriminante e de classificação. Em geral, estes métodos aceitam uma amostra aleatória de pontos (observações) definidos por um conjunto de variáveis escolhidas e geram uma função discriminante que serve como classificador.
Vários trabalhos têm sido desenvolvidos com o objetivo de identificar as potencialidades e limitações de métodos na tarefa de classificação [Grinold, 1972], [Tam et al, 1992], [Bennett et al, 1992b], [Lugosi, 1992], [Smith, 1968], [Stange, 1988], [Steiner, 1993b]. No presente trabalho seis métodos foram pesquisados :
Dois dos métodos envolvendo a técnica da Programação Linear :
1. Geração de uma superfície linear por partes [Mangasarian et al, 1990];
2. Geração de uma superfície que minimiza os erros [Bennett et al, 1992b];
Três métodos são estatísticos :
3. Função Discriminante Linear de Fisher [Johnson et al, 1988];
4. K'-Vizinhos mais próximos, segundo a distância de Mahalanobis [Jonhson et al, 1988];
5. Modelo de Regressão Logística [Dobson, 1983], [Cordeiro, 1986];
E o último método envolve redes neurais :
6. Geração de uma superfície linear por partes utilizando o algoritmo Back-propagation [Krose et al, 1993], [Rumelhart et al, 1986].
Estes métodos são descritos a seguir.
3.1 GERAÇÃO DE UMA
SUPERFÍCIE LINEAR POR PARTES
3.1.1 Introdução
Mangasarian tem estudado o problema de separação de padrões há aproximadamente três décadas. Vários trabalhos seus são apresentados com este objetivo : Via Programação Linear ou Programação não Linear [Mangasarian, 1965]; via Programação Linear, com testes feitos em problemas reais pequenos [Mangasarian, 1967]; via Programação Linear, gerando uma Superfície Linear por Partes, com aplicação no diagnóstico médico [Mangasarian et al, 1990], problema este que também pode ser abordado via Redes Neurais [Bennett e Mangasarian,1992a]; via Programação Linear, com a geração de apenas um plano [Bennett e Mangasarian, 1992b].
Os três últimos trabalhos, derivados dos
anteriores, são discutidos aqui. Mangasarian et al, 1990a, e Bennett
e Mangasarian, 1992a , neste item, e Bennett e Mangasarian, 1992b no item
3.2.
3.1.2 O Método
Em Mangasarian et al, 1990a, o objetivo do método
é construir uma função discriminante f : Rn R, tal que
f(A) > 0 e f(B) 0. Quando as coberturas convexas de A
e B não se interceptam, caso em que os conjuntos são
linearmente separáveis, um único programa linear pode ser usado
para obter uma função discriminante linear do tipo :
f(x) = cx + , c Rn , R.
Neste caso, as coberturas convexas dos conjuntos A
e B são disjuntas se, e somente se, não existem u Rm
e v Rk tais que :
u A - v B = 0
(3.1.1) -u e + v e = 0
u
0 0
v
onde e = (1,1, ...,1)
O dual de um programa linear que tenta resolver o sistema (3.1.1) gera um plano que separa os conjuntos A e B quando suas coberturas convexas não se interceptam.
O sistema (3.1.1) tendo uma solução é
equivalente ao programa linear seguinte que tem um valor máximo igual
a zero :
Max - (r + s) e
u, v, r, s
(3.1.2) s.a : uA - vB + r - s = 0
-u e = -1
v e = 1
(u, v, r, s) 0 r, s Rn
O dual de (3.1.2) conduz ao seguinte critério de separabilidade linear para os padrões de A e B :
Min - +
c, ,
(3.1.3) s.a : Ac - e 0
- Bc + e 0
e c - e , R
que terá um mínimo negativo para este caso.
O plano xc = ( + )/2 separa os conjuntos A e B, onde (c, ,
) é a solução de (3.1.3).
Porém, na maioria dos problemas reais
a interseção das coberturas convexas de A e B
é não vazia, ou seja, os conjuntos são linearmente
inseparáveis, o que exige uma função discriminante linear
mais complexa, tal como uma Função Linear por Partes.
Para garantir a obtenção do plano separador, o método impõe uma condição de não nulidade sobre o vetor c, normal ao plano separador, c = 1, sendo que o problema fica :
Min - +
c, ,
(3.1.4) s.a : A c - e 0
- Bc + e 0
c = 1
Ou seja,
Min - +
c, ,
(3.1.5) s.a : A c - e 0
- B c + e 0
e c - e
ci = 1
O problema não convexo (3.1.4) pode ser resolvido em tempo polinomial resolvendo 2n programas lineares para i = 1, 2, ..., n e tomando a solução com o mínimo para (- + ) entre as 2n soluções de (3.1.5), ou seja, tomando como solução o par de planos, cx = e cx = , que separa o maior número de pontos entre as 2n soluções com i = 1, ..., n.
Estes programas lineares são usados para gerar uma sequência de planos paralelos, dois a dois, que resultam em uma função discriminante não convexa linear por partes. Na Figura 3.1.a, tem-se um exemplo para o R2 onde estão traçados os 2 primeiros pares de planos de um total de 11 necessários para a separação completa dos pontos dos conjuntos A e B.
O algoritmo para o método apresentado é
descrito no Apêndice I.
3.1.3 Modelagem do Problema via Redes
Neurais
Bennett e Mangasarian, 1992a, mostra que o método
exposto no item 3.1.2 pode ser modelado como uma Rede Neural
feed-forward com pesos pré-designados e uma topologia parcialmente
fixa. O método de Redes Neurais é detalhado em 3.6.
Veja figura 3.1.b. A rede é composta de n unidades, (2p-1) unidades escondidas, onde p é o número de pares de planos gerados no método exposto em 3.1.2, e uma unidade de saída.
Para i = 1, ..., (p-1), ci e - ci são os "pesos de entrada" para as (2i-1)-ésimas e as (2i)-ésimas unidades escondidas com thresholds i e -i respectivamente. Para i = (p-1), cp é o "peso de entrada" para a (2p-1)-ésimas unidade escondida com threshold
(p + p)/2.
Os pesos nos arcos conectando as (2p-1) unidades escondidas
à unidade de saída são pré-determinados de modo
que a ativação da unidade de saída é causada
pelas unidades escondidas ativadas com o índice mais baixo. O
threshold da unidade de saída é 0.
3.2 GERAÇÃO DE UMA
SUPERFÍCIE QUE MINIMIZA ERROS
3.2.1 Introdução
Em Bennett e Mangasarian, 1992b, é proposta a formulação de um único programa linear que gera um plano que minimiza a média ponderada da soma das violações dos pontos dos conjuntos A e B que estão do lado errado do plano separador.
Quando as coberturas convexas dos dois conjuntos são
disjuntas, o plano separa completamente os dois conjuntos. Quando as suas
coberturas convexas se interceptam, o programa linear proposto gera um plano
que minimiza os erros, sem a imposição de restrições
estranhas ao problema, como no caso do método exposto no item 3.1.2.
3.2.2 O Método
O programa linear está baseado no seguinte problema
de otimização que minimiza os erros :
(3.2.1) Min 1/m (- Aw + e + e)+ 1 + 1/k (Bw - e + e)+ 1
w,
onde :
e = (1,1, ..., 1) Rn;
w = vetor "peso" Rn , normal ao plano separador ótimo;
= número real, fornece a localização do plano separador wx = ;
lembrando que para um vetor x Rn :
(x+)i = max i xi, 0 };
x 1 = i=1,n xi
Os conjuntos de pontos A e B são
linearmente separáveis se, e somente se, existe Rn tal que :
min Ai > max Bi
1im 1ik
ou seja, se existe w Rn , R tal que :
Aw e + e, e - e Bw
Então, os conjuntos A e B são linearmente separáveis se, e somente se, o valor mínimo de (3.2.1) é zero, caso em que (w = 0, ) não podem ser ótimos. Então, o programa linear sempre gerará um plano separador wx = para os conjuntos linearmente separáveis A e B.
Para os conjuntos A e B linearmente
inseparáveis o problema (3.2.1) gerará um plano separador wx
= que minimiza a média das violações dos pontos de
A que estão do lado errado do plano wx = + 1 , x wx < +
1 , e dos pontos de B que estão do lado errado do plano wx
= - 1 , x wx > - 1 :
Min 1/m i=1,m (-Aiw + + 1)+ + 1/k i=1,k (Biw - + 1)+
w,
Para definir uma formulação de
Programação Linear equivalente a (3.2.1), são definidas
algumas relações :
Sendo g : Rn Rm, h : Rn Rk e S um subconjunto de Rn,
então os problemas :
Min g(x)+ 1 + h(x)+ 1
x S
e
Min ey + ez
x S
s.a : y g(x)
z h(x)
y 0, z 0
têm soluções idênticas.
Então, analogamente para (3.2.1), considerando o número de pontos de A e B , tem-se :
Min ey/m + ez/k
w,,y,z
(3.2.2) s.a : Aw - e + y e
-Bw + e + z e
y 0
z 0 y Rm, z Rk
A principal propriedade de (3.2.2) é que para os casos linearmente inseparáveis ele sempre gera uma solução não trivial para w sem a adição de restrições estranhas ao problema.
Observe-se que se trata de um método não
iterativo, ou seja, o plano separador obtido de (3.2.2) é único
para os dois conjuntos dados A e B. A figura 3.2 ilustra a
obtenção deste plano para o já referido exemplo do R2.
3.3 FUNÇÃO DISCRIMINANTE
LINEAR DE FISHER
3.3.1 Introdução
A terminologia "discriminar" e "classificar" foi introduzida
na Estatística por Ronald A. Fisher no primeiro tratamento moderno
dos problemas de separação de conjuntos na década de
30 [Johnson et al, 1988]. Dadas duas populações 1 e 2 de
observações multivariadas X's, de dimensão n,
a idéia de Fisher foi transformar estas observações
multivariadas em observações univariadas Y's de tal modo que
estejam separadas tanto quanto possível. Fisher propôs o uso
de combinação linear das n variáveis aleatórias
componentes de X para obtenção dos Y's, pelo fato da
combinação linear ser de fácil obtenção
matematicamente.
3.3.2 O Método
Sendo 1y a média dos Y's obtida dos X's
pertencentes à população 1 e 2y a média dos Y's
obtida dos X's pertencentes à população 2,
seleciona-se a combinação linear que maximiza a distância
quadrática entre 1y e 2y relativamente à variabilidade dos
Y's, ou seja :
(3.3.1) (1y - 2y)2 / y2
Sendo :
1 = E(X 1) = valor esperado de uma observação multivariada de 1;
2 = E(X 2) = valor esperado de uma observação multivariada de 2;
e supondo que a matriz de covariância = E(X
- i) (X - i)', i = 1,2 seja a mesma para 1 e
2 , tem-se a combinação linear :
Y = c' X , em que Y é uma v.a. unidimensional;
c' é de ordem 1 x n;
X é de ordem n x 1
Mas, Y tem média
1y = E(Y 1) = E(c' X 1) = c' 1
(3.3.2) ou 2y = E(Y 2) = E(c' X 2) =
c' 2
dependendo da população, mas sua
variância
(3.3.3) y2 = Var(c' X) = c'
Cov(X) c = c' c
é a mesma para ambas as populações.
Substituindo (3.3.2) e (3.3.3) em (3.3.1), tem-se que
:
(3.3.4) (1y - 2y)2 / y2 = (c' 1 - c' 2)2
/ c' c = (c' (1 - 2))2 / c'
c
Os coeficientes da combinação linear c'
= [c1,c2, ..., cn] são aqueles que maximizam a razão (3.3.4).
Esta razão é maximizada pela escolha de
c = k -1 (1 - 2)
para qualquer k 0. Escolhendo k = 1 obtém-se a combinação linear :
(3.3.5) Y = c' X = (1 - 2)'
-1 X ,
que é a expressão da Função
Discriminante Linear de Fisher (FDL) populacional.
Seja agora
y0 = (1 - 2)' -1 x0
o valor da função discriminante para uma
nova observação x0 e seja
q = 1/2 (1y + 2y) = 1/2 (c' 1 + c'
2) = 1/2 (1 - 2)' -1 (1 + 2)
o ponto médio entre as médias das duas
populações univariadas. Pode ser mostrado que :
E(Y0 1) - q 0 e E(Y0 2) - q < 0
ou seja, se x0 pertencer a 1, y0 é maior
do que q e se x0 pertencer a 2, y0 é menor do que q.
Analogamente, chega-se a FDL de Fisher amostral,
considerando-se as amostras A de tamanho m e B de tamanho k, respectivamente
das populações 1 e 2. Desta forma, tem-se :
(3.3.6) Y = (xA - xB)' Sp-1 x ,
onde :
xA = vetor (n x 1) médio amostral da população 1 xA = 1/m j=1,m xAj;
xB = vetor (n x 1) médio amostral da população 2 xB = 1/k j=1,k xBj;
Sp-1 = inversa da matriz de covariância amostral conjunta :
Sp = [(m -1)SA + (k -1)SB]/ (m+k-2);
SA = matriz de covariância amostral de 1 SA = 1/(m -1) [ j=1,m (xAj - xA) (xAj - xA)' ];
SB = matriz de covariância amostral de 2 SB = 1/(k -1) [ j=1,k (xBj - xB) (xBj - xB)'];
x = vetor das variáveis aleatórias correspondentes as características populacionais observadas.
Para classificação de um novo vetor x0, a regra de decisão é a seguinte :
se x0 A então y0 = (xA - xB)' Sp-1 x0 q = 1/2(xA - xB)' Sp-1 (xA + xB)
se x0 B então y0 < q
Uma ilustração geométrica deste
método é apresentada na figura 3.3.
3.4 MÉTODO DOS K'-VIZINHOS
MAIS PRÓXIMOS
3.4.1 Introdução
O método dos k'-vizinhos mais próximos
[Johnson et al, 1988] é um método que pode ser utilizado para
classificar observações, com uma ou mais variáveis,
em um ou mais grupos. Este método, que relaxa a condição
de normalidade para os grupos em questão, faz a designação
de uma dada observação para o grupo ao qual pertencem a maioria
dos seus primeiros k'-vizinhos mais próximos. A distância
d(x, y) entre duas observações x e
y pode ser definida pela distância de Mahalanobis entre x
e y, apresentada adiante.
3.4.2 O Método
A equação para o cálculo da distância de Mahalanobis d(x, y) entre duas observações x e y pode ser obtida como uma extensão da função discriminante linear de Fisher.
O valor máximo da razão (com c já
definido no item 3.3) :
(c' (1 - 2))2 / c' c
para o caso populacional é dado por
(3.4.1) 2 = (1 - 2)' -1 (1 -
2)
que é obtida ao se escolher c = k -1
(1 - 2), com k = 1.
A expressão (3.4.1) é a distância
quadrática de Mahalanobis entre duas populações. Para
o caso amostral, o valor máximo da razão :
(c' (xA - xB))2 / c' Sp
c
escolhendo c = Sp-1 (xA - xB) com
Sp estimando , é dado por :
(3.4.2) D2 = (xA - xB)' Sp-1 (xA
- xB)
que é denominada distância quadrática
amostral de Mahalanobis.
Para duas populações, a máxima
separação relativa que pode ser obtida considerando
combinações lineares das observações multivariadas
é igual à distância D. Isto é conveniente porque
D2 pode ser usada, em certas situações, para testar se as
médias 1 e 2 das populações diferem
significativamente, como já mostrado no cálculo do teste T2
de Hotelling, no item 2.1. Então, dada uma nova observação
x0, a distância de Mahalanobis do vetor x0 à
média xA da amostra da população 1 ( ou xB
da amostra da população 2), conforme (3.4.2), é dada
por :
(3.4.3) D2 = (x0 - xA)' Sp-1 (x0
- xA)
ou, D2 = (x0 - xB)' Sp-1 (x0 -
xB)
A observação x0, neste caso, é
designada para a população que fornecer o menor valor para
D2.
Um procedimento alternativo seria considerar em (3.4.2)
cada observação de cada população, ou seja, dada
uma nova observação x0, a distância de Mahalanobis
amostral do vetor x0 a cada vetor xi pertencente a
populações 1 ou 2 é dada por :
(3.4.4) D2 = (x0 - xi)' Sp-1 (x0
- xi) , i = 1, ..., (m + k)
Para (3.4.4), das (m + k) distâncias medidas, toma-se as k' menores, ou seja, as k' distâncias que apontam os k' vetores xi's mais próximos de x0 , verificando a que grupo a maior parte deles pertence. Designa-se, assim, a observação x0 para este grupo.
Na figura 3.4 é mostrada uma ilustração gráfica do método 3-Vizinhos mais próximos.
3.5 REGRESSÃO LOGÍSTICA
3.5.1 Introdução
A regressão logística [Dobson, 1983], [Cordeiro, 1988], dentro da análise estatística, consiste em relacionar, através de um modelo, a variável resposta com os fatores que influenciam a ocorrência de determinado evento. Por exemplo, em um estudo para se quantificar a influência de certos fatores na ocorrência de doenças do fígado (colestase), a variável resposta será dicotômica, isto é, presença de cálculo ou de câncer, e as variáveis como idade, sexo, níveis de algumas enzimas e outras, serão os fatores controlados. A análise estatística permitirá detectar os fatores mais importantes, e também, se dado um novo paciente colestático, responder a que grupo ele será mais susceptível.
Para o presente trabalho, como a variável resposta
é dicotômica, o modelo clássico de regressão não
deve ser utilizado, pois poderá produzir valores de resposta estimada
fora do intervalo [0, 1], o que não é compatível com
a natureza do fenômeno estocástico.
3.5.2 Os Modelos
A. Modelo Linear Geral (MLG)
Seja o problema da
construção de um modelo para o relacionamento entre uma
variável resposta Y e n fatores ou variáveis explicativas X1,
X2, ..., Xn. Considerando-se (m+k) pontos amostrais (yi; x1i, x2i, ..., xni),
pode-se ajustar o modelo linear com (n+1) parâmetros :
(3.5.1) Yi = 0 + 1 X1i + ... + n Xni + i i = 1, 2, ..., (m+k)
ou, em notação matricial,
Y = X +
onde Y é o vetor resposta com dimensão (m+k);
X é a matriz do modelo de ordem ((m+k) x (n+1)) e, por suposição, com
posto completo;
é o vetor de parâmetros a serem estimados e que tem dimensão (n+1);
é o vetor de erros aleatórios, com dimensão (m+k).
O estimador de mínimos quadrados ordinários
(MQO) do vetor é obtido pela minimização da soma de
quadrados dos erros e supõe-se que estas variáveis aleatórias
sejam i.i.d. (independentes e identicamente distribuídas). Desta forma
é suposto que
i ~ . (0, 2) e ~ . (0, 2 I(m+k))
Quando a distribuição comum é a
normal (Gaussiana) o modelo linear é chamado de modelo normal de
Gauss-Markov e o estimador de obtido nestas condições
é "BLUE" (melhor estimador linear não-viciado). Assim,
considerando-se a soma dos quadrados dos erros,
i=1,(m+k) i2 = (Y - X)' (Y - X) = '
tem-se, SQR = ' = [ Y' - ' X'] [
Y - X ]
que é um produto interno, logo distributivo e
comutativo, então :
SQR = [Y'Y - ' X' Y - Y'X
+ ' X' X ]
e visto que Y'X é um escalar resulta
SQR / = - 2 X' Y + 2 X' X
e as equações normais de mínimos quadrados são :
X'X = X' Y donde = (X'X)-1X'Y
e o estimador de MQO de é a solução,
, do sistema. Desta maneira se obtêm estimadores ótimos para
os parâmetros do modelo.
A variância dos resíduos s2 = SQR / ((m+k) - n) estima a variância
2 = V(i) , e ainda se (X'X)-1X'Y é o estimador
de tem-se que :
V() = (X'X)-1 X' V(Y) X(X'X)-1 = (X'X)-1 X'2 In
X(X'X)-1 = s2(X'X)-1
Este procedimento, apesar de não apresentar nenhuma
dificuldade computacional, quando aplicado às variáveis
dicotômicas tem algumas limitações. Neste caso tem-se
:
1 com P(Yi = 1) =
Yi =
0 com P(Yi = 0) = 1 -
e usando-se o modelo (3.5.1) em observações
binárias, tratando-as como observações de origem
quantitativa, ao invés de qualitativa, resulta :
E(Yi) = P(Yi = 1) = 0 + j=1,n j Xji = i
portanto V(Yi) = E[Yi - E(Yi)]2
V(Yi) = (1 - i)2 P(Yi = 1) + (0 - i)2 P(Yi = 0)
= (1 - i)2 i + (-i)2 (1 - i)
= (1 - i) [(1 - i) i + i2]
= (1 - i)[i - i2 + i2]
= i (1 - i)
Logo, a condição de variância constante
para os resíduos não é satisfeita ( a variância
depende de i), invalidando todos os testes de significância usuais
com o modelo linear geral e resposta politômica. Outra dificuldade
é que o modelo (3.5.1) não considera que 0 i 1 e fornecerá
estimativas fora desse intervalo, como foi observado na introdução
(3.5.1).
B. Modelo Logístico Linear Simples
O Modelo Linear Geral apresenta-se inadequado, como se
viu no item A, para o caso de Y ser uma variável aleatória
dicotômica (binária, Bernoulli), ou seja, aquela que apresenta
função de probabilidade do tipo :
Y ~ b(1, ) P(Y = y) = y (1 - )1-y 0 < < 1
y = 0, 1
Seja, então, o Modelo Linear Logístico derivado
da função matemática
f(y) = 1 / (1 + e-y) - < y <
que varia monotonicamente de 0 a 1 à medida que y cresce, sendo simétrica em torno de
y = 1/2.
A chamada transformação logit para
f(y) tem a propriedade de ser linear em y, pois :
logit f(y) = ln [f(y) / (1 - f(y))] = ln [ (1 + e-y)-1 / (1 - (1 + e-y)-1) ] =
= ln [ 1/(1 + e-y) / (1 + e-y - 1)/(1 + e-y) ] = ln ey
= y,
Então, impondo um modelo de regressão logístico linear para estimar P(Y = 1) = p(x) (tratando o caso linear simples, = + x, somente com uma variável explicativa X), tem-se o modelo dado por :
logit p(x) =
ou p(x) = e / (1 + e) = 1 / (1 + e-)
onde = + x é o preditor linear com os parâmetros
e , a serem estimados. A aplicação deste modelo significa que
para X = 0, por exemplo,
p(0) = P(Y = 1 X = 0) = e + 0 / (1 + e + 0) = e / (1
+ e)
C. Modelo Logístico Linear Múltiplo
Quando o interesse está em se estabelecer a
relação entre a variável resposta Y e diversas
covariáveis X1, X2, ..., Xn que podem representar fatores de interesse,
o Modelo Logístico Linear Múltiplo tem a forma :
logit p(x) = 0 + 1 X1 + 2 X2 + ... + n Xn
ou p(X1, X2, ..., Xn) = e / (1 + e) = 1 / (1 + e-)
onde = 0 + 1 X1 + 2 X2 + ... + n Xn = X'
e p(X1, X2, ..., Xn) = P (Y = 1 X1, X2, ..., Xn)
Aqui se tratará desse modelo em um contexto mais
amplo, ou seja, dentro da estrutura dos Modelos Lineares Generalizados. Estes
modelos foram definidos por Nelder et al, 1972, e apresentam duas componentes
: uma sistemática e outra aleatória.
O Modelo Linear Generalizado é definido por :
uma distribuição de probabilidade que pertença à
família exponencial de distribuições, para a variável
resposta; um conjunto de variáveis explicativas (independentes) que
suportam a estrutura linear do modelo e uma função de
ligação entre a média da variável resposta e
a estrutura linear.
Em um Modelo Linear Generalizado a componente aleatória
admite que a resposta yi tem densidade na forma da família exponencial
:
(3.5.2) p(yi, i, i) = exp { i [ yi i - b(i) + c(yi, i)]}
que possibilita a aplicação em dados assimétricos, dados discretos, dados contínuos e dados pertencentes a intervalos limitados dos reais. Muitas distribuições importantes de probabilidade pertencem a esta família, tais como : a normal N (, 2) e a binomial
b(m+k, ).
As funções b( . ) e c( . ) e o parâmetro
de dispersão i > 0 , i = 1, 2, ..., (m+k), são supostamente
conhecidos.
O parâmetro i é conhecido como parâmetro
natural ou canônico e especifica a distribuição em 3.5.2.
Valem para (3.5.2) os seguintes resultados :
E(Yi) = i = b(i) / i
V(Yi) = 1/i 2b(i) / i2
Fica claro que V(Yi) = Vi / i com Vi = i / i , que é
chamada função de variância e depende somente da média.
Sendo assim, o parâmetro natural (canônico) i pode ser expresso
por uma relação unívoca da média,
i = Vi-1 di = q(i)
A componente sistemática do Modelo Linear Generalizado
assume a estrutura linear
(3.5.3) = x'
e admite a existência de uma função
de ligação g(.) entre a média i de uma
observação típica e a estrutura linear do modelo,
através de :
(3.5.4) g (i) = i , i = 1, 2, ..., (m+k)
onde ' = [ 1, 2, ... , (m+k)], denominado preditor linear, é uma função linear dos parâmetros desconhecidos ' = [0, 1, ... , n] e g(.), supostamente conhecida, é diferenciável. Quase sempre a função de ligação g( . ) não é linear e X, a matriz do modelo de ordem (m+k) x (n+1) é de posto completo e conhecida. Deste modo na matriz X = (xij), a observação xij pode ser uma variável explicativa quantitativa ou pode representar a presença (1) ou ausência (0) de uma característica.
A função de ligação relaciona
o preditor linear ao valor esperado , E(Y) = , e deve ser
compatível com o tipo de erro. As ligações usuais no
caso do erro binomial são :
Logit : = log [ / (1
- )]
Probit : = -1 ()
onde ( . ) é a função de
distribuição da normal padrão e é a probabilidade
de sucesso na b(m+k, ). Assim, a variável resposta considerada é
a proporção de sucessos em (m + k) ensaios independentes
dicotômicos. Portanto, o Modelo Linear Generalizado é definido
por uma distribuição de probabilidade da família exponencial
(3.5.2), uma estrutura linear (3.5.3) e uma função de
ligação (3.5.4).
Na análise estatística clássica
quando os dados não se ajustam adequadamente ao modelo, procura-se
transformar estes dados de modo a se conseguir um melhor resultado. O
propósito dos Modelos Lineares Generalizados é transfomar as
médias dos dados, ao invés dos dados em si, para se obter um
modelo de regressão linear.
3.5.3 Algoritmo do Procedimento Iterativo
de Estimação dos Parâmetros
Nelder et al, 1972, provaram que a solução
das equações de máxima verossimilhança de um
Modelo Linear Generalizado equivale a calcular, de forma iterativa, uma
regressão linear ponderada de uma variável resposta contra
covariáveis suportadas pela matriz X usando uma função
de ponderação que se adapta operacionalmente no algoritmo
iterativo. O algoritmo dos autores citados converge
rapidamente na maioria dos casos. Existe alguma dificuldade quando (m + k)
é pequeno.
Assim obtém-se e consequentemente os
preditores lineares , por máxima verossimilhança. Seja
L() o logaritmo da função verossimilhança para um MLG
particular, e sejam , = X e = g-1() as estimativas de máxima
verossimilhança de , e (médias), respectivamente.
Então, supondo que o parâmetro de
dispersão seja constante para todas as observações,
as equações de máxima verossimilhança
L() / j = 0 j = 0, 1, 2, ..., n
são não-lineares na maioria dos casos. A única exceção é para o erro Gaussiano, pois aí o MLG se confunde com o Modelo Linear de Gauss-Markov e tem-se V(Y) = I(m+k) =
= 2 I(m+k) e a função de ligação
é = (identidade). Assim, sem considerar este caso particular de
resolução explícita, seja K a matriz de
informação de Fisher [Bickel et al, 1977] para .
K = { -E ( 2L() / i j ) } = X'WX i = 1, 2, ..., (m + k)
j = 0, 1, 2, ..., n
onde W é a matriz de estimação ponderada
e equivale a :
W = diag. { 1/V (i / i )2 } = diag. (w1, w2, ..., wm+k)
e é a matriz diagonal, = diag { 1, 2, ..., (m+k)
} = I(m+k). Observe-se que, como X é de posto completo e W e são
positivas, tem-se que a matriz de informação é definida
positiva.
Expandindo L() / = [ L()/0 , L()/1 , ... , L()/n ]'
onde L() / i = i=1,(m+k) (yi - i) V-1 i/i xij , i = 1,
2, ..., (m+k); j = 0, 1, 2, ..., n em série de Taylor e usando K no
lugar da matriz de derivadas de segunda ordem, obtém-se o esquema
iterativo
L(p) / = K(p) ((p+1) - (p))
na p-ésima iteração. Assim,
alcança-se em (p+1) uma boa aproximação para . Este
algoritmo está programado no GLIM, software
estatístico, próprio para estes modelos.
3.5.4 Medida da Adequação
de um MLLM : Função Desvio
O procedimento para se efetuar a medida da
adequação de um Modelo Logístico Linear Múltiplo
já foi descrita no Capítulo II, no ítem que trata do
"ajuste" logístico dos pontos.
O método da Regressão Logística
é ilustrado na Figura 3.5.
3.6 REDES
NEURAIS [Krose et al, 1993], [Gorni, 1993], [Demuth et al, 1994],
[Hadjiprocopis, 1993], [Haykin, 1994]
3.6.1 Introdução
As redes neurais são
compostas de muitos elementos simples, inspirados pelo sistema nervoso
biológico, que operam em paralelo. A função da rede
é determinada pelas conexões entre os seus elementos. Pode-se
treinar uma rede neural para executar uma função particular
ajustando-se os valores das conexões entre os elementos.
As redes neurais têm sido treinadas para executar funções complexas em vários campos de aplicação, como :
a. No diagnóstico médico [Bennett e Mangasarian, 1990], [Steiner et al, 1994];
b. Na predição de falência bancária [Tam et al, 1992];
c. Na aplicação à fabricação da pasta e papel industrial [Fadum, 1993];
d. No controle do processo de produção do papel industrial [Rudd, 1991], [Steiner et al, 1994];
e. No mundo financeiro [Business Week, 1993], [Cipra, 1992];
f. No controle de processos químicos [Nascimento et al, 1993];
g. Na obtenção de um modelo organizacional [Almeida, 1995];
h. Para detectar fraudes com cartões [Financial Times, 1993];
i. Em problemas de administração de empresas
[Almeida, 1995].
Tem sido comparada com outras técnicas de análise discriminante : Patuwo et al, 1993; Tam et al, 1993; Bennett e Mangasarian, 1990; Steiner et al, 1994. E muito discutida por : Zahedi, 1991; Hammerstrom, 1993; Barbosa, 1988; Hilster, 1989; Gorni, 1993, Haykin, 1994; Barbosa, 1988 e inúmeros outros.
Sharda, 1994, aponta que no encontro da ORSA/1990 foram
apresentados 10 artigos abordando Redes Neurais. Este número aumentou
para 27 em 1991 e em 1992 para 45 trabalhos. Aponta também as
inúmeras aplicações desta técnica na área
de finanças, business, marketing, estatística, e outras.
3.6.2 Histórico
O estudo de Redes Neurais tem uma história de aproximadamente 5 décadas, mas achou sólida aplicação somente nos últimos 12 anos. O campo de aplicação está se desenvolvendo rapidamente, embora ainda haja grande carência de formalismo matemático para que se possa explicar consistentemente seu modo de operação, gerando desconfiança por parte dos especialistas quanto a sua confiabilidade. Consequentemente, é uma área de estudo com muitos problemas abertos à pesquisa teórica.
Em 1943, Mc Culloch e Pitts propuseram um modelo para uma célula nervosa, chamado de neurônio formal ou neurônio artificial. Eles mostraram que uma coleção de neurônios era capaz de calcular certas funções lógicas.
Em 1949, Hebb apontou o significado das conexões entre sinapses, que são as conexões entre os neurônios, no processo de aprendizagem, e desenvolveu uma regra de aprendizagem básica. Ele propôs que as mudanças nas forças das sinapses fossem proporcionais às ativações dos mesmos.
Em 1959, Rosenblatt reunindo as idéias de Hebb, McCulloch e Pitts, descreveu o 1o. modelo de Rede Neural, o Perceptron. Arranjando os neurônios em uma rede com uma topologia particular e modificando as conexões entre as sinapses, o Perceptron poderia aprender funções lógicas.
Em 1962, Widrow desenvolveu um tipo diferente de processador para Redes Neurais, denominado ADALINE, o qual dispunha de uma poderosa estratégia de aprendizado.
Em 1969 este direcionamento da pesquisa em Redes Neurais foi abandonado quase que completamente, por força do trabalho de Minsky e Papert que expuseram as limitações do Perceptron.
Em 1974, Werbos conseguiu o maior progresso em termos de Redes Neurais desde o Perceptron de Rosenblatt. Ele lançou as bases do algoritmo Back-Propagation, que permitiu que Redes Neurais com múltiplas camadas apresentassem capacidade de aprendizado.
Os primeiros resultados da retomada do desenvolvimento
sobre Redes Neurais foram publicados em 1986 e 1987, onde ficou consagrada
a técnica de treinamento por retropropagação.
3.6.3 Características Básicas
de uma Rede Neural (RN)
O sistema nervoso humano é constituído por cerca de 200 bilhões de células e apresenta as seguintes principais características :
a. É uma rede altamente interconectada.
b. Apresenta paralelismo maciço, ou seja, muitos neurônios operando ao mesmo tempo.
c. O processamento é distribuído de modo que a informação é não localizada, significando que um fato pode corresponder à atividade de um certo número de neurônios.
d. Admite tolerância a falhas, assim o prejuízo a poucos neurônios não afeta a operação do cérebro significativamente.
e. A aprendizagem é exibida pelo ajustamento do
efeito de acoplamento de 2 neurônios.
Apesar do mecanismo do cérebo ser muito complexo
como um todo, ele consiste de elementos de processamento relativamente simples,
os neurônios, como mostrado na Figura 3.a.
Conforme esta figura, o vetor x que representa
um conjunto de n entradas, é multiplicado por um vetor peso,
w, e o produto, p = x w, é aplicado aos canais
de entrada do neurônio. A soma de todas as entradas ponderadas é
processada por uma função de ativação,
F(x), para produzir o sinal de saída, a, do neurônio
:
(3.a) a = F (i=0,n-1 xi wi + )
O parâmetro de é um valor threshold adicionado à soma ponderada, e em alguns casos é omitido, enquanto que em outros é considerado como o valor peso cujo correspondente valor de entrada é sempre igual a 1. A expressão (3.a), pode então adquirir a forma :
(3.b) a = F (i=0,n xi wi), x0 = 1, w0 =
O papel de , também chamado de bias ou vício, é aumentar o número de graus de liberdade disponíveis no modelo, permitindo que a RN tenha maior capacidade de se ajustar ao conhecimento a ela fornecido.
Este simples modelo de neurônio artificial está
baseado em certas propriedades e características de seu comportamento
biológico mas ignora muitos outros. Por exemplo, ele não considera
atrasos que afetam o dinamismo do sistema. Também não inclui
os efeitos do sincronismo ou frequência das funções do
neurônio biológico. O neurônio biológico tem
saída binária, ou seja, ele pode estar ligado ou desligado,
enquanto que o neurônio artificial pode ter saída binária
ou contínua, dependendo inteiramente da função de
ativação F(x) utilizada.
3.6.4 A Função de
Ativação de uma RN
A função de ativação é muito importante para o comportamento de uma RN porque é ela que define a saída do neurônio artificial e portanto o caminho pelo qual a informação é conduzida.
O modelo neural proposto por Mc Culloch e Pitts utiliza uma das funções de ativação mais simples, a função passo, que produz uma saída binária, e embora seja similar aos neurônios reais, é inadequada para o algoritmo de aprendizagem.
Existem várias outras funções de
ativação, entre elas : a função linear,
que elimina a descontinuidade em x = ; e a função
sigmoidal, que adiciona alguma não-linearidade. Estes três
principais tipos de função de ativação são
mostradas na Figura 3.b.
3.6.5 Treinamento de uma RN
O treinamento em uma RN, pode ser, em geral, de dois tipos :
Supervisionado, quando a saída é dada para um conjunto de entradas e o sucesso é obtido quando se obtém a correta saída para a correspondente entrada. Em um treinamento Supervisionado cada vetor de entrada é associado com um correspondente vetor de saída. A rede é treinada utilizando estes pares de entradas e saídas.
Não-Supervisionado, quando somente um conjunto
de entradas é dado e tem-se que classificá-los, extraindo quaisquer
propriedades estatísticas, de acordo com algumas
representações internas. O algoritmo de treinamento para a
rede Não-Supervisionada, desenvolvido por Kohonen, em 1984,
modifica a configuração da rede para agrupar vetores de entrada
similares em classes extraindo propriedades estatísticas do conjunto
de treinamento. Outro modelo baseado na filosofia de aprendizagem
não-Supervisionada é a Rede de Hopfield.
3.6.6 Fluxo
de Dados em uma RN
Em função do fluxo de dados as redes neurais
podem ser classificadas em : redes feed-forward, se elas podem
propagar os dados apenas unidirecionalmente, ou seja, apenas para a frente;
ou redes feedback ou recorrentes, se o fluxo de dados
pode se dar nos dois sentidos.
3.6.7 Os Modelos de Redes Neurais
São muitos os
modelos de RN, sendo que no presente trabalho são apresentados os
modelos básicos : o Perceptron, Redes Lineares e Redes de Múltiplas
Camadas, dando-se ênfase a este último por ser o modelo aplicado
aos casos reais abordados neste trabalho.
A. O Perceptron
O 1o. modelo
bem sucedido foi proposto por Rosenblatt, em 1959, numa tentativa de explicar
a percepção visual da perspectiva de um neuro-fisiologista.
O Perceptron pode ser visto como um instrumento de Reconhecimento de
Padrões que não foi construído para reconhecer um conjunto
específico de padrões, mas que tem alguma habilidade para aprender
a reconhecer os padrões de um conjunto depois de um número
finito de tentativas. Na Figura 3.c tem-se a representação
esquemática de um Perceptron.
A Rede Perceptron consiste de uma única camada de i neurônios conectados às n entradas através de um conjunto de pesos w(i, j). Os índices da rede, i e j, indicam que w(i, j) é a "força" da conexão da j-ésima entrada ao i-ésimo neurônio.
A Rede Perceptron tem somente uma camada, sendo que este fato coloca limitações nos cálculos que um Perceptron pode executar. Os Perceptrons são treinados utilizando exemplos de comportamento correto. A regra de aprendizagem calcula as trocas nos pesos do Perceptron e biases dados um vetor de entrada, x, e o erro do Perceptron, E. O erro é simplesmente a diferença entre a resposta do neurônio, a, e do vetor alvo (ou saída desejada ao padrão), t (ou dp). O vetor alvo, t, deve conter os valores "0" e "1". A cada ajuste de pesos e biases, o Perceptron terá uma melhor chance de obter as saídas corretas, a = t (ou a = dp), dados os vetores de entrada x.
É provado que a regra Perceptron converge para
uma solução em um número finito de iterações,
se a solução existe.
As Redes de Perceptron possuem muitas limitações, tais como :
a. Os valores de saída de um Perceptron podem ter somente 2 valores ( "0" ou "1") devido à função de transferência que é utilizada.
b. Perceptrons podem classificar somente conjunto de vetores linearmente separáveis.
c. Quando um vetor de entrada é muito maior ou
muito menor que os demais, o processo de convergência é lento.
Seja um exemplo simples de classificação de 4 vetores de entrada divididos em 2 classes :
-0,5 -0,5 1,0
X = -0,5 0,5 T = 1,0
0,3 -0,1 0,0
0,0 1,0 0,0
Os vetores de entrada estão plotados na Figura
3.d (a). A Figura 3.d (b) mostra a linha de como a rede inicial divide o
espaço de entradas e a Figura 3.d (c) mostra como a rede ajustou seus
pesos e bias para classificar o espaço de entradas até
a solução ser encontrada após 4 iterações.
Os valores finais encontrados para os pesos e bias foram :
w1 = -2,1642; w2 = -0,6922; = -0,6433
Os Perceptrons podem achar soluções diferentes se iniciarem o processo de aprendizado de diferentes condições iniciais. A rede anterior foi treinada novamente, e uma solução satisfatória, separando totalmente as entradas, foi encontrada, porém com diferentes valores :
w1 = -2,1642; w2 = 0,0744; = -0,6433
Wang, 1995, estuda justamente este fato : a não
predictabilidade de uma RN.
B. Redes Lineares
Estas redes diferem do Perceptron na função
de tranferência que é linear, permitindo que as saídas
tomem qualquer valor entre "0" e "1" e não apenas os valores "0" e
"1" como no Perceptron. Estas redes utilizam a regra de aprendizagem de
Widrow-Hoff, também conhecida como a regra dos Mínimos Quadrados,
para ajustar os pesos e biases de acordo com a magnitude dos erros,
e não apenas pela sua presença. Na Figura 3.e tem-se a
representação esquemática de uma Rede Linear.
Dois problemas podem ser abordados no modelo de Rede Linear :
a. Quando se deseja projetar uma rede linear para que, ao se apresentar um conjunto de vetores de entrada, as saídas correspondam aos vetores alvo, desejados. Para cada vetor de entrada, calcula-se o vetor de saída da rede. A diferença entre o vetor de saída e o vetor alvo é o erro. O objetivo é achar valores para os pesos e biases da rede tal que a soma dos quadrados dos erros seja minimizada.
b. Quando se deseja projetar um sistema linear que possa
responder a trocas do seu ambiente quando ele está operando. Tal sistema
é chamado de sistema adaptativo. O primeiro trabalho neste campo foi
feito por Widrow e Hoff que deram o nome de ADALINE para os elementos lineares
adaptativos.
Como no Perceptron, as biases são úteis
para provirem variáveis adicionais livres que podem ser ajustadas
para obterem a performance desejada da rede.
Esta rede é algumas vezes chamada de MADALINE por conter muitas ADALINES. A regra de Widrow-Hoff pode somente treinar redes lineares de uma única camada.
O projeto de uma Rede Linear de uma única camada
está restrito pelo problema a ser resolvido : O número de entradas
da rede e o número de neurônios na camada de saída
estão restritos pelo número de entradas e saídas exigidos
pelo problema.
Considere-se um único neurônio linear com
uma única camada de entrada. Deseja-se treinar a rede tal que ela
corresponda corretamente à saída t, dados:
X = 1,0 T = 0,5
-1,2 1,0
Neste caso, tem-se apenas um peso e um bias, sendo
então possível plotar, conforme Figuras 3.f (a) e 3.f (b),
o erro da rede sobre um intervalo de valores de pesos e bias. A rede
leva 12 iterações para convergir para a solução
: w = -0,2354 ; = 0,7066.
Múltiplas camadas em uma rede linear não
resultam em uma rede mais poderosa de modo que uma única camada não
é uma limitação. Entretanto, Redes Lineares podem resolver
problemas lineares, ou seja, contendo relações lineares entre
as entradas e os alvos. Para problemas qua não se encaixam nesta
condição, a Rede Back-propagation (propagação
regressiva) pode ser uma boa alternativa.
C. Redes de Múltiplas Camadas ou Redes
Feed-forward
O algoritmo Back-Propagation foi desenvolvido independentemente por 3 grupos de pesquisadores : Werbos, em 1974; Parker, em 1982; Rumelhart, McClelland e Williams, em 1986.
Foram criadas generalizando a regra de aprendizagem de Widrow-Hoff para redes de múltiplas camadas e funções de transferência diferenciáveis não-lineares. Vetores de entrada e os correpondentes vetores de saída são usados para treinar a rede até que ela possa aproximar uma função que classifique os vetores de entrada de maneira apropriada.
O treinamento Back-Propagation pode conduzir a um erro mínimo local ao invés de global. O erro mínimo local achado pode ser satisfatório, mas se não é, uma rede com mais neurônios poderá fazer um trabalho melhor. O número de neurônios ou camadas adequados não é de determinação simples. Pode-se usar diferentes conjuntos de soluções iniciais na procura de uma melhor solução para o problema.
Redes feed-forward (alimentação
progressiva) com várias camadas podem ser criadas e treinadas
com o algoritmo de treinamento Back-Propagation. Estas redes usam
frequentemente a função de transferência sigmoidal. Esta
função gera saídas entre "0" e "1" para as entradas
variando de (-, +).
Para exemplificar este tipo de rede considere-se um problema
com 2 vetores de entrada e suas respectivas saídas :
X = - 3,0 T = 0,4
2,0 0,9
Aqui novamente o erro pode ser plotado conforme as Figuras
3.g (a) e 3.g (b). A rede convergiu (erro = 0,00092) após 36
iterações, sendo que os valores encontrados para o peso e
bias foram : w = 0,3350 ; = 0,5497.
Em uma rede do tipo feed-forward, existem três tipos de unidades de processamento, conforme Figura 3.h : de entrada, de saída e escondidas. As unidades de entrada recebem sinais do meio ambiente, as unidades de saída enviam sinais para o meio ambiente e as unidades escondidas são unidades que não interagem diretamente com o ambiente, daí sua denominação, mas auxiliam no ajuste dos pesos da rede.
O comportamento de cada unidade da rede pode ser modelado
por funções matemáticas simples. Conforme a RN ilustrada
na Figura 3.h, cuja topologia se enquadra no problema em questão de
classificação dicotômica (apenas uma unidade de saída
é necessária), uma unidade i recebe os sinais de entrada e
os agrega baseado em uma função de entrada :
(3.6.1) ip,i = j wij xp,j + i , p = 1, ..., (m+k)
i = 1, ..., k*
j = 1, ..., n
onde ip,i é a entrada da unidade i para o padrão p (sabe-se que o número total de padrões é igual a m+k); i é o número de unidades na camada escondida; wij é a conexão peso entre as unidades i e j ; xp,j são as entradas (coordenadas) do padrão p e i são as biases das unidades i.
Esta função de entrada gera um sinal de
saída, ap,i, para o padrão p, utilizando a função
de transferência sigmoidal :
(3.6.2) ap,i = 1 / (1 + e-ip,i )
Estes sinais de saída são então
enviados para a única unidade da camada h, que os agrega em :
(3.6.3) ip,h = i whi ap,i + h , h = 1
gerando a saída :
(3.6.4) ap,h = 1 / (1 + e-ip,h)
As funções utilizadas, contínuas e diferenciáveis, foram sugeridas por Rumelhart, 1986.
É o vetor de pesos W que constitui o que a rede neural "sabe" e determina como ela responderá a qualquer entrada arbitrária do meio ambiente. Em geral, é muito difícil designar um W apropriado para a tarefa de classificação. Uma solução geral é fazer com que a rede aprenda treinando-a com padrões.
O algoritmo de aprendizagem Back-Propagation pocurará, através do espaço de W, um conjunto de pesos oferecendo o melhor ajuste para os pesos apresentados no início do processo. Este algoritmo consiste de duas fases : propagação forward e propagação backward.
Na propagação forward os p = (m
+ k) padrões descritos por suas coordenadas xp,j , alimentam a rede
conforme as equações de (3.6.1) a (3.6.4) anteriormente descritas.
O valor de saída obtido para o padrão p, ap,h, é comparado
com o valor de saída desejado para o padrão p, dp, calculando-se
o erro quadrático :
(3.6.5) E = p=1,(m+k) (dp - ap,h)2 / 2
O objetivo é minimizar E ajustando W de tal modo que todos os vetores de entrada sejam corretamente mapeados em suas correspondentes saídas. Então, o processo de aprendizagem pode ser visto como um problema de minimização com função objetivo E definida no espaço de W.
A segunda fase, a propagação
backward, que envolve as equações (3.6.6) a (3.6.9),
a seguir, executa um gradiente descendente em W para localizar a
solução ótima. A direção e magnitude wij
pode ser calculada :
a. Variação em whi's :
pwhi = - Ep / whi
onde = taxa de aprendizagem, 0 < < 1.
mas, Ep / whi = - (dp - ap,h) [(e-ip,h ap,i) / (1 + e-ip,h)2]
Ep / whi = [- 1/(1 + e-ip,h)] [(e-ip,h)/(1 + e-ip,h)] [ap,i (dp - ap,h)]
Ep / whi = - ap,h (1 - ap,h) ap,i (dp - ap,h)
então
pwhi = ap,h (1 - ap,h) ap,i (dp - ap,h)
Considerando na variação dos pesos para o padrão atual t a troca de pesos obtida para o padrão anterior (t - 1) a fim de alcançar o mínimo mais rapidamente :
(3.6.6) pwhi (t) = ap,h (1 - ap,h) ap,i (dp - ap,h) +
pwhi (t - 1)
onde = constante que determina o efeito na troca de pesos
em (t - 1). Então, os pesos entre a camada escondida e a camada de
saída, em t, podem ser determinados fazendo-se :
(3.6.7) whi (t) = whi (t - 1) + pwhi (t)
b. Variação em wij's :
pwij = - Ep / wij
p wij = - (dp - ap,h) [(- (- e-ip,h)ip,h / wij ) / (1 + e-ip,h)2]
mas, ip,h / wij = whi api / wij
ap,i / wij = (e-ip,i ip,i / wij ) / (1 + e-ip,i)2
ip,i / wij = xp,j
então, fazendo-se as devidas substituições, tem-se :
ap,i / wij = e-ip,i xp,j / (1 + e-ip,i)2
ip,h / wij = whi [(e-ip,i xp,j / (1 + e-ip,i)2]
logo,
pwij = (dp - ap,h) [e-ip,h / (1 + e-ip,h)2] whi [(e-ip,i xp,j) / (1 + e-ip,i)2]
pwij = (dp - ap,h) ap,h (1 - ap,h) whi ap,i (1 - ap,i)
xp,j
Considerando na variação dos pesos para o padrão atual t a troca de pesos obtidapara o padrão anterior (t - 1) tem-se :
(3.6.8) pwij (t) = (dp - ap,j) ap,h (1 - ap,h) whi ap,i
(1 - ap,i) xp,j + pwij (t - 1)
Então, os pesos entre a camada de entrada e a camada
escondida, em t, podem ser determinados fazendo-se :
(3.6.9) wij(t) = wij(t - 1) + pwij (t)
3.6.8 Definição do Modelo,
Topologia e Parâmetros da RN a serem considerados na
implementação computacional
Neste tópico, algumas questões são levantadas :
1. "Quantas camadas de neurônios deverá conter a RN ? Quantos neurônios cada camada deverá conter ?"
Ao se conceber uma RN há dois parâmetros iniciais a serem definidos : o número de camadas de neurônios que ela deverá ter, bem como o número de neurônios em cada camada. Como já visto nos tópicos anteriores, redes com apenas duas camadas apresentam utilidade muito limitada.
A figura 3i mostra como o aumento do número de camadas de neurônios melhora o desempenho das Redes Neurais. Sua capacidade de aprendizado aumenta, o que se traduz na melhoria da precisão com que ela delimita as regiões de decisão.
Neste trabalho, optou-se por utilizar três camadas
: de entrada, apenas uma camada escondida e a camada de saída, tomando
por base o teorema de Kolmogorov [Hecht-Nielsen, 1991], que afirma que uma
RN, com apenas uma camada oculta, pode calcular uma função
arbitrária qualquer a partir dos dados fornecidos.
Com relação ao número de neurônios
de cada camada, fixou-se para a camada de entrada um número de
neurônios igual ao número de variáveis a serem fornecidas
à rede. A camada de saída utiliza um neurônio para cada
item de classificação. Tratando-se de uma classificação
binária, "1" ou "0", basta ter-se apenas um neurônio na camada
de saída. Após o treinamento da rede, padrões cujas
saídas estiverem contidas no intervalo [0.5 , 1] são tratadas
como tendo resposta "1" e no intervalo [0 , 0.5), como resposta "0".
Contudo, o uso de representação binária na camada de saída aumenta a carga de trabalho da camada oculta, obrigando a um aumento do número de neurônios dessa camada. O maior desafio no dimensionamento de uma RN é a escolha correta do número de neurônios das camadas ocultas. Existem vários critérios para a escolha do número ótimo de neurônios das camadas ocultas tais como os de Hecht-Nielsen/Kolmogorov, Kudricky, Lippmann [Gorni, 1993] entre outros. Quanto mais complexo for o relacionamento entre as variáveis de entrada e de saída, maior deverá ser o número de neurônios da camada oculta.
Para topologia da RN optou-se por no máximo uma camada escondida com i unidades, onde 0 i k*. O número ótimo de neurônios i para esta camada escondida é determinado durante a execução do programa, da seguinte forma : começa-se com i = 0, ou seja, caso em que não se tem camada oculta e verifica-se o número de padrões classificados corretamente quando o processo de aprendizagem converge. Prossegue-se com i = 1, ou seja, a camada escondida contém um neurônio e verifica-se o número de padrões classificados corretamente quando o processo de aprendizagem converge e assim continua-se até i = k*. Destas k* tentativas escolhe-se para i, aquela que classificou o maior número de padrões corretamente, que denota-se por i*.
Tam, 1992, trabalhando com 118 vetores com 19 entradas,
optou por uma topologia sem camada oculta e também por uma camada
oculta com 10 neurônios e, como esperado, os resultados se apresentaram
melhores para a segunda opção.
2. "Que valores os parâmetros (taxa de aprendizagem) e (momento), contidos no algoritmo Back-Propagation devem assumir ?"
Alguns autores sugerem que a taxa de aprendizagem da RN, definida por um coeficiente de aprendizado , deve ser alta no início do treinamento e declinar gradativamente à medida que ele evolui [Gorni, 1993]. Isto deve proporcionar rapidez na convergência do treinamento, estabilidade e resistência ao aparecimento de mínimos locais.
O procedimento de aprendizagem precisa que a troca de pesos seja proporcional a Ep / w. O algoritmo do gradiente descendente precisa que passos infinitesimais sejam tomados. Para propósitos práticos escolhe-se uma taxa de aprendizagem que seja tão grande quanto possível sem levar a oscilações. Uma maneira de evitar oscilação é fazer a troca nos pesos depender da troca de pesos passadas adicionando o termo momento, conforme já colocados nas equações (3.6.6) e (3.6.8). A importância do termo momento é mostrada na Figura 3.j. Quando o termo momento é acrescentado e a taxa de aprendizagem é pequena, leva bastante tempo para o mínimo ser alcançado (trajetória "a"); quando o termo momento não é considerado e a taxa de aprendizagem é alta, o mínimo nunca é alcançado porque ocorrem oscilações (trajetória "b"); e finalmente, quando a taxa de aprendizagem é alta, mas o termo momento é considerado, o mínimo é alcançado rapidamente (trajetória "c").
Tam et al, 1992, optou por uma taxa de aprendizagem fixa durante o processo de aprendizagem, = 0.7, e um valor para o momento também fixo, = 0.5. Hyakin, 1994, enfatiza a necessidade da taxa de aprendizagem e a constante momento estarem no intervalo (0,1).
Neste trabalho optou-se por utilizar valores iguais para
os parâmetros e no decorrer do ajuste dos pesos da RN. Seus valores
são inicializados em 0.8 e ajustados de acordo com a performance da
rede quanto a classificação. Diminuem sempre que a performance
melhora e aumentam em caso contrário.
3. "Quais são os valores adotados para W no início do processo de aprendizagem ao se utilizar o algoritmo Back-Propagation ?"
Diferentes pesos conduzem a resultados diferentes, ou seja, conjuntos de pesos diferentes podem conduzir a mínimos locais diferentes ou ao mínimo global.
Cinco diferentes conjuntos de pesos foram gerados e cinco diferentes execuções foram feitas para cada modelo de RN em Tam et al, 1992.
No presente trabalho, optou-se em tomar o seguinte
procedimento : Os pesos, W, para cada das topologias 0 i k*, são
arbitrários, variando no intervalo (-1, 1). Todo o processo é
repetido para r conjuntos de pesos diferentes. Registra-se a
situação que para a topologia com i* unidades e com um conjunto
de pesos W apresentar melhor performance, ou seja, maior número de
padrões classificados corretamente.
4. "A atualização dos pesos é feita após a apresentação de cada padrão ou após a apresentação dos (m + k) padrões ?"
Embora, teoricamente, o algoritmo Back-Propagation execute o gradiente descendente sobre o erro total somente se os pesos são ajustados depois que o conjunto completo dos padrões de aprendizado foi apresentado, é mais frequente a regra de aprendizado aplicada a cada padrão separadamente, isto é, o padrão p é aplicado, e Ep é calculado, e os pesos são atualizados. Existe uma indicação empírica que isto resulta em convergência mais rápida [Krose et al, 1993]. Tam et al, 1992, faz a atualização dos pesos após a apresentação completa dos padrões.
Na implementação computacional deste
método, W é atualizado a cada padrão.
5. "Qual seria a regra de parada para o algoritmo Back-Propagation ?"
Como regra de parada para uma rede com número de neurônios i na camada escondida, 0 i k*, e conjunto de pesos W, a implementação computacional considera as seguintes possibilidades :
a. A performance da RN apresenta 0% de erro, ou seja, os (m + k) padrões estão sendo corretamente mapeados em suas saídas. W é registrado e o processo é finalizado.
b. A RN com i neurônios na camada escondida apresenta
uma variação de erro entre 2 iterações consecutivas
menor do que um valor . Se todas as topologias, 0 i k*, já tiverem
sido exploradas, então toma-se W, da topologia com i neurônios,
que tiver apresentado maior percentagem de acerto, i*. Repete-se este processo
para os r conjuntos de pesos, obtendo-se r valores para i*. Entre os r conjuntos
de pesos, escolhe-se o conjunto de pesos W, correspondente a i*, que classifique
o maior número de padrões corretamente, finalizando o processo.
6. "Quais seriam as observações adicionais para a aplicação desta técnica ?"
Deve-se efetuar a apresentação dos dados (padrões) em ordem aleatória à RN durante a sua fase de treinamento. A cada iteração na aplicação do algoritmo Back-Propagation é recomendável fazer um sortimento nos (m + k) padrões, ou seja, a cada iteração o sequenciamento com que os (m + k) padrões são apresentados para a RN é modificado.
O dimensionamento da RN deve ser feito criteriosamente, efetuando-se testes com várias topologias (ou arquiteturas). Deve-se evitar uma RN super-dimensionada assim como uma RN sub-dimensionada, ou seja, com um número excessivo ou escasso de neurônios, respectivamente .
Um coeficiente de aprendizado inicial muito alto, dados com magnitude incompatível com a função de ativação dos neurônios ou uma rede mal dimensionada [Hadjiprocopis, 1993] podem fazer com que não haja convergência já na fase de treinamento.
O Fluxograma 3.1 apresenta um esquema do procedimento adotado para a implementação computacional desta técnica. Uma ilustração geométrica para o exemplo do R2, com i = 0, encontra-se na Figura 3.6.