Quiero agregar una función de recomendación a un sistema de gestión de documentos . Es un servidor en el que se almacenan la mayoría de los documentos de la empresa. Los empleados navegan por la interfaz web y hacen clic para descargar (o leer en línea) los documentos que desean.
Cada empleado solo tiene acceso a un subconjunto de todos los documentos:
Mi objetivo : recomendar a un empleado los documentos abiertos recientemente por sus compañeros de equipo, o la hoja de cálculo que sirve como anexo al documento que acaban de abrir, o cualquier cosa que quieran leer.
Hay muchos motores de recomendación para los datos disponibles públicamente (todos los usuarios de Netflix pueden ver todas las películas), pero la situación aquí es especial: cada empleado solo tiene permiso para una fracción de todos los documentos, mientras que en Netflix cualquier usuario tiene acceso a todas las películas.
Ejemplo : Empleado1 puede leer el Documento A pero no el Documento B. Employee2 puede leer ambos y Employee3 no puede leer ninguno.
Por supuesto, no debo recomendar a un empleado documentos a los que no tenga acceso. Además, creo que debería considerar la popularidad de un documento solo en el contexto de los empleados que tienen acceso a él. Para complicar aún más las cosas, los empleados a veces pasan de un proyecto a otro, lo que afecta los documentos a los que tienen acceso.
- ¿Hay un nombre para este tipo de problema?
- ¿Se puede reducir sin pérdida de precisión / eficiencia a un tipo de problema más común?
- Si no, ¿qué enfoque funcionaría bien para este tipo de problema?
Nota: Un motor de recomendación similar a Netflix no es lo suficientemente bueno. Un documento con 50 vistas debe ser destacado si solo 10 empleados (incluido yo) tienen acceso a él, pero no destacado si 100000 empleados tienen acceso a él.
En caso de que sea necesario, aquí hay algunos datos específicos: la compañía promedio tiene 1000 empleados, aproximadamente 10000 documentos, un empleado hace clic en aproximadamente 5 documentos por día. Cada proyecto tiene un promedio de 10 empleados que tienen acceso a él y tiene alrededor de 100 documentos. Cada empleado trabaja en un promedio de 5 proyectos en paralelo.
fuente
Eche un vistazo a Minería de conjuntos de datos masivos, pág. 328, que eventualmente lo conducirá a SVD que se usa comúnmente en sistemas de recomendación.
fuente