Em MONTES-GARC´IA et al. (2013), ´e apresentado um sistema de recomendac¸ ˜ao sens´ıvel ao contexto, voltado para a ´area de Jornalismo. O sistema denominado We- somender, ´e capaz de recomendar not´ıcias a partir da identificac¸ ˜ao de t ´opicos seme- lhantes em diferentes fontes de not´ıcias. Para tanto, utiliza a avaliac¸ ˜ao de especialistas e considera caracter´ısticas contextuais relacionadas `as not´ıcias, como: tempo, inte- resses dos utilizadores, local ou tend ˆencias existentes. Esses dados s ˜ao combinados com as t ´ecnicas tradicionais de recomendac¸ ˜ao para obtenc¸ ˜ao de uma estrutura adap- tativa, capaz de lidar com dados heterog ˆeneos. Essa estrutura, segundo os autores, pode ser caracterizada como um sistema de filtragem colaborativa reforc¸ada.
Wesomender ´e composto por dois m ´odulos principais: um m ´odulo de filtragem baseada em conte ´udo e um m ´odulo de filtragem colaborativa. Cada m ´odulo pro- duz recomendac¸ ˜oes de forma independente, tomando por base a an ´alise de not´ıcias que o usu ´ario n ˜ao tenha visto ou avaliado. Como resultado, para cada not´ıcia ana- lisada, o sistema retorna duas vari ´aveis com valores entre 0 e 1, denominadas CF (collaborative-filtering) e CB (content-based), onde valores mais pr ´oximos a 1 signi- ficam que a not´ıcia poder ´a interessar ao usu ´ario. A an ´alise de not´ıcias ´e realizada da seguinte forma: segundo os autores, existe uma regra n ˜ao escrita no mundo do jornalismo, chamada de The Five W (os cinco Ws), que determina a import ˆancia de uma not´ıcia atrav ´es de cinco perguntas b ´asicas que devem ser respondidas: who? (quem?), what? (o qu ˆe?), why? (porqu ˆe?), when? (quando?) e where? (onde?). Considerando essas quest ˜oes, o valor da vari ´avel CB, resultante da recomendac¸ ˜ao baseada em conte ´udo, ´e obtido tomando-se por base os seguintes par ˆametros:
1. Uma not´ıcia ´e mais interessante se o que est ´a sendo informado acaba de acon- tecer;
2. Uma not´ıcia sobre algo que acontece pr ´oximo de um usu ´ario, ´e mais relevante para ele;
3. Se um usu ´ario l ˆe uma not´ıcia, envolvendo determinadas entidades ou cobrindo t ´opicos espec´ıficos, ele est ´a interessado nessas entidades ou t ´opicos neste mo- mento. Esta hip ´otese considera not´ıcias antigas tamb ´em, visto que o usu ´ario pode estar `a procura de refer ˆencias.
Al ´em dos par ˆametros acima descritos, o sistema considera a confiabilidade da fonte de dados associada `a not´ıcia. Esse par ˆametro prev ˆe que, ao analisar um artigo, por exemplo, uma refer ˆencia a outro autor pode ser considerada mais confi ´avel do que a refer ˆencia a um blog. Assim, atrav ´es da utilizac¸ ˜ao dos par ˆametros: tempo,
localizac¸ ˜ao, conte ´udo e confiabilidade, o valor de CB ´e obtido atrav ´es da seguinte f ´ormula:
CB = α.ER + β.T + γ.P + δ.R (11)
Onde:
ER- refere-se `as entidades relacionadas com a not´ıcia. Isto ´e, as ´ultimas not´ıcias que o usu ´ario tenha demonstrado interesse e que devem ser verificadas. Para cada entidade associada `a recomendac¸ ˜ao em curso, o percentual correspondente ´e adicio- nado `a vari ´avel ER;
R - refere-se `a rec ˆencia. ´E calculada com base no tempo atual e o momento da publicac¸ ˜ao, retornando valores entre 0 e 1;
P - refere-se `a proximidade. Calculada com base na dist ˆancia m ´axima entre dois pontos, nesse caso o usu ´ario e a not´ıcia, retornando valores entre 0 e 1;
T - refere-se `a confiabilidade. O valor de T ´e obtido a partir da avaliac¸ ˜ao realizada por uma equipe de jornalistas para cada m´ıdia.
A import ˆancia de cada vari ´avel ´e um percentual determinado por uma equipe de jornalista profissionais, onde:
• R ´e o fator mais importante, sendo α = 0.5; • P ´e o segundo em import ˆancia, com γ = 0.2;
• T e ER s ˜ao igualmente relevantes, sendo α = β = 0.15;
Com o objetivo de projetar um SR adaptativo e h´ıbrido, Wesomender conta com um componente que avalia o conjunto de dados existente e escolhe o melhor algoritmo de filtragem colaborativa. Este componente ´e aplicado sobre os algoritmos do Apache Mahout, escolhido por implementar um conjunto consider ´avel de t ´ecnicas que podem ser facilmente avaliadas por meio de uma API para testar a precis ˜ao dos algoritmos.
Os algoritmos utilizados nos testes realizados pelo Wisomender foram:
• Generic User Based Recommender - Produz recomendac¸ ˜oes considerando
itens relacionados `a usu ´arios com gostos semelhantes. Existem v ´arias
implementac¸ ˜oes em Mahout para avaliar a correlac¸ ˜ao de similaridade. Em Weso- mender foram implementadas as seguintes medidas: Coeficiente de Correlac¸ ˜ao de Pearson, Dist ˆancia Euclidiana, Coeficiente de Similaridade do Cosseno, Dist ˆancia de Manhattan, Log-Likelihood, Coeficiente de Correlac¸ ˜ao de Spear- man e Coeficiente de Tanimoto;
• Item Based Recommender - Semelhante ao Generic User Based Recommender, essa t ´ecnica tamb ´em utiliza o conceito similaridade, por ´em aplicados aos itens, ao inv ´es de usu ´arios;
• Tree Clustering Recommender - Constr ´oi recomendac¸ ˜oes tomando por base gru- pos de usu ´arios com gostos semelhantes;
• SVD Recommender - Trata-se de uma das formas de fatorac¸ ˜ao de matrizes usa- das em filtragem colaborativa;
• Slope One Recommender - Produz recomendac¸ ˜oes baseado na previs ˜ao de classificac¸ ˜ao que um determinado usu ´ario daria a um item.
Assim que o melhor algoritmo ´e selecionado, o valor de CF pode ser calculado e aplicado na f ´ormula 12, para realizar a recomendac¸ ˜ao final:
r = w.CB + (1 − w).CF (12)
Onde w ´e a ponderac¸ ˜ao utilizada para avaliac¸ ˜oes baseadas em conte ´udo, sendo 0 ≤ w ≤ 1.
Wesomender, difere-se da abordagem apresentada por este trabalho, n ˜ao s ´o pelo contexto de aplicac¸ ˜ao, mas pelo fato de utilizar classificac¸ ˜oes adquiridas de forma expl´ıcita e combinar recomendac¸ ˜oes, obtidas a partir de SR individuais, para reali- zar a recomendac¸ ˜ao final. Apesar de ser um sistema h´ıbrido, pode-se perceber que ´e atribu´ıda maior import ˆancia `as caracter´ısticas contextuais relacionadas aos itens dispon´ıveis para recomendac¸ ˜ao. Dessa forma, d ´a-se maior ˆenfase `a recomendac¸ ˜ao baseada em conte ´udo.
Em ZHOU et al. (2008) ´e abordado o uso de propagac¸ ˜ao de r ´otulos para
recomendac¸ ˜ao de documentos em uma biblioteca digital. A propagac¸ ˜ao de
r ´otulos ´e um tipo de aprendizado transdutivo 1 da categoria de aprendizado semi- supervisionado. Sua utilizac¸ ˜ao objetiva estimar os r ´otulos de dados n ˜ao-rotulados utilizando outros dados rotulados ou parcialmente rotulados e suas similaridades.
Na proposta apresentada pelos autores o cen ´ario ´e representado por uma rede de documentos interligados atrav ´es de citac¸ ˜oes e associados a outras entidades por v ´arias relac¸ ˜oes, como autores, local de publicac¸ ˜ao e referencial bibliogr ´afico.
O trabalho tem como foco principal a aplicac¸ ˜ao de filtragem colaborativa para itens ligados em rede, combinando v ´arios grafos para calcular a similaridade entre itens. Os itens podem ser representados pelo conjunto completo de v ´ertices de um grafo ou por um subconjunto de v ´ertices desse grafo.
1O aprendizado transdutivo objetiva rotular dados n ˜ao-rotulados conhecidos sem expandir o modelo
para um novo conjunto de dados desconhecido. Dessa forma, todos os exemplos dos quais o r ´otulo pode ser predito s ˜ao conhecidos (ZHU; GOLDBERG, 2009)
Figura 7: Exemplo de um grafo de citac¸ ˜oes Fonte: ZHOU et al. (2008)
Conforme ilustrado na Figura 7, os documentos podem ser representados como v ´ertices de um grafo direcionado onde as arestas indicam as respectivas citac¸ ˜oes. A similaridade entre os documentos pode ser medida em termos de co-citac¸ ˜oes2 (co- citando os mesmos documentos ou sendo co-citado por outros). No exemplo apresen- tado na figura 7, os documentos B e C podem ser considerados semelhantes, pois s ˜ao co-citados por E.
Al ´em da propagac¸ ˜ao de r ´otulos s ˜ao utilizados m ´etodos de aprendizagem para com- binar os v ´arios grafos e medir a similaridade entre itens. Nesse contexto, a aprendiza- gem de tr ˆes tipos de grafos s ˜ao formuladas como tr ˆes sub-problemas, cada um usando uma estrat ´egia de fatorac¸ ˜ao de acordo com as caracter´ısticas de cada tipo de grafo. Os tr ˆes sub-problemas abordados consideram as citac¸ ˜oes, local de publicac¸ ˜ao e auto- res dos documentos. A partir do resultado obtido, um novo quadro de recomendac¸ ˜ao ´e desenvolvido atrav ´es da aplicac¸ ˜ao do aprendizado semi-supervisionado em grafos.
Apesar de explorar a relac¸ ˜ao existente entre os itens a serem recomendados, o trabalho de ZHOU et al. (2008) difere-se da proposta aqui apresentada por n ˜ao basear- se na interac¸ ˜ao do usu ´ario com o ambiente para realizar recomendac¸ ˜oes. Percebe-se ainda que, apesar de enfatizar o uso da filtragem colaborativa (por meio das citac¸ ˜oes e co-citac¸ ˜oes realizadas), o trabalho possui caracter´ısticas mais pr ´oximas a um sistema baseado em conte ´udo. Pois, al ´em de n ˜ao utilizar avaliac¸ ˜oes realizadas pelos usu ´arios, infere relac¸ ˜oes entre itens utilizando informac¸ ˜oes relacionadas aos autores e local de publicac¸ ˜ao dos documentos a serem recomendados.
Em PRABHA; RATHIPRIYA (2013) ´e apresentado um sistema de recomendac¸ ˜ao com base em um modelo de navegac¸ ˜ao. O trabalho aborda a construc¸ ˜ao de perfis de usu ´arios obtidos a partir da an ´alise de dados de navegac¸ ˜ao. O perfil ´e obtido por uma func¸ ˜ao: perf il(A, J ), onde A representa o usu ´ario e J o item acessado pelo usu ´ario A. A recomendac¸ ˜ao se d ´a atrav ´es da identificac¸ ˜ao de um conjunto de perfis
2A an ´alise de co-citac¸ ˜ao ´e uma das principais t ´ecnicas quantitativas em estudos cient´ıficos para
mapear a estrutura e din ˆamica da pesquisa cient´ıfica. Esta t ´ecnica pode ser utilizada para identificar focos de pesquisa e suas relac¸ ˜oes, em particular o n´ıvel de especializac¸ ˜ao da pesquisa (BRAAM; MOED; VAN RAAN, 1991)
similares para um dado usu ´ario, utilizando para tanto um m ´etodo baseado em inte- lig ˆencia de enxames. Trata-se de uma func¸ ˜ao de avaliac¸ ˜ao para identificac¸ ˜ao de um conjunto de usu ´arios, denominados de vizinhos mais pr ´oximos. Atrav ´es dessa func¸ ˜ao a semelhanc¸a entre os perfis de usu ´arios ´e calculada e o perfil mais pr ´oximo ´e esco- lhido. O sistema ent ˜ao seleciona os usu ´arios cuja dist ˆancia euclidiana est ´a acima de um determinado valor limite. O conjunto de dados obtidos a partir dessa selec¸ ˜ao ´e ent ˜ao aplicado a um m ´etodo baseado em Intelig ˆencia de Enxames. O estudo aponta que o modelo proposto pode ser aplicado atrav ´es da utilizac¸ ˜ao de diferentes t ´ecnicas, tais como: Otimizac¸ ˜ao por Col ˆonia de Formigas (Ant Colony Optimization), Bat Al- gorithm, Cuckoo Search, Firefly Algorithm e Otimizac¸ ˜ao por Enxame de Part´ıculas (Particle swarm optimization).
Diferente da proposta deste trabalho o sistema n ˜ao prev ˆe uma relac¸ ˜ao entre os
itens a serem recomendados. ´E utilizada uma abordagem puramente colaborativa,
onde a recomendac¸ ˜ao se d ´a com base na an ´alise do perfil de acesso dos usu ´arios, obtido de forma impl´ıcita.
Em WANG et al. (2012) ´e apresentada uma proposta de algoritmo de recomendac¸ ˜ao com o objetivo de ser escal ´avel e capaz de lidar com dados de treina- mento escassos e que mudam ao longo do tempo. A abordagem apresentada prev ˆe a utilizac¸ ˜ao de um novo tipo de esquema de filtragem colaborativa baseada no com- portamento das formigas e se d ´a atrav ´es da aplicac¸ ˜ao do Algoritmo de Otimizac¸ ˜ao por Col ˆonia de Formigas. Atrav ´es de um mecanismo de transmiss ˜ao de ferom ˆonio o modelo proposto ´e capaz de identificar a similaridade entre usu ´arios e objetos, mesmo frente ao problema da dispers ˜ao. O processo de transmiss ˜ao de ferom ˆonio ocorre da seguinte forma: dado um ´ındice de ferom ˆonio representando um usu ´ario ou um grupo de usu ´arios, o item compartilha ferom ˆonio do usu ´ario ao receber uma classificac¸ ˜ao. Da mesma forma, o item transfere o ferom ˆonio nele existente para o usu ´ario que rea- lizou a classificac¸ ˜ao. Depois de algum tempo, itens semelhantes recebem uma quan- tidade semelhante de ferom ˆonio e, em seguida, os usu ´arios com gostos semelhantes se tornam iguais no que diz respeito `a quantidade de ferom ˆonio `a eles associada. O sistema utiliza a evaporac¸ ˜ao do ferom ˆonio existente para identificar a evoluc¸ ˜ao de prefer ˆencias dos usu ´arios ao longo do tempo. Atrav ´es do ´ındice de ferom ˆonio a abor- dagem utilizada permite calcular 3 formas de similaridade: similaridade entre itens, similaridade entre usu ´arios e similaridade entre usu ´arios e itens. Com o objetivo de melhorar o desempenho e a qualidade das recomendac¸ ˜oes realizadas, a soluc¸ ˜ao uti- liza ainda uma t ´ecnica para o agrupamento de usu ´arios de acordo com o ´ındice de ferom ˆonio associado a cada um deles.
Diferente da proposta do presente trabalho, na abordagem de WANG et al. (2012) o ´ındice de ferom ˆonio utilizado na tarefa de recomendac¸ ˜ao pode estar associado aos usu ´arios, aos itens ou `a ambos, podendo ser transmitido de forma simult ˆanea a cada
interac¸ ˜ao do usu ´ario. O sistema prev ˆe a atualizac¸ ˜ao do ´ındice de ferom ˆonio associado aos itens e aos usu ´arios, como forma de comparar o valor associado para realizar recomendac¸ ˜oes. Por ´em, n ˜ao considera a criac¸ ˜ao de conex ˜oes entre os itens a serem recomendados.
Em SOBECKI; TOMCZAK (2010) ´e abordado o desenvolvimento de um sis-
tema para recomendac¸ ˜ao de cursos para estudantes universit ´arios. A tarefa de
recomendac¸ ˜ao se d ´a atrav ´es de filtragem de informac¸ ˜oes integrada a uma aborda- gem colaborativa, baseada em ACO. O sistema utiliza tr ˆes tipos b ´asicos de filtragem: Filtragem demogr ´afica, filtragem baseada em conte ´udo e filtragem colaborativa. Os fil- tros s ˜ao aplicados a uma s ´erie de informac¸ ˜oes associadas aos alunos, como n ´umero de identificac¸ ˜ao do aluno, curso, tipo de curso, semestre de refer ˆencia, entre outras. A partir desses dados, s ˜ao calculados valores m ´edios para cada tipo de curso a para o conjunto de informac¸ ˜oes associados a cada estudante. A etapa seguinte consiste na escolha de uma das medidas obtidas para aplicac¸ ˜ao do Algoritmo de Otimizac¸ ˜ao de Col ˆonia de Formigas. A ideia principal consiste em recomendar para cada estudante uma previs ˜ao de qualidade para todos os cursos, para os quais ele tem a oportunidade de se inscrever. Os experimentos utilizaram tr ˆes modelos de algoritmos baseados em ACO, constituindo tr ˆes m ´etodos de aplicac¸ ˜ao e selec¸ ˜ao: i) Escolha da probabilidade m ´axima; ii) Com uma formiga e caminhada aleat ´oria, considerando a probabilidade das arestas; iii) Com k formigas e caminhada aleat ´oria, utilizando a probabilidade das arestas. Os resultados obtidos a partir da aplicac¸ ˜ao desses tr ˆes algoritmos s ˜ao ent ˜ao comparados com cinco m ´etodos de filtragem. Para o processo de avaliac¸ ˜ao de desempenho s ˜ao utilizadas v ´arias medidas de comparac¸ ˜ao como: Mean Absolute Er- ror (MAE), Normalized Mean Absolute Error (NMAE), Prediction Accuracy (PA), Mean Squared Error (MSE), Root Mean Squared Error (RMSE), Standard Error Variance (SEV) e Classification Accuracy (CA).
A proposta apresentada por SOBECKI; TOMCZAK (2010) difere-se da abordagem utilizada neste trabalho, n ˜ao s ´o pelo contexto de aplicac¸ ˜ao, mas tamb ´em por utilizar dados referentes aos cursos e aos usu ´arios obtidos de forma expl´ıcita. O sistema faz recomendac¸ ˜oes com base nos resultados obtidos a partir da aplicac¸ ˜ao de filtros sobre o conjunto de dados dispon´ıveis para avaliac¸ ˜ao.
No trabalho apresentado por BEDI; SHARMA (2012) s ˜ao produzidas
recomendac¸ ˜oes a partir da incorporac¸ ˜ao de uma medida de confianc¸a entre os usu ´arios. Com base nos valores obtidos s ˜ao criados grupos baseados na met ´afora
biol ´ogica de col ˆonias de formigas. Esses grupos, por sua vez, representam as
melhores opc¸ ˜oes de recomendac¸ ˜ao para o usu ´ario ativo. O sistema funciona em duas etapas: a primeira etapa consiste na obtenc¸ ˜ao do gr ´afico de confianc¸a dirigido para cada usu ´ario. Sua criac¸ ˜ao se d ´a atrav ´es da matriz de classificac¸ ˜ao usu ´ario-item e informac¸ ˜oes de confianc¸a sobre os usu ´arios. As informac¸ ˜oes de confianc¸a s ˜ao obtidas
a partir do grau de similaridade entre os perfis de parceiros. O valor obtido ´e utilizado para determinar o ´ındice de ferom ˆonio, que representa a forc¸a de conex ˜ao ou seja, a intensidade de confianc¸a entre os dois parceiros de recomendac¸ ˜ao (recomendador
e usu ´ario ativo) no tempo t. A segunda etapa ´e o processo de recomendac¸ ˜ao.
Nesta etapa ´e escolhido o melhor grupo de usu ´arios e aplicada a soluc¸ ˜ao proposta para o problema do novo usu ´ario. Nesse contexto, a soluc¸ ˜ao apresentada sugere a criac¸ ˜ao de uma lista de recomendadores mais ”populares”, com base no alto valor de ferom ˆonio associado (n´ıvel de confianc¸a global).
O trabalho de BELLAACHIA; ALATHEL (2016) prop ˜oe a aplicac¸ ˜ao do Algoritmo de Otimizac¸ ˜ao por Col ˆonia de Formigas, em um sistema de recomendac¸ ˜ao baseado em redes de confianc¸a, objetivando resolver o problema de previs ˜ao de avaliac¸ ˜oes para itens que possuem poucas classificac¸ ˜oes por parte dos usu ´arios. Como usu ´arios novos possuem poucas ou nenhuma classificac¸ ˜ao relacionada aos itens, o algoritmo utiliza a confianc¸a estabelecida entre os usu ´arios para gui ´a-los em sua explorac¸ ˜ao no espac¸o de soluc¸ ˜oes. Nesse sistema, o usu ´ario ativo representa o ninho e os usu ´arios com uma classificac¸ ˜ao para o item alvo s ˜ao considerados fontes de alimento. Repre- sentando o problema atrav ´es de um grafo, a soluc¸ ˜ao se d ´a atrav ´es da atribuic¸ ˜ao de um n´ıvel de ferom ˆonio inicial para cada aresta que representa uma poss´ıvel soluc¸ ˜ao. Esse n´ıvel de ferom ˆonio reflete a import ˆancia associada `a aresta (confianc¸a). As boas soluc¸ ˜oes, neste caso, s ˜ao os n ´os que representam os usu ´arios com uma classificac¸ ˜ao para o item alvo. A cada iterac¸ ˜ao uma formiga k localizada no ponto x calcula a probabilidade de cruzar as bordas de ligac¸ ˜ao a um usu ´ario y de acordo com o n´ıvel de confianc¸a associado. Em seguida, eventualmente, cruza a borda que produziu a maior probabilidade. Nesta etapa ocorre a atualizac¸ ˜ao local do ´ındice de ferom ˆonio (atualizac¸ ˜ao local). O sistema utiliza um modelo de atualizac¸ ˜ao de ferom ˆonio de dois n´ıveis: atualizac¸ ˜ao local e atualizac¸ ˜ao global. A atualizac¸ ˜ao global ´e realizada ap ´os todas as formigas terminarem a construc¸ ˜ao de suas soluc¸ ˜oes.
Diferente da abordagem utilizada por este trabalho, em BEDI; SHARMA (2012) e BELLAACHIA; ALATHEL (2016), as recomendac¸ ˜oes s ˜ao realizadas com base na ligac¸ ˜ao existente entre os usu ´arios (confianc¸a) e n ˜ao entre os itens a serem reco-
mendados. Al ´em disso, abordagens baseadas em confianc¸a sugerem avaliac¸ ˜oes
expl´ıcitas por parte dos usu ´arios como forma de identificar a confianc¸a entre eles. Tal caracter´ıstica tem por objetivo a criac¸ ˜ao de uma lista de ”amigos” (de confianc¸a) de cada usu ´ario, juntamente com os seus n´ıveis de confianc¸a associados, para posterior utilizac¸ ˜ao no processo de recomendac¸ ˜ao.
APRENDIZAGEM DE L´INGUAS
Este cap´ıtulo descreve o Sistema de Recomendac¸ ˜ao de Objetos de Aprendizagem de L´ınguas aqui proposto. A abordagem utilizada para desenvolvimento do sistema ´e apresentada na primeira sec¸ ˜ao do cap´ıtulo. S ˜ao definidos os dados de entrada a serem utilizados, as t ´ecnicas e o tipo de filtragem adotados, os algoritmos implemen- tados e a forma como os dados de entrada e os dados armazenados s ˜ao combinados pelos algoritmos no processo de recomendac¸ ˜ao, resultando na sa´ıda do sistema.