Este documento descreve um sistema de recomendação para televisão digital portátil interativa brasileira que gera recomendações de programas de TV de acordo com os gêneros preferidos pelo usuário. O sistema usa o histórico de visualização do usuário para determinar seu perfil e recomendar programas de acordo com esse perfil e horário atual. O sistema foi desenvolvido para rodar no celular do usuário usando o middleware Ginga-NCL.
Como descobrir e classificar coisas usando machine learning sem compilcação
Sistema de Recomendação para TV Digital Portátil
1. Sistema de Recomendação para TV Digital Portátil
Interativa Brasileira
Elaine Cecília Gatto, Sergio Donizetti Zorzo
Universidade Federal de São Carlos – UFSCar
Departamento de Computação – DC
Rodovia Washington Luís, Km 235, Caixa Postal 676, CEP 13565-905
São Carlos – São Paulo – Brasil – Tel.: +55-16-3351-8232
elaine_gatto@dc.ufscar.br, zorzo@dc.ufscar.br
Resumo- A possibilidade de oferta de novos serviços e preferências, a apresentação de listas na tela torna-se
programas, e conseqüentemente mais conteúdo disponível, com a enfadonha, pois são extensas.
utilização do sistema brasileiro de televisão digital, gerará Para os usuários de TV portátil, esta situação é ainda mais
dificuldades para o usuário em selecionar os seus programas agravante. Apresentar grandes listas de programas em uma
preferenciais. Os Sistemas de Recomendação tornam-se uma
tela reduzida traz ainda mais dificuldades. Desta forma, os
ferramenta para solução destas dificuldades e possuem potencial
para aperfeiçoar a interatividade do usuário com a televisão usuários de televisão digital portátil interativa deparam-se com
digital, oferecendo a filtragem destas informações e a a escassez de recursos oferecidos pelo dispositivo e não estão
personalização da oferta de conteúdo. Este trabalho descreve um dispostos a perder tempo selecionando programas. Em
sistema de recomendação para televisão digital portátil interativa contraste com o uso da televisão digital em residências onde é
brasileira, centrado no aparelho celular que possibilita esta comum mudar com freqüência os canais e navegar pelo guia
funcionalidade e gerando recomendação de programas de eletrônico de programação, para a televisão digital portátil
televisão de acordo com os gêneros de programas preferenciais interativa isto consome quantidade de tempo e energia
do usuário durante o período de utilização da televisão no considerável. [6, 7]
celular.
No Brasil o número de aparelhos celulares é muito maior
que o número de aparelhos televisores, o que pode
impulsionar o uso da televisão digital mais rapidamente nesse
I. INTRODUÇÃO
tipo de dispositivo quando estes celulares com TV digital
Com a televisão digital, novos serviços, produtos, estiverem mais acessíveis à população. [8, 9]
conteúdos, canais e modelos de negócios estão sendo criados. Como grande vantagem da televisão digital portátil está o
O Sistema Brasileiro de Televisão Digital (SBTV-D) [1,2] fato de poder ser utilizada pelo usuário em qualquer lugar e a
permite recepção fixa e portátil, alta qualidade de áudio e de qualquer hora. Já para a televisão digital fixa, a comodidade
vídeo, bem como interatividade, possibilitando a criação de em poder assistir aos programas em sua residência e por um
conteúdos diferenciados para os usuários de televisão digital tempo mais prolongado pode ser citada como uma vantagem
interativa fixa e portátil. em comparação com a televisão digital portátil. A Tabela I
A televisão digital portátil interativa compartilha em um apresenta uma comparação entre a televisão digital fixa e a
único dispositivo as funcionalidades da internet, TV e portátil no Brasil.
telefonia celular, observando que os sinais de TV para estes
dispositivos já estão disponíveis em diversas cidades TABELA I
brasileiras. Algum tipo de interatividade para a televisão COMPARAÇÃO ENTRE TELEVISÃO DIGITAL FIXA E PORTÁTIL NO BRASIL
digital portátil já é oferecida em países que possuem este
Fixa Portátil
serviço, como votação em programas, publicidade com
Set-top-box Aparelhos celulares
redirecionamento para compras, guia eletrônico de Aparelhos de TV com PDAs, Mini-TVs, Smartphones,
programação, etc. conversores embutidos Blackberrys, Receptores para veículos
O guia eletrônico de programação [3, 4, 5] – oferecido pelas automotivos
emissoras - é uma ferramenta útil ao usuário, pois auxilia a Vários usuários Um usuário
escolha do programa de TV que deseja assistir. Porém, é Tela maior que 30 polegadas Tela menor que 10 polegadas
inevitável o aumento de conteúdo no guia eletrônico de Local fixo Qualquer local
programação com a inclusão de novos canais e, dessa forma, Maior tempo de visualização Menor tempo de visualização
dado o volume de informação, o usuário começa a ter Sem Canal de Retorno definido Canal de retorno da própria rede celular
dificuldades na escolha de seus programas, resultando em uma Implementação de referência do Implementação de referência do
perda de tempo indesejável. O guia eletrônico de programação middleware disponível middleware não disponível
sobrecarregado de informações passa a não atender às
necessidades dos usuários, pois como não considera as suas Os usuários destes dispositivos necessitam de atenção
particular, devido às atuais características deste ambiente
2. como poder de processamento, capacidade de armazenamento O sistema ZapTV [20] permite que o usuário crie seu próprio
e bateria. conteúdo, oferece serviços de valor agregado como acesso
Para usufruir de todo o potencial disponibilizado pela multimodal (Web e Celulares), canal de retorno, anotação de
televisão digital portátil interativa, é necessário que um vídeo, compartilhamento e distribuição personalizada de
software faça a ligação entre o hardware, o sistema conteúdo e foi desenvolvido para o padrão DVB-H.
operacional e as aplicações interativas de televisão digital. ZapTV envolve além da tecnologia provida pelo DVB-H,
Esse software é o middleware e no Brasil ele é denominado outras tecnologias como TV-Anytime [21], Tecnologias
Ginga [10, 11]. O middleware Ginga permite que aplicações emergentes da Web 2.0 [22] e envolvidas na Web Semântica
declarativas e procedurais sejam construídas utilizando-se, [23].
respectivamente Ginga-NCL (Nested Context Language) [12] As principais funcionalidades do ZapTV incluem uma rede
e Ginga-J (Java) [13]. social, difusão personalizada de conteúdo (forma implícita ou
O modelo proposto neste trabalho utilizou uma explícita de recomendação), planejamento de difusão de
implementação de referência do middleware Ginga-NCL. canais temáticos (faixa etária, gênero ou tema específico),
NCL [14] é uma linguagem declarativa para autoria de aplicação cliente e transmissão do guia eletrônico de
documentos hipermídia e foi desenvolvida baseada em um programação.
modelo conceitual que é focado na representação e tratamento ZapTV procura melhorar a recomendação utilizando um
de documentos hipermídia. NCL é a linguagem oficial do mecanismo de personalização inteligente que combina
middleware Ginga-NCL, podendo ser utilizada em filtragem de informação com processos de raciocínio
dispositivos portáteis. semântico e, foi modelado nos princípios de participação e
O principal objetivo deste trabalho é o desenvolvimento de compartilhamento entre os usuários da Web 2.0, de forma que
um sistema de recomendação para a televisão digital portátil a geração, compartilhamento, classificação e anotação de
interativa brasileira, buscando recomendar programas conteúdos ocorrem colaborativamente, facilitando a tarefa de
televisivos de acordo com o perfil do usuário. busca destes conteúdos.
Este artigo está estruturado como: Na seção I apresenta-se o O sistema de [24] tem como principal objetivo oferecer
contexto do trabalho, na seção II alguns trabalhos relacionados conteúdo comum (TV Aberta) e também personalizado e
são apresentados, na seção III o sistema de recomendação para adaptado para fornecer conteúdos que podem ser mais
a televisão digital portátil interativa brasileira é apresentado, atraentes para os usuários.
suas características, arquitetura e implementação, na seção IV A arquitetura do sistema permite a difusão de conteúdos
os resultados obtidos e a seção V as conclusões. tanto por broadcast, como DVB-H, por exemplo, quanto por
streaming de vídeo.
II. TRABALHOS CORRELATOS Existe um servidor onde o fluxo de televisão e os serviços de
Na literatura existem diversos sistemas de recomendação dados estão localizados e um servidor personalizado de
para set-top-boxes que permitem serviços de personalização conteúdo que é responsável por fazer a atribuição e gestão do
[15, 16, 17]. Para dispositivos portáteis, como celulares com conteúdo pessoal, de acordo com as preferências do usuário e
televisão digital, o desenvolvimento de sistemas de o histórico de visualização e também deve indicar quando a
recomendação é uma recente área de pesquisa. A seguir são mudança entre o conteúdo comum e o personalizado tem que
apresentados três trabalhos que aplicam técnicas de ser feita.
recomendação para televisão digital portátil interativa. A parte do usuário consiste de dispositivos móveis dos
Em [7] foi desenvolvido um sistema de recomendação para usuários que podem executar a aplicação cliente, e enviam de
o padrão DVB-H (Digital Video Broadcast – Handheld) [18] volta ao servidor os dados necessários para auxiliar na
em conformidade com OMA-BCAST (Open Mobile Alliance- configuração de seu perfil.
Mobile Broadcast Services Enabler Suite) [19]. Os autores No lado cliente tem-se o módulo Player que entre outras
identificaram alguns requisitos para os sistemas de tarefas deve executar os conteúdos conforme o tipo de
recomendação dedicados a este ambiente como escalabilidade, recepção disponível no dispositivo e também um módulo para
latência de resposta, flexibilidade para padrões correntes de armazenar a coleta dos dados do usuário e os conteúdos
transmissão, proteção à privacidade do usuário, entre outros. personalizados recebidos do servidor.
O sistema de recomendação enquadra-se na categoria de Há um módulo denominado de controle que é responsável
sistemas com filtragem baseada em conteúdo, empregando por executar o player quando o usuário inicia o aplicativo,
mineração de texto. Emprega uma interface simples com o monitorar, capturar e preparar as interações do usuário para
usuário e aceita linguagem natural como entrada de texto serem enviadas ao servidor entre outras tarefas. O último
assim como quatro valores que refletem as preferências do módulo do lado cliente é responsável por receber os conteúdos
usuário para comédia, ação, terror e erotismo. personalizados e enviar os dados capturados.
Neste sistema a recomendação ocorre da seguinte forma: O módulo Decissor, do lado servidor controla os perfis de
primeiramente são extraídos os textos, em seguida, procuram- usuário no módulo de banco de dados, é capaz de atualizar o
se as emoções contidas no texto e distâncias entre os temas são perfil de usuário sempre que recebe do usuário informações
computadas. Um índice é calculado para cada entrada e é sobre o seu comportamento e seleciona as propagandas que
retornada uma lista de programas ordenada por este índice.
3. têm de ser enviados para os usuários de acordo com este conteúdo de sua preferência sem investir muito tempo
perfil. localizando-o.
O Servidor Web hospeda os serviços web para gerenciar o O sistema de recomendação foi projetado de forma a ser
sistema e os conteúdos e empresas de propaganda e executado localmente no aparelho celular com a
provedores de conteúdo podem adicionar excluir e modificar funcionalidade de televisão digital. Também é necessário que
conteúdos, propagandas e usuários. o dispositivo tenha o middleware Ginga-NCL.
Existe também um módulo para controlar o fluxo de dados A Figura 1 apresenta o contexto de utilização do sistema
entre o servidor e o usuário e outro módulo para o banco de proposto neste trabalho. Os receptores fixos e móveis recebem
dados que armazena os perfis, os dados coletados a partir do áudio, vídeo e dados, sendo o middleware responsável pela
comportamento do usuário e os conteúdos enviados pelos separação dos mesmos. O dispositivo deve ser capaz de
prestadores. receber a transmissão de televisão digital com o auxílio de
O último módulo do lado servidor é responsável em dar uma antena interna ou externa compatível com o padrão de
formato aos dados possibilitando que os módulos possam se transmissão adotado pelo Brasil. O usuário interage com a
comunicar de forma segura e adequada. televisão no celular e todos os canais assistidos durante o
Finalizando, o sistema exige login/senha e na primeira vez período de utilização são armazenados.
que o usuário acessa a aplicação, é preenchido um formulário A proposta inicial considera a utilização das categorias e o
com as suas preferências que geram o seu perfil. Após efetuar horário de início dos programas de TV. Assim que o usuário
o login, o usuário começa a assistir televisão ou por streaming ligar sua TV no celular, programas de TV de preferência do
ou por broadcast. usuário e com horário próximo ao horário atual são
Ambos os trabalhos supracitados fornecem soluções para a recomendados.
personalização e a sobrecarga de informação na televisão O sistema de recomendação foi desenvolvido utilizando-se o
digital em dispositivos portáteis. middleware Ginga-NCL. A implementação para dispositivos
Em [7] o mecanismo do sistema de recomendação aplica a portáteis deste middleware não está disponível no momento e
técnica de mineração de textos, filtragem baseada em por este motivo, os testes e a implementação foram realizados
conteúdo e necessita que o usuário informe alguns dados, no middleware Ginga-NCL para set-top-box.
enquanto que em [20] o mecanismo é mais sofisticado, O processamento tem início quando o usuário liga a TV em
utilizando filtragem de informação híbrida, raciocínio seu celular. Os dados do histórico de visualização do usuário
semântico e identifica o usuário de forma explícita e implícita. que foram coletados até então, são minerados encontrando
Em todos eles são necessários login e os diferenciais de [24] desta forma o perfil do usuário.
são a propaganda personalizada e a recepção de conteúdos Os dados resultantes da mineração passam por uma
tanto por streaming quanto por broadcast. formatação. O perfil do usuário é armazenado em uma base de
O trabalho proposto neste artigo utiliza um algoritmo de dados, juntamente com a data e horário de geração.
mineração de dados e coleta implícita do comportamento do Com o perfil do usuário atualizado procura-se no guia
usuário, o que não exige login/senha por parte do usuário, e foi eletrônico de programação, os programas de TV compatíveis e
desenvolvido particularmente para o sistema brasileiro de que estejam sendo transmitidos próximos ao horário atual,
televisão digital. Seu modelo, entretanto pode ser aplicado em gerando uma lista com estes programas.
outros padrões.
Os sistemas de recomendação dos trabalhos anteriores
encontram-se fora do dispositivo portátil, e esta é a diferença
mais notável do modelo proposto neste trabalho. Ambos os
sistemas incluem dentro de uma arquitetura existente de
televisão digital, a sua própria arquitetura, como servidores de
conteúdos e servidores de guia eletrônico de programação.
Neste trabalho, o sistema de recomendação está no
dispositivo portátil, não sendo necessária a inclusão de
servidores na arquitetura da televisão digital portátil interativa
brasileira para fornecer recomendação e, portanto, sem a
necessidade de comunicação remota, evitando que o usuário
pague pelo tráfego dos dados na rede para receber as
recomendações ou enviar os seus dados, protegendo desta
forma a privacidade dos dados do usuário.
III. SISTEMA DE RECOMENDAÇÃO
O sistema proposto neste trabalho visa facilitar o cotidiano
do usuário de televisão digital portátil interativa, com Figura 1. Contexto de Utilização do sistema.
interação por uma interface simples que possibilita assistir o
4. A lista passa por um processo de limpeza e formatação recomendados para o usuário, de acordo com o perfil
permanecendo apenas os dados referentes à data, horário, encontrado, gerando resultados com informações completas.
duração e emissora gerando uma nova lista de programas. A O módulo Filter é responsável por filtrar as informações
lista de programas encontrados são as recomendações que resultantes do módulo Mining, formatando-as e gerando uma
também é armazenada em uma base de dados junto com a data lista de recomendações.
e hora de geração. O módulo Presentation é o responsável por apresentar as
As recomendações são então apresentadas ao usuário e as recomendações assim como gerenciar o tempo que
que forem solicitadas são armazenadas junto ao histórico de permanecerão na tela do dispositivo.
visualização. O último módulo, Data Manager, é o responsável por
Durante todo o período em que a TV no celular estiver
excluir os dados assim que se tornam obsoletos.
ligada, todos os programas visualizados pelo usuário são
A arquitetura do sistema de recomendação possui também as
armazenados na base de dados que contém o histórico de
bases de dados (arquivos) para armazenar o histórico de
visualização. Este processo repete-se toda vez que o usuário
ligar a TV. visualização do usuário, o guia eletrônico de programação, o
perfil do usuário e as recomendações. A Figura 3 apresenta a
A. Implementação arquitetura do sistema de recomendação.
O middleware Ginga possui uma camada para as aplicações
residentes, responsável pela exibição, outra para o núcleo B. Algoritmos de Mineração
comum, responsável por oferecer diversos serviços e, uma O módulo Mining utiliza um algoritmo de mineração. Dentre
última referente à pilha de protocolos. os diversos métodos de mineração de dados presentes na
O trabalho descrito neste artigo foi implementado como um literatura e considerando as especificidades do domínio desta
elemento na arquitetura do Ginga, na camada de núcleo aplicação, verificou-se que o método botton-up, em que o
comum (Ginga Common Core), como ilustrado pela Figura 2. processo de exploração tenta descobrir alguma coisa que ainda
O sistema de recomendação é dividido em vários módulos e não é conhecida, extraindo-se apenas os padrões dos dados,
foi planejado, projetado e modelado cuidadosamente e assim como o método de busca de conhecimento indireta ou
especificamente para dispositivos portáteis (aparelhos não supervisionada e as tarefas de associação, são os mais
celulares), considerando as características atuais destes, de adequados para este trabalho.
forma a atender os requisitos deste ambiente em particular e, Há uma grande variedade de algoritmos que poderiam ser
também está em conformidade com as normas brasileiras para testados. Entretanto, o objetivo deste trabalho não é estudar,
a televisão digital portátil brasileira. testar e analisar profundamente e sistematicamente o impacto
O módulo Trigger é responsável por iniciar e terminar o da aplicação de técnicas de mineração de dados em
processamento dos dados do sistema. dispositivos como aparelhos celulares.
O módulo Capture é o responsável por capturar e armazenar
todos os programas assistidos durante o período em que a TV
no celular estiver ligada, assim como as informações
referentes a eles como, por exemplo, data, horário, canal e
gênero.
O módulo Mining é responsável por descobrir e armazenar o
perfil do usuário. Este módulo também deve encontrar no guia
eletrônico de programação, os programas que poderão ser
Figura 2. Sistema de recomendação na arquitetura do middleware Ginga. Figura 3. Arquitetura do Sistema de Recomendação
5. TABELA II
AMOSTRA DAS REGRAS GERADAS PELO WEKA
n.º regras
domicilio=1 nomeEmissora=Record descSubGenero=Outros
1
21 ==> descGenero=Variedade 21 conf:(1)
2 descGenero=Variedade 29 ==> domicilio=1 29 conf:(1)
Os algoritmos das técnicas de associação identificam
associações entre registros de dados que de alguma forma
estão relacionados. A premissa básica encontra elementos que
implicam a presença de outros em uma mesma transação,
objetivando determinar quê coisas estão relacionadas. Figura 4. Amostra do layout inicial dos arquivos TXT
As regras de associação interconectam objetos na tentativa
de expor características e tendências. A descoberta de Tomando-se como exemplo a primeira linha da Figura 4,
associações deve evidenciar tanto associações triviais quanto identificam-se os campos conforme mostra a Tabela IV. Após
associações não triviais. o entendimento dos arquivos que compõem o guia eletrônico
O algoritmo Apriori é utilizado com freqüência para de programação, os dados foram copiados dos arquivos de
minerar regras de associação. Apriori consegue trabalhar com programação para uma planilha do BrOffice com o auxílio do
um número alto de atributos, gerando várias combinações recurso colar especial. Este recurso permitiu que os dados
entre eles e realizando buscas sucessivas em toda a base de fossem exportados exatamente como construídos no layout,
dados, mantendo um ótimo desempenho em termos de tempo separando os campos em colunas.
de processamento. Após a exportação, foi feita a limpeza dos dados
O algoritmo tenta encontrar todas as regras de associação desnecessários. No momento da exportação, os dados
relevantes entre os itens, que tem o formato X (antecedente) numéricos perderam seu formato, sendo então re-formatados
==> Y (conseqüente). Se x% das transações que contêm X de acordo com a Tabela III. Por conveniência, a coluna dia foi
também contêm Y, então x% representa o fator de confiança convertida do formato texto para o formato data.
(força de confiança da regra). O fator de suporte é uma Em seguida, perceberam-se algumas inconsistências de
medida que corresponde a x% das vezes em que ocorre X e Y horários, que foram imediatamente corrigidas para que a
simultaneamente sobre o total de registros (freqüência). [25] análise futura não gerasse resultados errôneos. Todo esse
Para constatar que este algoritmo atende aos requisitos processo se repetiu para cada um dos 15 arquivos de
necessários deste trabalho, os testes foram feitos utilizando os programação, gerando uma única planilha contendo todo o
dados do domicílio 1 e o algoritmo Apriori do software Weka. guia eletrônico de programação dos 15 dias.
A Tabela II apresenta uma amostra das regras geradas pelo O comportamento do usuário é composto por várias
software. A regra 1 indica que o descritor Variedade/Outros planilhas, denominadas planilhas de sintonia, que possuem
teve 21 ocorrências na emissora Record, no domicílio 1. muito mais informação que o guia eletrônico de programação.
As planilhas de sintonia e o guia eletrônico de programação
C. Dados do IBOPE contém códigos que identificam as emissoras da TV Aberta.
Para teste do sistema proposto e implementado, em Foi necessário padronizar estes códigos, pois o número de
particular o algoritmo de mineração, é necessário obter os identificação foi registrado diferente nesses arquivos.
dados de visualização do usuário e também o guia eletrônico Para evitar inconsistência de dados, foi adicionada uma
de programação. coluna no guia eletrônico de programação com o nome da
Estes dados foram fornecidos pelo IBOPE [26] e passaram Emissora e depois os códigos das emissoras de TV Aberta
por um processo de tratamento quase totalmente manual para foram padronizados, pois havia conflitos de códigos entre as
se adequar ao formato padrão que deve ser utilizado no emissoras Bandeirantes, Record, Rede TV! e TV Cultura.
sistema brasileiro de televisão digital e também para que
pudessem ser utilizados no software de mineração de dados
Weka [27] para os testes. TABELA III
Os dados correspondem a 15 dias de programação e LAYOUT DOS ARQUIVOS TXT
monitoramento de 6 domicílios brasileiros. O guia eletrônico
Descrição Tipo Posição Inicial
de programação é composto por 15 arquivos TXT
Código da Emissora Numérico (03) 1
denominados arquivos de programação, um para cada dia
Código do Programa Numérico (06) 24
(05/03/2008 a 19/03/2008), com a grade de 10 emissoras de
Nome do Programa Caractere (30) 30
TV Aberta, com início as 00:00:00 e término as 05:59:00. A
Início do Programa Numérico (06) 160
Figura 4 ilustra uma amostra do layout inicial destes arquivos
Fim do Programa Numérico (06) 166
e a Tabela III apresenta como este layout foi organizado.
6. TABELA IV
IDENTIFICANDO OS CAMPOS NOS ARQUIVOS TXT
Coluna Conteúdo Identificação
Código da
005
Emissora
1.ª 005100PNREXXXXX
100PNREXX
Descartado
XXX
Código do
002645
002645RELIGIOSO Programa
2.ª
MAT RELIGIOSO Nome do
MAT Programa
3.ª 000000 Descartado
4.ª 0000 Descartado
Início do
060000
Programa Figura 5. Amostra das planilhas de sintonia.
Fim do
5.ª 060000080000DIA_05 080000
Programa
Dia do programação totalizou cerca de 4500 linhas, o que
DIA_05
Programa corresponde a 4500 registros em um banco de dados e, com
11111110000000000000 identificação de aproximadamente 800 programas diferentes.
6.ª Descartado
0003XX
A Tabela V mostra a relação quantidade de
programas/categoria encontrada no guia eletrônico de
Também se adicionou o dia da semana e a duração do
programação.
programa. O guia eletrônico de programação, nessa etapa
O formato dos dados enviados pelo IBOPE pode ser
ainda não está completo, faltam o gênero e subgênero de cada
visualizado na Figura 5, que mostra o comportamento dos
programa. Para isso procurou-se nos sites oficiais de cada
usuários do domicílio 2. A planilha inicia-se as 00:00:00 e
emissora o gênero dos programas transmitidos e em seguida
termina as 05:59:00 e, nos horários em que o usuário assistiu
identificados de acordo com a norma brasileira ABNT NBR TV, é marcado o código do canal assistido. Apesar de haver 3
15603-2:2007, Anexo C, “Descritor de gênero no descritor de indivíduos e apenas 1 TV no domicílio 2, o IBOPE colheu os
conteúdo” [28]. canais assistidos por cada membro individualmente, o que
Para facilitar essa identificação, foi utilizado o recurso de fornece informações a respeito do comportamento de cada
filtro para classificar o guia eletrônico de programação de membro da casa. A Tabela VI apresenta as características dos
acordo com o nome do Programa. Se o programa repetisse domicílios.
nesses 15 dias, não era necessário procurar novamente no site Para trabalhar de forma adequada com os dados, a planilha
da emissora. Ressalta-se que a planilha do guia eletrônico de de sintonia também foi modificada. Foi necessário separar
cada individuo com seus respectivos canais, dia, horário,
TABELA V domicílio e TV. As colunas de data e horário também foram
RELAÇÃO QUANTIDADE DE PROGRAMAS/CATEGORIA formatadas de acordo com o padrão que deve ser utilizado no
sistema brasileiro. Isto se repetiu para todo o conteúdo de
Categoria Quantidade
todas as planilhas, gerando a relação apresentada na Tabela
Minissérie 0 VII.
Erótico 1 As planilhas foram convertidas em arquivos CSV (Comma-
Novela 15 separated values) para inserção no banco de dados MySQL e
Reality Show 15 também para uso no Weka. Em seguida, cada arquivo CSV foi
Filme 24 inserido no banco de dados e os registros desnecessários foram
Humorístico 25 retirados. As colunas data e hora também foram convertidas
Informação 32 em uma única coluna, de acordo com o formato padrão (aaaa-
Educativo 33 mm-dd hh:mm:ss).
Esporte 40 O próximo passo consistiu em encontrar no guia eletrônico
Sorteio, televendas, premiação 42 de programação os programas correspondentes aos horários
Debate/Entrevista 52 assistidos. No sistema de recomendação proposto, o
Série/Seriado 56 comportamento do usuário é monitorado, mas não minuto a
Outros 62 minuto, como nos dados do IBOPE, mas apenas quando o
Infantil 63 usuário mudar de canal.
Jornalismo 146 Para se aproximar deste objetivo, os dados resultantes da
Variedade 203 mescla do guia eletrônico de programação com o
TOTAL 812 comportamento do usuário, que gera na realidade o histórico
de visualização, passaram por mais um processo de limpeza.
7. TABELA VI
Recomendações / Solicitações
CARACTERÍSTICAS DOS DOMICÍLIOS MONITORADOS
6
Domicílio N.º Indivíduos N.º TVs
4
1 2 1
2 3 1
3 3 2 2
s
4 2 2 r
0 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
5 2 1
Dias
6 3 2
TOTAL Figura 6. Recomendações Visualizadas e Solicitadas.
6 15 9
foram minerados no segundo. No segundo dia, coletaram-se
Foram identificadas mudanças de canais, calculado o tempo mais dados que foram minerados juntos com os dados do
de permanência no programa, registros e campos repetidos primeiro dia, e assim sucessivamente. Verificou-se que os
foram deletados. Assim os dados ficaram em conformidade dados não cresceram na ocupação de espaço
para a realização dos testes. proporcionalmente ao número de dias minerado.
IV. RESULTADOS 100
Os testes com o algoritmo Apriori do software weka
constataram que este algoritmo pode ser adotado para o 80
sistema, pois se adéqua às necessidades da proposta.
Precisão
60
A partir das regras geradas pelo Apriori, recomendações
foram simuladas e, foi possível averiguar se o usuário estava
assistindo às recomendações simuladas por estas regras. 40
Utilizou-se a seguinte fórmula para calcular a precisão:
20
(1) 0
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Dias
em que a é o número de recomendações visualizadas, b o Figura 7. Precisão do Sistema.
número de recomendações efetuadas e a eficiência do
sistema. A Figura 8 apresenta os tamanhos dos arquivos gerados para
Os resultados constatados pelas Figuras 6 e 7 são visíveis e os 15 dias do domicílio 1.
deixam claro que os testes foram satisfatórios para o período 12
avaliado. A Figura 6 apresenta a quantidade de recomendações
10
visualizadas e solicitadas pelo usuário do domicílio 1 durante
15 dias. Em média, por dia, o usuário visualizou 3
8
recomendações e solicitou aproximadamente 2. A Figura 7
mostra a precisão, atingindo em média aproximadamente 77%
KyloBytes
6
de precisão durante os 15 dias.
Algo importante que também foi verificado é o tamanho dos
4
arquivos do histórico do usuário. Os testes foram iterativos e
acumulativos, isto é, coletaram-se dados no primeiro dia que 2
TABELA VII 0
RELAÇÃO PLANILHAS 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Dias
Domicílio Planilhas
1 30 Figura 8. Tamanho dos arquivos do histórico de visualização.
2 44
3 35
4 43 V. CONCLUSÕES
5 30 O trabalho apresentado justifica-se pelo fato que a televisão
6 80 digital em celulares dá indícios de crescimento rápido pelo
Total 262 mundo. Além disso, a possibilidade de assistir TV em
8. qualquer lugar e a qualquer hora em dispositivos portáteis [8] “Antenados assistem TV em qualquer lugar”. Disponível em:
http://www.forumsbtvd.org.br/materias.asp?id=131. Acesso em 10 de
evidencia que a personalização torna-se fundamental para agosto de 2009. Gazeta Mercantil/Caderno D - Pág. 3. 19/05/2009.
solucionar algumas dificuldades geradas pela sobrecarga de [9] “Publicidade móvel e TV digital são negócios em ascensão”. 30/07/2009.
informação e também o tempo investido pelo usuário para Disponível em: http://sbtvd.cpqd.com.br/? obj=noticia&mtd=detalhe&q
procurar programas de seu interesse. =14942. Acesso em 10 de agosto de 2009.
[10] Middleware Ginga. Disponível em http://www.ginga.org.br/. Acesso em
O sistema de recomendação proposto foi modelado 06 de agosto de 2009.
considerando as características atuais dos dispositivos [11] Comunidade do middleware Ginga no portal do software público.
portáteis e as situações de uso da televisão no celular, podendo Disponível em: http://www.softwarepublico.gov.br/dotlrn/clus/ginga.
Acesso em 07 de agosto de 2009.
este modelo ser adequado para outros padrões e também, para [12] Ginga-NCL. Disponível em: http://www.gingancl.org.br/. Acesso em 07
os novos dispositivos portáteis que surgirão no mercado. de agosto de 2009.
Além disso, atentou-se em projetar o sistema de acordo com [13] Ginga-J. Disponível em: http://www.openginga.org/index.html. Acesso
em 08 de agosto de 2009.
as normas brasileiras estabelecidas para dispositivos portáteis, [14] Nested Context Language, NCL. Disponível em: http://www.ncl.org.br/.
devido particularmente, ao fato da inviabilidade atual de Acesso em 08 de agosto de 2009.
desenvolver o sistema integrado a um middleware para [15] Hsu, S. H., Wen, M. H., Lin, H. C., Lee, C. C. and Lee, C. H.: AIMED,
“A personalized TV Recommendation System. In Proceedings of the
televisão digital portátil, possibilitando que o código Interactive TV: A Shared Experience", pages 166-174, Vol 4471,
implementado possa ser futuramente portável com Springer Berlin / Heidelberg, 2007.
modificações e atualizações minimizadas. [16] Zhiwen, Y., Xingshe, Z., Yanbin, H. and Jianhua, G. “TV program
recommendation for multiple viewers based on user profile merging”. In
Como trabalho futuro, pretende-se incluir como parâmetros Proceedings of the User Modeling and User-Adapted Interaction, pages
para descoberta de preferências do usuário, a classificação 63-82. Publishing Springer Netherlands, 2006.
indicativa dos programas (faixa etária) e também a sinopse. [17] Zhang, H.; Zheng, S. Yuan J.: “A personalized TV guide system
Com isto, uma gama muito maior de recomendações pode ser compliant with MHP”. In: Consumer Electronics, IEEE Transactions on,
vol.51, no.2, pp. 731-737, 2005.
fornecida ao usuário. No caso da sinopse, poderiam ser [18] Digital Video Broadcasting, DVB. Disponível em: http://www.dvb.org.
descobertos, por exemplo, os artistas preferidos de filmes e Acesso em 11 de agosto de 2009.
então recomendar filmes que tenham a participação deste [19] Open Mobile Alliance, OMA-BCAST. Disponível em: http://www.open
mobilealliance.org/. Acesso em 12 de agosto de 2009.
artista. Muitas outras preferências do usuário podem ser [20] Solla, Alberto Gil et. al. ZapTV: Personalized User-Generated Content
descobertas pela sinopse do programa e nosso trabalho for Handheld Devices in DVB-H Mobile Newtorks. In: Proceedings 6th
pretende explorar estas opções. European Interactive TV Conference, p.193-203, Salzburg, Áustria, 03-
04/07/2008.
[21] TV-Anytime. Disponível em: http://www.tv-anytime.org/. Acesso em 13
AGRADECIMENTOS de agosto de 2009.
[22] O'Reilly, Tim. “What Is Web 2.0. Design Patterns and Business Models
Agradecemos ao IBOPE por fornecer os dados reais do guia for the Next Generation of Software”. 09/30/2005. Disponível em:
eletrônico de programação e também os dados de http://oreilly.com/web2/archive/what-is-web-20.html. Acesso em 14 de
comportamento dos telespectadores do período 05- agosto de 2009.
[23] Web Semântica. Disponível em: http://www.w3.org/2001/sw/SW-
19/03/2008. FAQ#What1. Acesso em 16 de agosto de 2009.
[24] Uribe, Silvia, et al. “Mobile TV Targeted Advertisement and Content
REFERÊNCIAS Personalization”. 16th International Workshop Conference on Systems,
Signals and Image Processing, Chalkida, Greece, 18-19/06/2009.
[1] Sistema Brasileiro de Televisão Digital. Disponível em: [25] Witten, I. H, Frank, Eibe. “Data mining : practical machine learning tools
http://sbtvd.cpqd.com.br/. Acesso em 03 de agosto de 2009. and techniques”. Cap. 4, seção 4.5, pg. 112. Elsevier. 2nd ed. 2005.
[2] Fórum do Sistema Brasileiro de Televisão Digital. Disponível em [26] IBOPE. Disponível em: http://www.ibope.com.br. Acesso em 16 de
http://www.forumsbtvd.org.br/. Acesso em 03 de agosto de 2009. agosto de 2009.
[3] “Electronic Programme Guide. Protocol for a TV Guide using electronic [27] WEKA. Disponível em: http://www.cs.waikato.ac.nz/ml/weka/. Acesso
data transmission”. ETSI standard ETS 300 707 Disponível em: em 17 de agosto de 2009.
http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=38 [28] “Televisão digital terrestre. Multiplexação e serviços de informação (SI)
83. Acesso em 05 de agosto de 2009. parte 2. Estrutura de dados e definições da informação básica de SI”.
[4] “Televisão digital terrestre. Multiplexação e serviços de informação (SI) ABNT Norma Brasileira 15603-2. Disponível em: http://www.forumsbt
parte 3. Sintaxes e definições de informação estendida do SI”. ABNT vd.org.br/materiais.asp?id=112. Acesso em 17 de agosto de 2009.
Norma Brasileira 15603-3. Disponível em: http://www.forumsbtvd.org.b
r/materias.asp?id=112. Acesso em 05 de agosto de 2009.
[5] “Service Information for Digital Broadcasting”. ARIB standard STD-
B10. Disponível em: http://www.dibeg.org/techp/techp.htm. Acesso em
06 de agosto de 2009.
[6] Silva, Fábio Santos; Jucá, Paulyne Matthews. “Personalização de
Conteúdo Através de um Guia Eletrônico de Programação Personalizada
para a TV Digital”. WebMedia 2005: Simpósio Brasileiro de Sistemas
Multimídia e Web, Workshop de Televisão Digital Interativa. 2005.
[7] Bär, Arian et al. “A Lightweight Mobile TV Recommender: Towards a
One-Click-to-Watch Experience”. In Proceedings 6th European
Interactive TV Conference, p.142-147, Salzburg, Áustria, 03-
04/07/2008.