一种思想

近期,在进行关联商品推荐功能模块的开发过程中,学到了一种“从小到大”的筛选思想。

例如,希望在商品详情页推送5个相关的商品,判断“关联度”的因素简化为三个:产品分类,服务分类,标准分类。这三个分类各占一定的分数。得分最高的5个相关商品将在推荐位进行展示。

在最开始的时候,我是打算用“从大到小”的方式进行,先根据其中一个因素(例如产品分类)查出部分商品,给予这些商品分数(例如10分)。

之后再从这些商品中查找满足第二个因素(服务分类)的商品,再加上一定分数(例如8分)。

最后,再从过滤的商品中找出满足第三个因素(标准分类)的商品,加上分数(例如5分)。

然后进行排序,选取得分最高的前5个商品。

 

但这样会出现一个问题,如果一开始的基数很大,那么系统开销就会上升,而且很多由于只去前五商品,会导致很多商品查不出来但不被需要,造成浪费。

后来向人请教后,换了一种“从小到大”的方式进行。先查同时满足三因素(产品、服务、分类)的商品,如果数量够了,则直接任意取5个。如果数量不足,则减少条件(例如保留产品和服务),此时查出来的总数,如果>=5,则取得分最高的5个,如果不够,则再次减少条件。

这样的好处就是,基数小,浪费少。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值