Document details

Recommendation system for modern television

Author(s): Gonçalves, Diogo dos Reis

Date: 2015

Persistent ID: http://hdl.handle.net/10451/20160

Origin: Repositório da Universidade de Lisboa

Subject(s): Sistemas de recomendação; Televisão; Explicações; Interfaces de utilizador; Trabalhos de projecto de mestrado - 2015; Departamento de Informática


Description

Trabalho de projecto de mestrado, Engenharia Informática (Sistemas de Informação), Universidade de Lisboa, Faculdade de Ciências, 2015

Atualmente cada vez mais pessoas consomem serviços de televisão e de streaming de vídeo, tanto em casa como na rua usando os seus dispositivos móveis. Um fornecedor de televisão disponibiliza aos seus clientes milhares de conteúdos cujo acesso está limitado no tempo. Assim torna-se necessário que o utilizador decida que conteúdos visualizar. Vários estudos indicam que essa decisão é morosa e que os utilizadores têm dificuldade em descobrir algo diferente do que estão habituados nos canais que geralmente veem. Os métodos habituais para descoberta de novos conteúdos não são suficientes. Os sistemas de recomendação permitem aos utilizadores encontrar conteúdos que sejam do seu interesse, baseando-se nos seus gostos ou nos interesses de determinada população. Quando os utilizadores entram em contacto com este tipo de sistemas, o seu interesse e satisfação com o serviço aumenta, resolvendo-se assim alguns problemas de procura de conteúdos. Os atuais fornecedores de televisão apresentam sistemas de recomendação básicos que não exploram funcionalidades como a explicação das recomendações e a utilização dos programas vistos pelo utilizador na geração de recomendações. Estas funcionalidades podem ser encontradas em sistemas de recomendação existentes em outras áreas. O objetivo deste trabalho foi desenvolver um sistema de recomendações para fornecedores de televisão que permite aos seus clientes ultrapassar as atuais dificuldades. Foi desenvolvido um sistema de recomendações que utiliza os dados normalmente existentes num serviço de televisão, apresentando o resultado numa interface apelativa e adequada para o efeito. As recomendações incluem explicações como tentativa de melhorar o interesse do utilizador pelo sistema. O sistema de recomendações desenvolvido ´e composto por vários componentes independentes que se ligam entre si e que podem ser integrados num sistema existente. O primeiro componente é o conjunto de fontes de dados que fornecem o sistema. Estes dados incluem informação sobre os programas, os utilizadores e as classificações implícitas e explícitas que os mesmos dão aos programas. De seguida, existe um componente que processa as fontes de dados e converte-os num formato unificado usado pelos restantes componentes do sistema. Durante este processo, é realizada a conversão de classificações implícitas para explícitas, permitindo reaproveitar os algoritmos de recomendação existentes para este tipo de classificação. Esta conversão é realizada através de uma fórmula desenvolvida nesta tese que tem em conta a relação que existe entre os programas e os episódios vistos pelos utilizadores. O componente seguinte trata as recomendações. Os dados e as classificações existentes são processados e são fornecidos a vários tipos de algoritmos de recomendação que geram uma lista de programas recomendados. Os algoritmos usados neste processo baseiam-se em técnicas de recomendação existentes como filtragem colaborativa e baseadas em conteúdo. Por outro lado, foram projetados e testados algoritmos criados com o domínio televisivo em mente usando informação sobre o horário e canal de transmissão de cada programa e a relação com os programas visualizados anteriormente. Estes algoritmos foram agrupados através de técnicas de recomendação hibridas, em que se junta o melhor de cada um dos algoritmos para melhorar o sistema, após uma avaliação dos mesmos. Após a geração das recomendações, existe um componente com o objetivo de adicionar explicações a cada um dos programas recomendados e de agrupa-los por temas relacionados. Neste processo ´e criado um perfil do utilizador com base nas recomendações, e são gerados grupos de programas com base em propriedades em comum entre eles, como a sua popularidade, a sua categoria, atores em comum, entre outra informação estruturada que seja disponibilizada na fonte de dados original. Estes grupos são ordenados consoante as preferências do utilizador, através do perfil do utilizador gerado. Cada programa recomendado é associado a uma dessas listas. As explicações individuais consistem na relação dos programas recomendados com esse perfil e com outros programas visualizados anteriormente. O resultado deste componente é um conjunto de listas de programas recomendados ao utilizador em que cada programa tem uma explicação associada. O componente seguinte é responsável por executar o sistema de recomendações sempre que é atualizada a lista de programas disponíveis ao utilizador (tipicamente uma vez por dia nos operadores de televisão existentes) e sempre que existe uma nova visualização por parte do utilizador. O resultado das recomendações é guardado em memória estando sempre pronto para ser mostrado ao utilizador. Isto permite que o utilizador tenha sempre acesso às recomendações e que as mesmas sejam atualizadas sempre que exista necessidade. Esta funcionalidade está disponível através do componente seguinte, os Web Services. O objetivo deste componente é disponibilizar as funções descritas de forma a que possam ser usadas pela interface desenvolvida. O último componente é a interface de utilizador. Esta interface gráfica apresenta, de uma forma simples e semelhante às interfaces de televisão existentes, as recomendações e as explicações das mesmas ao utilizador. As recomendações estão divididas pelos grupos gerados pelo componente das explicações. Este componente foi usado para testar o sistema de recomendações com utilizadores. Este sistema de recomendações foi avaliado com duas metodologias de avaliação. A primeira foi a avaliação offline. Esta avaliação consiste em testar os vários algoritmos criados e usados nesta tese, usando diferentes métricas de avaliação. As métricas usadas foram a cobertura dos algoritmos, o tempo de execução, o erro médio quadrático global e o erro médio quadrático de cobertura. Para este processo de avaliação foi usado um conjunto de dados composto por dados de visualização de programas e por meta dados que descrevem os mesmos. Este conjunto de dados foi dividido em várias partes iguais temporalmente de forma a testar a evolução do sistema ao longo do tempo. A avaliação demonstrou que os melhores resultados globais foram apresentados pelos algoritmos híbridos. O melhor resultado de cobertura foi um dos algoritmos criados especificamente para o domínio televisivo, que apresenta uma diferença significativa quando comparado com os outros algoritmos. No geral, os algoritmos de recomendação apresentaram valores semelhantes para as métricas avaliadas. A outra etapa das avaliações tratou os testes com utilizadores. Estes testes têm o objetivo de encontrar as preferências dos utilizadores face aos sistemas de recomendação televisivos em geral, validar as recomendações e explicações geradas pelo sistema de recomendações e determinar o interesse dos utilizadores pelos tipos de explicações contempladas no sistema. Para esta etapa foi utilizado o algoritmo hibrido que apresentou o melhor resultado na etapa anterior. A realização destes testes implicou o recrutamento de utilizadores que autorizassem a recolha do seu perfil de visualização televisivo durante um período alargado de tempo, de forma a ter dados para executar o sistema de recomendações. Durante os testes, o utilizador interagiu com a interface do sistema de recomendações e respondeu a perguntas que lhe foram colocadas. Nestes testes concluiu-se que no geral o utilizador era favorável às recomendações e às explicações do mesmo, sendo que este aumentava a sua satisfação e eficiência no processo de escolha de um programa para ver. Neste momento a área das recomendações está a ter um grande destaque por parte dos operadores de televisão. Neste trabalho propõe-se uma abordagem que apresenta bons resultados por parte da satisfação¸ dos utilizadores e que apresenta técnicas de explicação inexistentes nos sistemas dos operadores existentes. No futuro poder-se-á melhorar este trabalho com a inclusão de novas técnicas de recomendação, outras métricas de avaliação e a realização de testes integrados num operador real em que se possa avaliar durante um período mais alargado a influência das recomendações nos utilizadores.

