用 t-SNE 算法和聚类方法来做市场划分分析

无论你得基础数据是来自电子商店客户,您的客户,小企业还是大型利润和非营利组织,市场划分分析总是会给你帮助你能够洞察更多隐藏的宝贵信息,并给你带来帮助,比如可以让你销售的更好。因此,使用高效的分析方式就非常重要。选择好高效的分析方式,不仅仅能帮助你更好的了解你的客户群,而且能够在你定制你的优惠,广告,促销或策略时为您提供更深入的服务。让我们先行用分类技术(即聚类,投影追踪和 t-SNE )做一个简单的效率改进实例。

由于您的目标可能是通过与特定的客户建立联系来改善您的销售,所以首先您需要把相似的人群归属到一类。由于不同的客户群体的行为和反应不同,所以以自然不同的方式对待不同类的客户。思路就是对每一个细分领域使用不同的策略来获得更大的利润。因此,我们需要完成两个基本任务:

  1. 确定细分的市场领域(即哪些人群应该分在哪一类)
  2. 确定重要特征(即哪些因素决定了客户的行为)

在这篇文章中,我从技术的角度来关注第一个问题,使用一些较为前沿的分析方法。为了简单展示,我将使用简单的数据集,描述批发经销商代理在不同产品类别的年度支出。如下图所示,一眼看上去我们很难区分不同种类的代理商。
1

这个困难的部分原因在于,我们的数据是多维的,但是从两个维度观察很难找到合适的数据结构。 在分析潜在的二维或甚至三维散点图的所有组合时,我们很容易浪费精力。幸运的是,我们有一些机器学习方法,通过无监督学习来处理这个特殊的问题。

一方面,我会想到一些成熟的方法,如聚类或投影追踪。另一方面,我们也应该尝试下像 t-SNE 这样的顶尖可视化技术。所有这些方法都可能有助于进行有效的市场划分带来利润增长。

在我们的数据集中,我们使用二进制变量来标记销售渠道(酒店/餐厅/咖啡馆与零售)。设想我们没有设定这个目标参数。那么,我们仍然希望将客户分为两大部分,因为这些渠道明显代表着和这些支出类别的一些因果联系。让我们简单地比较这三个选出方法,观察哪种方法能够发现更多所涉及的渠道中的隐藏信息。

首先,我们尝试进行主成分分析( PCA )来减少多维特征空间的维数。下图显示了使用 PCA 对我们的数据在两个主要成分(即具有最高方差)的投影。 然而,这并不是很有用,因为我们仍然无法发现很好区分开的主要结构。如果我们没有加入任何标注渠道的信息(在中间),我们将无法画出绿点和蓝点的分割线(左侧)。然而, PCA 为我们提供了最大方差分量(使信息最大化),这就是为什么这种维数降低技术一般可能是有用的。结果如下:(我们也进行了缩放)
2

其次,我们将非常简单的k均值聚类算法应用于我们的多维数据,试图发现一个隐藏的信息(在右边)。 我们可以看到它做了一个很好的工作,因为我们手动设置搜索到两个群集的数量。每个簇的质心大致对应于每个渠道的。 然而,只有约77%的代理商被正确的分配到它们所属的渠道。(当然,我们无法在实践中用未知的渠道标签来衡量)。这可能看起来是一个很好的基准,但要常记在心,分割越有效,来自细分策略的潜在收益越高,因为你的目标更加明确。那么我们如何提高我们的聚类效率呢?

我们利用现代非常流行的被称为t分布随机邻域嵌入( t-SNE )的可视化方法。 它具有在高维数据之间找到合适数据结构和相关连接的极高能力,并且将数据集映射到二维平面中,让数据可视化的工作变的非常方便。在最终生成的2维图像上,t-SNE算法将(在特征空间上)相似的代理商靠在一起。尽管我们无法根据最终生成二维图像对特征做出结论,但我们绝对可以观察到局部结构,即代理商划分。为什么不创建一个通道把多个聚类算法和降维技术联系在一起呢? 在下图中,您将看到应用于二维t-SNE图的k均值聚类的结果。 匹配有效性增加了10%,所以我们有大约90%的客户正确分配到了真正的渠道。所有过程中,没有使用任何调整方法!
3

t-SNE具有非凸目标函数,通过随机初始化使梯度下降最小化。因此,我们需要多次运行t-SNE,并选择合适的映射,来获得在低维嵌入与高维数据的联合概率之间的Kullback-Leibler发散的最小值。 在聚类方面,这可能会给我们带来最有效的分割。我们通过运行整条管道几百次,简要地验证了这种趋势和一致性最大有效程度在90%:
4

总而言之,用不同的聚类方法来进行市场划分绝对是有价值的。 更重要的是,我们向您展示了如何通过把更多方法构造到一个管道中来提高聚类的有效性。请记住,我们这样做是为了对目标市场进行更细致的划分,而每个细分都会带来更高的利润!
本文翻译自:http://t.cn/RSjksgp

更多课程和文章尽在微信号:「datartisan数据工匠」

 

由 Editor 于 2017 年 08 月 02 日 发布在 数据科学 栏目