Filtros Colaborativos y Sistemas de Recomendación

16,486 views

Published on

Tema del curso "Aplicaciones y Sistemas Colaborativos en la Web 2.0", del doctorado de DIT de la UPM

Published in: Education

Filtros Colaborativos y Sistemas de Recomendación

  1. 1. Filtros ColaborativosySistemas de Recomendación<br />G. Huecas<br />J. Salvachúa<br />
  2. 2. Índice<br />Un poco de historia: Groupware / Workflow<br />Introducción a Sistemas Recomendadores<br />Taxonomía vs. Folksonomías<br />Arquitectura SR<br />Similitud<br />Predictores<br />Evaluación de SR<br />SR Colaborativos<br />SR Basados en Contenidos<br />SR Híbridos<br />Bibliografía<br />
  3. 3. Groupware<br />El Groupware es un tipo de software colaborativo que ayuda a grupos de trabajo a realizar sus actividades a través de una red. Formalmente se puede definir al groupware de la siguiente manera:“Sistemas basados en computadoras que apoyan a grupos de personas que trabajan en una tarea común y que proveen una interfaz para un ambiente compartido”<br />DaveChaffney[CHAFFEY]<br />
  4. 4. Características Groupware<br />Proveer de un ambiente de colaboración, en el que realmente se perciba que el trabajo en grupo se lleva a cabo.<br />Mantener la información en un solo sitio común para todos los miembros.<br />Interactuar con otros usuarios, de forma escrita, voz o video.<br />
  5. 5. Funciones esenciales del Groupware: CCC<br />La Comunicación, es la función mas importante del groupware, ya que es el medio en que la información es compartida.<br />La Colaboración, utilizada para unir la cooperación y resolver problemas de negocios o alguna actividad empresarial. Proporciona la ventaja de resolver problemas de las asambleas tradicionales como: lugar y tiempo para la realización de la misma o la disponibilidad de información. Además de mejorar la eficiencia en la toma de decisiones con la contribución de todos los miembros del grupo.<br />La Coordinación, es la acción de asegurar que el equipo esta trabajando eficientemente y en conjunto para alcanzar una meta. Esto incluye la distribución de tareas y revisión de su ejecución.<br />
  6. 6. Workflow<br />Los Workflows son sistemas que ayudan a administrar y automatizar procesos de negocios. Un workflow puede ser descrito como el flujo y control en un proceso de negocio.<br />La WfMC (Workflow Management Coalition) define a los workflows como [4]:<br /> "La automatización de un proceso de negocio, total o parcial, en la cual documentos, información o tareas son pasadas de un participante a otro para efectos de su procesamiento, de acuerdo a un conjunto de reglas establecidas."<br />También definen lo que es un proceso de negocio:<br /> "Es un conjunto de uno o mas procedimientos o actividades directamente ligadas, que colectivamente realizan un objetivo del negocio, normalmente dentro del contexto de una estructura organizacional que define roles funcionales y relaciones entre los mismos."<br />
  7. 7. Funciones proporcionadas por WF<br />Asignación de tareas al personal.<br />Aviso al personal de tareas pendientes.<br />Permitir la colaboración en las tareas comunes.<br />Optimización de recursos humanos y técnicos, alineándolos a la estrategia de la empresa.<br />Automatización de las secuencias de los procesos de negocio y optimización de las mismas.<br />Agilización de los procesos de negocio y como resultado un mejor servicio al cliente.<br />Control y seguimiento de dichos procesos<br />
  8. 8. Sistemas de Recomendación<br />
  9. 9. Sistema de Recomendación (I)<br />Los Sistemas de Recomendación forman parte de un tipo especifico de técnica de filtro de información, los cuales presentan distintos tipos de temas o ítems de información (películas, música, libros, noticias, imágenes, paginas web, etc.) que son del interés de un usuario en particular.<br />Generalmente, un Sistema de Recomendación compara el perfil del usuario con algunas características de referencia de los temas, y busca predecir el "ranking" o ponderación que el usuario le daría a un ítem que aún el sistema no ha considerado. Estas características pueden basarse en la relación o acercamiento del usuario con el tema o en el ambiente social del mismo usuario.<br />
  10. 10. Mecanismos de Retroalimentación<br />Cuando se crea un perfil del usuario, se crea utilizando dos formas o métodos en la recolección de características (implícitas o explicitas).<br />Explícita: Cuando se aplica la recomendación explícita, el sistema otorga al usuario la oportunidad de calificar, dentro de un rango predefinido, los ítems que ha utilizado <br />Implícita: El sistema obtiene retroalimentación implícita capturando la interacción del usuario sin que él lo note. <br />
  11. 11. Recolección de Datos<br />Ejemplos de recolección de datos de forma explicita<br />Solicitar al usuario que pondere en base a una escala proporcionada, algún tema en particular<br />Solicitar al usuario que pondere un conjunto de temas de una lista de temas favoritos<br />Presentar al usuario dos temas, y solicitarle que seleccione uno de ellos<br />Solicitar al usuario que cree una lista de temas de su preferencia<br />Algunos ejemplos de recolección de datos de forma implícita<br />Guardar un registro de los temas que el usuario ha visto en una tienda online<br />Analizar el número de visitas que recibe un artículo<br />Guardar un registro de los artículos que el usuario ha seleccionado<br />Obtener un listado de los artículos que el usuario ha seleccionado o visto en su computadora<br />Analizar las redes sociales de las que el usuario forma parte y de esta manera conocer sus gustos y preferencias<br />
  12. 12. Técnicas de Recomendación<br />Colaborativa, que acumula recomendaciones de usuarios sobre los ítems, identifica similitudes entre usuarios y genera nuevas recomendaciones.<br />Demográfica, que clasifica a los usuarios en grupos y hace recomendaciones de acuerdo con el grupo.<br />Basada en el contenido (es una ampliación del filtrado de información), que aprende el perfil del usuario basado en las características de los ítems que él mismo ha jerarquizado y ofrece recomendaciones de acuerdo con su perfil. Esta técnica y la colaborativa crean un modelo a largo plazo, que van actualizando a medida que llegan evidencias.<br />Basada en utilidad, que no construye generalizaciones a largo plazo, sino que compara la necesidad del usuario con el conjunto de opciones disponible, mediante una función de la utilidad de cada objeto para el usuario; esa función seria su perfil. Luego emplea técnicas de satisfacción de restricciones para escoger la mejor opción.<br />Basada en el conocimiento, que dispone de información acerca de cómo un ítem satisface una necesidad del usuario y establece relación entre una necesidad y una recomendación. El perfil puede ser cualquier estructura de datos que soporte esta relación. Algunos sistemas han usado el razonamiento basado en casos para la recomendación.<br />[BURKE]<br />
  13. 13. Algoritmos de Recomendación (I)<br />En general, los algoritmos de recomendación deben encontrar la preferencia (likeliness), que se expresa en una de estas 2 formas: <br />Predicción: un valor numérico P(a,j) que predice la preferencia del usuario activo (Ua), hacia el ítem (Ij), no usado aun por Ua.<br />Recomendación: una lista de los N primeros ítems que el usuario Ua posiblemente prefiere, no usados aún por Ua, y se llaman los top-N.<br />
  14. 14. Algoritmos de Recomendación (II)<br />Pueden basarse en el usuario (en la memoria), o en el ítem (en el modelo).<br />Los algoritmos basados en el usuario usan estadísticas para buscar el conjunto de los usuarios mas similares al Ua (vecinos cercanos, o nearestneighbors) y a continuación combinan las preferencias de esos vecinos para producir una predicción o recomendación (top-N) para Ua.<br />Los algoritmos basados en los ítems suponen que un usuario estaría interesado en ítems similares a los que le interesaron antes a ese mismo usuario, y buscan entre el conjunto de ítems que el usuario ha usado y jerarquizado, calculan la similitud con el ítem objetivo, y seleccionan los k mas similares. También se les llama “basados en el modelo”, pues desarrollan primero un modelo de las opiniones de los usuarios, usando técnicas de aprendizaje automático [SARWAR00], [SARWAR01], [YU].<br />
  15. 15. Algoritmos Recomendación (III)<br />Uno de los algoritmos mas usado comúnmente en sistemas de recomendación es el NearestNeighborhood (Acercamiento al Vecino mas Cercano). En una red social, un usuario particular usa un vecino con gustos e intereses similares que pueden ser encontrados calculándolos con la PearsonCorrelation, recolectando las preferencias de los primeros N- vecinos para un usuario en particular, (pesado por su similitud), y se predice la preferencia del usuario usando ciertas técnicas.<br />
  16. 16. Ejemplos de SR<br />Amazon.com (Pagina de compra por internet, incluye recomendaciones de productos) <br />AmieStreet (Servicios de música) <br />Baynote (Servicio de recomendación vía web) <br />ChoiceStream (Sistema de recomendación de productos) <br />Collarity (Plataforma multimedia de recomendación) <br />Daily Me (Sistema de recomendación de noticias) <br />Genius (Servicio de música, forma parte de la tienda online de iTunes) <br />Last.fm (Sistema de música) <br />Loomia (Motor de contenido) <br />Strands (Tecnología de recomendación social) <br />Netflix (Servicio de alquiler de DVD) <br />Pandora (servicio de música) <br />Reddit (Sistema de recomendación de noticias) <br />Slacker (servicio de música) <br />StumbleUpon (Servicio web) <br />StyleFeeder (Busqueda personalizada de compras) <br />
  17. 17. Taxonomía vs. Folksonomía (I)<br />Tradicionalmente, clasificar grandes cantidades de información requiere de un riguroso proceso en el cual un grupo de expertos documentalistas, clasifica una serie de volúmenes de acuerdo a una taxonomía pre-existente, haciendo uso de un Vocabulario Controlado que permite mantener la precisión y autoridad en esta clasificación. <br />Un sistema de clasificación social contradice todos estos principios: La clasificación social deja la puerta abierta para que cualquier persona agregue términos descriptivos, también conocidos como keywords o tags a los diferentes elementos de la colección, sin control en su vocabulario ni jerarquía en la organización.<br />El resultado de esto es una clasificación plana, llena de ambigüedad y errores, pero con un gran dinamismo y flexibilidad para adaptarse a la mentalidad de los usuarios, lo que resulta útil para éstos.<br />
  18. 18. Taxonomía vs. Folksonomía (II)<br />Taxonomía:<br />● Control<br />● Autoridad<br />● Precisión<br />● Jerarquía, clasificación<br />● Búsqueda<br />Folksonomía:<br />● Flexibilidad<br />● Simpleza, popularidad<br />● Utilidad<br />● Plano, categorización<br />● Exploración, serendipity<br />
  19. 19. Folksonomías<br />Ventajas de las Folksonomies:<br />Las folksonomies entregan información acerca de la gente que las crea, invitando a la participación.<br />Tienen el potencial de nutrir una Web Semántica.<br />A nivel de empresa tienen el potencial de mejorar la categorización de documentos.<br />Refleja directamente el lenguaje de los usuarios.<br />Debilidades de las Folksonomies:<br />Polisemia<br />Palabras con múltiples significados<br />Sinonimia<br />Conceptos descritos con diferentes términos<br />Plurales y raíces: Gato vs gatos , Ciclismo vs Ciclista<br />
  20. 20. Sistema de recomendación y personalización<br />Basado en presentación de Viviana L. Matos, Universidad Nacional del Sur<br />
  21. 21. SR: Aplicación<br />Necesito informaciónde libros ¿ayuda?<br />WWW<br />SR<br />
  22. 22. SR: Concepto<br />Un Sistema de Recomendación es una herramienta que ayuda al usuario a obtener la información que necesita de acuerdo a sus preferencias<br />Un SR toma decisiones basado en información disponible.<br />Un SR requiere de un método de filtrado de la información.<br />Un SR se aplica en algún dominio determinado(Ej: películas, música, restaurantes, email, e-commerce,..)<br />
  23. 23. Arquitectura del SR<br />Motor del Sistema<br />de Recomendaciones<br />Perfil del Usuario<br />Recomendaciones<br />Sistema de Información<br />(Data Source)<br />Interactúa<br />Módulo de Actualización del Perfil del Usuario<br />Usuario<br />
  24. 24.
  25. 25. SR Colaborativos<br />Mapea usuarios con intereses similares y luego crea recomendaciones sobre esa base<br />Sugiere nuevos ítems o predice la utilidad de un cierto ítem para un usuario particular basado en los gustos previos del usuario y en las opiniones de otros usuarios con iguales intereses.<br />
  26. 26. Item-Based Collaborative Filtering Recommendation<br />Algorithms. Sarwar et al. ACM Press<br />Proceso de Filtro Colaborativo<br />
  27. 27. Tipos de Filtros Colaborativos<br />Basado en Memoria<br />Utiliza el algoritmo del vecino más cercano para chequear por similitud a los usuarios con respecto al usuario activo. Y combina las preferencias para determinar una predicción o lista de recomendaciones para el usuario activo.<br />Basado en Modelo<br />No usan la matriz de ratings directamente. Usan un esquema de aprendizaje mecánico para construir un modelo de valoraciones de usuarios. Ej: sistema de filtro colaborativo basado en ítem: Un usuario podría estar interesado en ítems que le gustaron y evitaría los ítems que no le gustaron.<br />
  28. 28. Filtro Colaborativo Basado en Ítem<br />Sobre el conjunto de ítems que el usuario activo valoró, computa cuán similar es el ítem recuperado con respecto a los ítems valorados por el ua, y elige los k más similares {i1, i2, ..., ik} y al mismo tiempo sus correspondientes similitudes {si1,si2,...,sik}.<br />
  29. 29. Producto Escalar de Vectores<br />Cuando θ es cero, los vectores apuntan en la misma dirección. Así, para valores de cercanos a cero, los vectores tienden a apuntar en la misma dirección<br />
  30. 30. Similitud entre Ítems<br />Correlación de Pearson<br />Similitud por Coseno<br />Similitud por Coseno Ajustada<br />
  31. 31. Cálculo de la Predicción<br />Suma ponderada (weightedsum)<br />Regresión<br />
  32. 32. Suma Ponderada<br />Se toman todos los elementos que el usuario ha votado. Se toma un elemento “x1” y para ese elemento se suman todos los coeficientes de similitud entre ese elemento y los elementos votados por el usuario, proporcionados al valor del voto. Siendo N cada elemento votado por el usuario Si,N la similitud entre los elementos i y N y Ru,N la valoración del usuario del elemento N:<br />
  33. 33. Regresión<br />Similar al modelo anterior, pero en lugar de sumar directamente las notas de los elementos similares se utiliza una aproximación basada en la recta de regresión. Con este método se intenta compensar un problema que se da al evaluar las similitudes mediante medidas del coseno o la correlación, y es que vectores con alta similitud pueden encontrarse distantes en sentido euclídeo. Se utiliza la misma fórmula que en el caso de la suma proporcionada pero sustituyendo Ru,N por<br />
  34. 34. Predictores “slope-one” (I)<br />Partiendo de dos Arrays vi y wi de longitud n se busca obtener la mejor predicción de w a partir de v. Tendrá la forma f(x) = x + b y deberá minimizar el error cuadrático medio∑i (vi + b − wi)2 .Derivando:<br />Es decir, la diferencia media entre ambos arrays<br />
  35. 35. Predictores “slope-one” (II)<br />Diseño de las predicciones:<br />A partir de un conjunto X de datos de entrenamiento se toman dos elementos cualquiera i,j con votaciones uiuj y se calcula la desviación media entre ambos (Sólo se consideran usuarios que hayan votado tanto i como j):<br />Con lo que se tiene un array simétrico precalculado que es posible actualizar con cada nuevo elemento que se añada al sistema.<br />
  36. 36. Predictores “slope-one” (III)<br />La predicción para un usuario uj a partir del resto de usuarios será (Con Rj el conjunto de ítems relevantes):<br />
  37. 37. Predictor “slope-one” con pesos<br />El predictor anterior no tiene en cuenta el número de notas que se han tomado. No es igual predecir la nota de un usuario sobre un ítem L a partir de los ratings de ese usuario de otros elementos J K si hay muchos mas usuarios que tienen el par de votos J-L que el par K-L. El elemento J es mucho mejor predictor que el elemento K en este caso. Analíticamente esta idea se introduce en la ecuación con el factor cj,i que es el número de evaluaciones de los ítems j,i<br />
  38. 38. Predictor “slope-one” Bi-Polar<br />Trabaja dividiendo la predicción en dos partes. Usa el algoritmo anterior una vez para obtener una predicción de los elementos que han gustado al usuario y de los que no han gustado.<br />El primer problema que plantea este sistema es establecer el umbral a partir del que se considera que un elemento gusta o disgusta. La idea intuitiva es establecer un umbral que sea la mitad de la escala de evaluación. Si la escala va de 1 a 10 los elementos por debajo de 5 se considerarían como evaluados negativamente y los otros son evaluados positivamente. Esta aproximación sería la adecuada si las evaluaciones de los usuarios fueran distribuidas uniformemente, Sin embargo el comportamiento real de los usuarios indica que existe un porcentaje elevado de votaciones superiores a la mitad de la escala. Por ello el valor del umbral se establece como la media de todas las notas dadas por el usuario.<br />En la práctica este procedimiento supone doblar el número de usuarios, pero a la vez también reduce el número de elementos en el cálculo de las predicciones.<br />
  39. 39. Métodos de Evaluación de Rendimiento<br />No trivial<br />La bondad de los algoritmos dependen del dataset elegido<br />Los objetivos del SR pueden ser diversos<br />Estimar con exactitud<br />No proporcionar recomendaciones erróneas<br />Múltiples tipos de medidas:<br />que cubran todo el espectro de elementos del conjunto (cobertura),<br />que no se repitan,<br />que sean explicables…<br />Principal objetivo de un SR (no cuantificable):la satisfacción del usuario.<br />un menor error cuadrático menor no es apreciado por el usuario.<br />otros parámetros: sensación de credibilidad que ofrezca el sistema, la interfaz de usuario, la mejora del perfil al incluir nuevos votos...<br />
  40. 40. Métodos de Evaluación de SR<br />Métodos Estadísticos<br />Métricas de Decisión<br />
  41. 41. Métodos de Evaluación: Estadísticos<br />El parámetro de evaluación más usado es el Error Medio Absoluto (MAE) (mejor cuanto menor MAE)<br />Problema: el usuario sólo se interesa en los primeros N elementos de la recomendación, en el resto da igual el error cometido<br />Ventaja: sencillo y muy estudiado<br />Variaciones:<br />Error cuadrático medio (penaliza mayores errores)<br />Error absoluto normalizado (facilita comparaciones)<br />
  42. 42. Métodos de Evaluación: Métricas<br />Evalúan cómo de efectivo es un sistema de predicción ayudando al usuario a seleccionar los elementos mayor calidad,<br />es decir con qué frecuencia el sistema de recomendación efectúa recomendaciones correctas<br />Asumen que el proceso de predicción es binario: o el elemento recomendado agrada al usuario o no lo agrada<br />Sin embargo en la práctica se plantea el problema de evaluar esto<br />Posible solución: dividir el conjunto de datos en entrenamiento y test.<br />Se trabaja con el conjunto de entrenamiento<br />posteriormente se evalúa el resultado comparando las recomendaciones proporcionadas con las del conjunto de test.<br />Técnica útil,<br />Los resultados dependen fuertemente del porcentaje de elementos relevantes que el usuario haya votado. <br />
  43. 43. Métrica “Precision and Recall”<br />La mas conocida<br />Utilizada en muchos tipos de sistemas de recuperación de información.<br />Precision es la probabilidad de que un elemento seleccionado sea relevante <br />Recall es la probabilidad de que sea seleccionado un elemento relevante, <br />aunque en los sistemas de recomendación la “relevancia” es algo totalmente subjetivo.<br />Intuitiva para el usuario: establecer que un sistema tiene una precisión del 90% significa que de cada 10 elementos recomendados 9 serán buenas recomendaciones, algo que no queda claro proporcionando valores de error cuadrático medio.<br />
  44. 44. Métrica ROC<br />ROC (Reciveroperatingcharacteristic): muy utilizada.<br />Proporciona una idea de la potencia de diagnóstico de un sistema de filtrado.<br />Las curvas ROC dibujan la especifidad (Probabilidad de que un elemento malo del conjunto sea rechazado por el filtro)<br />y la sensitividad (probabilidad de que un elemento bueno al azar sea aceptado).<br />Si un elemento es bueno o malo viene dado por las valoraciones de los usuarios. Las curvas se dibujan variando el umbral de predicción a partir del cual se acepta un elemento. El área bajo la curva se va incrementando si cuando el filtro es capaz de retener mas elementos buenos y menos malos.<br />
  45. 45. Ventajas Filtros Colaborativos<br />Permite recomendar contenidos difíciles de analizar<br />Recomendar ítems basados en las preferencias del usuario<br />Realizar recomendaciones válidas pero no esperadas, lo cual puede ser de gran utilidad<br />
  46. 46. Desventajas Filtros Colaborativos<br />Problema de Cold-Start<br />Problema del Usuario Nuevo (ó earlyrater)<br />Problema de Ítem Nuevo<br />Problema de Dispersión (Sparsity)<br />Si el número de usuarios es pequeño en relación al volumen de información en el sistema, se corre el riesgo de que el cubrimiento de ratings se vuelva muy disperso. Achicando la colección de ítems recomendables.<br />Problema de Escalabilidad<br />A medida que la cantidad de usuarios y de ítems crece, también crece la cantidad de cómputos de vecinos mas cercanos para la determinación de usuarios similares, y como los cálculos se hacen en tiempo real, el sistema puede colapsar.<br />
  47. 47. Desventajas Filtros Colaborativos<br />Problema de la Oveja Gris<br />Existen usuarios donde sus perfiles caen entre clases existentes de usuarios, haciendo difícil determinar para ellos una recomendación adecuada.<br />Problema de la Sinonimia<br />Se produce por la escasez de cualquier forma de interpretación semántica. Ítems similares no se trataran de tal manera cuando se hagan las recomendaciones.<br />Problema de la Subjetividad<br />Con respecto a la naturaleza de los ratings<br />
  48. 48. Sistemas Basados en Contenido<br />Matriz de Valoraciones – Escala: 1-5<br />Recomienda ítems que son similares a los ítems que previamente valoró el usuario.<br />Si te gustaron estos ítems, es muy probable que te gusten similares<br />
  49. 49. SR Basado en Contenido<br />Los ítems se definen según sus características. (Ej: palabras en el documento)<br />El perfil de usuario se basa en cómo el usuario valora esas características.<br />Este recomendador representa los documentos como las técnicas de IR, haciendo uso del espacio vectorial y los índices para representar usuarios y documentos.<br />
  50. 50. Ventajas de SR Basados en Contenido<br />Recomendación por contenido<br />Y no por opiniones subjetivas de otros usuarios.<br />Se explica<br />El sistema puede generar explicaciones sobre la recomendación que hizo en base al historial del usuario.<br />No hay Dispersión (Sparsity)<br />Pues el modelado de la información está presente en las características del documento y no necesitan proveerlas otros usuarios.<br />
  51. 51. Desventajas SR Basados en Contenido<br />Sobreespecialización<br />El usuario está limitado a que le recomienden ítems similares a los que recomendó.<br />Subjetividad de los Contenidos.<br />Dificultad en dominios con contenido difícil de analizar, (audio, gráficos, imágenes, video)<br />Problema del Usuario Nuevo.<br />El usuario tiene que valorar un número suficiente de ítems para que el sistema pueda realmente entender sus preferencias.<br />
  52. 52. Desventajas SR Basados en Contenido<br />Representación del Perfil del Ítem<br />Para cada ítem se extraen ciertas características sobre las cuales se evalúa la similitud.<br />Efecto Portfolio.<br />Se da en dominios como recomendación de noticias, ya que es posible descartar noticias que pueden ser muy similares a previas, pero que al mismo tiempo presentan hechos nuevos e importantes.<br />Problema Estabilidad vs Plasticidad.<br />Es difícil para el sistema aprender a adaptarse, a los cambios en el perfil del usuario hasta no haber recolectado un número suficiente de ratings actualizados.<br />Tarea Onerosa de tener que valorar.<br />
  53. 53. Sistemas Híbridos<br />Los sistemas híbridos explotan características de los sistemas Basados en Contenido y Colaborativos, debido a la naturaleza complementaria de ambos. Lo que se busca es sobrellevar los inconvenientes de ambos sistemas para obtener mejores recomendaciones.<br />Para crear un sistema híbrido colaborativo basado en contenido, los perfiles de usuario se mantienen según el análisis de los contenidos de los ítems, y directamente se comparan esos perfiles para determinar las similitud entre usuarios para una recomendación colaborativa.<br />
  54. 54. Sistemas Híbridos<br />Se han propuesto varios esquemas de Sistemas Colaborativos basados en contenido, que pueden categorizarse en dos grupos<br />Combinación Lineal<br />Combinación Secuencial (Ej Sistema FAB)<br />Filtro Colaborativo<br />Matriz deValoraciones<br />FiltroCombinado<br />Filtro Basado en Contenido<br />Perfil deUsuario<br />Perfil deUsuario<br />Filtro Colaborativo<br />Filtro Basado en Contenido<br />FiltroCombinado<br />
  55. 55. Bibliografía<br />[AKAPA] http://www.akapa.com/member.html <br />[AVERY] Christopher Avery, Richard Zeckhauser. Recommendersystemsforevaluatingcomputermessages. Communications of the ACM, 40(3):88-89, March 1997<br />[BALABANOVIC] MarkoBalabanovíc and YoavShoham. Fab: Content-based, collaborativerecommendation. Communications of the ACM, 40(3):66-72, March 1997. <br />[BIGDATES] http://www.bigdates.com/ <br />[BRESSE] J. Bresse, D. Heckerman, and C. Kadie.Empiricalanalysis of predictivealgorithmsforcollaborativefiltering. Proceedings of the UAI-98 Conference. Morgan Kaufmann, 1998. <br />[BURKE] BurkeRobin. Hybridrecommendersystems: survey and experiments. UserModeling and User-AdaptedInteraction. November 2002. Volume 12 Issue 4.<br />[CHAFFEY] Chaffey Dave, Groupware, Workflow and Intranets. Reengineering the Enterprise with Collaborative Software. Chaffey Dave, Ed. Digital Press, 1998.<br />[CISCO] http://www.cisco.com/warp/public/cc/pd/unco/persasst/ <br />
  56. 56. Bibliografía<br />[FREEDOMSPACE] http://www.myfreedomspace.com/ <br />[GOLDEN] http://www.goldencrater.com/software/epAssist/epAssist.html <br />[HORVITZ] Horvitz E.: Lumiere Project: BayesianReasoningforautomatedassistance. AdaptiveSystems & Interaction. Microsoft research. Redmond, Washington. <br />http://research.microsoft.com/~horvitz/lumiere.htm<br />[KAUTZ] Henry Kautz, Bart Selman, and MehulShah. Referral Web: Combining social networks and collaborativefiltering.Communications of the ACM, 40(3):63-65, March 1997. <br />[KONSTAN] Joseph A. Konstan, Bradley N. Miller, David Maltz, Jonathan L. Herlocker, Lee R. Gordon, John Riedl. GroupLens: applyingcollaborativefilteringtoUsenetnews. Communications of the ACM, 40(3):77-87, March 1997.<br />[LINTON] Linton F., Charron, A. and JoyDebbie. Owl a RecommenderSystemforOrganization-WideLearning. <br />[LIVEPERSON] http://www.humanclick.com/community/pa.asp <br />[LOGILAB] http://www.logilab.org/narval/ <br />[LUCENT] http://www.lucent.com/ <br />
  57. 57. Bibliografía<br />[MACKAY] David J. MackayInformationTheory, Inference and LearningAlgorithms, Cambridge<br />[MOBONE] http://www.mobone.com/dir/site.html?c=77&s=78<br />[OMICRON] http://www.omicronsoft.com/Products/PersonalAssistant/ <br />[RESNICK] Paul Resnick, Hal R. Varian. Recommendersystems. Communications of the ACM, 40(3):56-58, March 1997. <br />[RUCKER] James Rucker, Marcos J. Polanco. Siteseer: personalizednavigationforthe Web. Communications of the ACM, 40(3):73-76, March 1997.<br />[SARWAR00] Sarwar, B. M., Karypis, G., Konstan, J. A., and Riedl, J. "Analysis of RecommendationAlgorithmsfor E-Commerce". Proceedings of the 2nd ACM E-Commerce Conference (EC'00). Oct., 2000.<br /> http://www-users.cs.umn.edu/~sarwar/ec00.pdf <br />[SARWAR01] Sarwar, B. M., Karypis, G., Konstan, J. A., and Riedl, J. "Item-basedCollaborativeFilteringRecommenderAlgorithms. Acceptedforpublication at the WWW10 Conference. May, 2001.http://www-users.cs.umn.edu/~sarwar/sdm.pdf<br />
  58. 58. Bibliografía<br />[SEGARAN] Toby Segaran, ProgrammingCollectiveIntelligence. O’Reilly<br />[SHELLTOYS] http://www.shelltoys.com/personal_assistant/index.html <br />[SITEEXPERTS] http://www.siteexperts.com/assist/about.asp<br />[TERVEEN] Loren Terveen, Will Hill, Brian Amento, David McDonald, JoshCreter. PHOAKS: a systemforsharingrecommendations. Communications of the ACM, 40(3):59-62, March 1997.<br />[VIPDESK] http://www.vipdesk.com/info/about.asp<br />[WIKIPEDIA] http://es.wikipedia.org/wiki/Sistema_recomendador <br />[YAHOO] http://www.yahoo.com<br />[YU]KaiYu, ZhongWenXiaoweiXu Martin Ester. Featureweighting and instanceslectionforcollaborativefiltering. http://ifsc.ualr.edu/xwxu/publications/wim01.pdf<br />

×