用户画像

用户画像简介

用户画像即用户信息标签化,是定向广告投放与个性化推荐的前置条件,服务于精细化运营。
按应用场景一般分为用户人口属性画像、用户个性化标签、各业务线用户画像、用户偏好画像和用户群体属性画像等。

  1. 用户人口属性画像
    用户在平台注册账号或填写收货地址时会填写一些基础信息,如性别、年龄、所在城市、行业、手机号、身份证号等。
  2. 用户个性化(行为)标签
    用户在产品上的浏览、搜索、关注、收藏、加入购物车、付款、评价等行为会带来一系列标签。根据这些标签的发生时间、行为次数、行为类型能够统计出用户与某些标签之间联系的紧密程度。
  3. 各业务线用户画像
    针对各业务线的业务特征,设计一套标签用于监控用户在该业务线上的操作行为。例如针对资讯版块,可以以用户单击资讯内各子版块TAB的次数、在各子版块的浏览时长、在各子版块内的收藏文章数等维度进行画像标签的设置。
  4. 用户偏好画像
    在用户个性化标签的基础上,根据业务规则设定用户各种行为类型的权重、时间衰减方式、标签权重,并通过基于物品相关的协同过滤算法建立用户偏好画像的数据表。
  5. 群体属性画像
    主要讲解如何根据业务规则对用户进行聚类。一方面可以根据用户注册账号填写的性别、年龄、省份等基础信息将用户按性别、年龄段、区域等进行划分;另一方面可以根据用户购买商品的频率、价格按消费能力属性、行为属性进行划分。
    用户群体属性画像可应用在两个方面:一方面,在冷启动阶段,由于缺少更细粒度的用户个性化标签,可以根据用户群体属性画像给用户推荐该群体所偏好的商品;另一方面,在向用户个性化推荐商品时,可根据用户所在群体偏好的物品种类向用户推荐。

用户画像数据开发

  1. 用户属性画像
    用户属性表存储用户基础信息,如性别、年龄、地址、累计消费金额、累计消费次数、常用登录地址(如取登录比例前三的城市)等信息。具体包含的指标如下:
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 '用户画像-用户属性画像';
  1. 用户行为画像
  • 用户行为标签表记录了用户在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 '用户画像-用户行为标签权重表';
  1. 用户偏好画像。
    用户偏好标签表在用户行为标签表的基础上进一步开发,通过基于物品的协同过滤方法(余弦相似度函数:相关性=标签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 '用户画像-用户偏好画像表';
  1. 用户群体偏好画像
    户群体偏好表在用户偏好标签表的基础上开发,按照用户年龄段做聚类划分,计算每个年龄段用户的偏好标签。
posted @ 2020-05-16 00:08  蔓越煤  阅读(498)  评论(0)    收藏  举报