用户画像,即用户信息标签化,通过收集用户的社会属性、消费习惯、偏好特征等各个维度的数据,进而对用户或者产品特征属性进行刻画,并对这些特征进行分析、统计,挖掘潜在价值信息,从而抽象出用户的信息全貌,如图1所示。
▲图1 某用户标签化
用户画像可看作企业应用大数据的根基,是定向广告投放与个性化推荐的前置条件,为数据驱动运营奠定了基础。由此看来,如何从海量数据中挖掘出有价值的信息越发重要。
大数据已经兴起多年,其对于互联网公司的应用来说已经如水、电、空气对于人们的生活一样,成为不可或缺的重要组成部分。从基础设施建设到应用层面,主要有数据平台搭建及运维管理、数据仓库开发、上层应用的统计分析、报表生成及可视化、用户画像建模、个性化推荐与精准营销等应用方向。
很多公司在大数据基础建设上投入很多,也做了不少报表,但业务部门觉得大数据和传统报表没什么区别,也没能体会大数据对业务有什么帮助和价值,究其原因,其实是“数据静止在数据仓库,是死的”。
而用户画像可以帮助大数据“走出”数据仓库,针对用户进行个性化推荐、精准营销、个性化服务等多样化服务,是大数据落地应用的一个重要方向。数据应用体系的层级划分如图2所示。
▲图2 数据应用体系的层级划分
用户画像建模其实就是对用户“打标签”,从对用户打标签的方式来看,一般分为3种类型:①统计类标签;②规则类标签;③机器学习挖掘类标签。
下面我们介绍这3种类型的标签的区别:
1. 统计类标签
这类标签是最为基础也最为常见的标签类型,例如,对于某个用户来说,其性别、年龄、城市、星座、近7日活跃时长、近7日活跃天数、近7日活跃次数等字段可以从用户注册数据、用户访问、消费数据中统计得出。该类标签构成了用户画像的基础。
2. 规则类标签
该类标签基于用户行为及确定的规则产生。例如,对平台上“消费活跃”用户这一口径的定义为“近30天交易次数≥2”。在实际开发画像的过程中,由于运营人员对业务更为熟悉,而数据人员对数据的结构、分布、特征更为熟悉,因此规则类标签的规则由运营人员和数据人员共同协商确定;
3. 机器学习挖掘类标签
该类标签通过机器学习挖掘产生,用于对用户的某些属性或某些行为进行预测判断。例如,根据一个用户的行为习惯判断该用户是男性还是女性、根据一个用户的消费习惯判断其对某商品的偏好程度。该类标签需要通过算法挖掘产生。
在项目工程实践中,一般统计类和规则类的标签即可以满足应用需求,在开发中占有较大比例。机器学习挖掘类标签多用于预测场景,如判断用户性别、用户购买商品偏好、用户流失意向等。一般地,机器学习标签开发周期较长,开发成本较高,因此其开发所占比例较小。
搭建一套用户画像方案整体来说需要考虑8个模块的建设,如图3所示。
▲图3 用户画像主要覆盖模块
用户画像基础:需要了解、明确用户画像是什么,包含哪些模块,数据仓库架构是什么样子,开发流程,表结构设计,ETL设计等。这些都是框架,大方向的规划,只有明确了方向后续才能做好项目的排期和人员投入预算。这对于评估每个开发阶段重要指标和关键产出非常重要。数据指标体系:根据业务线梳理,包括用户属性、用户行为、用户消费、风险控制等维度的指标体系。标签数据存储:标签相关数据可存储在Hive、MySQL、HBase、Elasticsearch等数据库中,不同存储方式适用于不同的应用场景。标签数据开发:用户画像工程化的重点模块,包含统计类、规则类、挖掘类、流式计算类标签的开发,以及人群计算功能的开发,打通画像数据和各业务系统之间的通路,提供接口服务等开发内容。开发性能调优:标签加工、人群计算等脚本上线调度后,为了缩短调度时间、保障数据的稳定性等,需要对开发的脚本进行迭代重构、调优。作业流程调度:标签加工、人群计算、同步数据到业务系统、数据监控预警等脚本开发完成后,需要调度工具把整套流程调度起来。用户画像产品化:为了能让用户数据更好地服务于业务方,需要以产品化的形态应用在业务上。产品化的模块主要包括标签视图、用户标签查询、用户分群、透视分析等。用户画像应用:画像的应用场景包括用户特征分析、短信、邮件、站内信、Push消息的精准推送、客服针对用户的不同话术、针对高价值用户的极速退货退款等VIP服务应用。
开发画像后的标签数据,如果只是“躺在”数据仓库中,并不能发挥更大的业务价值。只有将画像数据产品化后才能更方便业务方的使用。这里简要介绍用户画像产品化后,主要可能涵盖到的功能模块,以及这些功能模块的应用场景。
画像产品按常见的功能来看,主要包括标签视图与即时查询,用户分群,用户人群透视分析,对用户从事件、留存、漏斗、分布等多维度展开的深入交互式分析等模块。下面详细介绍画像的产品形态。
1. 标签视图与查询
标签视图与查询功能主要面向业务人员使用,如图4所示。
▲图4
在标签视图版块中,层级化地展示了目前已经上线使用的全部用户标签。用户可以层级化地通过点击标签,查看每个标签的详细介绍。
在图4中,当点击“用户属性”这个一级类目,可进入到“自然性别”“购物性别”“用户价值”等二级类目,点击“自然性别”二级类目,可看到展开的“男性”“女性”三级标签,进一步点击三级标签“男性”或是“女性”,可以进入查看该标签的详细介绍,如图5所示。
▲图5
在该标签详情页中,可以查看人口属性这一个类目下面的各个标签覆盖用户量情况。
每天通过对标签的覆盖用户量进行监控,可以作为预警使用。例如:某天某个标签的覆盖用户量与前一天相比出现了很大比例的波动,需要排查该标签当日ETL作业是否出现异常或是否因业务上的操作导致标签量级的波动。
在标签查询模块中,通过输入用户对应的userid或cookieid,可以查看该用户的属性信息、行为信息、风控属性等多维度的信息,从多方位了解一个用户的特征。
2. 用户人群功能
用户人群功能主要面向业务人员使用。产品经理、运营、客服等业务人员在应用标签时,可能不仅仅只查看某一个标签对应的人群情况,更多地可能需要组合多个标签来满足其在业务上对人群的定义。
例如:组合“近30日购买次数”大于3次和“高活跃”“女性”用户这三个标签进行定义目标人群,查看该类人群覆盖的用户量,以及该部分人群的各维度特征。下面介绍产品上的实现方式。
在“用户人群”版块下,点击“新建人群”或编辑之前已添加的分组(如图6),进入详情页可自定义涵盖某些标签的人群(如图7)。
▲图6 用户自定义分群版块
▲图7 用户自定义分群编辑
在自定义编辑用户分群时,对于有统计值类型的标签,可以自定义筛选该标签的取值范围,如上图中“近30日购买次数”标签,业务人员可筛选该标签的数值。对于分类型标签,如上图中“活跃度”标签,业务人员选中该标签即可圈出包含该标签的用户。
“人群名称”和“人群描述”表单用于业务人员描述该人群在业务上的定义,方便后续继续查看、应用该人群。