怎样在产品设计前,预估一个推荐算法的好坏

设计阶段侧重数据分析(比如是否要用用户的实时反馈来做推荐策略,比如你刚刚看了几件甜美系的衣服,是不是马上甜美系的衣服在推荐资源位下就要多一点)(见下图的数据分析);看是否有强规律性,做推荐的效果会很好,如果没有发现强规律性,那可以结合其它类似/相关的业务做借鉴(即专家意见和经验)。
如果是从设计进入了初期推荐开发阶段,那一般是离线评测为主,收集数据,训练模型,并使用相关指标评测,并与基线对比(基线来自于近似的计算或人工推算)。
线上就是使用ABtest
怎样在产品设计前,预估一个推荐算法的好坏
【怎样在产品设计前,预估一个推荐算法的好坏】

■网友
好坏是和原来算法对比出来的,业界常用的就是A/B Testing。也就是@罗磊所说,同时开启两套算法进行测试。在前不久的#百度技术沙龙#上,人人网的张叶银分享到:评估好友推荐的标准是,是否添加了更多的好友。 “针对推荐系统的评测,主要指准确度、覆盖率、多样性和新颖性等”。这里有干货http://www.infoq.com/cn/news/2012/01/baidu-salon-22th-summary
■网友
必须上线评估, 开始用少部分流量做a/b testing, 没大问题再放大流量,只到拿到一个稳定的测试结果。
■网友
一个简单的办法是对用户进行抽样,比如对1%的用户使用新算法,然后衡量新算法的指标,与已有算法对比
■网友
在同样的数据面前,还是能够区分出算法的优劣的。 一般都是通用的数学方法加上数据本身和受众群体的特点来加入相应的调节因子来平衡推荐结果。对于高维数据如果精度要求过高,运算太过复杂,就无法满足生产系统的实时性要求。
■网友
题外话:一个推荐系统会或多或少会影响用户倾向。那么使用这个系统的用户行为数据对其它的推荐系统进行评估公有不公平吧。。。题外话?


    推荐阅读