用户画像
用户画像简介
用户画像即用户信息标签化,是定向广告投放与个性化推荐的前置条件,服务于精细化运营。
按应用场景一般分为用户人口属性画像、用户个性化标签、各业务线用户画像、用户偏好画像和用户群体属性画像等。
- 用户人口属性画像
用户在平台注册账号或填写收货地址时会填写一些基础信息,如性别、年龄、所在城市、行业、手机号、身份证号等。

- 用户个性化(行为)标签
用户在产品上的浏览、搜索、关注、收藏、加入购物车、付款、评价等行为会带来一系列标签。根据这些标签的发生时间、行为次数、行为类型能够统计出用户与某些标签之间联系的紧密程度。

- 各业务线用户画像
针对各业务线的业务特征,设计一套标签用于监控用户在该业务线上的操作行为。例如针对资讯版块,可以以用户单击资讯内各子版块TAB的次数、在各子版块的浏览时长、在各子版块内的收藏文章数等维度进行画像标签的设置。 - 用户偏好画像
在用户个性化标签的基础上,根据业务规则设定用户各种行为类型的权重、时间衰减方式、标签权重,并通过基于物品相关的协同过滤算法建立用户偏好画像的数据表。

- 群体属性画像
主要讲解如何根据业务规则对用户进行聚类。一方面可以根据用户注册账号填写的性别、年龄、省份等基础信息将用户按性别、年龄段、区域等进行划分;另一方面可以根据用户购买商品的频率、价格按消费能力属性、行为属性进行划分。
用户群体属性画像可应用在两个方面:一方面,在冷启动阶段,由于缺少更细粒度的用户个性化标签,可以根据用户群体属性画像给用户推荐该群体所偏好的商品;另一方面,在向用户个性化推荐商品时,可根据用户所在群体偏好的物品种类向用户推荐。

用户画像数据开发
- 用户属性画像
用户属性表存储用户基础信息,如性别、年龄、地址、累计消费金额、累计消费次数、常用登录地址(如取登录比例前三的城市)等信息。具体包含的指标如下:
create table dwd.user_profile_basic_informatin -- 用户属性表
(
user_id string comment '用户编码',
user_name string comment '姓名',
gender_id int comment '性别',
create_date timestamp comment '注册日期',
province_name string comment '省份',
city_name string comment '城市',
mail_id string comment '邮箱地址',
call_phone_id int comment '电话',
first_order_time timestamp comment '首次购买时间',
last_order_time timestamp comment '最近一次消费时间',
first_order_ago int comment '首次消费时间距今日期',
last_order_ago int comment '最近一次消费距今日期',
max_order_amt double comment '最大消费金额',
min_order_amt double comment '最小消费金额',
sum_order_amount int comment '累计消费次数',
sum_order_cnt double comment '累计消费金额',
city_ratio string comment '常登录地址',
)
comment '用户画像-用户属性画像';
- 用户行为画像
- 用户行为标签表记录了用户在Web/App端浏览、评论、收藏、取消收藏、分享、购买、放入购物车等行为所带来的标签、行为发生的时间、行为的类型、行为次数等以“日”为粒度的明细数据。对应的指标如下:
create table dwd.persona_user_tag_relation_public --用户行为标签表
(
user_id string comment '用户编码',
tag_id string comment '标签id',
tag_name string comment '标签名称',
cnt int comment '行为次数',
date_id timestamp comment '行为日期',
tag_type_id int comment '标签类型',
act_type_id int comment '行为类型',
)
comment '用户画像-用户行为标签表';
-
用户行为标签权重表在行为标签表基础上进一步通过用户行为类型、行为时间、行为次数,并结合TF-IDF算法计算出该标签的权重,最终计算出与该标签对应的权重大小(权重值=行为类型权重×时间衰减×用户行为次数×TF-IDF计算标签权重)。
- 行为类型权重,行为类型权重的值由运营人员或数据分析人员主观给出。
- TF-IDF算法
使用TF-IDF的方法来表示标签(tag,T)和用户(user,P)之间的关系:其中w(P,T)表示一个标签T被用于标记某个用户P的次数,TF(P,T)表示这个标记次数在所有标记用户P的标签中所占比例(即:标签T标记用户P的次数/用户P中所有标签标记的次数和)。

IDF(P,T)表示标签T的稀缺程度,即这个标签在全体用户的所有标签中出现的概率。对一个标签T来说,如果它本身出现的概率就比较小,而确被用来标记用户P,这会使得用户P与标签T之间的关系更加紧密(即:标签T标记所有用户的次数/所有标签标记所有用户的次数和)。

这样,用户P和标签T之间的关系系数为TF(P,T)和IDF(P,T)的乘积,公式为:rel(P,T)=TF(P,T)×IDF(P,T) - 时间衰减,F(t)=初始温度×exp(-冷却系数×间隔的时间),例如指定45分钟后物体温度为初始温度的0.5,即0.5=1×exp(-α×45),求得α=0.1556。
用户行为标签权重对应的指标如下:
create table dwd.person_user_tag_relation_weight -- 用户行为标签权重表
(
user_id string comment '用户编码',
tag_id string comment '标签id',
tag_name string comment '标签名称',
cnt int comment '行为次数',
tag_type_id int comment '标签类型',
date_id date comment '行为日期',
act_weight int comment '权重值'
)
comment '用户画像-用户行为标签权重表';
- 用户偏好画像。
用户偏好标签表在用户行为标签表的基础上进一步开发,通过基于物品的协同过滤方法(余弦相似度函数:相关性=标签A、标签B共有人数/sqrt(有标签A用户数×有标签B用户数))找出用户偏好的书籍标签,做用户的个性化内容推荐(推荐值=行为标签权重*相关性),具体流程如下:

用户偏好画像表对应的指标如下:
create table dwd.user_prefer_peasona_tag --用户偏好画像表
(
user_id string comment '用户编码',
tag_id string comment '标签id',
tag_name string comment '标签名称',
recommend string comment '推荐值'
)
comment '用户画像-用户偏好画像表';
- 用户群体偏好画像
户群体偏好表在用户偏好标签表的基础上开发,按照用户年龄段做聚类划分,计算每个年龄段用户的偏好标签。

浙公网安备 33010602011771号