我想向文档管理系统添加推荐功能。它是一台用于存储大多数公司文档的服务器。员工浏览Web界面,然后单击以下载(或在线阅读)他们想要的文档。
每个员工只能访问所有文档的一部分:
我的目标:向员工推荐其队友最近打开的文档,或者作为他们刚刚打开的文档的附件的电子表格,或者他们可能想要阅读的任何内容。
有许多公开数据的推荐引擎(所有Netflix用户都可以观看所有电影),但是这里的情况很特殊:每个员工只拥有全部文档的一小部分的权限,而在Netflix中,任何用户都可以访问所有电影。
示例:Employee1可以读取DocumentA,但不能读取DocumentB。Employee2可以读取,而Employee3则不能读取。
当然,我不能向员工推荐她/他无权访问的文档。此外,我想我应该仅在有权访问文档的员工的背景下考虑文档的普及程度。为了使事情变得更加复杂,员工有时会从一个项目转移到另一个项目,这会影响他们可以访问的文档。
- 这种问题有名字吗?
- 能否在不降低精度/效率的情况下将其减少到更常见的问题?
- 如果没有,哪种方法对这种问题会很好?
注意:类似Netflix的推荐引擎还不够好。如果只有10名员工(包括我在内)可以访问,则具有50个视图的文档应突出显示,而如果有100000名员工可以访问,则不应突出显示。
如果需要,这里有一些具体的数据:每个公司平均有1000名员工,大约10000个文档,一个员工每天点击大约5个文档。每个项目平均有10名员工可以访问它,并且有大约100个文档。每个员工平均并行进行5个项目。