找回密码
 会员注册
查看: 12|回复: 0

基于时间加权的用户购买类目意愿计算

[复制链接]

7

主题

0

回帖

22

积分

新手上路

积分
22
发表于 2024-10-7 11:42:53 | 显示全部楼层 |阅读模式
文 | Jason on 大数据一、背景在 DMP 的人群画像或者商品画像等的应用中,有一类常见的打分需求:旨在基于一些 transactions,为两种关系打上一个归一化的分数。比如基于一个用户的购买商品行为对该用户购买类目意愿打分,该文章讨论如何在考虑时间因素的情况下给用户打分。二、要求transaction 发生的时间越近,其所占的比重越大,且减小的速度越来越慢。所有分数都需要正则化到 0-100 区间。三、数据形式输入的数据(表示某人某天买了某个类目多少单):用户 id、日期、类目 id、订单数最终产出数据:用户 id 对每个类目的购买意愿分三、实现方式1) 要求 transaction 发生时间和现在的距离越小,这条记录越大,就像一个热门事件,会被人慢慢遗忘,且后续遗忘的速度越来越慢。基于这个需求,很容易让人想到基于热力学的牛顿冷却定律:物体的冷却速度,与当前温度与室温之间的温差成正比。换成数学语言表达:其中H为室温,初始时刻的温度为:其中α>0为与物体有关的常数,为负数表示当物体温度高于室温的时候,物体温度会下降,但当物体温度低于室温的时候会上升。对于上个公式,两边取积分:eg: 人体在死亡后,温度调节功能随即消失,由此正常温度(假设37)与室温比较,利用牛顿冷却定律可以获得死亡时间。假设某冬天早上,接到报警,街头发现流浪汉尸体,6:30AM测量其体温为18度,到了7:30AM,其体温已经下降为16度。预备知识完了,现在我们回到业务:假设transaction发生当天的热度为100度 而180天之前的transaction我们假设降为1度,又假设室温为0度,可以求出α:2) 对分数(上面的sum_score)做归一化。假设对于sum_score,有最大值和最小值,如果差距过于大,会先对其做对数处理:图像为:该函数以原点为中心,将实数集映射到值(0,1)且两边都是开区间。我们希望通过平移和拉伸,对于上面的 [ -15,2 ] 的区间映射做映射:符合要求,然后 0-1 的分数再乘以 100,将其转成 0-100 的归一分数。扩展阅读大数据开发平台(Data Platform)在有赞的最佳实践有赞数据仓库元数据系统实践How we redesigned the NSQ - 其他特性及未来计划HBase 写吞吐场景资源消耗量化分析及优化有赞大数据平台安全建设实践Flink 在有赞实时计算的实践SparkSQL 在有赞的实践Druid 在有赞的实践实时计算在有赞的实践-效率提升之路DataX在有赞大数据平台的实践Flink 滑动窗口优化-The End-Vol.218有赞技术团队为 442 万商家,150 个行业,330 亿电商交易额提供技术支持微商城|零售|美业 | 教育微信公众号:有赞coder ? ?微博:@有赞技术技术博客:tech.youzan.comThe bigger the dream,?the more important the team.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2025-1-11 02:36 , Processed in 1.552161 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表