速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

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

  • 2019-09-27
  • 本文字数:928 字

    阅读完需:约 3 分钟

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

一、背景

在 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 的归一分数。


本文转载自公众号有赞 coder(ID:youzan_coder)


原文链接


https://mp.weixin.qq.com/s?__biz=MzAxOTY5MDMxNA==&mid=2455760033&idx=1&sn=cda32ddd58fea2a18e2d4ec9cb88f86b&chksm=8c686a84bb1fe39246da325ff19d7fdb66c947ee2ec061daf86e1f203d3e15f09eb3396e16f1&scene=27#wechat_redirect


2019-09-27 08:001229

评论

发布
暂无评论
发现更多内容

京东云PostgreSQL在GIS场景的应用分享

京东科技开发者

postgresql 检索 jieba 京东云 信息检索

3. Docker镜像详解

鱼书

c++ 8月月更

电商出海,独立站小程序化能更好的连接人和应用

Speedoooo

小程序 移动开发 DTC 独立站 移动框架

快速开始安装部署ArkID构建IDaaS,轻松拥有标准化用户身份体系

龙归科技

单点登录 Idaas ArkID

【Django | allauth】登录_注册_邮箱验证_密码邮箱重置

计算机魔术师

8月月更

Flomesh 发布 Pipy 0.50.0

Flomesh

拔掉电源会怎样?GaussDB(for Redis)双活让你有备无患

科技怪咖

GaussDB(for Cassandra)新特性发布:Lucene二级索引,让复杂查询更智能

科技怪咖

vivo前端智能化实践:机器学习在自动网页布局中的应用

vivo互联网技术

机器学习 前端 网页布局

【小程序项目开发--京东商城】uni-app之自定义搜索组件(上)-- 组件UI

计算机魔术师

8月月更

列存数据仓库怎样做才能更高效

jiangxl

前后端数据接口协作提效实践

百度Geek说

Java 数据 企业号九月金秋榜

实战 | 电商业务的性能测试(一): 必备基础知识

霍格沃兹测试开发学社

STM32+M5311对接 OneNET 项目记录

矜辰所致

stm32 8月月更 M5311

干货 | Dubbo 接口测试原理及多种方法实践总结

霍格沃兹测试开发学社

基于 JMeter 完成 Dubbo 接口的测试

霍格沃兹测试开发学社

【高并发】亿级流量场景下如何为HTTP接口限流?看完我懂了!!

冰河

并发编程 多线程 高并发 协程 异步编程

科普达人丨一图看懂安全组

阿里云弹性计算

防火墙 安全组 ECS

2. 字符串、向量和数组

鱼书

c++ 操作系统 8月月更

日拱算法:什么是“煎饼排序”?

掘金安东尼

算法 8月月更

BaaS助力区块链技术开启下一轮应用热潮

旺链科技

区块链 产业区块链 企业号九月金秋榜 BaaS平台

DevSecOps 安全即代码基础指南

SEAL安全

DevOps DevSecOps 云安全 DevSecOps和敏捷

运维理想和现实,你是?

嘉为蓝鲸

运维 AIOPS 故障处理 补丁

【小程序项目开发-- 京东商城】uni-app之自定义搜索组件(中)-- 搜索建议

计算机魔术师

8月月更

HMS Core基于地理位置请求广告,流量变现快人一步

HarmonyOS SDK

广告sdk

开源一夏 | count(列名)、 count(常量)、 count(*)区别

六月的雨在InfoQ

开源 count MySQL 数据库 MySQL InnoDB 8月月更

科普达人丨一图看懂镜像

阿里云弹性计算

镜像 ECS

给ShardingSphere提了个PR

艾小仙

Java GitHub 程序员 shardingsp

锁分类

TimeFriends

8月月更

阿里云高庆瑞:如何快速搭建低成本高弹性的云上应用

阿里云弹性计算

应用 自动化运维 CloudOps 弹性伸缩

从项目经理过渡到ScrumMaster的三个技巧

ShineScrum

Scrum 敏捷 ScrumMaster 项目经理

基于时间加权的用户购买类目意愿计算_文化 & 方法_Jason_InfoQ精选文章