Los sistemas de recomendación no tienen quizás gran fama pero hay muchas webs y servicios que los utilizan, entre ellos los gigantes Amazon e IMDB. A la hora de construir un sistema de recomendación se pueden emplear distintos tipos de motores de recomendación, entre los que los más usuales son los basados en contenido (que fueron los primeros), los basados en conocimiento (los más potentes pero a la vez de mayor complejidad) y los basados en filtrado colaborativo, que son los que más están triunfando en la actualidad, sobre todo en las redes y servicios sociales ya que pueden aprovechar el gran feedback de sus grandes comunidades de usuarios para construir algoritmos más potentes y refinados.
Por su parte Foursquare es la aplicación de check-ins para dispositivos móviles más popular del mercado. Sin embargo, la entrada de empresas tan potentes como Facebook y Google en este mercado de los check-ins con Facebook Places y Google Places (¿qué poca imaginación a la hora del branding, no?) parecía que iba a ser un golpe muy duro para una empresa (relativamente) pequeña. Por lo tanto, sus creadores, con Dennis Crawley al frente, se pusieron manos a la obra para sacar una versión 3.0 de su aplicación, que tenemos en nuestros smartphones desde hace unas semanas y que, entre otras muchas mejoras (realmente mola mucho), presenta la funcionalidad Explorar, que no es otra cosa que un sistema de recomendación.
La propia gente de Foursquare en su blog de engineering (muy recomendable siempre) ofrecen las guías maestras y algunas curiosidades de este potente sistema de recomendación (en el que se nota que han puesto mucho empeño y esperanzas) entre las que destaca lo siguiente:
-
El motor está basado en filtrado colaborativo de tus propios check-ins y los check-ins de tus amigos
-
Le añaden la característica de la geolocalización, algo primordial en una aplicación como esta
-
Para construir la matriz de similaridad de sitios emplean un cluster de 40 máquinas que consigue resolver 100 trillones (en cuentas yankees) de computaciones en apenas una hora. Brutal
-
El mayor reto para los desarrolladores fue el "comienzo en frio", es decir, que sitios recomendar al nuevo usuario que todavía no tiene muchos check-ins ni muchos amigos
-
No revelan como han resuelto este gran reto para cualquier sistema de recomendación colaborativo pero si dan pistas: seleccionar, por así decirlo, no los sitios más populares en cantidad de sino en calidad de los check-ins
En definitiva, un texto muy interesante tanto para aquellos interesados en los sistemas de recomendación de forma teórica como aquellos que están pensando implementar uno en sus webs o aplicaciones.
Vía | Foursquare ENG.