---
INSTITUTO SUPERIOR TÉCNICO
Sistemas de Apoio à Decisão
Exame 2 7 julho 2007---
1. (6 pts) Algumas perguntas fáceis para começar
1) (2 pts) Indique qual das hipóteses está correcta para cada uma das seguintes questões:
a) (1 pts) O desvio padrão é uma medida:
a. Holística b. Algébrica c. Distributiva d. Nenhuma delas b é a verdadeira
b) (1 pts) A técnica de indexação mais apropriada para procura de informação numa data warehouse em qualquer domínio de dados é:
a. Índice B+tree
b. Índice baseado em hash c. Índice bitmap
d. Nenhuma delas
c e d são aceites como verdadeiras. De facto, o índice bitmap é mais vantajoso para domínios de baixa cardinalidade, mas tb pode ser adaptado usando técnicas de compressão para lidar com outros domínios de dados.
2) (4 pts) Assinale as seguintes frases como verdadeiras (V) ou falsas (F). Cada resposta correcta corresponde a uma cotação de +1 valor. Resposta errada -0,5. Se não responder, a cotação é 0.
a. Num bom esquema de clustering, os clusters devem estar o mais próximo possível uns dos outros.
Falsa.
b. O índice Dunn é mais sensível a outliers do que o índice Davies-Bouldin na identificação de bons esquemas de clustering.
Verdadeiro.
Sensitive to the presence of noise in datasets, since these are likely to increase the values of diam(c)
c. Dada uma entrada de dimensão dois, uma rede neuronal com uma função de activação linear e com n>2 níveis escondidos pode ser treinada para classificar uma função XOR.
Falsa.
Porque tenh uma função de activação linear
d. Support vector machines utilizam a aprendizagem de gradiente descendente estocástico (stochastic gradient decent learning).
Falsa.
2. (3 pts) DW
Imagine o seguinte excerto da base de dados operacional de um grupo que gere uma cadeia de hipermercados (as chaves primárias estão sublinhadas e as chaves estrangeiras estão em itálico):
Lojas (lojaid, nome, morada, codpostal, localidade, NIF) Clientes (clienteid, nome, nomecomercial, morada, codpostal, localidade, tipoclienteid, tabelaprecoid)
Cliente (tipoclienteid, dsc) TabelasPrecos(tabelaprecoid, dsc)
Artigos (artigoid, referencia, codbarras, nome, familiaid, iva, unidade)
FamiliasArtigos (familiaid, dsc)
Vendas (vendaid, datavenda, lojaid, clienteid, vendadinheiro, desconto)
LinhasVendas (vendaid, artigoid, qt, precounidade)
(a) (1.5 pts) Apresente o modelo em estrela de uma datawarehouse que suporte as seguintes interrogações:
1) Qual a loja com menor número de vendas em Março de 2007?
2) Quais os tipos de cliente que compraram o maior número de artigos da secção de brinquedos na loja da Amadora?
3) Quantas garrafões de 5l de Água do Luso se venderam hoje?
lojaId nome localidade clienteId nome tipoClienteId tipoCliente preço
artigoId tempoId lojaId clienteId quantidade valor
artigoId nome familiaId familia preço
Vendas
Artigo
Tempo Loja
tempoId dia mês ano data
Cliente
1
1
1
1
*
* *
*
(b) (1.5 pts) Escreva as instruções em SQL para responder às três interrogações acima
mencionadas usando primeiro o esquema relacional e depois o esquema em estrela. Comente.
Relacional 1) select lojaid from Vendas V
where V.datavenda >= 1/3/2007 and V.datavenda <= 31/3/2007 group by V.lojaid
having sum(vendadinheiro) <= all (select sum(vendadinheiro) from Vendas V
where V.datavenda >= 1/3/2007
and V.datavenda <= 31/3/2007
group by V.lojaid )
ou
select lojaid, min(numvendas)
from (select V.lojaid as lojaid, sum(LV.qt) as numvendas from LinhasVendas LV, Vendas V
where LV.vendaid = V.vendaid and V.datavenda >= 1/3/2007 and V.datavenda <= 31/3/2007 group by V.lojaid)
2) select tipocliente
from Vendas V, LinhasVendas LV, Artigo A, Loja L, FamiliasArtigos F, Cliente C, Clientes Cs
where V.vendaid = LV.vendaid and V.lojaid = L.lojaid
and V.artigoid = A.artigoid and A.artigoid = F.artigoid and V.clienteid = Cs.clienteid
and Cs.tipoclienteid = C.tipoclienteid and L.localidade = ‘Amadora’
and F.dsc = ‘Brinquedos’
group by Cs.tipoclienteid
having sum(qt) >= all (select (sum(qt)
from Vendas V, LinhasVendas LV, Artigo A, Loja L, FamiliasArtigos F, Cliente C, Clientes Cs
where V.vendaid = LV.vendaid and V.lojaid = L.lojaid
and V.artigoid = A.artigoid and A.artigoid = F.artigoid and V.clienteid = Cs.clienteid
and Cs.tipoclienteid = C.tipoclienteid and L.localidade = ‘Amadora’
and F.dsc = ‘Brinquedos’
group by Cs.tipoclienteid)
3) select sum(qt)
from LinhasVendas L, Vendas V, Artigos A where L.vendaid = V.vendaid
and L.artigoid = A.artigoid and A.nome = ‘Água Luso 5l’
and V.datavenda = 11/7/2007 Modelo em estrela:
1) select lojaid
from Vendas V, Loja L, Tempo T where V.lojaid = L.lojaid
and V.tempoid = T.tempoid and T.mes = ‘Março’
and T. Ano = 2007 group by lojaid
having sum(vendadinheiro) <= all (select sum(vendadinheiro)
from Vendas V, Loja L, Tempo T where V.lojaid = L.lojaid
and V.tempoid = T.tempoid and T.mes = ‘Março’
and T. Ano = 2007 group by lojaid ) 2) select tipocliente
from Vendas V, Artigo A, Loja L, Cliente C where V.artigoid = A.artigoid
and V.lojaid = L.lojaid and C.clienteid = V.clienteid and L.localidade = ‘Amadora’
and A.familia = ‘Brinquedos’
group by tipoclienteid
having sum (quantidade) > = all ( select sum (quantidade)
from Vendas V, Artigo A, Loja L, Cliente C where V.artigoid = A.artigoid
and V.lojaid = L.lojaid and C.clienteid = V.clienteid and L.localidade = ‘Amadora’
and A.familia = ‘Brinquedos’
group by tipoclienteid) 3) select sum(quantidade)
from Vendas V, artigo A, Tempo T where V.artigoid = A.artigoid and V.tempoid = T.tempoid and T.data = 11/7/2007
and A.nome = ‘Água Luso 5l’
3. (4 pts) PCA
Suponha que tem a seguinte matriz de covariânica:
(a) (2 pts) Qual é a matriz da transformação K-L?
The determinant has to become zero
λ1=1.78165 λ2=43.2183
Let be u1=1 then we have to determine u2
u1=[u1,u2]=[1,-0.17406]
Let be u1=1 then we have to determine u2
u2=[u1,u2]=[1,5.74547]
Orthogonal? Yes <u1,u2>=0 Orthonormalbasis
u1=[u1,u2]=[0.98522,-0.17149]
u2=[u1,u2]=[0.17147,0.9852]
(b) (2 pts) Qual dos vectores próprios (eigenvectors) é mais significante? O critério de Kaiser é aplicável?
Because λ1=1.78165 < λ2=43.2183, u2 is more significant.
Kaiser criterion
Discards eigenvectors whose eigenvalues are below 1, no eigenvalue is below 1, Kaiser criterion can be not applied.
4. (2 pts) Belief Networks
(2 pts) ) Calcule a probabilidade de a dado d,e,g serem verdadeiros quando b, c são desconhecidos.
P(A|d=true, e=true, g=true)= P(A|d=true)
Form here on its like the earthquake example, slides, book…
For a=true, then a=false
€
P(a|d)=α P(a)P(b)P(c|a,b)P(d|c)
c
∑
b
∑
P(e|d)P(g|d)€
P(a|d)=αP(a) P(b) P(c|a,b)P(d|c)
c
∑
b
∑
P(e|d)P(g|d)5. (2 pts) ID3
Instância Classificação x y
1 + t t
2 + t t
3 - t f
4 + f f
5 - f t
6 - f t
(a) (1 pts) Qual é a entropia desta colecção de exemplos de treino no que diz respeito à função de Classificação?
-0.5*log2(0.5)-0.5*log2(0.5)=1
(b) (1 pts) Qual o ganho de informação de y relativamente a estes exemplos de treino?
I(C1)=-2./4*log2(2/4)-2/4*log2(2/4)=1 I(C2)= -1./2*log2(1/2)-1/2*log2(1/2)= 1 gain(P1)= 1-(4/6+2/6)=0
Dados os pesos w1={w11=0.1,w12=0.2,w13=0.2,w14=0.2},
w2={w21=0,w22=0.1,w23=0.2,w24=0.4}, W1={W11=0.1,W12=0.2}, W2={W21=0.2,W22=0.1}}, , W3={W31=0.1,W32=0} e a função de activação
(a) (2 pts) (a) (2 pts) Calcule O1 e O2 e O3 para o vector de entrada:
x={2,0,0,0}={x1=2,x2=0,x3=0,x4=0}
V1=
V2=
net1= 0.1*0.59869+0.2*0.5= 0.15987 O1=
net2=0.2*0.59869+0.1*0.5=0.16974 O2=
net3= 0.1*0.59869 = 0.054987
O3=
(b) (1 pts) ) Derive uma regra de treino de gradiente descendente (gradient descent training rule) para uma única unidade com saída o, em que:
o= w1 exp(x1)+w2 exp(x2)+…+wn exp(xn)