作者:友盟+数据科学家 杨玉莲
人群细分是数据分析师们进行用户运营最常用的数据分析方法之一。通过人群细分,可以快速了解产品的核心受众,进而得出洞察结论,指导优化运营策略。很多时候,人群细分之后,分析人员还会进一步分析不同人群在产品核心指标上面的表现差异,从而发现问题并进行优化。
从技术视角,用户分群的方式主要有两种:基于规则的分群方法 (Rule-based Segmentation)和基于算法的分群方法(ML-based Segmentation)。前者主要适用于业务规则确定,分群采用的用户特征维度单一的场景,而后者主要用于用户特征维度高,人工无法设定合理分群规则的场景。
从业务视角,分析师或者运营人员需要考虑的更多是要基于哪些特征维度来对用户进行分群。这往往跟要分析的问题息息相关。常见的用户分群维度包括如下几种:
· 基于人口属性的用户分群
· 基于地域属性的用户分群
· 基于渠道来源的用户分群
· 基于用户生命周期的分群
然而,在实际应用中,我们也经常通过用户使用的设备品牌,机型,用户使用产品的版本,在产品中的高频行为来对用户进行分群。
以基于人口属性的用户分群方法为例,我们主要考虑用户的年龄,性别,学历,职业,收入,婚育状态等属性。这些信息可以在用户第一次进入产品页面时或者通过在线问卷调查的方式收集。但随着用户的个人信息安全意识越来越强,通过产品页面或问卷调查收集的用户信息存在不精确甚至缺失的问题。这时候,就需要通过数据挖掘的手段对用户的人口属性信息进行预测。以性别预测为例,基本的操作步骤如下:!
其中特征加工阶段选择什么样的特征来建模,决定了最终模型预测效果的上限。比如,对于性别预测来讲,观看视频的行为特征基本是没用的,但浏览了美妆页面的行为就是一个非常有用的特征。有了用户的人口属性,最常见的人群细分手段是基于人群属性的某一个维度,比如年龄段,进行精确的人群切分(下图)。
但是基于一维属性的人群细分有一个非常大的缺点:无法看到立体的用户分群情况。于是我们有了基于二维属性的人群细分方法。针对属性的不同取值类型 - 离散型和连续型,人群的细分方法会有所不同。对于离散型的属性,可以直接通过属性值组合的方式进行人群细分,如下图一,通过性别和生命周期阶段可以将人群分为8个子群,我们可以看到主要的人群集中在活跃人群和新增女性,同时男性转化与流失人群占比也较高;对于连续型的属性,则需选定每个维度的切分点,然后在二维平面上将人群切成对应的不同分组。以下图二为例,可以看到人群大部分都集中在二维平面的第一象限,在其他象限分别有一个离散的点。!
基于二维属性的人群细分方法本质上是基于一维属性的人群细分方法的扩展。以此类推,我们也有基于三维
属性的人群细分方法,大家耳熟能详的RFM人群分层模型就是属于这一类。
以上介绍的人群细分方法,在人群属性值比较多或者维度较高的情况下,可扩展性会受到严重挑战。想象一下,人群的属性有N维,假设每一维有两个离散的取值,如果我们按照这些取值的组合对人群做细分,就会有2的N次方个用户群体。随着N的增加,人群数也会指数级地增长,最终人群细分就会变成超级细分,细分的结果也就很难分析出有价值的洞见。在这种情况下,如何快速地找出所有用户中的典型人群,就变得有挑战了。
具体的挑战在于:1 、如何基于高维或者多属性值特征快速定位出核心人群 2 、如何确认核心人群的关键属性。要解决这两个挑战,非数据挖掘算法莫属了。在友盟+,我们探索了两种基于算法的人群细分方法,均取得了不错的效果。
其一是基于决策树模型的方法。这种方法主要用于人群特征维度低,但是特征取值比较多的场景。先看一下我们的结果,然后我来解释具体的原理。
(图片来源:友盟+U--APP用户洞察)
我们可以看到,跟大盘相比,我们要分析的人群的显著特征之一是地域集中在一线城市。其中年龄25-39岁和男性这两个特征尤为显著,其人群数量占整体的39%。整个过程通过决策树算法全自动化生成,无需人工干预。相比之下,如果是用前面讲述的方法从城市等级(6个取值),年龄段(6个取值),性别(2个取值)这三个维度对用户分群,我们会生成6*6*2=72个人群,分析72个人群并从中找出核心人群不仅费时,还费力。
我们是怎么做到全自动化地对以上人群进行细分的呢?这里我们采用了决策树的思维, 通过在每一层基于信息增益选择一个最优的切分维度和分隔点,将与大盘人群差异最大的群组区分出来。这种方法也适用于特征维度高于3的人群细分问题。
当特征维度高于3的时候,我们可以通过控制树的高度,来控制决策数优先选出的最显著的特征数,最后通过TGI来量化特征的显著性。
另一种人群细分的方法是基于聚类(clustering)的方法。这种方法适用于用户特征维度比较高的场景。比如,在我们给客户做的一个分群服务中,客户需要基于用户的人口属性,手机特征(品牌,机型,屏幕大小,硬件参数),以及用户的APP使用兴趣来进行人群细分。
这时候,前面的任意一种方法都不管用了,必须求助于更复杂的技术手段:聚类分析。以下是基于聚类方法进行用户分群的一般步骤:
其中第一,二,五步的工作是与人群细分的业务场景紧密相关的三个步骤。我们能获得多少的待分群样本,选择哪些特征维度作为人群的属性维度,以及基于细分人群得出的商业结论和action,均与这个人群细分本身的应用场景息息相关,要case by case来对待。而第三步,第四步的上半部分,背后的技术手段则相对来讲比较通用。
为了得到一个好的聚类结果,需要不断地尝试不同的类别个数和聚类方法,然后对类内聚合度和类间区分度进行科学的评估。其中,数据探索是需要最先进行的一个步骤。在我们的实践中,发现层次聚类是一种非常好的数据探索方式。
以下图为例,输入市场上机型的配置信息(17维特征),我们产出层次聚类结果:距离最近的机型最早被聚在一起,距离最远的机型最后被聚在一起。从结果中可以看到,被聚在一起的机型具备一定的共性,比如FindX及Mate均为偏高端的手机,而华为畅享/荣耀畅玩/红米数字/VIVO Y则为千元机系列。根据不同机型之间的距离远近,我们决定将这些机型分成10类(粉色和蓝色带)。
值得注意的是,最佳的聚类结果并不一定是科学评估最优的聚类结果。在科学评估之上,一个合理的聚类结果还需要具备可解释性,科学评估合格且人工解读合理有用的聚类结果才是最优的用户分群。继续以上图为例,因为聚类产出的结果本身具有可解释性:不同聚类的设备背后的用户群体不同,因此可以直接使用层次聚类的结果作为最终的聚类结果。否则,可以进一步尝试其他的特征输入和聚类方法,通过对比多种结果,选择最合理的作为最终结果。
以上就是用户分群的N种方式,你学会了几种?