Escolar Documentos
Profissional Documentos
Cultura Documentos
RECOMENDAÇÃO EM SERVIÇOS DE
MODELAGEM, CARACTERIZAÇÃO E
RECOMENDAÇÃO EM SERVIÇOS DE
Belo Horizonte
Agosto de 2013
c
2013, Diego de Moura Duarte.
Todos os direitos reservados.
vii
Agradecimentos
ix
“Digo: o real não está na saída nem na chegada:
ele se dispõe para a gente é no meio da travessia.”
(João Guimarães Rosa)
xi
Resumo
Nos últimos anos, a quantidade de conteúdo Web multimídia tem crescido significan-
temente. Um grande exemplo desse conteúdo é o vídeo online, como demonstrado pelo
sucesso de plataformas como o YouTube. Esse crescimento também é observado em
cenários corporativos, como emissoras de TV. Este trabalho apresenta um estudo de
serviços de conteúdo Web multimídia em redes corporativas. Utilizando dados reais
oferecidos pela Samba Tech, maior plataforma de distribuição de vídeos online da Amé-
rica Latina, propomos uma modelagem e caracterização desse tipo de serviço, assim
como uma técnica de recomendação com foco no objeto sendo consumido. Resultados
experimentais indicaram que o método proposto é muito promissor, chegando a quase
70% de precisão. Realizamos também análises distintas utilizando diferentes abor-
dagens da literatura, como uma técnica estado-da-arte de recomendação de itens. Os
resultados de nossa pesquisa são de grande importância para os provedores de conteúdo
e seus consumidores, com aplicabilidade em serviços de personalização e sistemas de
recomendação.
xiii
Abstract
Web multimedia content has reached much importance lately. One of the most impor-
tant content types is online video, as demonstrated by the success of platforms such
as YouTube. The growth in the volume of available online video is also observed in
corporate scenarios, such as TV stations. This work presents an analysis of corporate
multimedia Web content services. We evaluate real data from online videos hosted by
Samba Tech, the largest platform for online multimedia content distribution in Latin
America. After modeling and characterize this service, we propose a novel technique
for multimedia content recommendation, focusing on object being consumed. Experi-
mental results indicate that the proposed method is very promising, obtaining almost
70% in precision. We also perform distinct evaluations using different approaches from
literature, such as the state-of-the-art technique for item recommendation. These re-
sults are important for content providers and consumers, and it can be applied in
personalized services and recommendation systems.
xv
Lista de Figuras
xvii
Lista de Tabelas
xix
xx
Lista de Siglas
cCDF
Complementary Cumulative Distribution Function
CDN
Content Delivery Network
CF
Collaborative Filtering
DRM
Digital Rights Management
MAE
Mean Absolute Error
MIT
Massachusetts Institute of Technology
nDCG
Normalized Discounted Cumulative Gain
RMSE
Root Mean Squared Error
SaaS
Software as a Service
STTM
Samba Tech Tracking Module
xxi
UGC
User Generated Content
URL
Uniform Resource Locator
UTM
Urchin Tracking Module
WRMF
Weighted Regularized Matrix Factorization
xxii
Sumário
Agradecimentos ix
Resumo xiii
Abstract xv
1 Introdução 1
1.1 Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Contribuições do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Organização da dissertação . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Trabalhos Correlatos 5
2.1 Trabalhos sobre Caracterização . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Trabalhos sobre Recomendação . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Discussão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
xxiii
4.1 Descrição dos Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.2 Caracterização dos objetos . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2.1 Tempo de duração . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2.2 Gênero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2.3 Tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3 Caracterização do consumo de objetos . . . . . . . . . . . . . . . . . . 21
Referências Bibliográficas 55
xxiv
Capítulo 1
Introdução
Nos últimos anos a interação entre os usuários e a Web tem passado por grandes alte-
rações. Com o advento da Web 2.0, o usuário deixou de ser um mero espectador que
consume informações, passando a ser também provedor de conteúdo, o que resultou
em uma crescente quantidade de informação disponível. Um dos exemplos mais signi-
ficativos desse crescimento é o conteúdo multimídia, impulsionado pelo grande número
de gadgets ou aparelhos eletrônicos, como celulares, câmeras e tocadores de música,
vendidos atualmente.
Um representante significativo desse conjunto de multimídia é o vídeo online,
que recebeu grande atenção após o surgimento e popularização do Youtube, maior
serviço de conteúdo multimídia da atualidade. Sendo conhecido atualmente em uma
escala mundial, suas estatísticas de uso impressionam1 : são enviados atualmente 100
horas de vídeos por minuto, ocorrem mais de 6 bilhões de visualizações mensais, e está
localizado em 56 países, sendo distribuído em 61 idiomas.
Na maioria dos casos de serviços de conteúdo multimídia, utiliza-se o modelo
UGC (User Generated Content), onde o usuário é responsável por gerar e consumir
tal conteúdo. Exemplos desse serviço, além do YouTube, são: Vímeo, Flickr e Sound-
Cloud. Porém, a obtenção de seus dados é um obstáculo, e muitas vezes esse processo
é realizado através de bots 2 ou crawlers 3 , o que gera informações de pouca confiança e
cobertura restrita.
Esta dissertação investiga o cenário de conteúdo multimídia disponibilizado na
Web com o objetivo de modelar, caracterizar e aperfeiçoar esses serviços multimídia
1
Fonte: YouTube Statistics (http://www.youtube.com/t/press_statistics). Online; Acessado
em 01-Janeiro-2011
2
Aplicação de software concebida para simular ações humanas repetidas vezes de maneira padrão.
3
Também conhecido como Internet bot, navega sistematicamente na World Wide Web, tipicamente
com o propósito de indexação da Web.
1
2 Capítulo 1. Introdução
1.1 Motivação
Observa-se também uma popularização crescente do uso de conteúdo Web multimídia
no âmbito corporativo. Grandes emissoras de TV, nacionais e internacionais, estão
percebendo essa mudança de comportamento dos usuários, e muitas já disponibilizam
grande parte de seu conteúdo online. Um grande exemplo é a Rede Globo, maior rede
de televisão nacional, que exibe em seu site praticamente toda a sua programação.
Diferentemente do modelo UGC, nesse cenário o provedor do conteúdo é a emis-
sora. Consequentemente, o conteúdo disponibilizado é mais restrito, além dos dados
necessários para o seu estudo serem de difícil obtenção, o que é evidenciado pela ca-
rência de estudos investigativos nesse contexto.
Através de um protocolo de cooperação, obtivemos uma base de dados real e re-
presentativa da Samba Tech [Sam04], empresa que possui a maior plataforma de vídeos
online da América Latina. Dentre os seus maiores clientes, podemos citar: SBT (Sis-
tema Brasileiro de Televisão), iG (Internet Group), Rede Bandeirantes, Anhanguera
Educacional e El Comercio.
1.2 Objetivos
Os objetivos gerais deste trabalho são:
Trabalhos Correlatos
5
6 Capítulo 2. Trabalhos Correlatos
o que significa que esse comportamento pode ser explorado para facilitar o design de
caching e estratégias “peer-to-peer” para compartilhamento de vídeos.
Os trabalhos de Acharya et al. [ASP00] e Chesire et al. [CWVL01] tiveram como
foco o estudo da popularidade. O primeiro realizou suas análises com base em acessos de
usuários a vídeos transmitidos na Web, e identificou que a popularidade do conteúdo
não segue uma distribuição Zipf. Já o segundo analisou a carga de trabalho de um
servidor de fluxo de mídias de uma grande empresa, e observou que a sua popularidade
segue uma distribuição de Zipf. Ambos os trabalhos chegam a resultados distintos,
o que pode ser explicado pela diferença entre os conteúdos avaliados, ressaltando o
impacto do ambiente de estudo.
Em Veloso et al. [VAM+ 02], os autores estudaram a carga de trabalho de um
servidor comercial de fluxos de vídeo ao vivo localizado no Brasil. O foco do estudo
foi a caracterização do processo de chegada de sessões de usuários, bem como dos
tempos dessas sessões, com o intuito de utilizar os resultados em um gerador de cargas
sintéticas realistas. Os autores consideraram um modelo composto por períodos de
atividade (quando o usuário recebe mídia) intercalados por períodos de inatividade,
disparados por alguma ação do usuário (como pausa). Alguns dos principais resultados
obtidos são: (1) o processo de chegada dos usuários segue uma distribuição de Poisson;
(2) os períodos de atividade são bem modelados por uma distribuição log-normal; (3)
os períodos de inatividade são bem modelados por uma distribuição exponencial.
Sripanidkulchai et al. [SMZ04] realizaram uma caracterização de uma carga de
trabalho de fluxos de vídeo e áudio ao vivo de uma grande CDN (Content Delivery
Network ), o que possibilitou a análise de uma ampla diversidade de conteúdos. Mais
de 90% do conteúdo analisado foi apenas áudio. Observou-se que a popularidade dos
conteúdos segue uma distribuição Zipf de duas partes. Foi também observado que os
clientes entram no sistema de acordo com uma distribuição exponencial e que a duração
das sessões dos usuários apresenta cauda pesada.
O trabalho de Benevenuto et al. [BPR+ 09] apresenta uma análise da carga de
trabalho de um serviço de vídeos do Universo OnLine (UOL), utilizando sessões e
requisições ao servidor. Realiza também uma avaliação do perfil de navegação dos
usuários desse serviço. Através da modelagem dos padrões dessa navegação, os autores
identificaram grupos de usuários com diferentes padrões de acesso, o que pode ser útil
para prover novas políticas de personalização ou recomendação para usuários.
No trabalho de García et al. [GPnMG09], é proposto um modelo probabilístico
mais realístico para melhorar a predição de cargas de trabalho em simulações e am-
bientes de teste. Para isso, é realizada uma caracterização das interações do usuário
em um serviço de vídeo sobre demanda, onde são avaliadas ações como play, pause e
2.2. Trabalhos sobre Recomendação 7
stop relacionadas a um determinado vídeo ou conjunto desses. Por ser um fator co-
mum, os autores utilizam o tamanho do vídeo como elemento base, juntamente com
distribuições univariadas, para determinar características de interações de usuário.
Em 2011, Gonçalves [GTD+ 11] propôs uma metodologia de caracterização hi-
erárquica do conteúdo multimídia organizada de forma hierárquica em quatro par-
tes: Requisição (Request), Objeto (Object), Conteúdo (Content) e Conhecimento
(Knowledge) - ROCK. A metodologia propõe uma segmentação das análises em di-
ferentes camadas visando a extração de informações existentes nos conteúdos. Além
disso, o autor aplica essa metodologia em dados reais de um distribuidor de conteúdos
multimídia corporativo, demonstrando sua utilidade e aplicabilidade.
mem apenas uma pequena porção desses itens. Além disso, existe uma grande concen-
tração de usuários ao redor de poucos objetos distintos, seguido por uma concentração
decrescente sobre outros objetos, gerando o fenômeno de long tail [And10]. O segundo
refere-se à dificuldade de gerar recomendações de novos itens ou para novos usuários,
uma vez que inicialmente existe pouca informação sobre eles [SPUP02].
Muitos trabalhos de recomendação utilizam como base o Youtube. Baluja et al.
[BSS 08] apresentam uma técnica com base em grafos construídos a partir do histórico
+
2.3 Discussão
As referências apresentadas na Seção 2.1 são importantes para o direcionamento da
caracterização realizada em nossa pesquisa. Podemos destacar os trabalhos de Beneve-
nuto [BPR+ 09] e Gonçalves [GTD+ 11]. O primeiro contribui para o entendimento do
conceito de sessões de usuários e de seus padrões de navegação. O segundo oferece um
aprendizado referente ao consumo de conteúdo multimídia, propondo uma metodologia
que pode ser aplicada em nosso trabalho, segmentando nossas análises de acordo com
os perfis de acesso identificados. Sendo assim, podemos explorar a camada de conhe-
cimento definida nessa metodologia a partir de nossas análises e base de dados, o que
contribui para a identificação dos padrões de acessos a conteúdos multimídia.
No campo de recomendação na Seção 2.2, as referências exploram diversas mé-
todos de recomendação, assim como inúmeras técnicas aplicáveis nesse contexto. Si-
milarmente à nossa pesquisa, o trabalho de Davidson et al. [DLL+ 10] apresenta uma
técnica de recomendação baseada na geração de rankings. Esta dissertação se distingue
das referências citadas pelo cenário da aplicação utilizado, composto por dados corpo-
rativos. Além disso, apresenta um foco maior no consumo de objetos, desconsiderando
o perfil do usuário que o acessa.
Todos os trabalhos correlatos contribuem com ideias e técnicas para auxiliar na
modelagem do problema de caracterização e recomendação de conteúdo multimídia en-
dereçado nesta pesquisa. Nossa abordagem, ao propor o uso de modelos já consolidados
na literatura com uma nova visão focada no consumo do objeto, define um novo po-
2.3. Discussão 9
11
12 Capítulo 3. Modelagem do Serviço Web Multimídia
possui uma plataforma para esse tipo de conteúdo considerada a maior da América
Latina. A empresa suporta um tráfego anual de 14PB e garante a distribuição de
quase meio milhão de mídias (vídeo, imagem ou áudio). Recebe investimentos da DFJ
FIR Capital e tem parceria global com o MIT (Massachusetts Institute of Technology).
Seus maiores clientes incluem grandes emissoras de televisão, como SBT e Rede Ban-
deirantes, portais de notícia como El Comercio, grupos como Abril e iG, além de redes
de educação, como a Anhanguera.
Os serviços oferecidos pela Samba Tech incluem um sistema online para o envio
e gerenciamento de conteúdo multimídia, com um armazenamento transparente para
o seu provedor. Tal conteúdo pode ser um vídeo, imagem ou áudio. Outras funciona-
lidades incluem o encoding de vídeos, segurança de conteúdo a partir de seu domínio
ou geolocalização, encriptação de vídeos para solução de DRM (Digital Rights Ma-
nagement), monetização de vídeos, entrega de conteúdo através de serviços de CDN
(Content Delivery Network ), entre outros.
Uma ferramenta importante é o player (Figura 3.1), desenvolvido pela Samba
Tech, que é responsável por servir tais conteúdos em diversos ambientes, como dife-
rentes modelos e versões de navegadores (browsers) ou devices (e.g., celulares, tablets,
etc.). Sendo a única forma de interação entre o usuário e o provedor de conteúdo, é
possível realizar diversas customizações dessa ferramenta, como mudança de suas cores
e dimensões.
Por fim, uma das funções mais importantes do sistema oferecido pela Samba
Tech é a coleta de dados para análise estatística. Para essa finalidade, foi-se desen-
volvida recentemente a ferramenta Samba Tech Tracking Module, detalhada na seção
seguinte. Um sumário do gama de serviços oferecidos por essa empresa pode ser visto
3.1. Plataforma de conteúdo Web multimídia 13
na Figura 3.2
Uma plataforma para o serviço em questão deve oferecer meios para que ambas
as entidades possam realizar o processo de envio, gerenciamento e exibição de conteúdo
multimídia. Dessa forma, são responsabilidades desse serviço:
4. Acessibilidade: por fim, a plataforma deve oferecer recursos para que o con-
teúdo inicialmente enviado seja acessado por usuários.
3.2. Representação do serviço 15
17
18 Capítulo 4. Caracterização dos Dados
De acordo com os dados expostos na Tabela 4.1, todos os estudos a seguir são
realizados considerando-se apenas vídeos como objetos, já que representam quase a
totalidade da base de dados da empresa Samba Tech.
Nas seções seguintes, serão caracterizados os dados coletados. Esse processo foi
realizado com a distinção de dois grupos: objeto e seu consumo. O primeiro é um
estudo com foco nos metadados do objetos, enquanto o segundo aborda informações
do seu consumo, com o estudo do popularidade dos vídeos da plataforma Samba Tech.
análise de percentis, foram utilizados apenas os valores distintos da duração dos vídeos
de nosso conjunto de dados, independente da quantidade de suas ocorrências.
1
STTM
Base de Dados
0.8
0.6
cCDF
0.4
0.2
0
0 10 20 30 40 50 60 70 80 90 100 110 120
Minutos
Através da Figura 4.1, percebe-se que não existe muita distinção entre os grupos
STTM e a base de dados. Também pode-se dizer que a grande maioria dos vídeos
possuem duração abaixo de 10 minutos, já que correspondem a quase 80% dos dados.
20 Capítulo 4. Caracterização dos Dados
4.2.2 Gênero
Esta seção caracteriza o gênero de todas as mídias. Essa informação é inserida pelo
provedor de conteúdo durante a edição de metadados. Os possíveis valores são: Ani-
mais, Ciência, Comédia, Entretenimento, Esportes, Filmes, Música, Pessoas e Política.
Além disso, é possível que o vídeo não possua nenhum gênero (opção: Sem gênero). A
Figura 4.2 apresenta um histograma da distribuição desses gêneros entre os dois grupos
avaliados.
70
STTM
60 Base de Dados
50
Porcentagem
40
30
20
10
0
Se
Co
En
Fi
Pe
Po
Ci
Es
ni
lm
ús
ên
m
ss
po
lít
tre
m
m
ic
oa
e
ic
ci
éd
rte
G
te
ai
a
a
s
ên
ia
ni
s
m
er
en
o
to
A Figura 4.2 mostra que a grande quantidade de mídias não possuem gênero na
Base de Dados (cerca de 70%). Essa mesma superioridade se mantém para as mídias
visualizadas pelo STTM, embora em uma proporção menor (cerca de 50%). Porém,
em ambos os grupos, os gêneros que aparecem com a maior quantidade de mídias são
entretenimento, política e esportes.
4.2.3 Tags
Os resultados expostos nessa seção se referem ao estudo de tags. Assim como o gênero,
essa informação é inserida pelo provedor de conteúdo com diversos objetivos, como a
simples classificação de mídias. Seu valor corresponde a uma lista de nomes ou strings.
Algumas de suas estatísticas estão expostas na Tabela 4.3.
A Tabela 4.3 informa que existem no máximo 56 tags para uma mídia visualizada,
enquanto este número chega a 90 para todas as mídias da base de dados. De acordo
com os percentis, existe uma quantidade pequena de mídias com mais de 54 tags para
a base de dados.
4.3. Caracterização do consumo de objetos 21
1
STTM
Base de Dados
0.8
0.6
cCDF
0.4
0.2
0
0 10 20 30 40 50
Quantidade de tags
A Figura 4.3 demonstra que a grande maioria de mídias (cerca de 90%) possui
menos de 10 tags. Porém, a quantidade de mídias com menos tags é maior para as
mídias da base de dados do que para as mídias visualizadas.
1.1e+06
1e+06
900000
Visualizações 800000
700000
600000
500000
400000
300000
200000
100000
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Hora do dia
800000
750000
700000
650000
Visualizações
600000
550000
500000
450000
400000
350000
300000
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30
Dia (Mês: Julho de 2012)
A Figura 4.5 demonstra uma média de 600 mil visualizações por dia. Embora
a quantidade de sessões fornecidas seja de 60 milhões, em muitos casos um player é
carregado em uma página da Web, mas não ocorre de fato uma visualização (ausência
do evento de play). Dessa forma, esse evento foi desconsiderado em todas as métri-
4.3. Caracterização do consumo de objetos 23
cas desse estudo, uma vez que não podemos dizer que o usuário assistiu à mídia. A
Figura 4.5 também mostra que, durante os finais de semana, a quantidade de sessões
decresce significativamente, enquanto durante a semana não é possível identificar um
comportamento uniforme.
O último gráfico de agregação de visualização é exposto na Figura 4.6, onde os
dias da semana são utilizados para o agrupamento de visualizações.
3.2e+06
3e+06
2.8e+06
Visualizações
2.6e+06
2.4e+06
2.2e+06
2e+06
1.8e+06
D
Se
Te
Se
Sá
om
ua
ui
gu
xt
ba
rç
nt
rta
a
a
do
in
nd
a
go
Dia da Semana
As visualizações por dia de semana (Figura 4.6) demonstram, mais uma vez, uma
queda de consumo durante os finais de semana (sábado e domingo). Além disso, o início
da semana (segunda-feira e terça-feira) possui as maiores quantidades de visualizações
agregadas.
Por fim, a Figura 4.7 ilustra uma cCDF da distribuição de usuários distintos que
visualizaram um determinado objeto ou mídia. Esse gráfico apresenta valores para até
100 usuários distintos para a melhor visualização da cCDF.
A cCDF traçada na Figura 4.7 ilustra que aproximadamente 50% dos objetos da
plataforma Samba Tech são visualizados por até 5 usuários distintos. Além disso, menos
de 20% dos vídeos dessa plataforma são visualizados por mais de 50 usuários distintos.
Embora não tenha sido demonstrado, a maior quantidade de usuários distintos que
acessaram um vídeo no mês de Julho de 2012 chega a um número de aproximadamente
70 mil.
A seguir, apresentamos o modelo e técnica de recomendação propostos para ser-
viços de conteúdo Web multimídia.
24 Capítulo 4. Caracterização dos Dados
1
0.9
0.8
0.7
0.6
cCDF
0.5
0.4
0.3
0.2
0.1
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100
Usuários distintos
Recomendação em Serviços de
Conteúdo Web Multimídia
• Objeto: conteúdo (vídeo, imagem, áudio, etc.) ofertado para o usuário. Possui
diversos metadados, como título, descrição e gênero, além de especificações de
acordo com o que representa (tempo de duração para vídeos, dimensões para
imagens, etc.);
25
26 Capítulo 5. Recomendação em Serviços de Conteúdo Web Multimídia
Esse modelo permite ter uma visão do cenário de consumo de um objeto, com
sua divisão em três grande entidades: (i) Objeto, (ii) Como/Quando/Onde é realizado
o consumo, e (iii) Quem consome o objeto. Suas combinações permitem diferentes
focos de análise. A seguir, apresentamos quatro possibilidades, assim como exemplos
de como cada um pode agregar valor ao estudo.
• Foco 4: por fim, unem-se todas as análises anteriores, formando o fluxo completo
da forma com que um determinado objeto é consumido por um usuário.
~ o = {D1 , D2 , . . . , Dm }
o → ~o = D (5.2)
Técnica de Recomendação,
Validação e Análise dos Resultados
31
Capítulo 6. Técnica de Recomendação, Validação e Análise dos
32 Resultados
tal consumo. Cada uma dessas entidades possui um conjunto de dimensões específicos,
que serão utilizadas para a nossa função de similaridade e geração dos rankings.
Entretanto, os dados coletados pela ferramenta STTM não contêm informações
sobre a entidade usuário. Tais informações são, de fato, de difícil obtenção, uma vez
que envolvem o perfil do usuário e toda gama de informações a seu respeito. Portanto,
não utilizamos essa entidade para a aplicação da técnica de recomendação proposta.
As dimensões utilizadas para cada entidade com base na plataforma Samba Tech são:
• Objeto:
• Como/Quando/Onde:
A partir das informações de duas entidades, é possível ter diferentes abordagens que
geram diferentes recomendações. Especificamente, existem as seguintes:
o~1 .o~2
sim(o1 , o2 ) = cos(o~1 , o~2 ) = (6.1)
ko1 k × ko2 k
A Similaridade de Cosseno é utilizada como principal método de comparação
entre objetos e suas dimensões. Porém, cada uma dessas dimensões avaliadas possuem
suas particularidades, e exigem um processo único para a sua combinação. Um exemplo
Capítulo 6. Técnica de Recomendação, Validação e Análise dos
34 Resultados
|A ∩ B|
JACCARD(A, B) = (6.2)
|A ∪ B|
A similaridade entre cada uma das dimensões estudadas é definida a seguir.
1. Gênero
2. Tempo de duração
3. Projeto
4. Tags
~ o1 , T G
T Go1 × T Go2 = JACCARD(T G ~ o2 )
5. Popularidade
6. Horário de acesso
9. Localização de acesso
mais similares ao objeto visualizado); (ii) a segunda corresponde aos itens visualizados
pelo usuário que serão testados para a eficácia da recomendação.
Considerando que um usuário u possua um conjunto V contendo X objetos vi-
sualizados:
u → V = {v1 , v2 , . . . , vX }
6.4.2.1 Precisão/Revocação
Em um cenário onde os objetos não possuem uma classificação, sendo que apenas a lista
de itens acessados por um usuário está disponível, são encontradas diversas dificuldades
na medição da acurária da predição de classificação. Dessa forma, nosso problema
se resume a medir a eficácia da recomendação de uma lista de potenciais itens para
o usuário. Dessa maneira, não utilizamos em nossa pesquisa duas das métricas mais
conhecidas na área de sistemas de recomendação: MAE (Mean Absolute Error ) e RMSE
(Root Mean Squared Error ). Em nosso contexto, as métricas mais aconselhadas para
a medição da acurária de nossa técnica de recomendação são Precisão 2 e Revocação 2
[DK11].
Formalmente, essas métricas são definidas da seguinte maneira: considerando que
o usuário u possua um conjunto de testes T (u) contendo os objetos que ele realmente
acessou, e dado um conjunto R(u) contendo os objetos recomendados para o usuário
em questão, as Equações 6.3 e 6.4 definem Precisão e Revocação respectivamente:
T (u) ∩ R(u)
Precisão = (6.3)
R(u)
T (u) ∩ R(u)
Revocação = (6.4)
T (u)
Aplicando essa definição em nosso estudo, de acordo com o método de validação
definido na Seção 6.4.1, temos que T (u) = V T e R(u) = IR. Porém, nossa validação
aplicada utiliza uma variação da métrica de Precisão: caso o usuário tenha visto pelo
menos um vídeo do nosso conjunto de itens recomendados IR, a precisão de nossa
recomendação foi 100%, caso contrário, nossa recomendação obteve 0% de precisão.
Essa variação é utilizada por diversos motivos: como a base de dados possui a
visualização de todos os vídeos da plataforma Samba Tech, nossa recomendação de
vídeos não é apresentada de fato para os usuários. Dessa forma, precisamos inferir
se o usuário visualizou ou não um dos vídeos que teríamos recomendado utilizando a
técnica proposta. Isso é feito verificando se o usuário assistiu ou não a um dos vídeos
do conjunto IR. Porém, a não visualização de um vídeo recomendado não representa
2
Mais comumente utilizadas em seus termos em inglês: Precision e Recall
Capítulo 6. Técnica de Recomendação, Validação e Análise dos
40 Resultados
que a técnica foi falha, pois os vídeos não foram de fato apresentados como opção ao
usuário. O valor “zero” escolhido para a métrica nesse caso foi utilizado com o intuito de
comparação dos nossos resultados. Da mesma forma, caso um usuário tenha visualizado
pelo menos um vídeo pertencente a IR, tem-se uma precisão de 100%. Isso é feito, pois,
em nosso cenário de vídeos online, podemos considerar que nossa recomendação teve
sucesso pelo fato do usuário ter acessado um dos N objetos recomendados, não havendo
a necessidade do usuário acessar os N itens para que tenhamos 100% de precisão. Um
exemplo para um melhor entendimento dessa abordagem é o Youtube: ao finalizar uma
visualização, são recomendados um conjunto de novos vídeos. Caso o usuário acesse
pelo menos um desses itens, pode-se dizer que a recomendação obteve sucesso.
Dessa forma, a métrica de Precisão em nosso cenário é redefinida como:
100%, se |V T ∩ IR| ≥ 1
Precisão = (6.5)
0%, caso contrário
6.4.2.2 Precisão*/Revocação*
2. Aleatoriamente são escolhidos 1000 itens adicionais que não foram ainda classifi-
cados pelo usuário u. Assumimos que esses itens não são de interesse de u;
4. Ordena-se a lista contendo esses 1001 itens. Seja p a posição do item i após a
ordenação desses itens. O melhor resultado possível ocorre quando o item i tem
melhor classificação do que todos os outros itens adicionais (i.e., p = 1);
Após diversos testes realizados, descobriu-se que o melhor valor para o conjunto de
itens aleatórios é a = 500. Apesar de ser um valor diferente do utilizado na metodologia
original, o valor escolhido cumpre satisfatoriamente o propósito da metodologia original
para o nosso problema e cenário de investigação e validação.
• Seja α definido no trabalho como ranking half life (i.e., um fator de redução
exponencial).
Dessa forma, o Rank Score é calculado de acordo com as Equações 6.6, 6.7 e 6.8:
rankscorep
Rank Score = (6.6)
rankscoremax
X rank(i)−1
rankscorep = 2− α (6.7)
i∈h
Capítulo 6. Técnica de Recomendação, Validação e Análise dos
42 Resultados
|T |
X i−1
rankscoremax = 2− α (6.8)
i=1
Para os testes realizados nessa dissertação, foi-se utilizado o valor 2 para a cons-
tante α, assim como considerado em exemplos do trabalho de Shani e Gunawardana.
Assim como a métrica de Rank Score (Seção 6.4.2.3), é possível utilizar uma outra mé-
trica que considera a posição do item no ranking: o nDCG, ou Normalized Discounted
Cumulative Gain [JK02]. Utilizando uma escala de relevância gradual de documentos
em um conjunto de resultados de uma máquina de busca, o nDCG mede a utilidade
ou ganho de um documento baseado na sua posição no ranking.
O seu cálculo considera as seguintes variáveis:
A fórmula para o cálculo do nDCG é definida pelas Equações 6.9, 6.10 e 6.11:
DCGpos
nDCGpos = (6.9)
IDCGpos
pos
X reli
DCGpos = rel1 + (6.10)
i=2
log2 i
|h|−1
X reli
IDCGpos = rel1 + (6.11)
i=2
log2 i
6.5 Resultados
Nesta seção apresentamos os resultados da aplicação da técnica de recomendação pro-
posta nessa dissertação. Inicialmente, a Seção 6.5.1 descreve os dados utilizados nesses
3
Mais detalhes da implementação podem ser encontradas em:
www.github.com/zenogantner/MyMediaLite/blob/master/src/MyMediaLite/Eval/Measures/NDCG.cs
6.5. Resultados 43
Período utilizado
Base de treino 01/07/2012 a 07/07/2012
Base de testes 08/07/2012 a 14/07/2012
Tabela 6.1. Base de dados utilizada nos experimentos.
Em suma, foi escolhida a primeira semana de nossa base para treino, ou seja, para
a geração dos rankings, e a semana seguinte para a base de testes, onde serão aplicadas
as validações descritas na Seção 6.4.1. Ressaltamos que serão mostrados resultados
de apenas duas semanas de nossa base de dados, uma vez que tal amostra representa
boa parcela de nossa base de dados, contemplando grande volume de dados (milhões de
sessões de usuário), o que consiste de um método consistente de validação experimental
para sistemas de recomendação.
Alguns aspectos importantes devem ser considerados para o melhor entendimento
das análises a seguir. Desse modo, para cada métrica avaliada, apresentamos os resul-
tados para as quatro validações propostas: Passado Recente - Futuro Recente, Passado
Recente - Futuro Completo, Passado Completo - Futuro Recente, Passado Completo -
Futuro Completo. Entretanto duas exceções são apresentadas:
1. O método de baseline utilizado possui uma característica diferente das nossas re-
comendações propostas, uma vez que os rankings são recomendados por usuário.
Dessa forma, realizamos as validações apenas com base na variação do conjunto
V T , considerando o Futuro Recente (apenas primeiro item de V T ) e Futuro
Completo (todos os itens de V T ).
0.7 0.7
WRMF WRMF
0.6 REC1 0.6 REC1
REC2 REC2
REC3 REC3
0.5 0.5
Precisão
Precisão
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(a) Passado Recente - Futuro Recente (b) Passado Recente - Futuro Completo
0.7 0.7
REC1 REC1
0.6 REC2 0.6 REC2
REC3 REC3
0.5 0.5
Precisão
Precisão
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(c) Passado Completo - Futuro Recente (d) Passado Completo - Futuro Completo
A partir dos gráficos da Figura 6.1, é possível perceber que o valor da precisão
aumenta ao recomendar mais itens. De uma maneira geral, a técnica de recomendação
utilizada como baseline obteve resultados menores em comparação com nossas três
recomendações. Entre essas, os melhores valores de precisão foram obtidos ao aplicar a
recomendação REC3, que combina informação do objeto e de seu consumo. O melhor
valor obtido considera 50 itens recomendados, seguindo a validação de Passado Recente
- Futuro Completo (Figura 6.1(b)), chegando a uma precisão de 68,21%.
Com base nas quatro validações apresentadas, os resultados utilizando nossas re-
comendações foram menores na avaliação de todos os vídeos visualizados pelo usuário
6.5. Resultados 45
para gerar os rankings, e testar apenas com o próximo vídeo acessado (Passado Com-
pleto - Futuro Recente, Figura 6.1(c)), enquanto os melhores resultados foram obtidos
no cenário oposto (Passado Recente - Futuro Completo, Figura 6.1(b)). Esse compor-
tamento ocorre pois a quantidade de itens utilizados para o cálculo da precisão é maior
nesse último caso.
0.7 0.7
WRMF WRMF
0.6 REC1 0.6 REC1
REC2 REC2
REC3 REC3
0.5 0.5
Revocação
Revocação
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(a) Passado Recente - Futuro Recente (b) Passado Recente - Futuro Completo
0.7 0.7
REC1 REC1
0.6 REC2 0.6 REC2
REC3 REC3
0.5 0.5
Revocação
Revocação
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(c) Passado Completo - Futuro Recente (d) Passado Completo - Futuro Completo
1 1
0.9 0.9
0.8 0.8
0.7 0.7
0.6 0.6
Precisão*
Precisão*
WRMF WRMF
0.5 REC1 0.5 REC1
REC2 REC2
0.4 REC3 0.4 REC3
0.3 0.3
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(a) Passado Recente - Futuro Recente (b) Passado Recente - Futuro Completo
1 1
WRMF WRMF
0.9 REC1 0.9 REC1
0.8 REC2 0.8 REC2
REC3 REC3
0.7 0.7
Revocação*
Revocação*
0.6 0.6
0.5 0.5
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(a) Passado Recente - Futuro Recente (b) Passado Recente - Futuro Completo
A seguir, estão os resultados da métrica de Rank Score (Seção 6.4.2.3), que considera
a posição do item no ranking em seu cálculo.
A Figura 6.5 mostra que aumentar a quantidade de itens recomendados nem
sempre é a melhor opção. Utilizando uma extensão da métrica de revocação, o Rank
Score considera o posicionamento de um item corretamente recomendado para o seu
cálculo, o que justifica os valores apresentados nessa figura.
Em geral, os resultados do baseline foram, mais uma vez, inferiores aos das reco-
mendações propostas em nosso trabalho. A combinação das dimensões propostas por
REC3 apresentou novamente os melhores valores de Rank Score, em destaque para a
validação Passado Recente - Futuro Completo (Figura 6.5(b)), onde o valor dessa mé-
trica para 5 itens foi igual a 29.24%. Esse comportamento pode ser explicado pelo fato
de, nesse caso, serem utilizados mais itens para contabilizar o cálculo de Rank Score.
Capítulo 6. Técnica de Recomendação, Validação e Análise dos
48 Resultados
0.7 0.7
WRMF WRMF
0.6 REC1 0.6 REC1
REC2 REC2
REC3 REC3
0.5 0.5
Rank Score
Rank Score
0.4 0.4
0.3 0.3
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(a) Passado Recente - Futuro Recente (b) Passado Recente - Futuro Completo
0.7 0.7
REC1 REC1
0.6 REC2 0.6 REC2
REC3 REC3
0.5 0.5
Rank Score
0.3 0.3
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(c) Passado Completo - Futuro Recente (d) Passado Completo - Futuro Completo
0.7 0.7
WRMF WRMF
0.6 REC1 0.6 REC1
REC2 REC2
REC3 REC3
0.5 0.5
0.4 0.4
nDCG
nDCG
0.3 0.3
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(a) Passado Recente - Futuro Recente (b) Passado Recente - Futuro Completo
0.7 0.7
REC1 REC1
0.6 REC2 0.6 REC2
REC3 REC3
0.5 0.5
0.4 0.4
nDCG
0.2 0.2
0.1 0.1
0 0
1 3 5 10 25 50 1 3 5 10 25 50
Itens recomendados (N) Itens recomendados (N)
(c) Passado Completo - Futuro Recente (d) Passado Completo - Futuro Completo
Sendo assim, conclui-se que ao agregar mais informações que envolvem o ob-
jeto e o seu consumo, pode-se gerar uma lista de recomendação que, empiricamente,
demonstrou-se ser de melhor qualidade para o usuário quando comparada com listas de
recomendação que utilizem tais informações separadamente. Dessa forma, a hipótese
proposta na Seção 6.1 foi validada:
Por fim, com as análise realizadas e resultados expostos, também conclui-se que
a recomendação de 5 itens seria a melhor opção para o recomendador, uma vez que
este valor trouxe ganhos significativos com relação ao baseline. Além disso, obteve um
valor de precisão superior em relação a N=1, e ainda sugerindo um conjunto de itens
que é razoável no que diz respeito à recomendação, considerando que sugerir 5 itens é
algo comumente utilizado em um cenário real.
Capítulo 7
51
52 Capítulo 7. Conclusão e Trabalhos Futuros
Samba Tech a partir de três abordagens, que utilizavam dimensões apenas do objeto,
dimensões apenas de como/quando/onde ele é consumido, e da combinação desses
dois conjuntos. Além disso, realizamos a comparação dessa aplicação com um método
considerado estado-da-arte em sistemas de recomendação do tipo Top-N : o WRMF
(Weighted Regularized Matrix Factorization). Para os experimentos, propusemos tam-
bém um método de validação para sistemas de recomendação, que foi utilizado em
nossas análises em conjunto com diversas métricas de validação, como precisão, revo-
cação e nDCG (Normalized Discounted Cumulative Gain).
Dentre os principais resultados obtidos, destacamos a superioridade de nossa téc-
nica sobre o WRMF em todos os experimentos, embora a quantidade de informações
utilizadas como entrada do algoritmo estado-da-arte tenha sido significantemente me-
nor do que a utilizada em nossa técnica. Além disso, a recomendação que combina
dimensões do objeto e do seu consumo alcançou uma precisão de quase 70% ao reco-
mendarmos 50 vídeos. Esse valor chega a aproximadamente 40% quando recomendamos
5 itens, valor considerado, a partir de nossas análises, como ideal para ser utilizado na
prática por um sistema de recomendação.
Os resultados obtidos demonstram a eficácia de nossa técnica de recomendação,
mesmo em um cenário onde a recomendação de um objeto não é realizada de fato
ao usuário. A análises também permitiram validar a hipótese proposta: Quanto mais
dimensões do consumo do item utilizarmos para a comparação entre itens, mais refinada
será a geração de nossos rankings, e consequentemente, faremos uma recomendação
melhor.
Em suma, fomos capazes de modelar e caracterizar serviços de conteúdo Web
multimídia, além de propormos um modelo e técnica de recomendação com foco no
objeto, com a sua validação realizada utilizando dados reais. Com isso, temos como
grandes contribuições dessa pesquisa o modelo representativo desse tipo de serviço, a
modelagem e técnica de recomendação proposta, assim como o método de validação
utilizado em sua análise. Esse resultados são de grande utilidade para provedores
de conteúdo e usuários, uma vez que podem ser aplicados em diversos cenários de
personalização de serviços, além da vasta aplicabilidade em sistemas de recomendação.
Além disso, o método de validação proposto pode ser utilizado em inúmeras pesquisas
que envolvam sistemas de recomendação.
Concluímos dessa maneira o estudo realizado nessa dissertação de mestrado, que
também obteve como resultado duas submissões de artigos: no XIX Simpósio Brasileiro
de Sistemas Multimídia e Web (WEBMEDIA’2013), tivemos a submissão e aceite de
um artigo curto titulado Modelagem, Caracterização e Recomendação em Serviços de
Conteúdo Web Multimídia. Também foi feita a submissão de um artigo para o evento
53
[And10] C. Anderson. The Long Tail: How Endless Choice is Creating Unlimited
Demand. Random House, 2010.
[ASP00] Soam Acharya, Brian Smith, and Peter Parnes. Characterizing User
Access To Videos On The World Wide Web. In Proc. SPIE, 2000.
[BSS+ 08] Shumeet Baluja, Rohan Seth, D. Sivakumar, Yushi Jing, Jay Yagnik,
Shankar Kumar, Deepak Ravichandran, and Mohamed Aly. Video sug-
gestion and discovery for youtube: taking random walks through the
view graph. In Proceedings of the 17th international conference on World
Wide Web, WWW ’08, pages 895–904, New York, NY, USA, 2008. ACM.
[CKR+ 09] Meeyoung Cha, Haewoon Kwak, Pablo Rodriguez, Yong-Yeol Ahn, and
Sue Moon. Analyzing the video popularity characteristics of large-scale
user generated content systems. IEEE/ACM Trans. Netw., 17:1357–
1370, October 2009.
55
56 Referências Bibliográficas
[DLL+ 10] James Davidson, Benjamin Liebald, Junning Liu, Palash Nandy, Taylor
Van Vleet, Ullas Gargi, Sujoy Gupta, Yu He, Mike Lambert, Blake Li-
vingston, and Dasarathi Sampath. The youtube video recommendation
system. In Proceedings of the fourth ACM conference on Recommender
systems, RecSys ’10, pages 293–296, New York, NY, USA, 2010. ACM.
[GPnMG09] Roberto García, Xabiel G. Pañeda, David Melendi, and Victor Garcia.
Probabilistic analysis and interdependence discovery in the user interac-
tions of a video news on demand service. Comput. Netw., 53:2038–2049,
August 2009.
[GTD+ 11] Charles Gonçalves, Luam Totti, Diego Duarte, Wagner Meira Jr., and
Adriano Pereira. Rock: Uma metodologia para a caracterização de ser-
viços web multimídia baseada em hierarquia da informação. In XVII
Simpósio Brasileiro de Sistemas Multimídia e Web (WebMedia), 2011,
pages 174 – 181, Florianópolis, SC, 2011. Anais do XVII Simpósio Bra-
sileiro de Sistemas Multimídia e Web (WebMedia), 2011.
[HKV08] Yifan Hu, Yehuda Koren, and Chris Volinsky. Collaborative filtering
for implicit feedback datasets. In Proceedings of the 2008 Eighth IEEE
Referências Bibliográficas 57
[JZFF11] Dietmar Jannach, Markus Zanker, Alexander Felfernig, and Gerhard Fri-
edrich. Recommender Systems An Introduction. Cambridge University
Press, 2011.
[LK04] Qing Li and ByeongMan Kim. Constructing user profiles for collabora-
tive recommender system. In JeffreyXu Yu, Xuemin Lin, Hongjun Lu,
and Yanchun Zhang, editors, Advanced Web Technologies and Applicati-
ons, volume 3007 of Lecture Notes in Computer Science, pages 100–110.
Springer Berlin Heidelberg, 2004.
[PZC+ 08] Rong Pan, Yunhong Zhou, Bin Cao, N.N. Liu, R. Lukose, M. Scholz, and
Qiang Yang. One-class collaborative filtering. In Data Mining, 2008.
ICDM ’08. Eighth IEEE International Conference on, pages 502–511,
2008.
[RRSK11] Francesco Ricci, Lior Rokach, Bracha Shapira, and Paul B. Kantor, edi-
tors. Recommender Systems Handbook. Springer, 2011.
[SKKR01] Badrul Sarwar, George Karypis, Joseph Konstan, and John Riedl. Item-
based collaborative filtering recommendation algorithms. In Proceedings
of the 10th international conference on World Wide Web, WWW ’01,
pages 285–295, New York, NY, USA, 2001. ACM.
58 Referências Bibliográficas
[VAM+ 02] Eveline Veloso, Virgílio Almeida, Wagner Meira, Azer Bestavros, and
Shudong Jin. A hierarchical characterization of a live streaming media
workload. In Proceedings of the 2nd ACM SIGCOMM Workshop on
Internet measurment, IMW ’02, pages 117–130, New York, NY, USA,
2002. ACM.