Projec˘c~oes Aleat orias - Técnico Lisboa - Autenticação · um modelo de regress~ao que os...
Transcript of Projec˘c~oes Aleat orias - Técnico Lisboa - Autenticação · um modelo de regress~ao que os...
Instituto Superior Tecnico
Licenciatura em Matematica Aplicada e Computacao
Projecto em Matematica
2o Semestre 2015/2016
Projeccoes Aleatorias:Saude e Simulacao Estocastica
Autor:Joao PedroRibeiro Brazuna
Professora Coordenadora:Maria da Conceicao
Esperanca Amado
Conteudo
1 Introducao 11.1 Notacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 O que sao Projeccoes Aleatorias? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Como funcionam as Projeccoes Aleatorias? 52.1 O Lema de Johnson-Lindenstrauss . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Consequencias do Lema de Johnson-Lindenstrauss para Projeccoes Aleatorias . . . 102.3 Em que diferem da Analise em Componentes Principais? . . . . . . . . . . . . . . . 11
3 Como gerar Projeccoes Aleatorias? 123.1 O Algoritmo de Projeccao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.2 Interpretacao dos Atributos apos Projeccao . . . . . . . . . . . . . . . . . . . . . . 13
4 Uma Aplicacao - Regressao Linear Multipla 144.1 O Modelo de Regressao Linear Multipla . . . . . . . . . . . . . . . . . . . . . . . . 144.2 Simulacao de Modelos de Regressao Linear Multipla . . . . . . . . . . . . . . . . . 16
(a) Modelo de Regressao Linear Multipla numa Situacao Ideal . . . . . . . . . 16(b) Modelo de Regressao Linear Multipla numa Situacao Atıpica . . . . . . . . 20
5 Outra Aplicacao - Dados Clınicos 255.1 O Modelo de Regressao Logıstica Multipla . . . . . . . . . . . . . . . . . . . . . . . 255.2 Dados Clınicos de Diagnostico de Leucemia . . . . . . . . . . . . . . . . . . . . . . 26
(a) Aplicacao de Regressao Linear Multipla . . . . . . . . . . . . . . . . . . . . 27(b) Aplicacao de Regressao Logıstica . . . . . . . . . . . . . . . . . . . . . . . . 30(c) Um Outro Metodo - Arvore de Decisao . . . . . . . . . . . . . . . . . . . . 31
6 Outras Aplicacoes 336.1 Regressao Linear com Ajuste de Mınimos Quadrados Compressivos . . . . . . . . . 336.2 Deteccao de Ruıdo em Imagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
7 Conclusao 35
A Resultados Essenciais i
B Scripts em R v
Capıtulo 1
Introducao
Vivemos na era da informacao, onde os dados sao abundantes e em grandes dimensoes, sendoo seu tratamento o maior desafio. Ao longo das ultimas decadas temos assistido a um aumentogeneralizado da quantidade de informacao disponıvel publicamente. A tıtulo de exemplo, no anode 2012, foram criados em media mais 2.5 exabytes (10242 terabytes) de nova informacao por mes.
O metodo das projeccoes aleatorias revela-se uma alternativa eficiente para a reducao da di-mensao dos dados numa ordem de grandeza significativa. Dado um conjunto de vectores de in-formacao, esta tecnica permite mapea-los noutros de dimensao inferior, preservando as distanciasentre eles a menos de um erro controlado. Concretamente, podemos transformar 1 milhao devectores com 1 milhao de entradas cada, ou seja, 1 biliao
(1012
)de entradas no total, em 1 milhao
de vectores mas com apenas 332 entradas cada, perfazendo um total de 332 milhoes de entradas,o que representa uma reducao de 99.9668% da informacao armazenada! E ainda preservamos adistancias entre todos os vectores a menos de um erro. Mas quao pequeno podera ser este erro?Qual a menor dimensao do espaco no qual podemos projectar os dados?
As aplicacoes desta tecnica sao diversas, entre as quais se destacam os problemas de classi-ficacao, agrupamento e regressao.
Apresentaremos o metodo de construcao de projeccoes aleatorias e aplicacoes a dados simuladoscomputacionalmente bem como a dados de doentes de leucemia linfoblastica aguda, procurandoum modelo de regressao que os explique.
1.1 Notacao
O nosso objectivo e avaliar um certo numero de caracterısticas de uma dada populacao. Esta-belecemos que este numero de caracterısticas ou atributos e um numero natural p.
Dispomos de uma amostra com n elementos ou objectos dessa populacao. Cada um desteselementos tem p atributos. Em cada observacao i verificamos p atributos, condensados na formade um vector. Assim, ficamos com n vectores
xi = (xi1, · · · , xip) =
xi1...xip
∈ Rp, ∀i ∈ {1, ..., n} .
Podemos juntar estes n vectores numa matriz de dados de dimensao n×p, inserindo-os por linhas,ou seja,
X =
xt1...xtn
=
x11 · · · x1p
.... . .
...xn1 · · · xnp
∈ Rn×p.
Pagina 1 de 35
PROJECCOES ALEATORIAS CAPITULO 1
Por exemplo, no famoso conjunto de dados Iris, estamos perante uma populacao de flores daqual temos uma amostra de dimensao n = 150, ou seja, 150 flores. Para cada flor, sao analisadas4 caracterısticas: o comprimento e a largura da petala e da sepala, portanto p = 4.
Figura 1.1: Representacao da Petala e da Sepala de uma Flor
Assim, temos uma matriz com n = 150 linhas e p = 4 colunas em que cada linha i correspondeas observacoes do comprimento e da largura da petala e da sepala da ia flor da amostra.
Figura 1.2: Matriz de Dados para o Conjunto Iris
1.2 O que sao Projeccoes Aleatorias?
A “maldicao da dimensionalidade” afecta o tratamento de dados actual essencialmente deduas formas:
• ha muitas observacoes e muitas caracterısticas medidas, o que aumenta a complexidade daanalise;
• ha poucas observacoes para muitos caracterısticas medidas, o que dificulta a estimacao,tornando-a extremamente imprecisa.
Pretendemos solucionar de uma forma eficiente estes dois problemas em determinadas si-tuacoes.
O objectivo das projeccoes aleatorias passa por reduzir a dimensao p dos n vectores para umvalor k < p, preservando os quadrados das distancias entre todos os n vectores a menos de umfactor 1±ε, com ε suficientemente pequeno, mediante condicoes que veremos adiante. Desta forma,mantem-se a dimensao n da amostra, reduzindo-se apenas a dimensao de cada vector de atributos.Necessitamos de encontrar uma funcao f : Rp → Rk tal que, para quaisquer u,v ∈ {x1, · · · ,xn}(linhas da matriz de dados X),
(1− ε)∥∥f(u)− f(v)
∥∥2 ≤‖u− v‖2 ≤ (1 + ε)∥∥f(u)− f(v)
∥∥2.
Em suma:
Pagina 2 de 35
CAPITULO 1 PROJECCOES ALEATORIAS
O que temos? n vectores em RpO que pretendemos? n vectores em Rk, com k < p, com distancias quase preservadas
Do que necessitamos?f : Rp → Rk
(1− ε)∥∥f(u)− f(v)
∥∥2 ≤‖u− v‖2 ≤ (1 + ε)∥∥f(u)− f(v)
∥∥2
Tabela 1.1: Resumo do Objectivo das Projeccoes Aleatorias
A tıtulo de exemplo, numa dimensao muito inferior aquelas para as quais este metodo podeser aplicado, temos a seguinte ilustracao:
Figura 1.3: Exemplificacao do Pretendido. Fonte:[1]
Projectamos os pontos da superfıcie da esfera em R3 na circunferencia em R2, preservando asdistancias entre todos os pontos a menos de um erro.
Novamente de forma intuitiva,
Figura 1.4: Exemplificacao do Pretendido. Fonte:[1]
Pagina 3 de 35
PROJECCOES ALEATORIAS CAPITULO 1
comecando pelo cubo [0, 1]3 em R3, podemos projectar os pontos numa das faces [0, 1]2 do cubo,preservando quer distancias quer variabilidade dos dados. Se nao for suficiente, podemos ainda,da mesma forma, projectar esses dados em R2 no intervalo [0, 1] da recta real. O mesmo acontececom o seguinte caso:
Figura 1.5: Exemplificacao do Pretendido. Fonte:[1]
Mas nada exige que a projeccao seja feita na recta real. Podem ser escolhidos outros espacoscomo, por exemplo, a bissectriz dos quadrantes ımpares:
Figura 1.6: Exemplificacao do Pretendido. Fonte:[1]
Necessitamos de saber como podemos determinar a transformacao linear. Poderemos utiliza-la independentemente dos valores de n, a dimensao da amostra, e de p, o numero de atributosem estudo? Qual e o menor k possıvel? Por outras palavras, qual e a menor dimensao na qualpodemos projectar os n vectores de Rp? Iremos responder a estas questoes nas seccoes seguintes.
Pagina 4 de 35
Capıtulo 2
Como funcionam as ProjeccoesAleatorias?
2.1 O Lema de Johnson-LindenstraussA base da teoria das Projeccoes Aleatorias esta no lema de Johnson-Lidenstrauss. Antes de
o enunciarmos e demonstrarmos, focar-nos-emos em dois lemas auxiliares.
Lema 1.Se Q ∼ χ2
(k) entao quaisquer que sejam 0 < ε < 1 e k ∈ N tal que k ≥ d 243ε2−2ε3 log ne,
P [(1− ε)k ≤ Q ≤ (1 + ε)k] ≥ 1− 2n−2.
Demonstracao. Suponhamos que Q ∼ χ2(k) e tomemos ε qualquer no intervalo ]0, 1[.
• Majoracao de P [Q ≥ (1 + ε)k]
Comecemos por majorar P [Q ≥ (1 + ε)k] utilizando a desigualdade de Markov (enunciada edemonstrada em anexo), a bijectividade e a monotonia da exponencial.
P [Q ≥ (1 + ε)k]t>0= P [tQ ≥ t(1 + ε)k] = P
[etQ ≥ et(1+ε)k
] des.≤
Markov
E(etQ)
et(1+ε)k
t< 12=
t< 12=MQ(t)
et(1+ε)k=
(1− 2t)−k2
et(1+ε)k
Utilizamos o facto de E(etQ)
corresponder a funcao geradora de momentos de Q para t < 12 .
Ficamos com
P [Q ≥ (1 + ε)k] ≤ (1− 2t)−k2
et(1+ε)k
para qualquer 0 < t < 12 , portanto, como ε pertence a ]0, 1[, podemos em particular tomar
t = ε2(1+ε) .
P [Q ≥ (1+ε)k] ≤
(1− 2 ε
2(1+ε)
)− k2e
ε2(1+ε)
(1+ε)k=
(1− ε
1+ε
)− k2eε2k
=(1 + ε)
k2
(eε)k2
=
(1 + ε
eε
) k2
=[(1 + ε)e−ε
] k2
Como 1 + ε ≤ eε− ε2
2 + ε3
3 para ε ∈]0, 1[, temos, para k ≥ 2,
P [Q ≥ (1 + ε)k] ≤(eε−
ε2
2 + ε3
3 e−ε) k
2
=
(eε2
2 −ε3
3
)− k2=
(e
3ε2−2ε3
6
)− k2.
Pagina 5 de 35
PROJECCOES ALEATORIAS CAPITULO 2
Tomando k ≥ 243ε2−2ε3 log n,
P [Q ≥ (1 + ε)k] ≤(e
3ε2−2ε3
6
)− 123ε2−2ε3
logn
= e−2 logn =(elogn
)−2
= n−2 ,
ou seja,P [Q ≥ (1 + ε)k] ≤ n−2.
Analogamente, podemos majorar P [Q ≤ (1− ε)k] e vamos obter o mesmo resultado.
• Majoracao de P [Q ≤ (1− ε)k]
P [Q ≤ (1− ε)k]t>0= P [−tQ ≥ −t(1− ε)k] = P
[e−tQ ≥ e−t(1−ε)k
] des.≤
Markov
E(e−tQ
)e−t(1−ε)k
t>− 12=
t>− 12=MQ(−t)e−t(1−ε)k
=(1 + 2t)−
k2
e−t(1−ε)k
Utilizamos o facto de E(etQ)
corresponder a funcao geradora de momentos de Q para−t < 1
2 , ou seja, para t > − 12 (previamente ja tınhamos exigido t > 0). Ficamos com
P [Q ≤ (1− ε)k] ≤ (1 + 2t)−k2
e−t(1−ε)k
para qualquer 0 < t < 12 , portanto, como ε pertence a ]0, 1[, podemos tomar t = ε
2(1−ε) .
P [Q ≤ (1−ε)k] ≤
(1 + 2 ε
2(1−ε)
)− k2e−
ε2(1−ε) (1−ε)k =
(1 + ε
1−ε
)− k2e−
ε2k
=(1− ε)
k2
(eε)−k2
=
(1− εe−ε
) k2
=[(1− ε)eε
] k2
Como 1− ε ≤ e−ε− ε2
2 para ε ∈]0, 1[, temos, para k ≥ 2,
P [Q ≤ (1− ε)k] ≤(e−ε−
ε2
2 eε) k
2
=
(eε2
2
)− k2=(eε
2)− k4
.
Tomando k ≥ 243ε2−2ε3 log n,
P [Q ≤ (1− ε)k] ≤(eε
2)− 6
3ε2−2ε3logn
=(elogn
)− 63−2ε
= n−6
3−2ε
Como n ≥ 1 e, para ε ∈]0, 1[, − 63−2ε ≤ −2,
P [Q ≤ (1− ε)k] ≤ n−6
3−2ε ≤ n−2.
• Minoracao de P [(1− ε)k ≤ Q ≤ (1 + ε)k]
Juntando os resultados anteriores,
P [(1− ε)k ≤ Q ≤ (1 + ε)k] = P [Q ≤ (1 + ε)k]− P [Q < (1− ε)k] =
=1− P [Q > (1 + ε)k]− P [Q < (1− ε)k] =continua
1− P [Q ≥ (1 + ε)k]− P [Q ≤ (1− ε)k] ≥
≥1− n−2 − n−2 = 1− 2n−2
Pagina 6 de 35
CAPITULO 2 PROJECCOES ALEATORIAS
Notemos que nao foi necessario introduzir a condicao k ≥ 2 no teorema, apesar de ser usadana sua demonstracao, isto porque para qualquer n > 1, a condicao k ≥ d 24
3ε2−2ε3 log ne ja garanteque k ≥ 2. Se n = 1, entao a condicao sobre k e irrelevante, pois o resultado obtido e
P [(1− ε)k ≤ Q ≤ (1 + ε)k] ≥ 1− 2 = −1
que e sempre verdade.
Lema 2.Se x ∈ Rp, k ∈ N for tal que d 24
3ε2−2ε3 log ne ≤ k < p e A ∈ Rk×p com Aij ∼i.i.d.
N(0, 1) entao,
qualquer que seja 0 < ε < 1,
P
[(1− ε)‖x‖2 ≤
∥∥∥∥ 1√kAx
∥∥∥∥2
≤ (1 + ε)‖x‖2]≥ 1− 2n−2.
Demonstracao. Seja x = Ax. Comecemos por provar que E(x2i
)=‖x‖2.
E(x2i
)= E
p∑j=1
Aijxj
2
Notemos que, se aplicarmos o binomio de Newton sucessivas vezes apenas encontramos constantesjunto aos termos cruzados, ou seja, quando obtemos produtos da forma AijxjAikxk com j 6= k.
Porem, quando j 6= k,
E(AijxjAikxk) = E(AijAik)xjxk =indep.
E(Aij)E(Aik)xjxk = 0× 0× xjxk = 0
pois supusemos que Aij ∼i.i.d.
N(0, 1).
Desta forma, sobram apenas os termos resultantes dos quadrados, sem constantes multiplica-tivas.
E(x2i
)= E
p∑j=1
Aijxj
2 = E
p∑j=1
A2ijx
2j
=
p∑j=1
[E(A2ij
)x2j
]Nesta situacao, como Aij ∼ N(0, 1), sabemos que A2
ij ∼ χ2(1) logo o seu valor esperado corres-
ponde aos graus de liberdade da distribuicao do qui-quadrado, ou seja, 1 neste caso.
E(x2i
)=
p∑j=1
[E(A2ij
)x2j
]=
p∑j=1
x2j =‖x‖2
Seja Ti = xi‖x‖ . Entao, Ti ∼
i.i.d.N(0, 1) e, consequentemente, T 2
i ∼i.i.d.
χ2(1). Logo,
Q =
k∑i=1
T 2i =‖x‖2
‖x‖2∼ χ2
(k).
Podemos neste ponto aplicar o lema anterior, que garante que para qualquer ε ∈]0, 1[,
P [(1− ε)k ≤ Q ≤ (1 + ε)k] ≥ 1− 2n−2.
Desenvolvendo o primeiro membro, obtemos
P [(1− ε)k ≤ Q ≤ (1 + ε)k] = P
[(1− ε)k ≤ ‖x‖
2
‖x‖2≤ (1 + ε)k
]=
=P
[(1− ε)k ≤ ‖Ax‖
2
‖x‖2≤ (1 + ε)k
]= P
[(1− ε)‖x‖2 ≤ ‖Ax‖
2
k≤ (1 + ε)‖x‖2
]=
=P
[(1− ε)‖x‖2 ≤
∥∥∥∥ 1√kAx
∥∥∥∥2
≤ (1 + ε)‖x‖2]
Pagina 7 de 35
PROJECCOES ALEATORIAS CAPITULO 2
logo
P
[(1− ε)‖x‖2 ≤
∥∥∥∥ 1√kAx
∥∥∥∥2
≤ (1 + ε)‖x‖2]≥ 1− 2n−2
Teorema 1 (Lema de Johnson-Lindenstrauss).Sejam:
• X uma matriz em Rn×p, com linhas denotadas por xi ∈ Rp, ∀i ∈ {1, · · · , n};
X =
xt1...xtn
=
x11 · · · x1p
.... . .
...xn1 · · · xnp
∈ Rn×p.
• ε ∈]0, 1[ qualquer;
• k ∈ N tal que d 243ε2−2ε3 log ne ≤ k < p.
Entao existe uma aplicacao f : Rp → Rk tal que para quaisquer u,v ∈ {x1, · · · ,xn} (ou seja,para quaisquer duas linhas u,v de X) se tem
(1− ε)∥∥f(u)− f(v)
∥∥2 ≤‖u− v‖2 ≤ (1 + ε)∥∥f(u)− f(v)
∥∥2.
Demonstracao. Sejam k < p, A ∈ Rk×p com Aij ∼ N(0, 1), A ∼i.i.d.
N(0, 1) e
f : Rp → Rk dada por f(u) =1√kAu.
Tomemos u,v ∈ Rp fixos, linhas de X ∈ Rn×p. Consideremos x = u − v. Aplicando o lemaanterior, temos que
P
[(1− ε)‖x‖2 ≤
∥∥∥∥ 1√kAx
∥∥∥∥2
≤ (1 + ε)‖x‖2]≥ 1− 2n−2 ⇔
⇔P
[(1− ε)‖u− v‖2 ≤
∥∥∥∥ 1√kA(u− v)
∥∥∥∥2
≤ (1 + ε)‖u− v‖2]≥ 1− 2n−2 ⇔
⇔P
[(1− ε)‖u− v‖2 ≤
∥∥∥∥ 1√kAu− 1√
kAv
∥∥∥∥2
≤ (1 + ε)‖u− v‖2]≥ 1− 2n−2
⇔P[(1− ε)‖u− v‖2 ≤
∥∥f(u)− f(v)∥∥2 ≤ (1 + ε)‖u− v‖2
]≥ 1− 2n−2
Portanto, a probabilidade de u e v respeitarem a condicao requerida e igual ou superior a1− 2n−2.
Temos de garantir que a probabilidade de todos os pares de vectores u,v ∈ Rp que sejamlinhas de X ∈ Rn×p respeitarem simultaneamente a condicao de quase isometria e quase certa.
Existindo n linhas, como a norma euclideana e simetrica, temos(n2
)= n(n−1)
2 pares possıveis.
Para o par i ∈{
1, ...,(n2
)}, seja Si o acontecimento
(1− ε)‖u− v‖2 ≤∥∥f(u)− f(v)
∥∥2 ≤ (1 + ε)‖u− v‖2 .
Vimos queP (Si) ≥ 1− 2n−2.
Pagina 8 de 35
CAPITULO 2 PROJECCOES ALEATORIAS
Temos de provar que P
(∩(n2)i=1Si
)> 1
n , recorrendo as leis de De Morgan e a desigualdade de
Bonferroni.
P
(n2)⋂i=1
Si
= 1− P
(n2)⋂i=1
Si
= 1− P
(n2)⋃i=1
Si
≥ 1−(n2)∑i=1
P (Si) = 1−(n2)∑i=1
[1− P (Si)] =
= 1−(n
2
)+
(n2)∑i=1
P (Si) ≥ 1−(n
2
)+
(n2)∑i=1
(1− 2
n2
)= 1−
(n2)∑i=1
2
n2=
= 1− n(n− 1)
2× 2
n2= 1− n2 − n
n2= 1− 1 +
1
n=
1
n
Assim, a probabilidade de todas as linhas da matriz X satisfazerem a condicao de quaseisometria e de pelo menos 1
n , onde n e o numero de linhas de X, k ≥ d 243ε2−2ε3 log ne, e a dimensao
do espaco no qual queremos projectar as linhas de X e 0 < ε < 1. Esta garantido que estaprobabilidade e sempre superior a zero e inferior ou igual a um.
Repetindo a projeccao O(n) vezes, gerando O(n) matrizes A diferentes, obtemos a probabili-dade de sucesso constante igual a 1.
Nota (Outras versoes do lema de Johnson-Lindenstrauss).Existem multiplas versoes do lema de Johnson-Lindenstrauss, que variam na condicao impostasobre a dimensao k do subespaco onde se pretende projectar os dados. Anteriormente, utilizamosa condicao
k ≥ d 24
3ε2 − 2ε3log ne
que pode sofrer variacoes. Adaptando a demonstracao anterior, podemos considerar
k ≥ d20
ε2log ne
porem esta nova condicao requer ε ∈]0, 0.5[, resultando em dimensoes k significativamente superi-ores.
A demonstracao do lema de Johnson-Lidenstrauss com esta nova condicao difere nas majoracoesutilizadas. No lema auxiliar 1, provamos de forma identica que
P [(1− ε)k ≤ Q ≤ (1 + ε)k] ≥ 1− 2e−(ε2−ε3)k
4
bastando, neste caso, utilizar a desigualdade
1 + ε ≤ eε−ε2−ε3
2
e proceder de forma semelhante. Consequentemente, no lema auxiliar 2, com estas novas condicoessobre k e ε, provamos que
P
[(1− ε)‖x‖2 ≤
∥∥∥∥ 1√kAx
∥∥∥∥2
≤ (1 + ε)‖x‖2]≥ 1− 2e−
k4 (ε2−ε3).
A transformacao linear utilizada na demonstracao do lema de Johnson-Lindenstrauss e exacta-mente a mesma.
E possıvel encontrar na literatura outras versoes deste lema para ε > 0 arbitrario e comcondicoes melhoradas sobre k, sendo uma das melhores
k ≥ d12
ε2log ne.
Pagina 9 de 35
PROJECCOES ALEATORIAS CAPITULO 2
Em suma, garante-se que e possıvel reduzir a dimensao do problema para
k ∈ O(
log n
ε2
)
preservando dos quadrados das distancias a menos de um factor 1± ε.
2.2 Consequencias do Lema de Johnson-Lindenstrauss paraProjeccoes Aleatorias
As condicoes deste teorema sugerem que nao deve ser possıvel projectar aleatoriamentequalquer conjunto de vectores. Em primeiro lugar, deveremos ter um valor de p de pelo menos
d 24
3ε2 − 2ε3log ne+ 1,
uma vez que pretendemos ter k < p (caso contrario, nao existiria um ganho no uso desta tecnica).
Vamos averiguar graficamente qual o menor subespaco no qual podemos projectar os dados.Para isso, consideremos a funcao que para cada n > 0 (por questoes graficas, vamos representa-locomo real, apesar de poder tomar apenas valores naturais) e para cada ε ∈]0, 1[ faz correspondero menor k > 0 (pela mesma razao, tambem representado como real no grafico abaixo) dado pelolema de Johnson-Lindenstrauss, ou seja,
k(n, ε) =24
3ε2 − 2ε3log n , nao necessariamente inteiro.
Com o auxılio do Mathematica, podemos representar em 3 dimensoes o grafico desta funcao.
Figura 2.1: Grafico do menor valor de k em funcao de ε e n
Por mera observacao do grafico, verificamos que, fixando ε, existe um crescimento pouco sig-nificativo de k a medida que n aumenta, o que vai ao encontro do esperado, uma vez que temosem conta apenas o logaritmo da dimensao da amostra. Fixando n, notamos um decrescimo dek a medida que ε aumenta. Para ε ∈]0, 0.5[, existe um decrescimo abrupto de k, sendo menosacentuado para ε ≥ 0.5 e muito reduzido quando ε fica proximo de 1. Estas observacoes estao deacordo com as expressoes das derivadas parciais.
Podemos ainda produzir uma tabela, considerando agora os valores de n e k como naturais.
Pagina 10 de 35
CAPITULO 2 PROJECCOES ALEATORIAS
ε0.0001 0.001 0.1 0.3 0.5 0.7 0.9 0.999 0.9999
n
10 1.85× 109 1.85× 107 1974 256 111 71 57 56 56102 3.69× 109 3.69× 107 3948 512 222 141 114 111 111103 5.53× 109 5.53× 107 5921 768 332 212 171 166 166106 1.11× 1010 1.11× 108 11842 1536 664 423 342 332 332109 1.66× 1010 1.66× 108 17763 2303 995 635 512 498 4981012 2.22× 1010 2.22× 108 23684 3071 1327 846 683 664 664
Tabela 2.1: Menor valor de k para ε e n fixos
Como para o problema fazer sentido devemos ter k < p, constatamos que para ε muito proximode zero, apenas devemos aplicar o metodo das projeccoes aleatorias se tivermos p de uma ordemsuperior a 109 ou 1010. Para ε = 0.1 comecamos a obter valores mais reduzidos e, para ε = 0.5ja temos valores da ordem de 102 ou 103, que podem ser excelentes resultados. Se, por exemplo,dispusermos de 1 milhao de vectores de dimensao 10 milhoes, podemos projecta-los, com ε = 0.5,em R664, ficando com 1 milhao de vectores mas de dimensao apenas 664, com todos os quadradosdas distancias preservados a menos de um factor 1± ε.
Ja averiguamos em que situacoes podemos aplicar a tecnica das projeccoes aleatorias. Veremosem seguida como aplica-la e em que difere do metodo mais utilizado actualmente.
2.3 Em que diferem da Analise em Componentes Princi-pais?
A analise em componentes principais, ou simplesmente PCA, e um procedimento algebrico queutiliza uma transformacao linear ortogonal para converter um conjunto de observacoes possivel-mente correlacionadas em subconjuntos de variaveis nao linearmente correlacionadas, designadascomponentes principais.
No maximo, existem tantas componentes principais quanto variaveis. A 1a componente princi-pal e a que tem maior variancia, por isso, e aquela que justifica a maior variabilidade dos dados. A2a componente principal e a que tem a segunda maior variancia e e ortogonal a 1a. E assim sucessi-vamente ate a ultima componente principal, que representa a direccao com a menor variabilidade,ortogonal as restantes.
Algebricamente, as componentes principais sao combinacoes lineares de variaveis do conjuntode observacoes fornecido:
α1x1 + α2x2 + · · ·+ αpxp.
Geometricamente, podemos interpretar as componentes principais como um novo sistema deeixos, obtido por rotacao dos originais, que maximiza a variancia dos dados.
De outro ponto de vista geometrico, correspondem tambem ao hiperplano que melhor se ajustaaos dados. A 1a componente principal define uma recta, com a soma dos quadrados das distanciasdos pontos do conjunto de dados originais a recta minimizada. A 2a componente principal defineum plano, com a soma dos quadrados das distancias dos pontos do conjunto de dados ao planominimizada. E assim sucessivamente.
As componentes principais tem a vantagem de nao exigirem o conhecimento de distribuicoesde probabilidades sobre as variaveis. Porem, se forem provenientes de populacoes normais, podemser interpretadas como elipsoides de densidade constante.
Portanto, as diferencas entre a analise em componentes principais e as projeccoes aleatoriassao vastas, comecando pelo objectivo: nas projeccoes aleatorias pretendemos preservar ao maximoos quadrados das distancias entre os pontos, enquanto que na analise em componentes principaispretendemos preservar o maximo de variabilidade dos dados.
Pagina 11 de 35
Capıtulo 3
Como gerar ProjeccoesAleatorias?
3.1 O Algoritmo de ProjeccaoA demonstracao do lema de Johnson-Lindenstrauss da-nos uma ferramenta de calculo da
funcao pretendida. Dada a matriz de dados
X =
x11 · · · x1p
.... . .
...xn1 · · · xnp
∈ Rn×p
de n observacoes com p atributos cada, queremos encontrar uma matriz de projeccao R ∈ Rp×ktal que
E = XR
seja a projeccao da matriz X.Seja f : Rp → Rk dada por
f(u) =1√kAu ,
onde A ∈ Rk×p e uma matriz de dimensao k × p onde todas as suas entradas i, j verificam
Aij ∼i.i.d.
N(0, 1).
A demonstracao do lema de Johnson-Lindenstrauss garante que esta aplicacao preserva os qua-drados das distancias a menos de um factor 1± ε, com ε ∈]0, 1[, quando repetida O(n) vezes.
Desta forma, tomemos R ∈ Rp×k tal que
Rt =1√kA⇔ R =
1√kAt.
Entao, para cada linha u de X, temos
f(u) = Rtu.
Ou seja, f transforma todas as linhas xi de X como vectores, ou seja, como matrizes coluna.Entao, se, na expressao anterior, substituirmos u por Xt obtemos, ao fazer o produto, umamatriz RtXt em que qualquer coluna j corresponde a projeccao da coluna j de Xt. Mas isto eprecisamente o transposto do que pretendemos obter. Como(
RtXt)t
= XR
Pagina 12 de 35
CAPITULO 3 PROJECCOES ALEATORIAS
ficamos comE = XR.
Em suma,
Estado Objecto Notacao CalculoInput Matriz de Dados X ∈ Rn×p –
Auxiliar Matriz de Entradas Normais Padronizadas A ∈ Rk×p Aij ∼i.i.d.
N(0, 1)
Auxiliar Matriz de Projeccao R ∈ Rp×k R = 1√kAt
Output Projeccao da Matriz de Dados E ∈ Rn×k E = XR
Tabela 3.1: Resumo do Metodo para Gerar Projeccoes Aleatorias
e o procedimento que devemos executar O(n) vezes.Para a construcao do algoritmo formal, como e necessario gerar O(n) matrizes R ∈ Rp×k,
calcular para cada uma E ∈ Rn×k e posteriormente a media de cada entrada, vamos estabelecerque serao feitas n repeticoes. Assim, podemos melhorar a eficiencia do algoritmo. Como X e fixo,o output sera
E =1
n
n∑l=1
El =1
n
n∑l=1
XRl =1
nX
n∑l=1
Rl =1
nX
n∑l=1
1√kAl
t =1
n√kX
n∑l=1
Alt
ou seja, basta gerar n matrizes At ∈ Rp×k, soma-las, multiplicar pela matriz X e dividir cadaentrada por n
√k.
O resultado vai ao encontro do expectavel, pois sabemos que uma combinacao linear de variaveisaleatorias normais segue tambem uma distribuicao normal.
Isto permite-nos escrever o seguinte algoritmo, dada uma matriz de dados X ∈ Rn×p:
1. Fixar ε ∈]0, 1[;
2. Escolher k ∈ N tal que d 243ε2−2ε3 log ne ≤ k < p;
3. Construir uma matrizR = 1n√kAt, ondeA =
∑nl=1Al eAl sao n matrizes reais de dimensao
k × p com entradas normais padronizadas, isto e, Alij ∼i.i.d
N(0, 1), ∀i ∈ {1, ..., k} , ∀j ∈{1, ..., p};
4. Obter a projeccao da matriz X calculando E = XR.
3.2 Interpretacao dos Atributos apos Projeccao
A matriz apos projeccao e o produto da matriz de dadosX ∈ Rn×p por uma matrizR ∈ Rp×k.
E = XR =
x11 · · · x1p
.... . .
...xn1 · · · xnp
r11 · · · r1k
.... . .
...rp1 · · · rpk
=
∑pj=1 x1jrj1 · · ·
∑pj=1 x1jrjk
.... . .
...∑pj=1 xnjrj1 · · ·
∑pj=1 xnjrjk
Ou seja, a semelhanca da analise em componentes principais, cada novo atributo e uma com-
binacao linear de todos os originais onde os coeficientes sao elementos da matriz R da forma
Rij =1
n√k
n∑l=1
Alji
com Alji ∼ N(0, 1).Com esta ferramenta ja podemos analisar casos reais. Nas seccoes seguintes aplicaremos esta
tecnica a dados simulados e a dados reais na construcao de modelos de regressao linear e deregressao logıstica.
Pagina 13 de 35
Capıtulo 4
Uma Aplicacao - Regressao LinearMultipla
4.1 O Modelo de Regressao Linear MultiplaProcuramos encontrar um modelo que relacione uma variavel aleatoria, de resposta, Y , com
um vector de p variaveis explicativas determinısticas, x =(x1, · · · , xp
). E importante notar a
alteracao de notacao (por coerencia com as seccoes anteriores) geralmente utilizada no estudo deModelos Lineares: estamos a considerar a existencia de p variaveis explicativas e p+1 parametros,quando o usual e considerar p− 1 variaveis explicativas e p parametros, o que afecta os graus deliberdade nas estatısticas de teste seguintes.
Consideremos o modelo linear geral com estrutura de Gauss-Markov:
y = XDβ + ε⇔ Yi = β0 + β1xi1 + · · ·+ βpxip + εi , ∀i ∈ {1, · · · , n}
onde
• y = (Y1, ..., Yn) e o vector da amostra de dimensao n da variavel de resposta Y ;
• XD =
1 x1,1 · · · x1,p
......
. . ....
1 xn,1 · · · xn,p
e a matriz n× (p+ 1) de delineamento, que contem os valores
das observacoes das p variaveis explicativas (e usualmente denotada apenas por X, poremdenota-la-emos por XD para se diferenciar da matriz X das seccoes anteriores);
• β = (β0, ..., βp) e o vector que contem os p+ 1 coeficientes de regressao;
• ε = (ε1, ..., εn) e o vector dos erros aleatorios tal que:
– E(ε) = 0⇔ E(εi) = 0 , ∀i ∈ {1, ..., n};– V ar(ε) = σ2I ⇔ V ar(εi) = σ2 , ∀i ∈ {1, ..., n};– Corr(εi, εj) = 0 , ∀i 6= j.
Ou seja, supomos que os erros aleatorios tem valor esperado nulo, variancia constante e naosao correlacionados.
Assim, a resposta esperada eE(Y |x) = XDβ.
Na necessidade de fazer inferencias, necessitamos de assumir uma distribuicao conhecida. Porisso, supomos adicionalmente que
εi ∼i.i.d.
N(
0, σ2)
Pagina 14 de 35
CAPITULO 4 PROJECCOES ALEATORIAS
Nestas condicoes, os estimadores de mınimos quadrados e de maxima verosimilhanca do vectordos parametros de regressao coincidem e podem ser obtidos linearmente.
Nao dispondo de uma amostra dos erros aleatorios, definimos resıduos como a diferenca entreo valor observado e o valor ajustado pelo modelo:
e = y − y ⇔ ei = yi − yi , ∀i ∈ {1, ..., n}
Estes reflectem o comportamento dos erros aleatorios, na medida em que o seu valor esperadotambem e nulo e a variancia igual a σ2(I −H), ou seja, para cada ei, a variancia e σ2(1− hii).
Como a variancia dos resıduos nao e igual a dos erros aleatorios, e util padroniza-los para quetenham variancia igual a 1. Obtemos assim os resıduos padronizados, e∗i , que permitem detectaroutliers na variavel de resposta, sendo a observacao suspeita se o seu resıduo padronizado for, emmodulo, superior a 2, ou seja, superior a duas vezes a variancia dos resıduos.
A distancia de Cook, Di, mede a influencia da observacao i nos n valores ajustados yi, combi-nando a informacao sobre outliers em Y e em x. Consideramos a observacao i influente se Di forsuperior a 1 ou a 2(p+1)
n ou a 4n−p .
Pretendemos que o modelo de regressao explique uma boa parte da variabilidade total obser-vada na variavel de resposta. Assim, podemos decompor a variacao de yi em relacao a sua mediay em duas componentes:
yi − y = (yi − y) + (yi − yi)
onde yi− y e o desvio da regressao em relacao a media e yi− yi sao os resıduos, que correspondema variabilidade nao explicada pelo modelo de regressao.
Desta forma, definimos:
• SST =∑ni=1(yi − y)2 como a soma dos quadrados total, com n − 1 graus de liberdade,
coincidindo com a concretizacao do estimador centrado da variancia de Y a menos do factorn− 1;
• SSR =∑ni=1(yi− y)2 como a soma dos quadrados explicada pelo modelo de regressao, com
p graus de liberdade;
• SSE =∑ni=1(yi − y)2 como a soma dos quadrados dos resıduos, com n − p − 1 graus
de liberdade, sendo a parcela nao explicada pelo modelo de regressao, que permite aindaescrever o estimador centrado da variancia do modelo como σ2 = MSE = SSE
n−p−1 ,
com a relacaoSST = SSR+ SSE.
Com estes dados, e possıvel testar a significancia a regressao, isto e, se os coeficientes deregressao, excluindo o do termo independente, sao nulos, ou seja,
H0 : ∀k∈{1,...,p}βk = 0 vs H1 : ∃k∈{1,...,p} βk 6= 0
onde
F ∗ =MSR
MSE=
SSRp
SSEn−p−1
∼sob H0
F(p,n−p−1)
e a estatıstica de teste que nos permite avaliar a significancia de regressao. Rejeitamos a hipotesedos p coeficientes de regressao (de onde se exclui o termo independente) serem nulos para valoresbaixos da observacao da estatıstica de teste.
Sendo, por vezes, necessario testar se e possıvel remover alguma variavel do modelo, utilizamostestes-t, que derivam de testes F-parciais, que permitem testar se algum coeficiente βk e nulo.
H0 : βk = 0 vs H1 : βk 6= 0
e a estatıstica de teste e
T ∗ =βk − βks.e. (βk)
∼sob H0
t(n−p−1).
Pagina 15 de 35
PROJECCOES ALEATORIAS CAPITULO 4
O coeficiente de determinacao, R2, e uma medida muito frequente de avaliacao do grau deajuste do modelo aos dados, indicando que percentagem da variabilidade total e explicada pelomodelo de regressao, sendo um bom modelo quando R2 e proximo de 1 e mau quando R2 e proximode 0. Porem, e necessario comparar modelos com um diferente numero de variaveis explicativas e,consequentemente, com diferentes graus de liberdade. Por isso, e conveniente utilizar o coeficientede determinacao ajustado, R2
a, que pondera o R2 pelos graus de liberdade do modelo:
R2 = 1− SSE
SST, R2
a = 1− MSE
MST.
Para uma facil leitura dos resultados e aumentar a precisao da estimacao dos parametros deregressao, e conveniente evitar o problema da multicolinearidade, isto e, evitar que as variaveisexplicativas estejam altamente correlacionadas. Para tal, dispomos da estatıstica V IF , VarianceInflactor Factor, que e um indicador de existencia de multicolinearidade quando toma valoressuperiores a 10 e de nao existencia do mesmo problema quando os seus valores sao inferiores a 5.Para valores intermedios, nada podemos concluir.
Para determinar qual o melhor modelo que se ajusta aos dados, podemos tambem utilizaro criterio AIC, Akaike Information Criterion, baseado nos testes F-parciais. O modelo e tantomelhor quanto menor for o valor de AIC.
Dispomos ainda do criterio PRESS que consiste em avaliar a soma dos quadrados das dife-rencas entre uma observacao e o valor ajustado do modelo retirando essa observacao. Novamente,o modelo sera tanto melhor quanto menor for o valor do criterio PRESS.
Seleccionado o modelo, e necessario valida-lo, tendo em conta teoria e informacao empıricasobre o tema, mas tambem estimando novamente os parametros de regressao utilizando diferentesobservacoes. Os novos parametros estimados deverao ser semelhantes aos anteriores. Sendo n∗ adimensao da nova amostra, temos de calcular a media dos quadrados do erro de predicao, definidapor
MSPR =1
n∗
n∗∑i=1
(yi − yi)2
que, se o modelo for valido, verificara
MSPR 'MSE
onde MSE e a media dos quadrados dos resıduos do modelo construıdo anteriormente.Para esta ultima etapa, e essencial que os dados fornecidos sejam divididos em dois subconjun-
tos: dados de treino, com os quais se constroi o modelo, perfazendo sensivelmente 80% da amostra,quando possıvel; dados de teste, com os quais se valia o modelo, perfazendo os restantes 20% daamostra.
4.2 Simulacao de Modelos de Regressao Linear Multipla
(a) Modelo de Regressao Linear Multipla numa Situacao Ideal
Vamos comecar por testar o metodo das projeccoes aleatorias numa situacao em que seriateoricamente desnecessario. Vamos gerar pseudo-aleatoriamente:
• n = 5000 observacoes;
• p = 1000 variaveis explicativas, das quais:
– 400 de distribuicao N(20, 25);
– 500 de distribuicao Unif(5, 95);
– 100 de distribuicao Bin(100, 0.5);
• X ∈ R5000×1000 e a concatenacao das 5000 observacoes de 1000 variaveis explicativas geradas;
Pagina 16 de 35
CAPITULO 4 PROJECCOES ALEATORIAS
• βk ∼ N(0, 100), ∀k ∈ {0, 1, · · · , p} parametros de regressao verdadeiros;
• σ = 2.055656 desvio-padrao dos erros aleatorios (constante);
• εi ∼ N(0, σ2
), ∀i ∈ {1, · · · , n} erros aleatorios, com a unica suposicao imposta pelo
modelo!
Sumariamente, geramos 5000 observacoes de cada uma das 1000 variaveis explicativas, segundoas distribuicoes acima, utilizando algoritmos de geracao de numeros pseudo-aleatorios do R.
Apos gerar os dados, procedemos a simulacao dos parametros de regressao verdadeiros. Comecamospor gerar os p coeficientes β1, · · · , βp e concatena-los num vector, assumindo que cada parametrosegue uma distribuicao definida a partida. Em seguida, geramos o termo independente β0 assu-mindo a mesma distribuicao.
Por ultimo geramos a variancia dos erros aleatorios, que assumimos constante. Assim, bastagerar o desvio-padrao σ pseudo-aleatoriamente e, em seguida, gerar o vector de erros aleatorios dedimensao n onde cada entrada segue uma distribuicao normal de valor esperado nulo e varianciaσ2, sendo esta a unica distribuicao imposta pelo modelo (todas as anteriores foram escolhidasarbitrariamente apenas para efeitos de simulacao).
Nestas condicoes, podemos gerar o vector da variavel de resposta assumindo um modelo deregressao linear multipla. Para isso, basta considerar a forma geral
y = XDβ + ε
e efectuar este calculo, tendo em atencao que a matriz de delineamento XD corresponde a matrizde dados X que geramos anteriormente concatenada com uma coluna totalmente preenchida como valor 1, inserida na primeira posicao.
Apenas para controlo, podemos estimar os parametros β0, β1, · · · , βp e verificar que sao seme-lhantes aos originais simulados anteriormente.
(i) Aplicacao do Metodo das Projeccoes Aleatorias ao Modelo Ideal Gerado comε = 0.5
Podemos proceder a aplicacao do metodo das projeccoes aleatorias. Vamos, em primeirolugar, utilizar um factor ε = 0.5. Assim, reduzimos o numero de variaveis explicativas de p = 1000para k = 409.
Para estimar os parametros de regressao com uma boa precisao, devemos ter entre 5 a 10observacoes por cada variavel explicativa, o que ja se verifica neste caso, pois temos, apos pro-jeccao, 5000 observacoes e 409 variaveis explicativas. Gerando o modelo com os dados projectadoscontinuamos a obter bons resultados.
• R2a ' 71.23%;
• V IF < 5 para todas as variaveis, ou seja, nao existem problemas de multicolinearidade;
• AIC ' 95433;
• PRESS ' 5.7× 1010.
O coeficiente de determinacao ajustado obtido e de cerca de 71.23%, o que indica que essa ea percentagem da variabilidade total observada na variavel de resposta, ponderada pelos graus deliberdade, que e explicada pelo modelo de regressao.
A estatıstica V IF apresenta resultados inferiores a 5 para todas as 409 novas variaveis expli-cativas, o que permite concluir a inexistencia de multicolinearidade.
Os criterios AIC e PRESS tem os valores aproximados de 95433 e 57341324612, respectiva-mente, o que indica a existencia muitas observacoes importantes e que o modelo nao sera o quemelhor se ajusta aos dados. As suposicoes associadas ao modelo parecem manter-se por analisedos graficos do comando plot.
Pagina 17 de 35
PROJECCOES ALEATORIAS CAPITULO 4
(a) Resıduos vs. Valores Ajustados (b) Papel de Probabilidades
(c) Raiz dos Resıduos Padronizados vs.Valores Ajustados
(d) Resıduos Padronizados vs. Pontos deAlavanca
Figura 4.1: Comando plot do Modelo com Dados Ideais e Projectados com ε = 0.5
No grafico de resıduos vs. valores ajustados verificamos que a recta que passa pelo centroidedos pontos e praticamente colinear com o eixo horizontal, ou seja, em media, a diferenca en-tre os valores das observacoes yi e os respectivos valores ajustados yi e nula, o que nos permiteverificar a suposicao de os erros aleatorios terem valor esperado nulo. Estando os pontos unifor-memente distribuıdos sobre a mesma gama de valores, podemos assumir variancia constante doserros aleatorios, bem como a nao correlacao dos mesmos. Sabendo que o erro padrao estimadofoi σ = 3269 e que consideramos outliers observacoes com resıduos em modulo superiores a 3σ esuspeitos quando estao entre 2σ e 3σ, verificamos que nao existem observacoes suspeitas de seremoutliers, como era de esperar atendendo a simulacao.
No grafico de papel de probabilidades, em que comparamos os quantis teoricos da distribuicaodos erros aleatorios com os resıduos padronizados, os pontos encontram-se geralmente sobre abissectriz dos quadrantes ımpares, pelo que podemos assumir a normalidade dos erros aleatorios,apesar de surgirem ligeiros problemas nos quantis mais elevados e mais reduzidos.
No grafico da raiz dos resıduos padronizados vs. valores ajustados tiramos conclusoes se-melhantes as do primeiro grafico, com a recta que passa pelo centroide dos pontos, que estaouniformemente distribuıdos na mesma gama de valores, aproximadamente horizontal, o que indicavalor esperado dos erros aleatorios nulo, bem como variancia constante. Neste grafico surgemalgumas observacoes suspeitas, que poderıamos considerar potenciais outliers, apresentando a raizdos resıduos padronizados relativamente elevada.
No grafico de resıduos padronizados vs. pontos de alavanca, pelos motivos anteriores, veri-ficamos novamente valor esperado nulo e variancia constante dos erros aleatorios, com poucasobservacoes atıpicas. Os dados estao dentro do limite da distancia de Cook, o que indica que naoexistem observacoes muito influentes na estimacao dos parametros do modelo.
(ii) Aplicacao do Metodo das Projeccoes Aleatorias ao Modelo Ideal Gerado comε = 0.999
Podemos experimentar tambem a projeccao aleatoria com ε = 0.999, que produz o menorespaco de dimensao k < p. Neste caso, projectamos 5000 vectores de R1000 para 5000 vectores
Pagina 18 de 35
CAPITULO 4 PROJECCOES ALEATORIAS
em R205, cerca de metade da dimensao anterior obtida com ε = 0.5. A precisao na estimacao dosparametros e tambem elevada, pois temos 5000 observacoes para 205 variaveis explicativas.
Os resultados obtidos sao razoaveis, mas significativamente inferiores aos anteriores.
• R2a ' 37.58%;
• V IF < 5;
• AIC ' 98976;
• PRESS ' 1.2× 1010.
A variabilidade total observada na variavel de resposta, ponderada pelos graus de liberade, que eexplicada pelo modelo reduziu significativamente para apenas 37.58%. Mantem-se sem apresentarproblemas de multicolinearidade, com valores da estatıstica V IF inferiores a 5 para todas as 205variaveis explicativas. Os criterios AIC e PRESS continuam com valores bastante elevados, deaproximadamente 98976 e 1.2×1010, respectivamente, repetindo-se a conclusao do modelo anterior.Ainda assim, as suposicoes de valor esperado nulo, variancia constante e nao correlacao dos errosaleatorios do modelo verificam-se pela analise dos graficos do comando plot.
(a) Resıduos vs. Valores Ajustados (b) Papel de Probabilidades
(c) Raiz dos Resıduos Padronizados vs.Valores Ajustados
(d) Resıduos Padronizados vs. Pontos deAlavanca
Figura 4.2: Comando plot do Modelo com Dados Ideais e Projectados com ε = 0.999
As conclusoes sao em tudo semelhantes ao caso anterior.Verificamos que, apesar das projeccoes aleatorias parecerem manter as suposicoes do modelo,
a variabilidade total explicada aparenta diminuir e a influencia das observacoes aumentar.
(iii) Aplicacao de Analise em Componentes Principais ao Modelo Ideal Gerado
Com vista a reducao de dimensionalidade do problema, podemos aplicar analise em compo-nentes principais aos dados simulados e proceder a construcao do modelo de regressao linear.
Extraindo, com o auxılio do R, as componentes principais, verificamos que necessitamos de 398componentes para justificar 85% da variabilidade dos dados. Com 409 componentes, conseguimos
Pagina 19 de 35
PROJECCOES ALEATORIAS CAPITULO 4
justificar 86.49% da variabilidade e, com 205, apenas 52.42%. Dado que o ganho em utilizar 409componentes nao e relevante, vamos extrair apenas 398 componentes.
Nesta situacao, ficamos com 5000 observacoes para 398 variaveis, o que permite estimar osparametros de regressao com uma boa precisao.
Os resultados sao superiores aos obtidos com projeccoes aleatorias.
• R2a ' 82.68%;
• V IF < 5;
• AIC ' 92747.12;
• PRESS ' 3.4× 1010.
O coeficiente de determinacao parcial e o mais elevado ate agora, o que vai ao encontro do objectivoda analise em componentes principais: preservar o maximo de variabilidade possıvel. Os problemasde multicolinearidade mantem-se inexistentes e os criterios AIC e PRESS sao da mesma ordemde grandeza anterior. As suposicoes associadas ao modelo de regressao continuam a ser verificadas.
(a) Resıduos vs. Valores Ajustados (b) Papel de Probabilidades
(c) Raiz dos Resıduos Padronizados vs.Valores Ajustados
(d) Resıduos Padronizados vs. Pontos deAlavanca
Figura 4.3: Comando plot do Modelo com 398 Componentes Principais dos Dados Ideais
Em comparacao com o metodo das projeccoes aleatorias, nesta situacao a analise em compo-nentes principais produz resultados melhores e de forma eficiente, demorando aproximadamente10% do tempo necessario para a projeccao dos mesmos dados. O maior ganho esta na preservacaoda variabilidade dos dados, que caracteriza o metodo PCA. Numa situacao ideal, a tecnica dasprojeccoes aleatorias pode nao ser a melhor alternativa ao PCA.
(b) Modelo de Regressao Linear Multipla numa Situacao Atıpica
(i) Aplicacao do Metodo das Projeccoes Aleatorias ao Modelo Atıpico Gerado comε = 0.5
Experimentemos agora uma situacao que requer reducao de dimensao. Consideremos no-vamente n = 5000 observacoes mas p = 10000 variaveis explicativas, 10 vezes mais que no caso
Pagina 20 de 35
CAPITULO 4 PROJECCOES ALEATORIAS
anterior.
• n = 5000 observacoes como no caso anterior;
• p = 10000 variaveis explicativas, 10 vezes mais do que no caso anterior, mantendo-se aproporcao e as distribuicoes:
– 4000 de distribuicao N(20, 25);
– 5000 de distribuicao Unif(5, 95);
– 1000 de distribuicao Bin(100, 0.5);
• X ∈ R5000×1000 e a concatenacao das 5000 observacoes de 1000 variaveis explicativas geradas;
• βk ∼ N(0, 100), ∀k ∈ {0, 1, · · · , p} parametros de regressao verdadeiros;
• σ = 2.055656 desvio-padrao dos erros aleatorios (constante);
• εi ∼ N(0, σ2
), ∀i ∈ {1, · · · , n} erros aleatorios, com a unica suposicao imposta pelo
modelo;
• y = XDβ + ε.
Neste caso, havendo mais variaveis explicativas que observacoes, nao e possıvel estimar osvalores dos coeficientes de um modelo de regressao linear que tenha algum valor cientıfico.
Recordemos que a menor dimensao do subespaco onde projectar e k < p que podemos escolhere d 24
3ε2−2ε3 log ne, ou seja, nao depende explicitamente de p. Portanto, vamos obter os mesmosvalores de k do caso anterior com ε = 0.5 e com ε = 0.999, ou seja, 409 e 205, respectivamente.
Utilizando, com os novos dados, ε = 0.5, podemos projectar os 5000 vectores de R10000 em 5000vectores em R409. Novamente, para estimar os parametros de regressao com uma boa precisao,devemos ter entre 5 a 10 observacoes por cada variavel explicativa, o que ja se verifica neste caso,pois temos, apos projeccao, 5000 observacoes e 409 variaveis explicativas.
Assim, conseguimos obter os seguintes resultados:
• R2a ' 8%;
• V IF < 5 para todas as variaveis;
• AIC ' 112323;
• PRESS ' 1.7× 1012.
Os resultados ja nao sao nada bons, comecando pelo o coeficiente de determinacao ajustado deapenas 8%. Continuam a inexistir problemas de multicolinearidade e os valores dos criterios AICe PRESS sao ainda superiores aos casos anteriores: 112323 e 1.7×1012, respectivamente, ou seja,o modelo nao e o melhor, existindo muitas observacoes influentes. Ainda assim, os graficos docomando plot apresentam-se a um nıvel quase irrepreensıvel, com todas as suposicoes verificadas.
(a) Resıduos vs. Valores Ajustados (b) Papel de Probabilidades
Pagina 21 de 35
PROJECCOES ALEATORIAS CAPITULO 4
(c) Raiz dos Resıduos Padronizados vs.Valores Ajustados
(d) Resıduos Padronizados vs. Pontos deAlavanca
Figura 4.4: Comando plot do Modelo com Dados com Poucas Observacoes e Projectados comε = 0.5
A analise e em tudo identica a primeira efectuada.
(ii) Aplicacao do Metodo das Projeccoes Aleatorias ao Modelo Atıpico Gerado comε = 0.999
A mesma situacao ocorre quando escolhemos ε = 0.999. Ficamos com 5000 vectores em R205,o que permite uma boa precisao na estimacao dos parametros.
• R2a ' 4%;
• V IF < 5;
• AIC ' 112379;
• PRESS ' 1.7× 1012.
O coeficiente de determinacao ajustado e ainda mais reduzido, de apenas 4%. A situacao eidentica a anterior, sem problemas de multicolinearidade mas com valores dos criterios AIC ePRESS ligeiramente superiores mas da mesma ordem de grandeza dos anteriores. As suposicoesdo modelo sao verificadas.
(a) Resıduos vs. Valores Ajustados (b) Papel de Probabilidades
Pagina 22 de 35
CAPITULO 4 PROJECCOES ALEATORIAS
(c) Raiz dos Resıduos Padronizados vs.Valores Ajustados
(d) Resıduos Padronizados vs. Pontos deAlavanca
Figura 4.5: Comando plot do Modelo com Dados com Poucas Observacoes e Projectados comε = 0.999
Concluımos que quando reduzimos a dimensao do espaco a projectar, a variabilidade totalobservada na variavel de resposta, ponderada pelos graus de liberdade, explicada pelo modelo deregressao tende a diminuir. Nao sao gerados problemas de multicolinearidade por este metodo.O ajuste do modelo aos dados aparenta ir diminuindo na medida em que os criterios de Akaike ePRESS vao aumentando, o que e justificado pelo aumento sucessivo do numero de observacoesinfluentes na construcao do modelo.
(iii) Aplicacao de Analise em Componentes Principais ao Modelo Atıpico Gerado
Podemos aplicar tambem neste modelo analise em componentes principais aos dados simula-dos.
Extraindo, com o auxılio do R, as componentes principais, verificamos que necessitamos de 2293componentes para justificar 85% da variabilidade dos dados. Com 409 componentes, conseguimosjustificar apenas 25.83% da variabilidade e, com 205, apenas 14.02%.
Nesta situacao, ficamos com 5000 observacoes para 2293 variaveis, o que permite permite terpouco mais de 2 observacoes por variavel, longe das ideais 5 a 10, mas ainda assim ja podemosestimar parametros de regressao.
Os resultados sao em geral superiores aos obtidos com projeccoes aleatorias.
• R2a ' 72.03%;
• AIC ' 107537.4;
• PRESS ' 8.7× 1011.
O coeficiente de determinacao parcial e bastante mais elevado que os obtidos com projeccoesaleatorias, o que, tal como no caso anterior, vai ao encontro do objectivo da analise em componentesprincipais: preservar o maximo de variabilidade possıvel. Os problemas de multicolinearidade saomais difıceis de testar neste caso, com a estatıstica V IF a demorar varias horas a executar.Empiricamente, nao parece haver motivos para serem criados problemas de multicolinearidade.Os criterios AIC e PRESS sao da mesma ordem de grandeza anterior e s suposicoes associadasao modelo de regressao continuam a ser verificadas.
Pagina 23 de 35
PROJECCOES ALEATORIAS CAPITULO 4
(a) Resıduos vs. Valores Ajustados (b) Papel de Probabilidades
(c) Raiz dos Resıduos Padronizados vs.Valores Ajustados
(d) Resıduos Padronizados vs. Pontos deAlavanca
Figura 4.6: Comando plot do Modelo com 2293 Componentes Principais dos Dados Atıpicos
Em comparacao com o metodo das projeccoes aleatorias, nesta situacao a analise em componen-tes principais produz resultados melhores, mas e menos eficiente. Novamente, o maior ganho estana percentagem da variabilidade dos dados explicada pelo modelo. A projeccao, com ε = 0.999,demora cerca de menos 25% do tempo da extraccao das componentes principais, permitindo aindapoupar imenso espaco em disco: com PCA temos 5000 observacoes e 2293 variaveis explicativas,com projeccoes aleatorias temos 5000 observacoes mas apenas 205 variaveis explicativas, o querepresenta uma poupanca de aproximadamente 91% do espaco em disco! A geracao dos modelostorna-se bastante mais fluida e eficiente, na medida em que ha menos informacao para consultar.
Pagina 24 de 35
Capıtulo 5
Outra Aplicacao - Dados Clınicos
5.1 O Modelo de Regressao Logıstica MultiplaQuando estamos perante uma situacao em que a potencial variavel de resposta e categorica,
e mais adequado utilizar regressao logıstica. Vamos focar-nos na situacao de interesse para asseccoes seguintes: o caso em que a variavel dependente e binaria.
Novamente, temos
• y = (Y1, · · · , Yn) e o vector da amostra de dimensao n da variavel de resposta binaria Y ;
• xi = (1, xi1, · · · , xip), ∀i ∈ {1, · · · , n} os n vectores que contem, cada um, os valores dasobservacoes das p variaveis explicativas determinısticas (correspondem as linhas da matrizde delineamento do modelo de regressao linear multipla);
• β =(β0, · · · , βp
)o vector que contem os p+ 1 coeficientes de regressao.
Como Y e uma variavel aleatoria que so pode tomar dois valores com probabilidade de sucesso(onde toma o valor 1) constante, tem distribuicao de Bernoulli, fazendo sentido calcular
P (Yi = 1) = π(xi1, · · · , xip
)= πi
P (Yi = 0) = 1− π(xi1, · · · , xip
)= 1− πi.
Como o valor esperado de uma distribuicao de Bernoulli e a probabilidade de sucesso, ou seja,P (Y = 1), a resposta esperada e dada por
E(Yi|xi1, · · · , xip
)= πi
Assumindo um modelo de regressao linear multipla, os erros aleatorios nao poderiam ser su-postos normais, porque a variavel de resposta e binaria e, nesse caso, terıamos
Yi = 1⇒ εi = 1−(β0 + β1xi1 + · · ·+ βpxip
)= 1− πi
Yi = 0⇒ εi = −(β0 + β1xi1 + · · ·+ βpxip
)= −πi.
Novamente devido as caracterısticas da distribuicao de Bernoulli, a variancia dos erros aleatoriostambem nao poderia ser constante, pois
V ar (εi) = πi (1− πi)
ou seja, dependeria dos valores das variaveis explicativas.A resposta media E
(Yi|xi
)= πi representa uma probabilidade, logo so pode tomar valores no
intervalo [0, 1], tal como Y . Mas a combinacao linear das variaveis explicativas pode nao garantirque isso ocorra.
Pagina 25 de 35
PROJECCOES ALEATORIAS CAPITULO 5
Para contornar estas situacoes, vamos considerar funcoes logısticas para obter o modelo
E(Yi|xi1, · · · , xip
)= πi =
eβ0+β1xi1+···+βpxip
1 + eβ0+β1xi1+···+βpxip
que podem ser linearizadas atraves da transformacao logit
π∗i = log
(πi
1− πi
)= β0 + β1xi1 + · · ·+ βpxip.
que e contınua, linear nos parametros e toma valores em R.
Figura 5.1: Exemplo de uma Funcao Logıstica
Assim, em forma matricial, o modelo de regressao logıstica multipla escreve-se como
π (x) =eβ0+β1x1+···+βpxp
1 + eβ0+β1x1+···+βpxp=
extβ
1 + extβ=[1 + e−x
tβ]−1
e a transformacao logit e
π∗(x) = log
[π(x)
1− π(x)
]= β0 + β1x1 + · · ·+ βpxp
Podemos estimar β por maxima verosimilhanca. Dada a estrutura do modelo, obtemosequacoes de verosimilhanca que nao sao lineares em qualquer coeficiente de β, o que requer aaplicacao de um metodo numerico para as resolver. O metodo de scoring de Fisher e o utilizadopelo R.
5.2 Dados Clınicos de Diagnostico de LeucemiaForam tornados publicos, no ano de 2002, dados provenientes de ensaios clınicos conduzidos no
St. Jude Children’s Research Hospital, em Memphis, Tenessee, nos Estados Unidos da America.Estes dados constituem um microarray relativo a leucemia linfoblastica aguda: dispomos dasobservacoes de apenas 327 doentes para 12625 variaveis explicativas, correspondendo cada umadestas a um gene em analise, e ainda uma variavel de resposta Y dicotomica, que toma o valor 0se o doente for saudavel e 1 se existirem indıcios de ter leucemia linfoblastica aguda.
Yi =
{1 , se houver indıcios de o paciente isofrer de leucemia linfoblastica aguda
0 , caso contrario, ∀i ∈ {1, · · · , 327}
Apesar dos custos associados ao estudo do genoma humano terem vindo a diminuir nos ultimosanos, ainda sao analises dispendiosas, o que justifica o reduzido numero de pacientes estudados.A quantidade de genes a analisar requer que sejam recolhidos dados de muitos outros pacientespara podermos aplicar metodos estatısticos classicos como modelos de regressao.
Pagina 26 de 35
CAPITULO 5 PROJECCOES ALEATORIAS
Figura 5.2: Construcao de um Microarray
Para podermos construir um modelo de regressao devemos ter idealmente entre 5 a 10 ob-servacoes por cada variavel explicativa. Nesta situacao, o numero de variaveis explicativas e muitosuperior ao de observacoes, sendo impossıvel estimar parametros com algum valor cientıfico.
O metodo das projeccoes aleatorias revela-se uma alternativa eficiente a este problema. Recu-perando a notacao introduzida anteriormente, dispomos de n = 307 vectores (de observacoes) emRp, onde p = 12625 e o numero de atributos (variaveis explicativas/genes). O objectivo passa porprojectarmos estes n vectores de Rp em n vectores em Rk com k < p para o qual possamos aplicarregressao.
Pelo lema de Johnson-Lindenstrauss, o menor k que podemos escolher nesta situacao e
d 24
3ε2 − 2ε3log ne,
com ε ∈]0, 1[. Entao, vamos escolher ε = 0.999 por ser proximo de 1, o que nos garante um valorde k reduzido. Nessa situacao, conseguimos obter k = 139, que e significativamente inferior ap = 12625. Sendo tambem inferior a n = 327, ja podemos construir um modelo de regressao.Ainda assim, nao e o valor ideal, pois temos apenas entre 2 a 3 observacoes por cada variavelexplicativa e nao pelo menos entre 5 e 10, o que pode levar a imprecisoes na estimacao dosparametros e a problemas de overfitting.
Estes dados encontram-se disponıveis na biblioteca stjudem dentro do pacote biocLite do R.Vamos aplicar o algoritmo de projeccao desenvolvido com ε = 0.999.
Sendo a variavel de resposta binaria, o mais correcto e aplicar regressao logıstica, ideal parasituacoes de variavel dependente categorica. Ainda assim, vamos aplicar os dois metodos: regressaolinear multipla e regressao logıstica.
(a) Aplicacao de Regressao Linear Multipla
(i) Com Projeccoes Aleatorias
Consideremos y como o vector de dimensao n com os dados da variavel de resposta, que,neste caso, pode tomar apenas os valores 0 ou 1. Ja a matriz de delineamento XD correspondea concatenacao de uma matriz coluna de dimensao n× 1 com todas as entradas iguais a 1 com aprojeccao da matriz dos dados, de dimensao n× k. Assim, XD e uma matriz n× (k + 1).
X =
1 x11 · · · x1k
......
. . ....
1 xn1 · · · xnk
∈ Rn×(k+1)
Podemos recorrer ao R para estimar os k + 1 = 140 parametros de regressao.Uma vez que o R ignora esse comando, nao tratamos a variavel de resposta como categorica.Estando o modelo construıdo, o objectivo e classificar os pacientes como doentes ou nao. Para
tal, definimos que classificamos um paciente como:
Pagina 27 de 35
PROJECCOES ALEATORIAS CAPITULO 5
• doente, se o valor estimado da variavel de resposta seja superior a 0.5;
• nao doente, caso contrario.
Este modelo apresenta um coeficiente de determinacao multiplo de 52% e um coeficiente dedeterminacao ajustado de apenas 16%. Assim, apenas 16% da variabilidade total observada dosdados, ponderada pelos graus de liberdade, e justificada pelo modelo de regressao. Continuando aanalise do comando summary, constatamos a existencia de varias variaveis com um elevado valor-pdo teste-t associado. Por outras palavras, para a maioria das variaveis nao devemos rejeitar ahipotese do seu coeficiente de regressao ser nulo, ou seja, de ter significancia no modelo. Saoessas as principais variaveis candidatas a serem removidas do modelo. Quanto ao teste-F, temosum valor-p reduzido, de apenas 0.8%, o que permite rejeitar aos nıveis de significancia usuais ahipotese de todos os coeficientes de regressao serem nulos, ou seja, existe significancia da regressao,isto e, existe uma relacao linear entre as variaveis.
A estatıstica V IF apresenta bons resultados, com apenas 4 variaveis a apresentarem um valorsuperior a 10, o que indica a existencia de multicolinearidade em 4 das 139 variaveis explicativas.Das restantes, 92 apresentam um valor observado da estatıstica V IF inferior a 5, o que permiterejeitar a existencia de multicolinearidade. Para as restantes 43 nao e possıvel concluir, pois tantopodera existir multicolinearidade como nao.
Os criterios AIC e PRESS apresentam valores de, aproximadamente, 20 e 27, respectivamente,que sao resultados aceitaveis tendo em conta a dimensao da amostra. Nao aparentam existirobservacoes muito influentes.
E na verificacao das suposicoes do modelo que confirmamos que o modelo de regressao linearmultipla nao e o mais adequado para a explicacao dos dados.
(a) Resıduos vs. Valores Ajustados (b) Papel de Probabilidades
(c) Raiz dos Resıduos Padronizados vs.Valores Ajustados
(d) Resıduos Padronizados vs. Pontos deAlavanca
Figura 5.3: Comando plot do Modelo
Globalmente, vemos que nao podemos tirar conclusoes semelhantes as dos modelos obtidospor simulacao estocastica. Nao e possıvel verificar as suposicoes de valor esperado nulo, variancia
Pagina 28 de 35
CAPITULO 5 PROJECCOES ALEATORIAS
constante e nao correlacao dos erros aleatorios. Na verdade, ate temos fortes indıcios do contrario.Existem tambem alguns potenciais outliers.
Por ultimo, devemos analisar a capacidade preditiva deste modelo. Sabemos que dispomosoriginalmente de 327 pacientes observados, dos quais
• 308 estavam com grande probabilidade doentes;
• 19 nao estavam doentes.
Aplicando a regra que definimos anteriormente para a classificacao (se o valor ajustado davariavel de resposta for superior a 0.5 classificamos como doente, caso contrario como nao doente),classificamos
• 312 como doentes;
• 15 como nao doentes.
Apesar de o modelo nao ser adequado, apresenta capacidade preditiva aceitavel.
E importante notar que o procedimento correcto na construcao de um modelo de regressaolinear requer a separacao das observacoes em cerca de 80% para dados de treino e 20% paradados de teste. Deverıamos tentar prever utilizando os dados de teste, porem nao dispomos deobservacoes suficientes para utilizar esse procedimento e manter umas estimativas razoaveis dosparametros de regressao.
(ii) Com Analise em Componentes Principais
Verificamos que bastam 108 componentes principais para justificar 85% da variabilidadedos dados. Extraindo 139 componentes, justificamos 88.367% dessa mesma variabilidade. Vamosestudar os dois casos
Comecando por extrair 108 componentes principais, temos um ganho consideravel no coeficientede determinacao ajustado, que atinge 23.53%, ainda longe do ideal, mas melhor que os 16%anteriores. Desta vez, todas as variaveis apresentam um valor da estatıstica V IF inferior a 5,ou seja, podemos concluir que nao existam problemas de multicolinearidade. Os criterios AICe PRESS tomam os valores −21.37851 e 26.51013, respectivamente, inferiores aos obtidos comprojeccoes aleatorias. Globalmente, podemos concluir que este e um melhor modelo. Ainda assim,as suposicoes de valor esperado nulo, variancia constante e nao correlacao dos erros aleatoriosaparenta nao ser verificada.
(a) Resıduos vs. Valores Ajustados (b) Papel de Probabilidades
Pagina 29 de 35
PROJECCOES ALEATORIAS CAPITULO 5
(c) Raiz dos Resıduos Padronizados vs.Valores Ajustados
(d) Resıduos Padronizados vs. Pontos deAlavanca
Figura 5.4: Comando plot do Modelo
Nao dispomos igualmente de observacoes suficientes para validar o modelo.
Quando a capacidade preditiva, este modelo preve a existencia de 316 doentes e 11 nao doentes,inferior a conseguida com as projeccoes aleatorias.
Assim, verificamos que a analise em componentes principais produz melhores resultados doque as projeccoes aleatorias neste modelo, porem tem uma capacidade preditiva inferior.
Extraindo 139 componentes, as conclusoes sao semelhantes, com um coeficiente de deter-minacao ajustado de 21.02%, todas as variaveis com valor observado da estatıstica V IF inferiora 5, criterios AIC e PRESS de 1.014548 e 37.16362, respectivamente, com as suposicoes do mo-delo nao verificadas. Preve ainda a existencia de 313 doentes e 14 nao doentes. Tal como nomodelo com 108 componentes, este e globalmente um melhor modelo que o obtido com projeccoesaleatorias, mas com uma capacidade preditiva ligeiramente inferior e que nao foi validado devidoa falta de observacoes.
(b) Aplicacao de Regressao Logıstica
(i) Com Projeccoes Aleatorias
De forma analoga a anterior, vamos aplicar regressao logıstica aos dados. Neste caso, temosum problema adicional: como, originalmente, dispomos de 19 pacientes saudaveis de contra 308potencialmente doentes, existe uma grande diferenca quantitativa entre o numero de observacoesassociadas aos dois casos da variavel de resposta. A estimacao dos parametros de regressao naoe linear e requer a aplicacao de um algoritmo numerico que nao e estavel nestas situacoes. Porisso, vamos autorizar a existencia de um erro maximo de 0.1 e um maximo de 100000 iteracoes doalgoritmo.
Geramos assim um modelo com um erro padrao associado a cada coeficiente de regressaobastante elevado. O criterio de Akaike apresenta um valor aproximado de 280 que nao e o ideal,e ainda superior ao da regressao linear multipla, porem melhor do que nos exemplos de simulacaoestocastica. Por sua vez, o criterio PRESS toma um valor de apenas, aproximadamente, 4.62, oque representa uma melhoria significativa na reducao da importancia de cada observacao para aestimacao dos parametros do modelo.
E na capacidade preditiva deste modelo que se encontra o maior ganho. Verificamos que estemodelo preve exactamente a existencia de 308 doentes e 19 pacientes saudaveis, o que correspondeaos dados reais! E conveniente ressalvar que esta predicao deveria ser efectuada com outrasobservacoes destinadas a teste, diferentes dos dados de treino com os quais se gerou o modelo,porem a quantidade de dados fornecida nao o permite.
(ii) Com Analise em Componentes Principais
Utilizando as mesmas 108 componentes principais usadas na construcao de modelos de re-gressao linear, verificamos que continuam a existir problemas na convergencia do algoritmo deestimacao dos parametros de regressao logıstica, porem ja podemos diminuir a tolerancia ao erro.
Pagina 30 de 35
CAPITULO 5 PROJECCOES ALEATORIAS
Imensos parametros estimados apresentam um erro padrao da ordem de 105, o que revela instabi-lidade.
Os criterios AIC e PRESS tomam valores aceitaveis de 218 e 0.0000655152, respectivamente,um pouco inferiores, consequentemente, melhores do que com projeccoes aleatorias. Tal como comprojeccoes aleatorias, este modelo preve exactamente a proporcao correcta de doentes (308) e naodoentes (19).
Se extrairmos 139 componentes principais, tiramos as mesmas conclusoes.
(c) Um Outro Metodo - Arvore de Decisao
Para fins de comparacao, vamos utilizar as implementacoes do R para gerar uma arvore dedecisao.
Figura 5.5: Arvore de Decisao
Na raiz da arvore de decisao (o no superior), nao temos qualquer fraccionamento das ob-servacoes. Dos 327 pacientes, classificamos 19 deles como doentes. Em seguida, e feita a divisaocom base na variavel explicativa mais importante para a classificacao. Neste aspecto, a variavel88 (apos projeccao) aparenta ser a mais importante, levando a uma divisao entre as observacoesque tem essa variavel superior ou igual a −0.45 e as que apresentam ter um valor inferior.
Ficamos, na subarvore esquerda, com 35 observacoes das quais 9 sao relativas a potenciaisdoentes de leucemia. Na subarvore direita obtemos as restantes 292 observacoes, que incluem 10doentes.
Para cada uma das subarvores geradas e repetido o procedimento. Na subarvore direita,a variavel 96 demonstra ser a mais importante, fraccionando as observacoes em duas novassubarvores: a primeira relativa as observacoes cuja variavel 96 e inferior a 0.36, colectando 30observacoes incluindo 5 doentes, e a segunda referente as observacoes para as quais a variavel 96toma valores superiores ou iguais a 0.36, armazenando as restantes 262 observacoes que incluem5 doentes.
Neste ponto, para a subarvore direita da subarvore direita nao existem variaveis suficientementeimportantes que requeiram uma nova divisao.
Ja a subarvore esquerda da subarvore direita e ainda decomposta nas observacoes com a variavel129 inferior a 0.34 e caso contrario. No 1o caso, ficamos com 7 observacoes e 3 nao doentes, ouseja, 4 potenciais doentes. No 2o caso, ficamos apenas com 1 doente em 23 observacoes.
A subarvore esquerda da raiz e decomposta apenas uma vez de acordo com a variavel 53: saoregistadas 14 observacoes cujo valor dessa variavel e pelo menos -0.29, incluindo 8 doentes (e 6nao doentes) e 21 observacoes com o valor da variavel 53 inferior a -0.29 com apenas 1 doente.
Pagina 31 de 35
PROJECCOES ALEATORIAS CAPITULO 5
Para a arvore de decisao, podemos gerar ainda a matriz de confusao
Predicao: 0 Predicao: 1Real: 0 12 7Real: 1 9 299
Tabela 5.1: Matriz de Confusao Associada a Arvore de Decisao
ou seja, a arvore preve correctamente que 12 pacientes nao estejam doentes e que 299 possamestar. Porem, classifica 7 nao doentes como doentes e 9 doentes como nao doentes. Assim, oresultado nao e tao bom quanto o da regressao logıstica que, apesar de nao ser um bom modelo,tem uma excelente capacidade preditiva, apresentando uma matriz de confusao com as quantidadescorrectamente distribuıdas por linhas (acerta no numero total de doentes e de nao doentes).
Nao obtivemos resultados tao bons quanto pretendıamos. O modelo de regressao linear naoe, sem duvida, adequado, enquanto que o modelo de regressao logıstica, apesar dos problemas naestimacao dos parametros, e mais adequado aos dados.
Pagina 32 de 35
Capıtulo 6
Outras Aplicacoes
E possıvel encontrar na literatura outros exemplos de aplicacao do metodo das projeccoesaleatorias.
6.1 Regressao Linear com Ajuste de Mınimos QuadradosCompressivos
O metodo dos mınimos quadrados compressivos, quando aplicado a estimacao dos parametrosde regressao, tem como objectivo a minimizacao da media dos quadrados dos resıduos, MSE, emregressao linear. E possıvel aplicar o metodo das projeccoes aleatorias nos coeficientes nestatecnica. Tal foi feito em [5], com dados muito esparsos, com os seguintes resultados:
Figura 6.1: Aplicacao a Deteccao de Padroes Musicais Similares com n = 2000, p = 106 e dadosmuito esparsos. Fonte: [5]
Verificamos de facto que, tanto com os dados de treino como com os dados de teste, os modeloscom ajuste de mınimos quadrados compressivos apresentam um menor MSE do que os modeloscom ajuste de mınimos quadrados usuais.
6.2 Deteccao de Ruıdo em Imagens
O metodo das projeccoes aleatorias tem tambem aplicacoes na deteccao de ruıdo em imagens,tal como os metodos alternativos mais usados, como a Analise em Componentes Principais (PCA),Transformada de Co-seno Discreta (DCT) e ainda Projeccoes Aleatorias Simplificadas (SRP), ondeeste metodo e tornado mais eficiente atraves da matriz de Achlioptas. Em [8] foram executadosalguns testes, com os seguintes resultados:
Pagina 33 de 35
PROJECCOES ALEATORIAS CAPITULO 6
Figura 6.2: Aplicacao a dados de imagens com ruıdo. Fonte: [8]
Constatamos que os metodos envolvendo projeccoes aleatorias apresentaram melhores resulta-dos, com valores de erro mais proximos de zero.
Consequentemente, faz sentido verificar a influencia destes metodos na vırgula flutuante, isto e,a forma de representar numeros no computador, neste caso usando MATLAB. Quanto mais operacoesforem necessarias, maior sera a complexidade do programa e mais tempo demorara a ser executado.
Figura 6.3: Impacto sobre as operacoes de vırgula flutuante em MATLAB necessarias apos a aplicacaoanterior a dados de imagens com ruıdo. Fonte: [8]
Os metodos de projeccoes aleatorias estao em meio-termo, produzindo mais operacoes sobrea vırgula flutuante do que a transformada de co-seno discreta, mas bem menos que a analise emcomponentes principais, que e o metodo mais utilizado. Nesta situacao, e importante pesar o quesera mais importante: a eficiencia do programa ou um erro reduzido na deteccao de ruıdo.
Pagina 34 de 35
Capıtulo 7
Conclusao
As projeccoes aleatorias revelam ser uma tecnica de reducao de dimensionalidade com imensopotencial, em particular para dados de grandes dimensoes.
Verificamos que, em comparacao com a analise em componentes principais, o maior ganho naeficiencia computacional ocorre quando a dimensao do subespaco onde, pelo lema de Johnson-Lindenstrauss, podemos projectar os dados e substancialmente inferior ao numero mınimo decomponentes principais extraıdas (que justifiquem boa parte da variabilidade do problema). Con-firmamos tambem que, nessa situacao, a poupanca de espaco em disco pode ultrapassar os 90%,melhorando, por conseguinte, a eficiencia das funcoes que dependam dos dados. Nas projeccoesaleatorias, o objectivo e preservar ao maximo as distancias entre os pontos, ao passo que na analiseem componentes principais, e pretendido que seja preservado o maximo de variabilidade possıvel, oque, a primeira vista, aparenta justificar os reduzidos coeficientes de determinacao parcial obtidosnas projeccoes aleatorias em comparacao com as componentes principais.
Foi implementada uma versao “naıve” do algoritmo de projeccoes aleatorias. Melhorar asua eficiencia pode contribuir bastante para um distanciamento do PCA no que a complexidadecomputacional diz respeito.
Nenhum modelo relativo a dados clınicos foi validado devido ao defice de observacoes. Seadicionarmos os problemas de instabilidade numerica, constatamos que e necessario correr muitosoutros testes antes de se poder considerar os modelos apresentados validos, nomeadamente os deregressao logıstica, por serem os mais adequados a situacao em estudo. Ainda assim, a capacidadepreditiva revelou-se extraordinaria.
Sera igualmente importante testar este metodo e este algoritmo noutros conjuntos de dados.Segundo os exemplos de aplicacao presentes na literatura, o metodo das projeccoes aleatoriasaparenta adequar-se muito bem a conjuntos de dados esparsos.
Em suma, as projeccoes aleatorias sao uma tecnica recente capaz de dar resposta a uma boaparte dos problemas de reducao de dimensionalidade e, com os ajustes certos, serao uma excelenteadicao a sistemas de apoio a decisao.
“O conhecimento e uma compilacao de dados que permite tomar decisoes e, actualmente, oscomputadores ja tomam imensas decisoes sozinhos.”
- Yann LeCun, Director do Centro de Investigacao de Inteligencia Artificial do Facebook
Pagina 35 de 35
Apendice A
Resultados Essenciais
Sao apresentados neste capıtulo alguns resultados recorrentemente utilizados, com especial enfasena demonstracao do lema de Johnson-Lindenstrauss.
Definicao 1 (Distribuicao Normal).Uma variavel aleatoria Z tem distribuicao normal univariada de valor esperado µ e variancia σ2,o que se denota por Z ∼ N
(µ, σ2
), se a sua funcao densidade de probabilidade for dada por
fZ(x) =1√2πσ
e−(x−µ)2
2σ2 , se x ∈ R.
Se µ = 0 e σ2 = 1 entao a distribuicao diz-se normal padrao. Nesse caso, denotamos a funcaodensidade por ϕ e a funcao de distribuicao por Φ.
ϕ(x) =1√2πe−
x2
2 , se x ∈ R
Definicao 2 (Distribuicao Gama).Uma variavel aleatoria T tem distribuicao Gama de parametros α e λ, o que se denota porT ∼ Gama(α, λ), se a sua funcao densidade de probabilidade for dada por
fT (x) =
e−λx (λx)α−1
Γ(α) , se x ≥ 0 e α, β > 0
0 , caso contrario.
Definicao 3 (Distribuicao χ2(k)).
Uma variavel aleatoria Q tem distribuicao do qui-quadrado com k graus de liberdade, o que sedenota por Q ∼ χ2
(k), se a sua funcao densidade de probabilidade for dada por
fQ(x) =
1
2k2 Γ( k2 )
xk2−1 e−
x2 , se x > 0
0 , caso contrario.
Proposicao 1 (Relacao entre as Distribuicoes N(0, 1) e χ2(1)).
Se Z ∼ N(0, 1) entao Q = Z2 ∼ χ2(1).
Demonstracao. Suponhamos que Z ∼ N(0, 1). Entao, a sua funcao densidade de probabilidade edada por
fZ(x) = ϕ(x) =1√2πe−
x2
2 .
Sabemos que a funcao de distribuicao de probabilidade caracteriza univocamente a distribuicaode uma variavel aleatoria e que a sua derivada e a respectiva funcao densidade.
Pagina i de xiv
PROJECCOES ALEATORIAS CAPITULO A
Seja Q = Z2.
FQ(x) = P (Q ≤ x) = P(Z2 ≤ x
)= P (−
√x ≤ Z ≤
√x) = Φ(
√x)− Φ(−
√x) =
= Φ(√x)− 1 + Φ(
√x) = 2Φ(
√x)− 1
Como as funcoes sao iguais em todos os pontos entao as respectivas derivadas tambem o sao.
FQ(x) = 2Φ(√x)− 1⇒ dFQ(x)
d x=d[2Φ(√x)− 1
]d x
⇔ fQ(x) = 2ϕ(√x)
1
2√x⇔
⇔fQ(x) =ϕ(√x)√x⇔ fQ(x) =
1√2π x
e−x2
corresponde a funcao densidade de uma variavel aleatoria que siga uma distribuicao do qui-quadrado com 1 grau de liberdade, pois, sabendo que Γ
(12
)=√π,
fχ2(1)
(x) =1
212 Γ(
12
)x 12−1 e−
x2 =
1√2π x
e−x2
Logo, Q = Z2 ∼ χ2(1).
Definicao 4 (Funcao Geradora de Momentos).Seja X uma variavel aleatoria qualquer. A sua funcao geradora de momentos e dada pela expressao
MX(t) = E(etX)
, se t ∈ R,
sempre que o valor esperado exista.
Proposicao 2 (Funcao Geradora de Momentos de uma Variavel Aleatoria com Distribuicao χ2(k)).
Seja Q uma variavel aleatoria com distribuicao do qui-quadrado com k graus de liberdade. Entao,a sua funcao geradora de momentos e dada por
MQ(t) = (1− 2t)−k2
para t < 12 .
Demonstracao. Suponhamos que Q e uma variavel aleatoria tal que Q ∼ χ2(k).
MQ(t) = E(etQ)
=
∫Retx fQ(x) dx =
∫ ∞0
etx1
2k2 Γ(k2
)x k2−1 e−x2 dx =
=
∫ ∞0
e(t−12 )x x
k2−1
2k2 Γ(k2
) dxTomando α = k
2 e λ = 12 − t, temos
MQ(t) =1
λα 2k2
∫ ∞0
λ e−λx(λx)α−1
Γ(α)dx =
1
λα 2k2
∫ ∞0
fGama(α,λ)(x) dx =1
λα 2k2
=
=1
( 12 − t)
k2 2
k2
= (1− 2t)−k2
Proposicao 3 (Distribuicao da Soma de Variaveis Aleatorias com Distribuicao χ2(k)).
Sejam Q1, ..., Qn variaveis aleatorias independentes. Se Qk ∼ χ2(qk) entao
∑nk=1Qk ∼ χ2
(∑nk=1 qk)
.
Pagina ii de xiv
CAPITULO A PROJECCOES ALEATORIAS
Demonstracao. Suponhamos que Qk ∼ χ2(qk), com k ∈ {1, ..., n} e que as variaveis aleatorias Qk
sao independentes.
M∑nk=1Qk
(t) = E[et(
∑nk=1Qk)
]= E
(e∑nk=1 tQk
)= E
n∏k=1
etQk
=indep.
n∏k=1
E(etQk
)=
=
n∏k=1
MQk(t) =
n∏k=1
(1− 2t)−qk2 = (1− 2t)−
∑nk=1 qk
2
A funcao geradora de momentos caracteriza univocamente a distribuicao de uma variavelaleatoria, logo
∑nk=1Qk ∼ χ2
(∑nk=1 qk)
.
Teorema 2 (Desigualdade de Markov).Se X for uma variavel aleatoria nao-negativa qualquer e a > 0, entao
P (X ≥ a) ≤ E(X)
a.
Demonstracao. Suponhamos que X e uma variavel aleatoria nao-negativa e a > 0. Seja χ{X≥a} aindicatriz do acontecimento X ≥ a, isto e,
χ{X≥a} =
{1 , se X ≥ a0 , se X < a
.
Se X < a entao χ{X≥a} = 0 e, dado a > 0, aχ{X≥a} = 0, logo aχ{X≥a} ≤ X, uma vez que Xe, por hipotese, nao-negativa.
Se X ≥ a entao χ{X≥a} = 1 e aχ{X≥a} = a, logo aχ{X≥a} ≤ X, porque a ≤ X.Em ambos os casos, temos que
aχ{X≥a} ≤ X.
Como o valor esperado e uma funcao monotona nao-decrescente,
E(aχ{X≥a}) ≤ E(X).
Como os acontecimentos {X ≥ a} e {X < a} sao disjuntos, o valor esperado e linear e aprobabilidade de um acontecimento corresponde ao valor esperado da indicatriz do mesmo, oprimeiro membro da inequacao anterior pode ser reescrito:
E(aχ{X≥a}) = aE(χ{X≥a}) = aP (X ≥ a).
Desta forma, a desigualdade anterior fica
aP (X ≥ a) ≤ E(X).
e, como a > 0 por hipotese, podemos dividir ambos os membros por a sem alterar o sinal dadesigualdade, obtendo o resultado pretendido
P (X ≥ a) ≤ E(X)
a.
Teorema 3 (Desigualdade de Bonferroni).A probabilidade e uma medida subaditiva, isto e, sendo A1, ..., An quaisquer acontecimentos,
P
n⋃i=1
Ai
≤ n∑i=1
P (Ai).
Pagina iii de xiv
PROJECCOES ALEATORIAS CAPITULO A
Demonstracao. Mostremos o resultado por inducao em n.
• Base (n=2)P (A ∪B) = P (A) + P (B)− P (A ∩B)
mas a probabilidade e uma medida nao-negativa, portanto a probabilidade de qualqueracontecimento bem definido e sempre maior ou igual a 0. Em particular, P (A∩B) ≥ 0, logo
P (A ∪B) ≤ P (A) + P (B)
existindo igualdade quando P (A ∩B) = 0, isto e, quando A e B sao disjuntos.
• Passo de Inducao
Hipotese: P(⋃n
i=1Ai)≤∑ni=1 P (Ai) para algum n ∈ N.
A provar: P(⋃n+1
i=1 Ai
)≤∑n+1i=1 P (Ai) para o mesmo n ∈ N.
P
n+1⋃i=1
Ai
= P
n⋃i=1
Ai⋃An+1
= P
n⋃i=1
Ai
+ P (An+1)− P
n⋃i=1
Ai
∩An+1
Pelo mesmo motivo, P
[(⋃ni=1Ai
)∩An+1
]e uma quantidade nao-negativa, logo
P
n+1⋃i=1
Ai
≤ P n⋃i=1
Ai
+ P (An+1)hip.
≤n∑i=1
P (Ai) + P (An+1) =
n+1∑i=1
P (Ai)
Teorema 4 (Leis de De Morgan).Sejam A1, ..., An subconjuntos de um dado conjunto X. Entao,
•⋃ni=1Ai =
⋂ni=1Ai;
•⋂ni=1Ai =
⋃ni=1Ai.
Demonstracao.
•⋃ni=1Ai =
⋂ni=1Ai
–⋃ni=1Ai ⊆
⋂ni=1Ai
Seja x ∈⋃ni=1Ai. Entao, x /∈
⋃ni=1Ai. Portanto, x /∈ Ai, ∀i ∈ {1, ..., n}.
Logo, x ∈ Ai, ∀i ∈ {1, ..., n} , isto e, x ∈⋂ni=1Ai.
–⋃ni=1Ai ⊇
⋂ni=1Ai
Seja x ∈⋂ni=1Ai. Entao, x ∈ Ai, ∀i ∈ {1, ..., n}. Portanto, x /∈ Ai, ∀i ∈ {1, ..., n}, o
que e equivalente a 6 ∃i ∈ {1, ..., n} : x ∈ Ai. Logo, x /∈⋃ni=1Ai,, isto e, x ∈
⋃ni=1Ai.
•⋂ni=1Ai =
⋃ni=1Ai
–⋂ni=1Ai ⊆
⋃ni=1Ai
Seja x ∈⋂ni=1Ai. Entao, x /∈
⋂ni=1Ai. Portanto, ∃i ∈ {1, ..., n} : x /∈ Ai.
Logo, ∃i ∈ {1, ..., n} : x ∈ Ai, isto e, x ∈⋃ni=1Ai.
–⋂ni=1Ai ⊇
⋃ni=1Ai
Seja x ∈⋃ni=1Ai. Entao, ∃i ∈ {1, ..., n} : x ∈ Ai. Portanto, ∃i ∈ {1, ..., n} : x /∈ Ai.
Logo, x /∈⋂ni=1Ai, isto e, x ∈
⋂ni=1Ai.
Pagina iv de xiv
Apendice B
Scripts em R
ProjeccoesAleatorias.r
1 # P r o j e c c ~o e s A l e a t o r i a s
2
3 k=function(n,epsilon){
4 return(ceiling (24* log(n)/(3* epsilon ^2-2* epsilon ^3)));
5 }
6
7 randomProjection=function(X,epsilon){
8 if(epsilon >0 && epsilon <1){
9 n=nrow(X);
10 p=ncol(X);
11 k=ceiling (24* log(n)/(3* epsilon ^2-2* epsilon ^3));
12 if(k<p){
13 i=1;
14 A=matrix(0,p,k);
15 while(i<=n){
16 A=A+matrix(rnorm(p*k,0,1),p,k);# M at ri z de
e n t r a d a s n o r m a i s p a d r o n i z a d a s iid t r a n s p o s t a
17 i=i+1;
18 }
19 R=(1/(n*sqrt(k)))*A;# M at ri z de p r o j e c c ~a o
20 E=X%*%R;# P r o j e c c ~a o da m at ri z X
21 return(E);
22 }
23 }
24 }
25
26 contMatDist=function(X,E,epsilon){# D e v o l v e a raz~ao entre o n u m e r o de
pares com e p s i l o n real s u p e r i o r ao input e o n u m e r o total de pares
27 if(nrow(X)==nrow(E)){
28 n=nrow(X);
29 p=ncol(X);
30 k=ncol(E);
31 eps=0;
32 i=1;
33 while(i<=n){
34 j=i+1;
35 while(j<=n){
36 aux1 =0;
37 aux2 =0;
Pagina v de xiv
PROJECCOES ALEATORIAS CAPITULO B
38 l=1;
39 while(l<=k){# Temos se mp re k < p
40 aux1=aux1+(E[i,l]-E[j,l])^2; # C a l c u l a a norma ao q u a d r a d o da
d i f e r e n c a f ( u ) -f ( v ) para todo o u , v
41 aux2=aux2+(X[i,l]-X[j,l])^2; # C a l c u l a a norma ao q u a d r a d o da
d i f e r e n c a u - v para todo o u , v
42 l=l+1;
43 }
44 while(l<=p){
45 aux2=aux2+(X[i,l]-X[j,l])^2; # C a l c u l a a norma ao q u a d r a d o da
d i f e r e n c a u - v para todo o u , v
46 l=l+1;
47 }
48 aux=abs((aux1/aux2) -1);
49 if(aux >epsilon){
50 eps=eps +2;
51 }
52 j=j+1;
53 }
54 i=i+1;
55 }
56 return(eps/(n^2));
57 }
58 }
SimulacaoEstocastica.r
1 # S i m u l a c ~a o E s t o c a s t i c a de M o d e l o s de R e g r e s s ~a o Li ne ar M u l t i p l a
2
3 library(MPV)
4 library(car)
5
6 # CASO IDEAL
7 # Dados ideais , com 5 o b s e r v a c ~o e s por p a r a m e t r o
8 n <- 5000
9 p1 <-400
10 p2 <-500
11 p3 <-100
12 p<-p1+p2+p3
13
14 set.seed (2015)
15
16 data.norm <- matrix(rnorm(n*p1 ,20 ,5),n,p1)# M at ri z n * p1 , com n o b s e r v a c ~o e s
e p1 v a r i a v e i s e x p l i c a t i v a s N (20 ,25)
17 data.unif <- matrix(runif(n*p2 ,5 ,95),n,p2)# M at ri z n * p2 , com n o b s e r v a c ~o e s
e p2 v a r i a v e i s e x p l i c a t i v a s Unif (5 ,95)
18 data.binom <- matrix(rbinom(n*p3 ,100 ,0.5),n,p3)# M at ri z n * p3 , com n
o b s e r v a c ~o e s e p3 v a r i a v e i s e x p l i c a t i v a s Bin (1 ,0.5)
19
20 X1 <-cbind(data.norm ,data.unif ,data.binom)# C o n c a t e n a c ~a o das 3 m a t r i z e s
a n t e r i o r e s ( m at ri z de d e l i n e a m e n t o sem a 1 a coluna , r e s p e c t i v a ao
termo i n d e p e n d e n t e )
21
22 beta <- matrix(rnorm(p,0 ,10),p,1) # P a r a m e t r o s de r e g r e s s ~a o e x c e p t o do
termo i n d e p e n d e n t e
23 beta0 <- rnorm (1,0,10) # Termo i n d e p e n d e n t e
24
Pagina vi de xiv
CAPITULO B PROJECCOES ALEATORIAS
25 sigma <- runif (1,0,5) # Desvio - pa dr ~ao do erro a l e a t o r i o
26 eps <- matrix(rnorm(n,0,sigma),n,1) # V ec to r de erros aleat o r i os , com a
s u p o s i c ~a o de d i s t r i b u i c ~a o usual N (0 , sigma ^2)
27
28 y <- matrix(beta0 ,n,1)+X1%*% beta+eps # M od el o de r e g r e s s ~a o real
29
30 data.original1 <-as.data.frame(cbind(y,X1))# Dados do m od el o o r i g i n a l
31
32 data.model1 <-lm(V1~.,data=data.original1)# E s t i m a c ~a o dos p a r a m e t r o s do
mo de lo o r i g i n a l ( para c o n t r o l o )
33
34 summary(data.model1)# R ^2 _a =1
35 plot(data.model1)# O p t i m o s
36
37 vif(data.model1)# Sem m u l t i c o l i n e a r i d a d e
38 sum(vif(data.model1) >10) # =0
39 sum(vif(data.model1) <5) # =1000
40
41 AIC(data.model1)# = 2 2 3 2 8 . 0 5
42 PRESS(data.model1)# = 2 6 6 8 7 . 1 5
43
44 # A p l i c a c ~a o de P r o j e c c ~o e s A l e a t o r i a s
45 set.seed (2016)
46
47 ptm <- proc.time()
48 E1 <- randomProjection(X1 ,0.5) # P r o j e c c ~a o a l e a t o r i a das o b s e r v a c ~o e s das
v a r i a v e i s e x p l i c a t i v a s em IR ^409 , com e p s i l o n =0.5
49 proc.time() - ptm
50 # Tempo d e c o r r i d o na p r o j e c c ~a o dos dados : 176.81 , dos quais 16 3. 47 do
p r o g r a m a e 12.72 do s i s t e m a
51
52 # c o n t M a t D i s t ( X1 , E1 ,0.5) #=0 , o que g a r a n t e que todos os q u a d r a d o s das
d i s t a n c i a s est~ao p r e s e r v a d o s a menos de 1+/ - e p s i l o n
53 data.proj1 <-as.data.frame(cbind(y,E1))# O b s e r v a c ~o e s da v a r i a v e l de
r e s p o s t a c o n c a t e n a d a s com as p r o j e c c ~o e s das v a r i a v e i s e x p l i c a t i v a s
54 data.model.proj1 <-lm(V1~.,data=data.proj1)# M od el o ob ti do com as
p r o j e c c ~o e s das v a r i a v e i s e x p l i c a t i v a s
55
56 summary(data.model.proj1)# R ^2 _a = 7 0 . 4 2 %
57 plot(data.model.proj1)# O p t i m o s
58
59 vif(data.model.proj1)# Sem m u l t i c o l i n e a r i d a d e
60 sum(vif(data.model.proj1) >10) # =0
61 sum(vif(data.model.proj1) <5) # =409
62
63 AIC(data.model.proj1)# = 9 5 4 3 3 . 1 6
64 PRESS(data.model.proj1)# = 5 7 3 4 1 3 2 4 6 1 2
65
66 set.seed (2017)
67
68 ptm <- proc.time()
69 E2 <- randomProjection(X1 ,0.999) # P r o j e c c ~a o a l e a t o r i a das o b s e r v a c ~o e s das
v a r i a v e i s e x p l i c a t i v a s em IR ^205 , com e p s i l o n =0 .9 99
70 proc.time() - ptm
71 # Tempo d e c o r r i d o na p r o j e c c ~a o dos dados : 98.57 , dos quais 81.96 do
p r o g r a m a e 6.78 do s i s t e m a
72
Pagina vii de xiv
PROJECCOES ALEATORIAS CAPITULO B
73 contMatDist(X1,E2 ,0.999) # =0 , o que g a r a n t e que todos os q u a d r a d o s das
d i s t a n c i a s est~ao p r e s e r v a d o s a menos de 1+/ - e p s i l o n
74 data.proj2 <-as.data.frame(cbind(y,E2))# O b s e r v a c ~o e s da v a r i a v e l de
r e s p o s t a c o n c a t e n a d a s com as p r o j e c c ~o e s das v a r i a v e i s e x p l i c a t i v a s
75 data.model.proj2 <-lm(V1~.,data=data.proj2)# M od el o ob ti do com as
p r o j e c c ~o e s das v a r i a v e i s e x p l i c a t i v a s
76
77 summary(data.model.proj2)# R ^2 _a = 3 7 . 5 8 %
78 plot(data.model.proj2)# O p t i m o s
79
80 vif(data.model.proj2)# Sem m u l t i c o l i n e a r i d a d e
81 sum(vif(data.model.proj2) >10) # =0
82 sum(vif(data.model.proj2) <5) # =205
83
84 AIC(data.model.proj2)# = 9 8 9 7 6 . 0 9
85 PRESS(data.model.proj2)# = 1 1 5 8 3 2 2 2 7 6 3 1
86
87 # C o n c l u s ~o e s : R ^2 _a diminui , AIC e PRESS aumentam , s u p o s i c ~o e s do mo de lo
verificam - se , n~ao h a m u l t i c o l i n e a r i d a d e
88
89 # A p l i c a c ~a o de PCA
90 ptm <- proc.time()
91 pca1 <-prcomp(X1,retx="TRUE")
92 proc.time() - ptm
93 # Tempo d e c o r r i d o na e x t r a c c ~a o das c o m p o n e n t e s p r i n c i p a i s : 17.78 , dos
quais 17.63 do p r o g r a m a e 0.03 do s i s t e m a
94
95 summary(pca1)# 85% da v a r i a b i l i d a d e e x p l i c a d a com 398 componentes , com
409 explica - se 86.49% , com 205 ap en as 5 2. 42 %
96 # p c a 1 $ r o t a t i o n
97 simul.pca1 <- pca1$x
98
99 simul.pca1 <- as.data.frame(cbind(y,simul.pca1 [ ,1:398]))
100 reg.simul.pca1 <- lm(V1~., data=simul.pca1)
101
102 summary(reg.simul.pca1)# R ^2 _a = 8 2 . 6 8 %
103 plot(reg.simul.pca1)# O p t i m o s
104
105 vif(reg.simul.pca1)# Sem m u l t i c o l i n e a r i d a d e
106 sum(vif(reg.simul.pca1) >10) # =0
107 sum(vif(reg.simul.pca1) <5) # =398
108
109 AIC(reg.simul.pca1)# = 9 2 7 4 7 . 1 2
110 PRESS(reg.simul.pca1)# = 3 3 5 0 2 2 4 8 1 6 1
111
112 sum(cooks.distance(reg.simul.pca1) >0.5) # =0
113 sum(cooks.distance(reg.simul.pca1) >2*399/5000) # =0
114 sum(cooks.distance(reg.simul.pca1) >4/(5000 -398))# =238
115
116 # C o n c l u s ~a o : R ^2 _a muito melhor , c r i t e r i o s AIC e PRESS muito elevados ,
s u p o s i c ~o e s do mo de lo v e r i f i c a d a s e sem m u l t i c o l i n a r i d a d e
117 # C o m p a r a c ~a o : num caso em que n~ao e n e c e s s a r i o r e d u c ~a o de
d i m e n s i o n a l i d a d e , o PCA e mais eficiente , com r e s u l t a d o s da mesma
ordem dos das p r o j e c c ~o e s a l e a t o r i a s
118
119
120 # CASO A T I P I C O
121 # Menos o b s e r v a c ~o e s que p a r a m e t r o s
Pagina viii de xiv
CAPITULO B PROJECCOES ALEATORIAS
122 n <- 5000
123 p1 < -4000
124 p2 < -5000
125 p3 < -1000
126 p<-p1+p2+p3
127
128 set.seed (2015)
129
130 data.norm <- matrix(rnorm(n*p1 ,20 ,5),n,p1)# M at ri z n * p1 , com n o b s e r v a c ~o e s
e p1 v a r i a v e i s e x p l i c a t i v a s N (20 ,25)
131 data.unif <- matrix(runif(n*p2 ,5 ,95),n,p2)# M at ri z n * p2 , com n o b s e r v a c ~o e s
e p2 v a r i a v e i s e x p l i c a t i v a s Unif (5 ,95)
132 data.binom <- matrix(rbinom(n*p3 ,100 ,0.5),n,p3)# M at ri z n * p3 , com n
o b s e r v a c ~o e s e p3 v a r i a v e i s e x p l i c a t i v a s Bin (1 ,0.5)
133
134 X2 <-cbind(data.norm ,data.unif ,data.binom)# C o n c a t e n a c ~a o das 3 m a t r i z e s
a n t e r i o r e s ( m at ri z de d e l i n e a m e n t o sem a 1 a coluna , r e s p e c t i v a ao
termo i n d e p e n d e n t e )
135
136 beta <- matrix(rnorm(p,0 ,10),p,1) # P a r a m e t r o s de r e g r e s s ~a o e x c e p t o do
termo i n d e p e n d e n t e
137 beta0 <- rnorm (1,0,10) # Termo i n d e p e n d e n t e
138
139 sigma <- runif (1,0,5) # Desvio - pa dr ~ao do erro a l e a t o r i o
140 eps <- matrix(rnorm(n,0,sigma),n,1) # V ec to r de erros aleat o r i os , com a
s u p o s i c ~a o de d i s t r i b u i c ~a o usual N (0 , sigma ^2)
141
142 y <- matrix(beta0 ,n,1)+X2%*% beta+eps # M od el o de r e g r e s s ~a o real
143
144 data.original2 <-as.data.frame(cbind(y,X2))# Dados do m od el o o r i g i n a l . N~ao
e p o s s ı v e l e s t i m a r p a r a m e t r o s neste caso
145
146
147 # A p l i c a c ~a o de P r o j e c c ~o e s A l e a t o r i a s
148 set.seed (2016)
149
150 ptm <- proc.time()
151 E3 <- randomProjection(X2 ,0.5) # P r o j e c c ~a o a l e a t o r i a das o b s e r v a c ~o e s das
v a r i a v e i s e x p l i c a t i v a s em IR ^409 , com e p s i l o n =0.5
152 proc.time() - ptm
153 # Tempo d e c o r r i d o na p r o j e c c ~a o dos dados : 1725.62 , dos quais 1 6 1 6 . 6 4 do
p r o g r a m a e 1 06 .5 5 do s i s t e m a
154
155 # c o n t M a t D i s t ( X2 , E3 ,0.5) #=0 , o que g a r a n t e que todos os q u a d r a d o s das
d i s t a n c i a s est~ao p r e s e r v a d o s a menos de 1+/ - e p s i l o n
156 data.proj3 <-as.data.frame(cbind(y,E3))# O b s e r v a c ~o e s da v a r i a v e l de
r e s p o s t a c o n c a t e n a d a s com as p r o j e c c ~o e s das v a r i a v e i s e x p l i c a t i v a s
157 data.model.proj3 <-lm(V1~.,data=data.proj3)# M od el o ob ti do com as
p r o j e c c ~o e s das v a r i a v e i s e x p l i c a t i v a s
158
159 summary(data.model.proj3)# R ^2 _a = 8 . 7 6 2 %
160 plot(data.model.proj3)# O p t i m o s
161
162 vif(data.model.proj3)# Sem m u l t i c o l i n e a r i d a d e
163 sum(vif(data.model.proj3) >10) # =0
164 sum(vif(data.model.proj3) <5) # =409
165
166 AIC(data.model.proj3)# = 1 1 2 3 2 2 . 6
Pagina ix de xiv
PROJECCOES ALEATORIAS CAPITULO B
167 PRESS(data.model.proj3)# = 1 . 6 8 1 0 9 2 e +12
168
169 sum(cooks.distance(data.model.proj3) >0.5) # =0
170 sum(cooks.distance(data.model.proj3) >2*410/5000) # =0
171 sum(cooks.distance(data.model.proj3) >4/(5000 -409)) # =228
172
173 set.seed (2017)
174
175 ptm <- proc.time()
176 E4 <- randomProjection(X2 ,0.999) # P r o j e c c ~a o a l e a t o r i a das o b s e r v a c ~o e s das
v a r i a v e i s e x p l i c a t i v a s em IR ^205 , com e p s i l o n =0 .9 99
177 proc.time() - ptm
178 # Tempo d e c o r r i d o na p r o j e c c ~a o dos dados : 855.95 , dos quais 80 0. 31 do
p r o g r a m a e 55.20 do s i s t e m a
179
180 # c o n t M a t D i s t ( X2 , E4 ,0.5) #=0 , o que g a r a n t e que todos os q u a d r a d o s das
d i s t a n c i a s est~ao p r e s e r v a d o s a menos de 1+/ - e p s i l o n
181 data.proj4 <-as.data.frame(cbind(y,E4))# O b s e r v a c ~o e s da v a r i a v e l de
r e s p o s t a c o n c a t e n a d a s com as p r o j e c c ~o e s das v a r i a v e i s e x p l i c a t i v a s
182 data.model.proj4 <-lm(V1~.,data=data.proj4)# M od el o ob ti do com as
p r o j e c c ~o e s das v a r i a v e i s e x p l i c a t i v a s
183
184 summary(data.model.proj4)# R ^2 _a = 4 . 1 4 4 %
185 plot(data.model.proj4)# O p t i m o s
186
187 vif(data.model.proj4)# Sem m u l t i c o l i n e a r i d a d e
188 sum(vif(data.model.proj4) >10) # =0
189 sum(vif(data.model.proj4) <5) # =205
190
191 AIC(data.model.proj4)# = 1 1 2 3 7 8 . 9
192 PRESS(data.model.proj4)# = 1 . 6 9 1 2 6 6 e +12
193
194 sum(cooks.distance(data.model.proj4) >0.5) # =0
195 sum(cooks.distance(data.model.proj4) >2*206/5000) # =0
196 sum(cooks.distance(data.model.proj4) >4/(5000 -205))# =229
197
198 # C o n c l u s ~o e s : R ^2 _a diminui , AIC e PRESS aumentam , s u p o s i c ~o e s do mo de lo
verificam - se , n~ao h a m u l t i c o l i n e a r i d a d e
199
200 # A p l i c a c ~a o de PCA
201 ptm <- proc.time()
202 pca2 <-prcomp(X2,retx="TRUE")
203 proc.time() - ptm
204 # Tempo d e c o r r i d o na e x t r a c c ~a o das c o m p o n e n t e s p r i n c i p a i s : 1125.55 , dos
quais 1 1 1 6 . 3 3 do p r o g r a m a e 3.47 do s i s t e m a
205
206 summary(pca2)
207 # p c a 2 $ r o t a t i o n
208 simul.pca2 <- pca2$x
209
210 vars <- apply(simul.pca2 , 2, var)
211 props <- vars / sum(vars)
212 cumsum(props)# 85% da v a r i a b i l i d a d e e x p l i c a d a com 2293 componentes , com
409 ap en as se e x p l i c a 25.83% , com 205 a pe na s 1 4. 02 %
213
214 simul.pca2 <- as.data.frame(cbind(y,simul.pca2 [ ,1:2293]))
215 reg.simul.pca2 <- lm(V1~., data=simul.pca2)
216
Pagina x de xiv
CAPITULO B PROJECCOES ALEATORIAS
217 summary(reg.simul.pca2)# R ^2 _a = 7 2 . 0 3 %
218 plot(reg.simul.pca2)# Muito bons , com a lg un s p o t e n c i a i s o u t l i e r s
219
220 # vif ( reg . simul . pca2 ) # D em or a d e m a s i a d o a e x e c u t a r ( mais de 2 horas )
221 # sum ( vif ( reg . simul . pca2 ) >10)
222 # sum ( vif ( reg . simul . pca2 ) <5)
223
224 AIC(reg.simul.pca2)# = 1 0 7 5 3 7 . 4
225 PRESS(reg.simul.pca2)# = 8 7 4 4 5 7 5 7 9 9 7 2
226
227 sum(cooks.distance(reg.simul.pca2) >0.5) # =0
228 sum(cooks.distance(reg.simul.pca2) >2*2294/5000) # =0
229 sum(cooks.distance(reg.simul.pca2) >4/(5000 -2293))# =226
230
231 # C o n c l u s ~a o : PCA gera m e l h o r e s resultados , mas com muito mais v a r i a v e i s .
As e s t i m a t i v a s tornam - se imprecisas , pois temos 2293 v a r i a v e i s para
5000 observa c ~o es , longe das i de ai s entre 5 a 10 o b s e r v a c ~o e s por
v a r i a v e l
232 # As p r o j e c c ~o e s a l e a t o r i a s a p a r e n t a m ser mais e f i c i e n t e s qu an do a d i m e n s ~a o
do e sp a c o a p r o j e c t a r e m u ito r e d u z i d a . O e sp a c o n e c e s s a r i o em disco
para a r m a z e n a r os dados e c o n s i d e r a v e l m e n t e i n f e r i o r q ua nd o se usa
p r o j e c c ~o e s a l e a t o r i a s
233
234 # data . model . proj . step <- step ( data . model . proj , d i r e c t i o n =" both ")
DadosClinicos.r
1 # Dados C l ı n i c o s - D i a g n o s t i c o de L e u c e m i a
2
3 library(MPV)
4 library(car)
5 library(rpart)
6 library(rpart.plot)
7
8 # s ou rc e (" http :// b i o c o n d u c t o r . org / b i o c L i t e . R ")
9 # b i o c L i t e (" s t j u d e m ")
10 library(stjudem)
11 leukemia <-data(stjude)
12 summary(leukemia)
13
14 leukemiaQ=matrix (0,327,1) # 1 se p r o v a v e l m e n t e e s t i v e r doente , 0 caso
contr a r io , dados r e t i r a d o s de st ju de [3]
15 leukemiaQ [1:158 ,1]=1
16 leukemiaQ [178:327 ,1]=1
17
18 leukemia <-as.data.frame(t(as.data.frame(stjude [4])))# E n e c e s s a r i o
t r a n s p o r os dados o r i g i n a i s
19
20 # A P L I C A C ~A O DE P R O J E C C ~O E S A L E A T O R I A S
21
22 set.seed (2018)
23
24 ptm <- proc.time()
25 leukemia.proj <-
as.data.frame(randomProjection(data.matrix(leukemia) ,0.999))# P r o j e c t a
os dados das v a r i a v e i s e x p l i c a t i v a s com e p s i l o n = 0. 99 9
26 proc.time() - ptm
Pagina xi de xiv
PROJECCOES ALEATORIAS CAPITULO B
27 # Tempo d e c o r r i d o na p r o j e c c ~a o dos dados : 45.21 , dos quais 45.21 do
p r o g r a m a e 2.92 do s i s t e m a
28
29 # c o n t M a t D i s t ( data . m at ri x ( l e u k e m i a ) , data . ma tr ix ( l e u k e m i a . proj ) ,0.999) # V e r i f i c a
se a p r o p r i e d a d e de quase i s o m e t r i a e v e r i f i c a d a . D a 0 sem a co lu na
i n s e r i d a e com a seed 2018 ( d em or a cerca de meia - hora a e x e c u t a r )
30
31 # M od el o de R e g r e s s ~a o L in ea r M u l t i p l a
32 reg.leukemia.proj.lm <- lm(leukemiaQ~.,
data=as.data.frame(cbind(leukemiaQ ,leukemia.proj)))# Gera o mo de lo de
r e g r e s s ~a o li ne ar m u l t i p l a
33
34 sum(predict(reg.leukemia.proj.lm) >0.5) # C l a s s i f i c a d o s como d o e n t e s = 312
35 sum(predict(reg.leukemia.proj.lm) <=0.5) # C l a s s i f i c a d o s como n~ao d o e n t e s =
15
36 table(leukemiaQ)# N u m e r o o r i g i n a l de d o e n t e s e n~ao d o e n t e s 308 e 19 ,
r e s p e c t i v a m e n t e
37
38 summary(reg.leukemia.proj.lm)# R ^2 _a =1 6. 3%
39 plot(reg.leukemia.proj.lm)# P e ssimos , as s u p o s i c ~o e s do mo de lo n~ao s~ao
v e r i f i c a d a s
40
41 sum(vif(reg.leukemia.proj.lm) >10) # =4
42 sum(vif(reg.leukemia.proj.lm) <5) # =92
43
44 AIC(reg.leukemia.proj.lm)# = 1 9 . 9 8 9 0 1
45 PRESS(reg.leukemia.proj.lm)# = 2 6 . 7 5 4 5 3
46
47 # M od el o de R e g r e s s ~a o L o g ı s t i c a M u l t i p l a
48 reg.leukemia.proj.log <- glm(as.factor(leukemiaQ)~.,
data=as.data.frame(cbind(leukemiaQ ,leukemia.proj)), family =" binomial",
control = list(epsilon = 1e-1, maxit = 100000))# Gera o mo de lo de
r e g r e s s ~a o li ne ar m u l t i p l a
49 summary(reg.leukemia.proj.log)
50
51 sum(predict(reg.leukemia.proj.log) >0.5) # C l a s s i f i c a d o s como d o e n t e s = 308
52 sum(predict(reg.leukemia.proj.log) <=0.5) # C l a s s i f i c a d o s como n~ao d o e n t e s =
19
53 table(leukemiaQ)# N u m e r o o r i g i n a l de d o e n t e s e n~ao d o e n t e s 308 e 19 ,
r e s p e c t i v a m e n t e
54
55 AIC(reg.leukemia.proj.log)# = 2 8 0 . 0 0 2 3
56 PRESS(reg.leukemia.proj.log)# = 4 . 6 2 0 4 7 6
57
58 # A r v o r e de D e c i s ~a o
59 tree.proj <-rpart(as.factor(leukemiaQ)~.,
data=as.data.frame(cbind(leukemiaQ ,leukemia.proj)), method = "class ")
60 summary(tree.proj)
61 prp(tree.proj ,type = 4, extra = 3, col=" darkgreen",split.col="blue")
62
63 # M at ri z de C o n f u s ~a o para a A r v o r e de D e c i s ~a o
64 conf.matrix <- table(as.factor(leukemiaQ) ,
predict(tree.proj ,type=" class"))
65 rownames(conf.matrix) <- paste ("Real", rownames(conf.matrix), sep = ":")
66 colnames(conf.matrix) <- paste ("Pred", colnames(conf.matrix), sep = ":")
67 print(conf.matrix)
68
69 # A P L I C A C ~A O DE A N A L I S E EM C O M P O N E N T E S P R I N C I P A I S
Pagina xii de xiv
CAPITULO B PROJECCOES ALEATORIAS
70
71 ptm <- proc.time()
72 pca <-prcomp(leukemia ,retx="TRUE")
73 proc.time() - ptm
74 # Tempo d e c o r r i d o na e x t r a c c ~a o das c o m p o n e n t e s p r i n c i p a i s : 7.07 , dos quais
0.21 do p r o g r a m a e 7.34 do s i s t e m a
75
76 summary(pca)# 85% da v a r i a b i l i d a d e e e x p l i c a d a por 108 componentes , com
139 e x p l i c a m o s 8 8 . 3 6 7 %
77 leukemia.pca <- pca$x
78
79 # M o d e l o s e x t r a i n d o 108 c o m p o n e n t e s
80
81 # M od el o de R e g r e s s ~a o L in ea r M u l t i p l a
82 leukemia.pca1 <- as.data.frame(cbind(leukemiaQ ,leukemia.pca [ ,1:108]))
83 reg.leukemia.pca1.lm <- lm(V1~., data=leukemia.pca1)
84
85 summary(reg.leukemia.pca1.lm)# R ^2 _a = 2 3 . 5 3 %
86 plot(reg.leukemia.pca1.lm)# Maus como nas p r o j e c c ~o e s a l e a t o r i a s
87
88 sum(predict(reg.leukemia.pca1.lm) >0.5) # C l a s s i f i c a d o s como d o e n t e s = 316
89 sum(predict(reg.leukemia.pca1.lm) <=0.5) # C l a s s i f i c a d o s como n~ao d o e n t e s =
11
90 table(leukemiaQ)# N u m e r o o r i g i n a l de d o e n t e s e n~ao d o e n t e s 308 e 19 ,
r e s p e c t i v a m e n t e
91
92 sum(vif(reg.leukemia.pca1.lm) >10) # =0
93 sum(vif(reg.leukemia.pca1.lm) <5) # =108
94
95 AIC(reg.leukemia.pca1.lm)# = -21.37851
96 PRESS(reg.leukemia.pca1.lm)# = 2 6 . 5 1 0 1 3
97
98 # M od el o de R e g r e s s ~a o L o g ı s t i c a M u l t i p l a
99 reg.leukemia.pca1.log <- glm(V1~., data=leukemia.pca1 , family =" binomial",
control = list(epsilon = 1e-8, maxit = 100000))# Gera o mo de lo de
r e g r e s s ~a o li ne ar m u l t i p l a
100 summary(reg.leukemia.pca1.log)
101
102 sum(predict(reg.leukemia.pca1.log) >0.5) # C l a s s i f i c a d o s como d o e n t e s = 308
103 sum(predict(reg.leukemia.pca1.log) <=0.5) # C l a s s i f i c a d o s como n~ao d o e n t e s =
19
104 table(leukemiaQ)# N u m e r o o r i g i n a l de d o e n t e s e n~ao d o e n t e s 308 e 19 ,
r e s p e c t i v a m e n t e
105
106 AIC(reg.leukemia.pca1.log)# =218
107 PRESS(reg.leukemia.pca1.log)# = 0 . 0 0 0 0 6 5 5 1 5 2
108
109 # M o d e l o s e x t r a i n d o 139 c o m p o n e n t e s
110
111 # M od el o de R e g r e s s ~a o L in ea r M u l t i p l a
112 leukemia.pca2 <- as.data.frame(cbind(leukemiaQ ,leukemia.pca [ ,1:139]))
113 reg.leukemia.pca2.lm <- lm(V1~., data=leukemia.pca2)
114
115 summary(reg.leukemia.pca2.lm)# R ^2 _a = 2 1 . 0 2 %
116 plot(reg.leukemia.pca2.lm)# Maus
117
118 sum(predict(reg.leukemia.pca2.lm) >0.5) # C l a s s i f i c a d o s como d o e n t e s = 313
Pagina xiii de xiv
PROJECCOES ALEATORIAS CAPITULO B
119 sum(predict(reg.leukemia.pca2.lm) <=0.5) # C l a s s i f i c a d o s como n~ao d o e n t e s =
14
120 table(leukemiaQ)# N u m e r o o r i g i n a l de d o e n t e s e n~ao d o e n t e s 308 e 19 ,
r e s p e c t i v a m e n t e
121
122 sum(vif(reg.leukemia.pca2.lm) >10) # =0
123 sum(vif(reg.leukemia.pca2.lm) <5) # =139
124
125 AIC(reg.leukemia.pca2.lm)# = 1 . 0 1 4 5 4 8
126 PRESS(reg.leukemia.pca2.lm)# = 3 7 . 1 6 3 6 2
127
128 # M od el o de R e g r e s s ~a o L o g ı s t i c a M u l t i p l a
129 reg.leukemia.pca2.log <- glm(V1~., data=leukemia.pca2 , family =" binomial",
control = list(epsilon = 1e-8, maxit = 100000))# Gera o mo de lo de
r e g r e s s ~a o li ne ar m u l t i p l a
130 summary(reg.leukemia.pca2.log)
131
132 sum(predict(reg.leukemia.pca2.log) >0.5) # C l a s s i f i c a d o s como d o e n t e s = 308
133 sum(predict(reg.leukemia.pca2.log) <=0.5) # C l a s s i f i c a d o s como n~ao d o e n t e s =
19
134 table(leukemiaQ)# N u m e r o o r i g i n a l de d o e n t e s e n~ao d o e n t e s 308 e 19 ,
r e s p e c t i v a m e n t e
135
136 AIC(reg.leukemia.pca2.log)# =280
137 PRESS(reg.leukemia.pca2.log)# = 0 . 0 0 0 2 2 6 3 2 1 5
Pagina xiv de xiv
Bibliografia
[1] Aditya Krishna Menon (2007). Random Projections and Applications to Dimensionality Re-duction. School of Information Technologies, University of Sydney, Australia.
[2] Lopez-Paz and Duvenaud (2013). Random Projections. School of Engineering and AppliedSciences, University of Harvard, Estados Unidos da America.
[3] Michael Mahoney (2009). The Johnson-Lindenstrauss Lemma. School of Engineering, Univer-sity of Standford, Estados Unidos da America.
[4] Sanjoy Dasgupta and Anupam Gupta (2001). An Elementary Proof of a Theorem of Johnsonand Lindenstrauss. New Jersey, Estados Unidos da America.
[5] Robert J. Durrant and Ata Kaban (2012). Random Projections for Machine Learning and DataMining: Theory and Applications. University of Birmingham, Reino Unido.
[6] Conceicao Amado (2010). Regressao Logıstica - Uma Introducao. Instituto Superior Tecnico,Universidade de Lisboa, Portugal.
[7] Conceicao Amado (2014). Statistical Methods in Data Mining. Instituto Superior Tecnico,Universidade de Lisboa, Portugal.
[8] Angelo Cardoso (2009) Random Projections in Dimensionality Reduction. Instituto SuperiorTecnico, Universidade de Lisboa, Portugal.