Los sistemas de recomendación en sitios web como Amazon y Netflix utilizan una técnica llamada "filtrado colaborativo". Para determinar qué productos pueden gustarle a un cliente determinado, buscan otros clientes que hayan asignado calificaciones similares a una gama similar de productos, y extrapolandesde allí.
El éxito de este enfoque depende vitalmente de la noción de similitud. La mayoría de los sistemas de recomendación utilizan una medida llamada similitud de coseno, que parece funcionar bien en la práctica. El año pasado, en la Conferencia sobre Sistemas de Procesamiento de Información Neural, los investigadores del MIT utilizaron una nuevamarco teórico para demostrar por qué, de hecho, la similitud del coseno produce tan buenos resultados.
Esta semana, en la misma conferencia, informan que han usado su marco para construir un nuevo algoritmo de recomendación que debería funcionar mejor que los que se usan hoy en día, particularmente cuando los datos de calificaciones son "escasos", es decir, cuando hayhay poca superposición entre los productos revisados y las calificaciones asignadas por diferentes clientes.
La estrategia básica del algoritmo es simple: cuando intente predecir la calificación de un producto por parte de un cliente, use no solo las calificaciones de personas con gustos similares, sino también las calificaciones de personas que son similares a esas personas, etc.
La idea es intuitiva, pero en la práctica, todo depende de la medida específica de similitud.
"Si somos realmente generosos, todos se parecerán efectivamente", dice Devavrat Shah, profesor de ingeniería eléctrica y ciencias de la computación y autor principal del artículo. "Por otro lado, si somos realmente estrictos, volvemos a mirar efectivamente a los vecinos más cercanos o, dicho de otro modo, cuando pasas de las preferencias de un amigo a un amigo de un amigo, cuál es el ruido introducido en el proceso y si existe una forma correcta de cuantificarese ruido para que equilibremos la señal que ganamos con el ruido que introducimos. Debido a nuestro modelo, sabíamos exactamente qué es lo correcto ".
todos los ángulos
Resulta que lo correcto es volver a usar la similitud de coseno. Esencialmente, la similitud de coseno representa las preferencias del cliente como una línea en un espacio de muy alta dimensión y cuantifica la similitud como el ángulo entre dos líneas.
Supongamos, por ejemplo, que tiene dos puntos en un plano cartesiano, el sistema de coordenadas bidimensional familiar del álgebra de la escuela secundaria. Si conecta los puntos al origen, el punto con coordenadas 0, 0,usted define un ángulo, y su coseno se puede calcular a partir de las coordenadas del punto.
Si un servicio de transmisión de películas tiene, por ejemplo, 5,000 títulos en su base de datos, entonces las clasificaciones que cualquier usuario ha asignado a un subconjunto de ellos definen un solo punto en un espacio de 5,000 dimensiones. La similitud del coseno mide el ángulo entre dosconjuntos de clasificaciones en ese espacio.
Sin embargo, cuando los datos son escasos, puede haber tan poca superposición entre las calificaciones de los usuarios que la similitud del coseno carece esencialmente de sentido. En ese contexto, es necesario agregar los datos de muchos usuarios.
El análisis de los investigadores es teórico, pero aquí hay un ejemplo de cómo su algoritmo podría funcionar en la práctica. Para cualquier cliente, seleccionaría un pequeño conjunto, digamos, cinco de aquellos clientes con la mayor similitud y promedio de cosenoluego, para cada uno de esos clientes, seleccionaría cinco clientes similares, promediaría sus calificaciones y doblaría ese promedio en el promedio acumulativo. Continuaría desplegándose de esta manera, acumulando un conjunto de calificaciones cada vez más completo, hastatenía suficientes datos para hacer una estimación razonable sobre la calificación del producto de interés.
Rellenar espacios en blanco
Para Shah y sus colegas --primer autor Christina Lee PhD '17, quien es postdoctorado en Microsoft Research, y dos de sus colegas de Microsoft, Christian Borgs y Jennifer Chayes-- idear dicho algoritmo no fue la parte difícil.El desafío era demostrar que funcionaría bien, y en eso se concentra el trabajo.
Imagine una gran cuadrícula 2D que mapea a todos los usuarios de un servicio de transmisión de películas con todos sus títulos, con un número en cada celda que corresponde a una película que un usuario determinado ha calificado. La mayoría de los usuarios han calificado solo un puñado depelículas, por lo que la mayor parte de la cuadrícula está vacía. El objetivo de un motor de recomendación es completar las celdas de la cuadrícula vacía con la mayor precisión posible.
Ordinariamente, dice Shah, un sistema de aprendizaje automático aprende dos cosas: las características del conjunto de datos que son útiles para la predicción y la función matemática que calcula una predicción a partir de esas características. A los efectos de predecir los gustos cinematográficos, las características útiles podríanincluir el género de una película, su desempeño en taquilla, la cantidad de nominaciones al Oscar que recibió, el éxito histórico de taquilla de sus protagonistas, su distribuidor o cualquier otra cantidad de cosas.
Cada uno de los clientes de un servicio de transmisión de películas tiene su propia función de valor: uno podría inclinarse a calificar una película mucho más si encaja en el género de acción y tiene un gran presupuesto; otro podría otorgar una calificación alta apelícula que recibió numerosas nominaciones al Oscar y tiene un pequeño distribuidor artístico.
Jugar las probabilidades
En el nuevo esquema analítico, "No aprendes características; no aprendes funciones", dice Shah. Pero los investigadores asumen que la función de valor de cada usuario permanece igual: el peso relativo que un usuario asigna,digamos, el género y el distribuidor no cambian. Los investigadores también suponen que la función de cada usuario está operando en el mismo conjunto de características de la película.
Esto, resulta, proporciona suficiente consistencia para que sea posible hacer inferencias estadísticas sobre la probabilidad de que las calificaciones de un usuario predigan las de otros.
"Cuando probamos una película, en realidad no sabemos cuál es su función, por lo que si quisiéramos predecir exactamente la función, no podríamos", dice Lee. "Pero si solo quisiéramos estimarla diferencia entre las funciones de los usuarios, podemos calcular esa diferencia "
Usando su marco analítico, los investigadores demostraron que, en casos de datos escasos, que describen la situación de la mayoría de los minoristas en línea, su algoritmo "vecino-vecino" debería producir predicciones más precisas que cualquier algoritmo conocido.
Sin embargo, la traducción entre este tipo de análisis algorítmico teórico y sistemas informáticos en funcionamiento a menudo requiere una ingeniería innovadora, por lo que el siguiente paso de los investigadores es tratar de aplicar su algoritmo a datos reales.
Fuente de la historia :
Materiales proporcionado por Instituto de Tecnología de Massachusetts . Original escrito por Larry Hardesty. Nota: El contenido puede ser editado por estilo y longitud.
Cite esta página :