Nowadays, people spend more time watching television contents than ever before. Television providers offer their customers thousands of programmes, available for watching for a limited amount of time with recent technologies such as time-shifting, and new ways to watch them such as streaming using their own personal devices. It is impossible for someone to be aware of and to watch every available video, so one has to make the decision on what to watch. Having such a large amount of content available, viewers need to decide on what to watch. Recent research shows that some people get frustrated when searching for something to watch due to the vast amount of programmes which they are presented with. Recommendation systems enable users to find content which they are interested in through their own preferences while also taking the interests of other users into consideration, allowing their customers to overcome their current difficulties. The goal of this thesis was to develop a modular recommendation system for television providers. This system uses the information generally available in these environments to predict the user’s interest on programmes, including his or her implicit intent. Existing recommendation techniques were studied and evaluated and new TV domain specific algorithms were developed. Techniques were combined to form a hybrid algorithm capable of generating predictions for any programme in the system. An explanations module was built to generate descriptions that define the reason why a specific item or group of items was recommended. It allows users to be more interested in the recommendations given by the system. Predictions and explanations are then displayed on a user interface. Two evaluation methods were used to validate the produced recommendation system. Offline evaluations were used to compare the algorithms and it was demonstrated that the use of hybrid algorithms improved the system. Controlled evaluations made by users were also an object of study, through which the system was praised for its general quality, as well as for the availability of the previously mentioned explanations. Most users felt there was an improvement in comparison to existing recommendation systems.

Document Type Master thesis
Language English
Advisor(s) Couto, Francisco José Moreira; Trezentos, Paulo Ricardo Pacheco Rodrigues
Contributor(s) Repositório da Universidade de Lisboa
facebook logo  linkedin logo  twitter logo 
mendeley logo

Related documents

No related documents