Aprendizado de MáquinaUFMG EST171 - 1ª Lista de exercícios
Caio Cesar De Oliveira Freitas & Eduardo Elias Ribeiro Junior
12 de setembro de 2016
Exercício 1
Seu objetivo é usar as técnicas de redução de dimensionalidade, de segmentação (clustering) e de regras deassociação para entender melhor um banco de dados que contém textos com resenhas sobre aplicativos daApp Store do Android. Para isso, use a função load para carregar o banco dadosReviewGoogle.RData.Este banco contém dois objetos, textos, que contém as diferentes resenhas sobre os aplicativos, e notas, quecontém as respectivas notas atribuidas pelos usuários que escreveram essas resenhas. Seu objetivo não é ode predição de notas, mas apenas o de melhor entendimento dos reviews.
Para os itens que seguem, você pode trabalhar com um subconjunto dos dados originais.
Para resolução dos itens propostos nesse exercício optou-se por utilizar apenas 200 resenhas, para que acomputação dos algoritmos não ficasse demasiadamente lenta.
a) Mostre 5 resenhas do banco juntamente com suas respectivas notas.
Tabela 1: Cinco primeiras resenhas com notas distintas
Resenhas NotasNão rodou Não rodou no meu galaxy note...perdi $$ 1.00Bugs pra consertar Não consigo jogar bem pq o campo aparece completamente com texturadesconfigurada. Gostaria que resolvessem para aproveitar bem o jogo. Da forma que está osjogos gratis compensam mais... :(
2.00
Mais ou menos No galacxy y nem abril o jogo 3.00Muito bom, só não gostei do alvo não centraliza, e deveria ter uma versão em português 4.00Galax Note 10.1 Melhor jogo arcada que já joguei em algum smartphone ou tablet! Gráficose jogabilidade quase perfeitos, o único defeito dele era não poder jogar sem acesso a internet,como resolveram isso ficou mto bom!
5.00
b) Use o código fornecido para converter os textos em uma matriz documento-termo binária (isto é, cadaentrada da matriz indica se um termo está presente ou não no respectivo texto).
Para transformar os textos das resenhas em matriz documento-termo binário realizou-se um processo dehigienização de texto. Esse processo consistiu em remover as “palavras de parada” do idioma (preposições,artigos, conjunções, etc.), acentuação, pontuação, espaços em branco excedentes e números, pois essas sãocaracterísticas de textos desinteressantes para o propósito de compreender o que textos diz com relação aoaplicativo avaliado. Após higienizado, aplicou-se o processo de radicalização do texto, ou seja, reduzir as
1
palavras ao seu radical (e.g. avaliar, avaliação, avaliando -> avali). Nesse processo de utilizou-sedois algoritmos de radicalização: o algoritmo de Poter1 (MPTER) e o algoritmo RSLP (Removedor de Sufixosda Língua Portuguesa)2 (MRSLP), cujo resultados são exibidos na Table 2 e na Figure 1.
Tabela 2: Estatísticas do número de radicais extraídos por cada algoritmo de radicalizaçãoNº radicais Média Mediana 1º Quartil 3º Quartil Desvio Padrão
PTER 645.00 2.60 1.00 1.00 2.00 6.32RSLP 609.00 2.68 1.00 1.00 2.00 6.54
Frequência absoluta
Oco
rrên
cia
da
pala
vra
em to
dos
os
revi
ews
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0 100 200 300 400
4143839990
42452422
16191112
6105165231132111144
AlgoritmoPTERRSLP
counts
Den
sity
0.00
0.05
0.10
0.15
0.20
0.25
0.30
0 20 40 60 80 100 120
●●●● ●●●●
●●●●●
●●●●●●●●● ●●● ●●● ●●●● ●●● ●●●●●● ●●●●
●● ●●●●● ●●●●●●●●● ●●●●
●●●●●● ●●●●●●●● ●●●
● ●●●●● ●●●● ●● ●● ●●●●●● ●●●● ●●●● ● ●●● ●● ●●●●● ●
●● ●●● ●●● ●●●●●●● ●●●● ●●●●● ●●● ●●●●●●●● ● ●● ●●●●
●●
●●●●● ●●●●●●●●●●●●● ●●●● ●● ●● ●●●●●●●●●● ●●●●● ●● ●● ● ●●●●
●●●●●●● ● ●●●●
●●●●●● ●●●●●●●●●●●●●●
●●●● ●● ●●●
●●●● ●●●●●●● ●●●●●● ●●●●● ●●●●●●●●●
●●●●●●●●●●
●●●●●●●●● ●●● ● ●●●●● ●●●● ●●●●● ●●●●●
● ●●●● ●●●● ● ●●● ●●●●● ●●●●●● ● ●●● ●●●●●●● ●●●●
●●●●●● ●●
● ●●●●●●●● ● ●● ●●●●● ●●●●●● ● ●●●
●●●●●●●●● ●●● ●● ●● ●●●●●●●●●● ●●●●● ●● ●● ●●●●●
●●●●●
● ● ●●●●●●
AlgoritmoPTERRSLP
Figura 1: Número de ocorrências das palavras nas 200 resenhas. Frequências das ocorrências mais frequentes(esquerda) e Densidade empírica do número de ocorrências maiores que 2 (direita).
Note que ambos os resultados indicam que os algoritmos tiveram desempenho bastante similar. O compor-tamento das contagens das palavras* –no decorrer do texto denotaremos por palavras* os radicais indicadospelos algoritmos– foi bastante similar, ambos apresentando contagens baixas para a maioria das palavras*,como é o de se esperar em textos dessa natureza. Uma visualização das palavras* encontradas por cadaalgoritmo é realizada na Figure 2, novamente nota-se a similaridade dos algoritmos, pois as palavras* que sedestacam na nuvem são as mesmas para ambos.
1http://snowball.tartarus.org/algorithms/portuguese/stemmer.html2http://www.inf.ufrgs.br/~viviane/rslp/
2
mer
ec gostpar
reco
mfaz
rod
algu
m
suppe
gotim
celu
lte
mp
compr
esse
grand
xoom
desinstalex
cele
ntacho
semprlegalexelent
pra
baix
pouc
nao
bem
pod
gamlis
vici
ant
div
ert
apar
elh
atua
liz
feit
cad
aindan
tes gr
afic
perfeit
val
demor
mas
jog
ter
adorfa
ses
per
bom xper
cois
atualizaca
melhor
vez
reso
lvtud
not
galaxy
curt
estr
elpe
rd
dess
uma
ruim
fal
func
ion
jogu
nad
nov
fic
and
roid
simpl
mais
boa
amo
joga
bil
mui
t
pen
rap
instalbu
gs
dem
tabl
et
agor
pois
mentr
av
merd
hor
tod
Algoritmo PTER
temp
sup
fal
trav
grand
des
inst
al
mal
nov
jogabilsem
pr
ant
not
cois
men
os
esper
ach
exce
l
amo
bug
essfas
mer
d
compr
pouc
exel
tod
baix
otim xper
jog
gam
legal
celu
lpr
areco
m
par
hor
des
s
xoom
perf
eit
real
ter
estrel
atua
l
demal
apar
elh
resolv
atua
lizac
a
perd
tud
graf
val
mer
ec
mel
horta
blet
rod
pegnao
lis
boa
curt
bomnad
ador
inst
al
meu
func
bem
dem
and
roid
aind
est
mui
t
feit
pen
vici
fic
rap
gala
xy
div
ert
vez
inici
ruimsimpl
uma
faz
cad
pod
algum
gost
mel
h
Algoritmo RSLP
Figura 2: Nuvens de palavras* resultantes de cada algoritmo de radicalização.
Nesse trabalho preferiu-se prosseguir com a radicalização realizada pelo algoritmo de Poter, pois embora asradicalizações tenham sido similares, em alguns casos identificou-se overstemming no algoritmo RSLP. Para oalgoritmo de POTER, em contraste com RSLP, houve casos de understemming, mas preferiu-se mantermosdessa forma para que não fossem agrupadas no mesmo radical palavras com sentidos distintos.
A matriz documento-termo binária referentes aos textos ficou então, com dimensão 200 documentos por 645termos. A Figure 3 exibe a esparsidade dessa matriz.
Resenhas
Pala
vras
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
Resenhas
baix
bem
bom
estrel
excelent
fic
galaxy
gost
grafic
jog
legal
melhor
muit
nao
otim
perfeit
pra
recom
rod
trav
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
Figura 3: Visualização da matriz documento-termo binária. Regiões de preenchimento em preto representama ocorrência do termo no documento. Matriz completa (direita) apenas os termos 3% mais frequentes.
c) Use duas técnicas de clustering para criar agrupamentos dos diferentes textos (não use as notas paraisso). Para a técnica que foi fornecida, faça também duas variações. Interprete os grupos obtidos por cadaum dos métodos. Eles concordam entre si?.
3
As técnicas de agrupamento utilizadas foram o método de k-means, onde utilizou-se 4 diferentes algoritmospara encontrar os k grupos cada qual com diferentes números de grupos e algoritmos hierárquicos definidosa partir de distâncias euclidianas com quatro diferentes definições de distância entre grupos.
K-means
No métodos k-means os quatro algoritmos utilizados para encontrar os grupos foram Hartigan-Wong3,Lloyd4, Forgy5, MacQueen6. Para cada algoritmo de 2 a 15 grupos foram considerados. Os resultados sãoexibidos na Figure 4.
k
2 3 4 5 6 7 8 9 101112131415
●●
●● ●
●
● ●
●
● ● ●
●
●
1200
1300
1400
●●
●● ●
●
● ●
●
● ● ●
●
●
Forgy
2 3 4 5 6 7 8 9 101112131415
●
●
●
●
●
●
●
●
●
●
●●
●●●
●
●
●
●
●
●
●
●
●
●●
●●
Hartigan−Wong
2 3 4 5 6 7 8 9 101112131415
●
●●
●●
●●
●
●
● ●●
●
●
●
●●
●●
●●
●
●
● ●●
●
●
Lloyd
2 3 4 5 6 7 8 9 101112131415
●
●
●●
●
● ●
●
●●
●●
●●
●
●
●●
●
● ●
●
●●
●●
●●
100
200
300
MacQueen
Dis
tânc
ias
entr
e−cl
uste
rs
Soma das distâncias ao quadrado das observaçõesDentro dos clusters Entre os cluters● ●
Dis
tânc
ia in
tra−
clus
ters
Figura 4: Distâncias intra e entre clusters para cada algoritmo definido com k clusters
Na Figure 4 são exibidas as somas das distâncias entre as observações e o centro do cluster a qual pertence,distâncias intra-clusters (em preto) e as distâncias entre os centros dos grupos, distâncias entre-clusters (emazul). Em geral, um bom agrupamento garante uma pequena distância intra-cluster e alta entre-clusters,pela figura nota-se que os algoritmos levam a diferentes escolhas do número de grupos.
A escolha do número de grupos sob o método de k-means é largamente trabalhado na literatura, para quea escolha não se torne puramente subjetiva adotou-se a utilização do índice de GAP, proposto por RobertTibshirani em 20017. No software R esse índice pode ser computado pela função index.Gap do pacoteclusterSim, essa função retorna um objeto diffu, onde o número de grupos indicado por esse critério seráo menor cujo diffu é maior que 0. A Figure 5 exibe os valores de diffu para cada um dos algoritmos.
3Hartigan, J. A. and Wong, M. A. (1979). A K-means clustering algorithm. Applied Statistics 28, 100–108.4Lloyd, S. P. (1957, 1982) Least squares quantization in PCM. Technical Note, Bell Laboratories. Published in 1982 in IEEE Transactions
on Information Theory 28, 128–137.5Forgy, E. W. (1965) Cluster analysis of multivariate data: efficiency vs interpretability of classifications. Biometrics 21, 768–769.6MacQueen, J. (1967) Some methods for classification and analysis of multivariate observations. In Proceedings of the Fifth Berkeley
Symposium on Mathematical Statistics and Probability, pp. 281–297. Berkeley, CA: University of California Press.7Tibshirani, R., Walther, G., Hastie, T. (2001), Estimating the number of clusters in a data set via the gap statistic, “Journal of the
Royal Statistical Society”, ser. B, vol. 63, part 2, 411-423.
4
k
dif
fu
−0.02
0.00
0.02
0.04
2 4 6 8 10 12 14
●
●
●
●
●
●
●
●●
● ●
●
●
Forgy
2 4 6 8 10 12 14
●
●
●
●
●
●
●●
● ●
●
●
●
Hartigan−Wong
2 4 6 8 10 12 14
●
●
●
●
●
●
●
●
●
●
●
●
●
Lloyd
2 4 6 8 10 12 14
● ●
●
●
●
●
●
●
●
●
●
●
●
MacQueen
Figura 5: Diferenças de índices GAP para os diferentes algoritmos.
Novamente pelos índices de GAP há diferentes indicações do número ideal de clusters, foram indicados4, 9, 3, 4 quando utilizados os algoritmos Forgy, Hartigan-Wong, Lloyd, MacQueen respectivamente. ATable 3 exibe os valores das distâncias intra e entre classes e nota-se que independente do número de clustersescolhido o algoritmo de Hartigan-Wong obtém os melhores resultados.
Tabela 3: Distâncias intra e entre clusters para os k’s indicadosAlgoritmo k Dist. intra Dist. entreHartigan-Wong 3.00 1435.85 91.61Lloyd 3.00 1444.08 83.38Forgy 3.00 1454.47 72.99MacQueen 3.00 1451.01 76.45Hartigan-Wong 4.00 1396.43 131.03Lloyd 4.00 1428.05 99.41Forgy 4.00 1423.60 103.86MacQueen 4.00 1432.44 95.02Hartigan-Wong 9.00 1265.82 261.64Lloyd 9.00 1315.43 212.03Forgy 9.00 1361.96 165.50MacQueen 9.00 1354.47 172.99
Clusterização Hierárquica
Considerando o método de clusterização hierárquica utilizou-se diferentes abordagens na definição dedistâncias entre os grupos formados a cada passo do algoritmo. Foram utilizadas o método de ward.D2,que quantifica a diferença entre a soma dos erros quadráticos de cada padrão e a média da partição emque está a observação está contida; single distância é dada pela menor distância entre dois elementos degrupos distintos; complete distância é dada pela maior distância entre dois elementos de grupos distintos; eaverage distância é dada pela média das distâncias entre todos os elementos de grupos distintos.
Os dendrogramas referentes aos agrupamentos utilizando os diferentes tipos de ligação (definição dedistâncias entre grupos) são exibidos na Figure 6. Para agrupamentos hierárquicos a escolha de gruposé realizada de forma subjetiva à interpretação gráfica. Nesse caso nota-se que, assim como no k-means,diferentes configurações do método levam a diferentes agrupamentos, no caso da ligação ward.D2 pareceque pode-se dividir os textos em dois grupos, já para os demais essa divisão não é clara indicando que nãohá um agrupamento claro.
5
02
46
8
Distância da ligação
197 5
105
196 24 125 37 62 17 43 15 46 50 38 80 98 169 73 168
179 13 90 71 102
191 42 126
161 94 112
120
174 36 40 29 85 165
176
132
148
164 51 138 45 190 16 81 149 74 3 145 32 72 84 156
157
172
110
186 14 35 177 28 187 64 158
143
118 67 192
116
141
183 92 124 87 89 139
154
159
166
103 23 114
104
115 8 82 167 4
142 86 153
189
199
106 79 54 178 69 140 58 127 83 173 30 21 19 109
171 65 133
163 47 63 155 18 44 41 150
194
101
185 2 60 59 144 68 195
152
162
134
121
182
188 49 11 122 88 181 77 26 131
117 76 39 113
146
129
200 33 1 55 107
170 70 91 27 61 53 184 52 97 100 6 12 10 96 66 137
111
135 31 20 48 108
198 75 25 160 99 130
119
180 95 128 22 34 123
151
147 93 9 57 136
193 56 175 7 78
ward.D2
01
23
45
6
Distância da ligação
59 197 5
143 58 127
118 83 17 183 15 2 105 60 192 67 173 92 47 43 196
168 73 52 144
141 97 124
116 63 46 155
139 56 30 179
125 36 24 21 175
154
117
100 87 76 50 40 37 16 6 195
169
152 98 89 78 68 62 44 12 188
149
132 90 81 71 49 32 31 18 193
182
172
166
162
159
157
156
150
148
136
134
113 86 74 45 33 19 13 7 199
194
191
189
101
185
171
165
164
145
138
126
122
121
109
102 96 80 72 65 53 42 41 39 38 11 10 190
186
184
176
167
163
161
146
133
123
110
106 94 88 85 84 61 55 51 28 23 20 14 181
177
153
142
114
112
107
103 95 77 66 48 35 29 27 4 3 200
187 64 158
151
147
137
111
135
129
128
120
108
198
104 93 79 75 54 26 131
178 69 140 25 174
160 99 130
119
180
115 9 57 8 82 22 34 1 170 70 91
single0
24
68
59 197 5
143 58 183 83 118 2 60 15 144 52 97 56 92 46 124 87 89 43 196
173 47 116
100 6 12 30 179 63 36 40 37 125 24 62 68 188 21 155
195 16 50 169 98 13 38 80 154 81 149 18 44 166
171 65 133
163 19 109 41 150 31 71 78 159
103
106 7
194
136
134
182 90 161
132
148 86 156
157 72 84 32 172
138
164 45 190
176 29 85 74 145 3
151 94 112
187 64 158
102
191 51 42 126
110
186 28 14 35 177
153 79 54 115 8 82 178 69 140
147 93 9 57 22 34 167
114 4
142 11 122
165
146
123 77 121 33 107
170
200 1 55 184 53 120
174 61 27 181 70 91 26 131
152
162
199
101
185 39 113 96 66 95 128 10 108
198
137
111
135 48 104
129 75 25 160 99 130
119
180 20 23 49 88 189
193 76 117
139
175 17 127 67 141
192
105 73 168
complete
01
23
45
6
59 197 5
143 58 83 183 17 2 127
118 15 60 105 43 67 192 47 173 92 168 52 97 144 73 196
141
116 56 124 46 63 30 155 24 139
175 21 37 179 87 6 195
125 36 40 62 100 12 154 68 31 16 50 98 169 89 19 78 76 117
188 81 18 44 7 49 71 136 32 193
152
149
132 41 150 13 90 161
189
159
166 86 156
148
162
134
182 10 172 45 190 96 103 74 3 145
109
171 65 133
163 39 113
194 66 101
185
157 72 84 199 33 165
176 38 80 51 42 126
138
164
146 55 88 11 122
102
191 23 20 48 77 121 29 85 110
186
106 28 53 184
123 95 14 35 177
120 94 112 75 25 79 54 178 69 140
187 64 158 26 131
128 22 34 151
147 93 174 9 57 137
111
135
104
160 99 130
119
180
115 8 82 129
108
198
181 61 27 200
107 1
170 70 91 153
167
114 4
142
average
Figura 6: Dendogramas referentes aos agrupamentos hierárquicos com diferentes tipos de ligação.
Para comparação dos métodos escolheu-se construir dois grupos utilizando o agrupamento hierárquico comligação de grupos dada pelo método de ward.D2 e utilizando o agrupamento por k-means pelo algoritmo deHartigan-Wong. Foram agrupadas 88 observações no 1º cluster e 112 no 2º pelo k-means e considerando oagrupamento hierárquico foram 75 e 125 observações nos 1º e 2º clusters respectivamente.
6
bommuit
otimlegalmel
hor
rod
excelent gost
nao
recom
bem
gala
xy
agor
divert
grafic
perf
eit
ruim
baix
funcion
inst
almas
peg
sup
acho
aind
ate
atua
lizac
a
celul
dem
desinstal
estr
elfi
cjo
gabi
l
jogu
merdnov
pod
tablet
trav
ver
viciant xoom
1º ClusterK−means
jogbom
otimmelhor
muit
nao
baix
grafic
pra
fic
gostrod
bem
galaxytrav
estrel
excelent
pen
compr
legalperfeit
recom
tod
val
jogabil
perd
tem
p
viciant
ador
aparelhdem
espe
r
instal
maisnot
ruim
tablet
algu
m
ante
s
atualizaca celul
demor
esse
fas
faz
feit
func
ion
hor
mas
men
par
ter
tud
amo
and
roid at
ualiz
boa
bugs
cois
complet
cons
ig
curt
dar
dess
dificil
drogfech
gast
grand
jogu
lent
merd
merec
nad
parabens
peg
pouc
que
reembols
resolv
sem
pr
show
tent
ulti
m
vez
xper
2º ClusterK−means
bommuitlegalotim
reco
m
bem
exce
lent
rod agor
gostnao
divert
ruim
func
ion
gala
xy
sup
teracho
ate
deminstal
jog
jogu
masmelhor
merd
peg
tablet
viciant
1º ClusterH−clust
jogbom
otim
melhorm
uit nao
graficbaix
fic
galaxygost
rod
estr
el
perf
eit
pra
trav
bemex
cele
nt
pen
val
compr
jogabilrecom
tod
ador
celu
l
inst
al
legal
not
perd
tem
p
viciantaparelh
atua
lizac
a
dem
esper
hor
mais
mas
men
merec
nad
resolv
ruim
tablet
algu
m
amo
antes
atualiz
boa
bugs
cois
dess
esse
fas
faz
feit
func
ion
par
peg
sempr
tud
vez
xper
aind
and
roid
angr
ybi
rds
cad
chegcomentaricomplet
concert
consigcurt
dar d
emor
dificil
dro
g
duos
enta
exelent
fech
gast
grand
jogu
lent
merdmeu
nov
para
bens
pod
pouc
pud
que
reembols
show
tent
ultim
2º ClusterH−clust
Figura 7: Nuvens de palavras* mais frequentes em cada cluster definido por cada método.
Na Figure 7 são exibidas as palavras* masi comuns em cada um dos clusters formados por cada algoritmo.Nota-se que os grupos parecem ter a mesma característica, seja por um agrupamento similar ou pelapredominância dessas palavras* na amostra selecionada. Pode-se inferir sobre os grupos formados que o 1ºse refere a resenhas essencialmente positivas sobre os aplicativos enquanto o 2º cluster tem a predominânciade palavras relacionadas à jogabilidade do aplicativo, sendo resenhas positivas ou negativas.
Tabela 4: Amostras de resenhas retiradas de cada cluster
Método Cluster Amostra de texto 1 Amostra de texto 2K-means 1 É virus Eu baixei tals e meu anti virus
foi ger se tinha algum virus e detectouque ele era eu desinstalei e meu celu-lar ficou bem melhor! Meu celulalr é o\samsung galaxy ace duos\
Nota 10 Jogo exelente bom grafico comboa jogabilidade recomendo
K-means 2 Excelente!!! Muito bom...Recomendo! Galaxy s Um dos melhores jogos depuzzle
H-clust 1 Bom e ruim Gráficos muito bons, masa jogabilidade no touchscreen é ruim.Joguei um pouco, matei a curiosidade edesinstalei.
Nao gostei Nao gostei pq nao pego nomeu tablet, pq esse jogo é pra pc
H-clust 2 Excelente Rodou liso no s3... Muito bom amei viciante nao paro djogar
Na Table 4 são exibidos duas amostras de resenhas retiradas aleatoriamente dos cluster formados por cada
7
um dos métodos. Note que nessas amostras não há um claro padrão nos textos. assim como já observado naFigure 7 ambos os grupos são similares, diferendo somente na predominância das palavras que o compõe.
d) Mostre as 5 regras de associação encontradas (não use as notas para isso) usando o algoritmo a prioricom maior suporte, as 5 com maior confiança e as 5 com maior lift. Interprete o valor do suporte, lift econfiança de um regra de sua escolha. Mostre ao menos 3 maneiras distintas essas regras visualmente.
Nesse exercício foram encontradas as regras de associação cujo contém um suporte, proporção do conjuntode palavras* ocorrer simultaneamente em um documento, superior a 0,04, e confiança, probabilidade doconjunto de itens consequente (RHS) dado a ocorrência do conjunto de itens antecedente (LHS), superiora 0,60. Com essas configurações foram encontrados um conjunto de 21 regras. Na Table 8 são exibidas ascinco regras com melhor desempenho considerando seu suporte, confiança e lift (razão da confiança pelaprobabilidade do consequente).
Tabela 5: Algumas regras de associação com melhores suporte,confiança e lift
Regras Suporte Confiança Lift
Melhores Suporte
{muit} => {bom} 0.15 0.68 1.79{otim} => {jog} 0.12 0.68 1.21{melhor} => {jog} 0.10 0.68 1.21{nao} => {jog} 0.08 0.67 1.19{jog,muit} => {bom} 0.08 0.84 2.22Melhores Confiança
{jogabil} => {grafic} 0.04 1.00 11.11{pra} => {jog} 0.06 0.92 1.65{pen} => {jog} 0.04 0.90 1.61{val} => {jog} 0.04 0.89 1.59{tod} => {jog} 0.04 0.89 1.59
Melhores Lift
{jogabil} => {grafic} 0.04 1.00 11.11{grafic,jog} => {otim} 0.04 0.62 3.62{jog,muit} => {bom} 0.08 0.84 2.22{muit} => {bom} 0.15 0.68 1.79{pra} => {jog} 0.06 0.92 1.65
Para exemplificar a interpretação dessas medidas calculadas para cada regra tome a regra de maior{grafic,jog} => {otim}, essa regra diz que resenhas que contém os radicais grafic e jog tendem atambém conter o radical otim. Essa regra tem um suporte de 0.04, ou seja, em 4% dos textos essas palavrasocorrem simultaneamente. A confiança dessa regra é de 0.6153846, isso diz que dentre as resenhas quecontém grafic e jog, 61.5384615% contém também otim. E finalmente dado que a resenha contém osradicais grafic e jog, há um aumento de 3.6199095 na probabilidade de se observar otim na resenha.
Acima exibimos textualmente as regras e suas medidas de qualidade, porém são várias as visualizaçõespropostas para regras de associação8. Na Figure 8 são apresentadas três formas de visualização. Ambas sãoexprimem os mesmos resultados, porém com ênfases distintas. No gráfico superior direito temos a dispersãodos dados com relação ao suporte e confiança nos eixos x e y e o lift é apresentado em escola de cores dos
8Hahsler, M., Grün, B., Hornik, K. (2005). arules - A Computational Environment for Mining Association Rules and Frequent ItemSets. Journal of Statistical Software, 14(15), 1 - 25.
8
pontos. Note que a maioria das regras tem suporte baixo e confiança superior a 0.7, ainda pode-se observarque as regras de maior lift estão associadas a menores valores de suporte. No gráfico superior esquerdotemos a representação em forma de grafo e podemos observar claramente que há a predominância de regrasque levam a consequência jog. No gráfico inferior também nota-se a predominância de regras com RHS joge com relação ao antecedente temos essencialmente regras formadas por apenas um radical.
e) Implemente componentes principais para esses dados (não use as notas para isso). Mostre quais sãoas 5 variáveis que recebem os maiores coeficientes (cargas) no primeiro componente. Mostre também as5 variáveis que recebem os menores coeficientes (cargas) no primeiro componente. É possível interpretaressas palavras? Faça o mesmo com o segundo componente. Faça um diagrama de dispersão dos doisprimeiros componentes principais. Use uma cor para cada ponto de acordo com a nota atribuída. Há umrelação entre os componentes encontrados e as notas atribuídas? Você consegue encontrar outliers combase nesses gráficos? Mostre ao menos três textos outliers. Repita o procedimento usando os três primeiroscomponentes, isto é, usando um gráfico em 3d.
Na Table 6 e Table 7 são exibidos os cinco maiores carregamentos para os 2 e 3 primeiros componentesprincipais respectivamente. Note que as palavras com maiores cargas nesses componentes se repetem, issose dá pela predominância de ocorrências dessas palavras nos textos. Esse é o principal fator que dificulta ainterpretação dos componentes. Todavia pode-se notar na 2º componente que todas as cargas são positivas erelacionas a radicais que exprimem uma noa avaliação de um aplicativo com relação a jogabilidade e gráficos.Já a 1ª componente apresenta o radical jog com carga negativa o que significa que textos que contém esseradical terão valores menores dessa componente assim como para os radicais nao e fic.
Tabela 6: Menores carregamentos1º Comp. 2º Comp. 3º Comp.
word loading word loading word loadingmagnif -2.1E-04 simpl -3.4E-06 orrivel 5.9E-05kkkk -2.7E-04 estand 1.6E-05 shopping 5.9E-05affz -2.7E-04 conect 1.6E-05 sum 5.9E-05che -3.2E-04 pouquinh 1.6E-05 etinh 5.9E-05
ficarej -3.2E-04 period 1.6E-05 kkkk 1.1E-04
Tabela 7: Maiores carregamentos1º Comp. 2º Comp. 3º Comp.
word loading word loading word loadingbom 0.586 jog 0.686 otim 0.494jog -0.478 bom 0.499 grafic 0.383
muit 0.447 otim 0.226 nao -0.324nao -0.165 muit 0.150 jog -0.236fic -0.136 grafic 0.129 excelent 0.228
Na Figure 9 exibi-se a dispersão das componentes principais calculadas para cada resenha. À esquerda sãoas duas primeiras componentes principais a à esquerdas as três primeiras. Não há uma visível relação dascomponentes com as notas atribuídas pelos autores dos textos, há um número muito maior de notas extremas(considerando notas 5 e 1 têm-se aproximadamente 75% das observações) e essas notas estão dispersas deforma não padronizadas nos gráficos. Nos gráficos também foram destacados os 3 pontos outliers, a definiçãodesses cinco pontos se deu pelas maiores distâncias com relação ao ponto mediano das componentesprincipais. Embora com esse definição possa se ordenar as observações quanto a dissimilaridade com relaçãoa característica comum e identificar quantas observações menos semelhantes forem necessárias, apenas duasobservações de destacam nos gráficos tanto considerando 2 como 3 componentes.
9
Lift = P(RHS | LHS) / P(RHS)
Support = P(RHS, LHS)
Con
fian
ça=
P(R
HS
| L
HS)
0.6
0.7
0.8
0.9
1.0
0.04 0.06 0.08 0.10 0.12 0.14
●
2 4 6 8 10
baix
bom
compr
estrel
fic
graficjog jogabil
melhor
muit
nao
otim
pen
perfeit
pra
tod
trav
val
size: support (0.04 − 0.15)color: lift (1.099 − 11.111)
size: support color: lift
{joga
bil}
− 1
rul
es
{gra
fic,
+1
item
s} −
1 r
ules
{jog,
+1
item
s} −
1 r
ules
{mui
t} −
1 r
ules
{pra
} − 1
rul
es
{pen
} − 1
rul
es
{com
pr, +
2 it
ems}
− 3
rul
es
{bom
, +1
item
s} −
1 r
ules
{bom
, +3
item
s} −
2 r
ules
{fic
} − 1
rul
es
{tra
v} −
1 r
ules
{bai
x} −
1 r
ules
{est
rel}
− 1
rul
es
{gra
fic}
− 1
rul
es
{mel
hor}
− 1
rul
es
{oti
m} −
1 r
ules
{nao
} − 1
rul
es
{per
feit
} − 1
rul
es
{jog}
{bom}
{otim}
{grafic}
LH
S
RHS
Figura 8: Visualização das regras de associação dos radicais presentes em cada resenha. Gráfico de dispersãocom escala de cores para lift (superior à esquerda), visualização baseada e grafos com radicais e regras comovértices e Visualização baseada em matriz agrupada de regras (inferior).
10
PC1 (4.5%)
PC2
(3.8
%)
−0.5
0.0
0.5
1.0
1.5
2.0
−1.0 −0.5 0.0 0.5 1.0
●
●
●
●●
●●
●●
●
●●
●
●
●
●●●
●
● ●
●
●
●
●
●
●●
●
●
●●●
●
●
●
●
●●●
●
●●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
● ●
●●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
● ●
●●
●
●
●
●
●
●
●
●
●
●●
●●
● ●
●●● ●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●●
●●
●
●
●
●●
●
●● ●
●●●●●
● ●●●
●
●
●
●●●
●
●●
●●
●
●●
●
● ●
●●●●●●●
●
●
●
● ●●
●
●●
●●
●●
●
●●
●
●●
●●●●●
●
●●●
●
●
●●
●
●●●●●
●
●●
●
●
●
●●
●
●
●●
●
●
●
●●
●
●
●
●●●●●●●●●
●
●
●●●●●●●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
● ●
●
●●●●
●
● ●●
●
●●●●
●
●●
●
●
●●●●●●●●●
●
●●
●
●
●●●●●
●
●
●●
●●
●
●
●●
−1.0−0.5 0.0 0.5 1.0
−0.50.0
0.51.0
1.52.0
−1
0
1
2
PC1 (4.5%)
PC2 (3.8%)
PC3
(2.8
%)
●
●
●
−1.0−0.5 0.0 0.5 1.0
−0.50.0
0.51.0
1.52.0
−1
0
1
2
PC1 (4.5%)
PC2 (3.8%)
PC3
(2.8
%)
Notas● ● ● ● ●1 (14.5%) 2 (4.5%) 3 (8%) 4 (12.5%) 5 (60.5%)
Figura 9: Dispersão das componentes com a indicação das notas atrucuídas a cada texto.
Tabela 8: Algumas regras de associação com melhores suporte,confiança e lift
Id DistânciaTexto
Considerando 2 componentes
183 1.63 Otimo Muito bom esse jogo so que, tudo o que vc faz gasta a energia , e se vcnaum quer comprar tem q esperar um eternidade pra encher . O que eu achomais legal eh dar festas pra conseguir novos membros kkk
59 1.57 Xoom 2 e Sansug Galaxy Tablet 2 7.0 meus dois tablets acontece de travarno inicio da parte 11 do Smligglers´ DEM justamente quanto é apresentadoo pássaro amarelo. uma pena, no iPhone funciona que é uma maravilha.///****** RESOLVIDO ****//// vá em Configurações => uso de dados (ativea função) => definir limite de dados móveis (ative esta função). Após, reiniciedica do \esdrascps\ abraços
192 1.37 Estranho Tem uns bugs estranhos, as vezes na hora de pular fica travando emorre se ñ fosse por isso daria 5 estrelas porque o jogo é otimo.... pena esperomelhorias.......
Considerando 3 componentes
58 2.27 Motorola Atrix 4G Vi muitos comentários negativos, o que me deixou commedo de atualizar. Depois dessa atualização o que era ótimo ficou excelente.Alterações nos gráficos e cenários excelente, exige mais precisão. Se pudessedava nota 6.
127 2.18 Nem abre no LG 4X HD O jogo parece ter ficado com excelentes gráficos e opreço é ótimo. Mas se ele nem ao menos abrir no seu aparelho é complicado.Espero que os donos de aparelhos com Tegra 3 não percam tempo comprandoesse jogo.
11
5 1.86 Decepciona! Quando chega na fase de desmontar as bombas do lagarto ojogo simplesmente fecha! Nessa parte do jogo se eu der um tapinha em qlqrbandido dda cidade o jogo simplesmente fecha! E o engraçado é que tem variasreclamaçoes de usuarios sobre esse problema e o desenvolvedor simplesmentecaga ou nao dá nenhuma satisfação! Decepcionante
f) Implemente kernel PCA para esses dados, e trabalhe com ao menos duas variações dela. Plote novamenteo gráfico de dispersão para essas novas técnicas. Eles são muito diferentes entre si? E com relação acomponentes principais? Repita o procedimento usando os três primeiros componentes, isto é, usando umgráfico em 3d.
Para esse exercício utilizou-se os kernels Gaussiano K(xi, xk) = exp(−σ ‖xi, xk‖2), com o hiperparâmetro σfixado em 0.3 e o kernel Polinomial K(xi, xk) = (α + γ 〈xi, xk〉)δ com os hiperparâmetros alpha = 1, γ = 1 eδ = 1.2. Os resultados das componentes principais não lineares utilizando as expansões por kernels definidasacima são exibidos na ?? e ?? utilizando duas e três componentes.
KPC1 (λ = 0.035)
KPC
2 (λ
=0.
015)
−4
−2
0
2
4
−8 −6 −4 −2 0 2
●
●● ●
●
●
●●●
●
●
●
●
●
●
●
●
●
● ●
●
● ●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●●
●●
●●
●●
●
●
●●
●
●●●
●●
●
●●
●
●
●
●
●●
●
●●
●●
●
●● ●●
●
●
●
●●
●
●
●●
●
●
●
●●
●
●
●
●
●
●● ●●
●
●
●●
●
● ●
●
●
●●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●●
●●
●●
●●●
●●●●
●
●
●
●●
●
●●●
●●●●●
●
●●●
●
●
●●
●
●
●
●
●●●●●
●
●
●
●●
●
●
●
●●●●●●
●
●
●
●
●
●
●●
●●
●●
●
●
●
●●●●●●●●
●●●
● ●
●●●●●●●●●●●●●●●●
●●●●●●
●●●●●●●●●●●
●●●●●
●
●
●●●●
●
●
●●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
● ●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
● ●
●
●●
●
●
●
●●
●●●
●●
●●
●
●●
●
●●
●
−8 −6 −4 −2 0 2−4
−20
24
−2
0
2
4
KPC1 (λ = 0.035)
KPC2 (λ =0.015)
KPC
3 (λ
=0.
014)
●
●
●
−8 −6 −4 −2 0 2−4
−20
24
−2
0
2
4
KPC1 (λ = 0.035)
KPC2 (λ =0.015)
KPC
3 (λ
=0.
014)
Notas● ● ● ● ●1 (14.5%) 2 (4.5%) 3 (8%) 4 (12.5%) 5 (60.5%)
Figura 10: Dispersão das kernel componentes gaussianas com a indicação das notas atribuídas a cada texto.
Considerando o kernel Gaussiano, Figure 10, observa-se um comportamento bastante incomum, em formade cone. Mesmo com três componentes esse comportamento permanece. Essa abordagem se mostroubastante distinta dos componentes principais lineares, porém ainda não identifica-se claramente uma relaçãodas componentes com as notas atribuídas embora que as notas mais baixas estejam essencialmente comvalores positivos da segunda componente.
Ao considerar o kernel Polinomial, Figure 11, também temos um comportamento distinto das demaisabordagens. Ainda com essa transformação não há relação das componentes com as notas, porém com
12
essa transformação pode-se identificar mais claramente um outlier, o texto 59. Assim como nas demaisabordagens a consideração da terceira componente contribuiu pouco para a discriminação visual.
KPC1 (λ = 0.49)
KPC
2 (λ
=0.
436)
−20
0
20
40
−20 −10 0 10 20
●
●
●
●
●● ●
●●
●
●●●
●
●
●●●●
●●
●
●
●
●
●
●●
●●
●●●
●
●
●
●
●●●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●●
●●
●
●
●●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●●
●
●●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●●●●
●●
●●
●
●
●
●●
●
●●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●● ●
●●
●● ●●
●●
●●●●●●● ●
●
●
●
●● ●●●
●●
●●
●●●●
●
●
●●●●
●●●●●●●●●●
●●●●●● ●●
●
●● ●●●●●●
●● ●●●●●●●●●●
●●
●●●●●●
●●●●●● ●●
● ●● ●●●
●
●●●●
●●●●●●
●●●● ●●●● ●●●●●●●●● ●●●●● ●●
●● ● ●● ● ●●● ●●●●
●●●●●
●●●●●● ●
●
●●●●●
●● ●● ●●●● ●● ●●
●●●●
●●
●● ●●
●●●
●●●●
−20−10
0 10 20
−200
2040
0
20
40
60
80
100
KPC1 (λ = 0.49)KPC2 (λ = 0.436)
KPC
3 (λ
=0.
36)
●
●
●
−20−10
0 10 20
−200
2040
0
20
40
60
80
100
KPC1 (λ = 0.49)KPC2 (λ = 0.436)
KPC
3 (λ
=0.
36)
Notas● ● ● ● ●1 (14.5%) 2 (4.5%) 3 (8%) 4 (12.5%) 5 (60.5%)
Figura 11: Dispersão das kernel componentes polinomiais com a indicação das notas atribuídas a cada texto
13
Exercício 2
Baixe o arquivo lista4.R. Ele mostra um código para baixar o banco de dados IncomeESL, que será utilizadoneste exercício. Este banco mede diversas covariáveis em indivíduos americanos, como salário, origeme nível de educação. O código fornecido coverte este banco para o formato transactions, que será usadopara implementar as regras de associação vistas em aula. Em particular, o código discretiza as variáveisnuméricas. Usando o algoritmo a priori:
O problema consiste em realizar uma análise relacionada a determinados atributos de indivíduos americanos,como o salário, origem, nível de educação, ocupação, idade, entre outros. O objetivo é encontrar regras deassociação que seja relevante, a fim de compreender mais a fundo o perfil dos indivíduos americanos.
As informações estão contidas no conjunto IncomeESL, disponível no pacote arules, do software R. Noconjunto, dispomos de 8993 observações e de 14 variáveis, cujo exibimos abaixo:
• income: renda
• sex: sexo
• martial status: estado civil
• age: idade
• education: nível educacional
• ocupation: ocupação
• years in bay area: anos na baía
• dual incomes: dupla renda
• number in household: qtd. de moradores
• number of children: qtd. de crianças
• householder status: status do proprietário
• type of home: tipo de casa
• ethnic classification: classificação étnica
• language in home: idioma na casa.
Vale ressaltar que todas as variáveis ou são qualitativas ou foram categorizadas.
a) Mostre as 10 regras (juntamente com suporte, confiança e lift) com maior lift entre regras com suportede ao menos 0.001, confiança ao menos 0.8, e tamanho máximo 3.
Tabela 9: Dez melhores regras de associação com relação ao lift, sujeitas a suporte >0.001, confiança > 0.08 e com no máximo três itens
Regras Suporte Confiança Lift{marital status=divorced,language in home=spanish} => {ethnic classification=hispanic} 0.00 0.97 7.61{occupation=laborer,language in home=spanish} => {ethnic classification=hispanic} 0.01 0.94 7.37{occupation=retired,language in home=spanish} => {ethnic classification=hispanic} 0.00 0.92 7.22{occupation=unemployed,language in home=spanish} => {ethnic classification=hispanic} 0.00 0.91 7.19{number of children=1+,language in home=spanish} => {ethnic classification=hispanic} 0.03 0.90 7.13{income=$0-$40,000,language in home=spanish} => {ethnic classification=hispanic} 0.04 0.90 7.08{number in household=2+,language in home=spanish} => {ethnic classification=hispanic} 0.03 0.90 7.06{type of home=house,language in home=spanish} => {ethnic classification=hispanic} 0.03 0.89 7.03{occupation=student,language in home=spanish} => {ethnic classification=hispanic} 0.01 0.89 7.01{marital status=widowed,language in home=spanish} => {ethnic classification=hispanic} 0.00 0.89 7.00
Com base em Table 9, temos que a regra com maior lift fornece a informação que se o indivíduo é divorciadoe o idioma em sua casa é o espanhol, então a probabilidade dele ser hispânico aumenta em 7.61 vezes. Nogeral, as regras com os 10 maiores lifts implicam no consequente em que a classificação étnica do indivíduo é
14
hispânico. Além disso, tais regras possuem confianças altas. No mais, conclui-se que todos os antecedentescontém a informação de que o idioma falado na residência é espanhol, e isto aumenta a chance de que aetnia do indivíduo seja hispânico, o que é de se esperar.
b) Mostre as 10 regras (juntamente com suporte, confiança e lift) com maior confiança entre regras comsuporte de ao menos 0.001, confiança ao menos 0.8, e tamanho máximo 3.
Tabela 10: Dez melhores regras de associação com relação a confiança, sujeitas a suporte >0.001, confiança > 0.08 e com no máximo três itens
Regras Suporte Confiança Lift{marital status=widowed} => {dual incomes=not married} 0.03 1.00 1.67{marital status=divorced} => {dual incomes=not married} 0.10 1.00 1.67{marital status=single} => {dual incomes=not married} 0.41 1.00 1.67{age=14-34,ethnic classification=east indian} => {income=$0-$40,000} 0.00 1.00 1.61{income=$0-$40,000,ethnic classification=east indian} => {age=14-34} 0.00 1.00 1.71{marital status=cohabitation,ethnic classification=pacific islander} => {age=14-34} 0.00 1.00 1.71{marital status=cohabitation,ethnic classification=pacific islander} => {language in home=english} 0.00 1.00 1.10{occupation=laborer,ethnic classification=pacific islander} => {education=no college graduate} 0.00 1.00 1.42{occupation=clerical/service,ethnic classification=pacific islander} => {language in home=english} 0.00 1.00 1.10{householder status=live with parents/family,ethnic classification=pacific islander} => {education=no college graduate} 0.00 1.00 1.42
Sujeito as condições impostas no enunciado, têm-se as 10 regras com maiores confianças, exibidas na Table 10,com valores iguais a 1. As primeiras regras afirmam que todos os indivíduos que eram solteiros, divorciadosou viúvos, então não possuíam dupla renda. Observe ainda que o suporte de que o indivíduo seja solteiro éde 40,91%. Outras regras informam que todos os indivíduos que tinham entre 14 e 34 anos e eram indianos,então possuíam uma renda entre $ 0 e $ 40,000. Ainda todos os indivíduos que eram de etnia pacíficoislandês e com estado civil em coabitação ou cuja ocupação consistia em prestar serviços religiosos, tinham oidioma inglês falado nas respectivas residências. E aqueles cuja ocupação era operário assalariado ou seviviam com os pais/família, não possuíam nenhuma graduação no ensino superior.
c) Plote as 10 regras com maior lift entre regras com suporte de ao menos 0.001, confiança ao menos 0.8, etamanho máximo 3.
d) Mostre todas as regras (juntamente com suporte, confiança e lift) com maior confiança entre regras comsuporte de ao menos 0.001, confiança ao menos 0.7, tamanho máximo 3, tamanho mínimo 2 e que tenha
“ethnic classification=hispanic” do lado esquerdo da regra.
Tabela 11: Regras de associação com relação a confiança, sujeitas a suporte > 0.001,confiança > 0.08 e com no máximo três itens, no mínimo 2 e que tenham ethnichispanic como antecedente
Regras Suporte Confiança Lift{ethnic classification=hispanic} => {age=14-34} 0.09 0.71 1.22{ethnic classification=hispanic} => {income=$0-$40,000} 0.10 0.78 1.26{ethnic classification=hispanic} => {education=no college graduate} 0.11 0.86 1.22
15
Lift = P(RHS | LHS) / P(RHS)
Support = P(RHS, LHS)
Con
fian
ça=
P(R
HS
| L
HS)
0.90
0.92
0.94
0.96
0.00 0.01 0.02 0.03 0.04
●
7.1 7.2 7.3 7.4 7.5 7.6
income=$0−$40,000marital status=divorced
marital status=widowed
occupation=laborer
occupation=student
occupation=retired
occupation=unemployed
number in household=2+
number of children=1+
type of home=house
ethnic classification=hispanic
language in home=spanish
size: support (0.001 − 0.04)color: lift (7.001 − 7.614)
Figura 12: Visualização das dez regras de associação com maiores lifts construídas no conjunto de dadosIncome. Gráfico de dispersão com escala de cores para lift (esquerda), visualização baseada e grafos (direita).
Diante das restrições, as três regras que relacionam etnia hispânica como antecedente, são apresentadas naTable 11. Com a informação de que o indivíduo é hispânico, as probabilidades de que ele tenha entre 14 e 34anos, com renda entre $0 e $40,000 e sem graduação em faculdade aumentam de maneira semelhante, 1.21,1.25 e 1.22, respectivamente. Em geral, as confianças não foram tão significantes, todas abaixo de 90%.
e) Explore os dados você mesmo. Mostre ao menos duas regras de associação que você achou interessantealém das já apresentadas na lista. Justifique porque as achou interessantes.
16
Exercício 3
Neste exercício você irá explorar alguns sistemas de recomendação para o MovieLens Dataset.Para tanto, instale a biblioteca recommenderlab, e carregue os dados usando data(MovieLense).
a) Usando 75% dos dados para treinamento e assumindo que são dadas 12 avaliações por usuário, comparea performance dos seguintes métodos com relação a quão boas a predições das notas são:.
• Filtro colaborativo com base nos produtos com k = 2• Filtro colaborativo com base nos produtos com k = 5• Filtro colaborativo com base nos produtos com k = 8• Filtro colaborativo com base nos usu´arios com k = 2• Filtro colaborativo com base nos usu´arios com k = 5• Filtro colaborativo com base nos usu´arios com k = 8
Neste problema, o objetivo é explorar alguns sistemas de recomendação para um conjunto relacionado aavaliações de filmes. Os dados foram coletados através do site da MovieLens (https://movielens.org/),durante um período de sete meses entre 1997 e 1998. O conjunto contém 100,000 avaliações, de 1 a 5, de 943usuários a respeito de 1664 filmes.
Para este problema, 75% dos dados foram utilizados para treinamento. Assumiu-se que 12 avaliações sãofornecidas por cada usuário. Assim, a fim de obter boas predições das notas, foram empregados os filtroscolaborativos com base no produto e com base no usuário e, para cada filtro, utilizando k igual a 2, 5 e 8. Porfim, as medidas MSE (EQM), RMSE (REQM) e MAE são calculadas, tais medidas avaliam o quão boas aspredições das notas estão.
Na Table 12 são apresentados as estimativas para as medidas de risco MSE, RMSE e MAE. De modo geral,pode-se observar que as mediadas são relativamente baixas, o que fornece indícios de que as notas estãobem preditas. No mais, as medidas IB crescem de acordo com o aumento do k, enquanto as medidas doUB decrescem de acordo com o aumento do k, isso é mais visível na Figure 13, onde os mesmos valores sãoexibidos em forma de barras para comparação.
Tabela 12: Valores estimados das medidas de risco MSE, RMSE e MAE.Configuração RMSE MSE MAEIB (k=2) 1.1493 1.3208 0.8013UB (k=2) 1.1184 1.2509 0.8988IB (k=5) 1.1948 1.4276 0.8482UB (k=5) 1.1005 1.2111 0.8848IB (k=8) 1.1992 1.4382 0.8585UB (k=8) 1.0965 1.2024 0.8813
17
Medida de qualidade de ajuste
Val
ores
0.8
1.0
1.2
1.4
MAE MSE RMSE
Configuração do algoritmo de recomendaçãoIB (k=2)IB (k=5)
IB (k=8)UB (k=2)
UB (k=5)UB (k=8)
Figura 13: Valores estimados das medidas de risco MSE, RMSE e MAE.
b) Compare os mesmo métodos que o descrito no item anterior, mas desta vez usando os métodos deavaliação com base nas N melhores recomendações. Você deve considerar uma avaliação como sendo boaquando sua nota é maior ou igual a 4. Você deve estimar a sensibilidade, 1-especificidade, precisão elembrança (recall) para N = 1, 5, 10, 20, 50 e 100 recomendações.
Com base nos filtros empregados anteriormente e assumindo que será recomendado N filmes para umdeterminado usuário, considerando uma avaliação quando sua nota excede ou é igual a nota 4, os filtrosforam empregados para diferentes valores para N (1, 5, 10, 20, 50 e 100), cujo resultados são exibidos naTable 13 e Figure 14.
Tabela 13: Medidas de qualidade de predição
Precisão Lembrança Sensibilidade Especificidade
IB (k=2)
0.3263 0.0156 0.0156 0.99960.2737 0.0592 0.0592 0.99780.2318 0.0829 0.0829 0.99560.2067 0.1008 0.1008 0.99320.2016 0.1052 0.1052 0.99240.2016 0.1052 0.1052 0.9924
UB (k=2)
18
0.3559 0.0145 0.0145 0.99960.2669 0.0464 0.0464 0.99770.2339 0.0823 0.0823 0.99520.2059 0.1348 0.1348 0.99010.1641 0.2156 0.2156 0.97390.1238 0.2762 0.2762 0.9453
IB (k=5)
0.2839 0.0086 0.0086 0.99960.2669 0.0505 0.0505 0.99770.2511 0.0873 0.0873 0.99530.2156 0.1372 0.1372 0.99050.1774 0.1874 0.1874 0.98220.1729 0.1920 0.1920 0.9810
UB (k=5)
0.4746 0.0190 0.0190 0.99970.3212 0.0645 0.0645 0.99790.2831 0.1026 0.1026 0.99550.2407 0.1495 0.1495 0.99050.1892 0.2599 0.2599 0.97470.1486 0.3488 0.3488 0.9469
IB (k=8)
0.2754 0.0089 0.0089 0.99950.2754 0.0429 0.0429 0.99770.2513 0.0850 0.0850 0.99530.2204 0.1347 0.1347 0.99030.1759 0.2266 0.2266 0.97660.1545 0.2555 0.2555 0.9687
UB (k=8)
0.4831 0.0210 0.0210 0.99970.3814 0.0760 0.0760 0.99810.3153 0.1093 0.1093 0.99570.2587 0.1568 0.1568 0.99080.1984 0.2617 0.2617 0.97500.1552 0.3698 0.3698 0.9473
19
0.00 0.01 0.02 0.03 0.04 0.05
0.0
0.1
0.2
0.3
FPR
TPR
● IB (k=2)UB (k=2)IB (k=5)UB (k=5)IB (k=8)UB (k=8)
●
●
●
●●●
1
510
2050100
1
5
10
20
50100
0.0 0.1 0.2 0.3
0.0
0.1
0.2
0.3
0.4
0.5
recall
prec
isio
n
● IB (k=2)UB (k=2)IB (k=5)UB (k=5)IB (k=8)UB (k=8)
●
●
●
●●●
1
5
102050100
15
10
20
50100
Figura 14: Medidas de qualidade de precisão.
c) Algum dos métodos foi uniformemente melhor que os outros? Justifique.
Com base nos resultados apresentados principalmente pela Figure 13 e ?? nota-se que nesse conjunto dedados os filtros colaborativos baseados em usuários tiveram um melhor desempenho com relação aosbaseados em itens. Considerando o número de usuários utilizados para predição os filtro que utilizam ummaior número de usuários para predição (k = 8 e k = 5) obtiveram resultados ligeiramente superiores aosdemais.
20