作者: 超人赵,人工智能爱好者社区专栏作者

知乎:

https://www.zhihu.com/people/chao-ji-sai-ya-ren/posts

传送门: http://www.6aiq.com/article/1537330058545

一、用户画像—计算用户偏好标签

下面介绍如何计算用户的偏好标签。

在上一篇写用户画像的文章 “用户画像—打用户行为标签”中,主要讲了如何对用户的每一次操作行为、业务行为进行记录打上相应的标签。在这篇博客中,主要讲如何对这些明细标签进行计算以及偏好的产品、内容的类目。

关于用户标签权重的计算,在这篇文章里面讲过了:

用户画像之标签权重算法

这里再详细介绍一下:

用户标签权重 = 行为类型权重 × 时间衰减 × 用户行为次数 × TF-IDF计算标签权重

公式中各参数的释义如下:

  • 行为类型权重:用户浏览、搜索、收藏、下单、购买等不同行为对用户而言有着不同的重要性,一般而言操作复杂度越高的行为权重越大。该权重值一般由运营人员或数据分析人员主观给出;

  • 时间衰减:用户某些行为受时间影响不断减弱,行为时间距现在越远,该行为对用户当前来说的意义越小;

  • 行为次数:用户标签权重按天统计,用户某天与该标签产生的行为次数越多,该标签对用户的影响越大;

  • TF-IDF计算标签权重:每个标签的对用户的重要性及该标签在全体标签中重要性的乘积得出每个标签的客观权重值;

为计算用户偏好标签,需要在用户行为标签的基础上计算用户行为标签对应的权重值,而后对同类标签做权重汇总,算出用户偏好的标签。关于用户行为标签如何打,在这篇博客里面有介绍过了

用户画像—打用户行为标签

下面介绍如何在用户行为标签表的基础上加工用户偏好标签:

1、用户标签权重表结构设计

字段定义:

  • 用户id(user_id):用户唯一id;

  • 标签id(tag_id):图书id;

  • 标签名称(tag_name):图书名称;

  • 用户行为次数(cnt):用户当日产生该标签的次数,如用户当日浏览一本图书4次,则记录4;

  • 行为日期(date_id):产生该条标签对应日期;

  • 标签类型(tag_type_id):在本案例中通过与图书类型表相关联,取出每本图书对应的类型,如《钢铁是怎么炼成的》对应“名著”;

  • 用户行为类型(act_type_id):即用户的购买、浏览、评论等操作行为,在本例中通过预设数值1~7来定义用户对应的行为类型。1:购买行为,2:浏览行为,3:评论行为,4:收藏行为,5:取消收藏行为,6:加入购物车行为,7:搜索行为;

2、在用户行为标签基础上加工权重表

加工标签权重表时,需要根据用户不同行为对应的权重建立一个权重维表:

向维表中插入数据