谢钟扬
摘要:在本篇文章当中主要是以Python为编程语言和机器学习库Scikit-Lear为工具,来对某个电商的库户数据进行分类,从而建立起客户的价值评估模型,文中可以清晰的看到聚类过程,并且使用肘方式和轮廓系数来对建立的模型来进行一个有效的定量分析。
关键词:基于Python;聚类方法;电商客户
中图分类号:F713.36 文献标识码:A 文章编号:1007-9416(2019)03-0230-02
0 引言
聚类分析是我们在进行研究数据挖掘当中的一個重要课题,它分别在电子商务,图像处理,文本应用等领域有着较为广泛的作用。而对于电子商务来讲,基于客户价值进行客户细分是当前企业和专家着重的重点关注,因此如何能够准确有效的对客户进行分类成为了当前企业优化营销资源的重要根据。
在本篇文章当中,以一家电子商务女装店为实例,我们可以使用Python当中的机器学习库Scikit-Lear来对电子商务中的客户数据进行聚类的方法进行准确有效的分析,从而可以在一定的程度上帮助企业进行制定个性化的服务。
1 对Python简单介绍
Python这是一门简单易学并且编程功能较为强大的计算机语言,它具有着高效并且准确的数据结构模式,并且可以使用快捷及准确的方法来面向对象进行程序编程。对于Python来讲它有着简单的语法以及动态类型,那么再融合它的解释性效果,就可以很好在很多行业领域当中成为编写脚本或者应用程序的最佳计算机语言。随着计算机技术的不断进步,NumPy,SciPy,Matplotilb等许多程序库的逐渐被开发出来,Python在行业当中占据着越来越重要的位置,其中有着计算机科学,数学建模,数据挖掘等等。
2 K-Means聚类算法
对于聚类算法来讲,我们可以从大体上分为几类:划分方式,层次方式,基于密度的方式,基于网格的方式以及基于模型的方式。由此可以知道K-Means算法也是分化方式当中的一个类型,它具备着运行效率较快和准确的优点,因此常常在实际当中被进行使用到。
2.1 算法的基本概念
K-Means的聚类方法是一种较为典型的基于距离聚类算法,其主要的算法概念为,应当先在需要进行分类的数据当中寻找K组数据来当作初始聚类的中心点,接着在对其计算其他样本和这个中心点的大致距离,然后将样本中的中心点归纳到最为接近的聚类中心当中,最后我们重新计算各簇当中所有样本的中心点,当作为一个新的聚类中心,依次循环,一直到出现新的聚类中心和上一次聚类中心点不变或者达到预定的迭代次数时,算法终止。
我们在进行使用K-Means算法的时候,应当应用随机点来当中我们的初始中心点,若是初中的中心点选择不当的话,那么就可能在一定的程度上使得我们的簇效果不好甚至出现收敛速度慢的问题出现。
对于K-Means算法的初始过程我们进行简单的讲述:
Step1:初始化一个为空的集合取名为M,这个M能够用于存储选定的K个中心点。
Step2:我们可以从输入当中的样本来进行随机的选择一个中心点,并且把它加入到集合M当中去。
Step3:在对于集合M之外的任何一个样本点,可以使用计算方式来进行找到其平方距离最为较小的样本。
Step4:我们可以使用加权概率分布算法,来进行测试随机的下一个中心点。
Step5:如果直到现在还没有对于K中心点进行选择,那么我们就需要重复第二,第三的步骤依次循环。
Step6:对于已经选定的中心点我们需要进行K-Means算法处理。
2.2 对聚类算法出的结果进行有效准确评估
有效性的标准评价方法,对于聚类方法的有效性,指的是对聚类结果进行评价并且确定评价出的结果是否正确和有效。对于这类指标来讲,它们并不需要有着外部的参考标准,只需要对于数据集本身和聚类结果进行一个评估,就能按照聚类的结果来进行选择最佳聚类数。因为无监督学习不能达到数据及样本的准确数值,那么这个时候就需要我们对聚类效果进行定量解析。那么需要进行使用到的模型内部固有度量来对K-Means的聚类结果进行比较。在本篇文章当中肘方式以及轮廓系数评价方式来对聚类质量进行讨论,下面对这两种方法进行简单的介绍。
2.2.1 应用肘方式来对簇进行一个数量测试
在肘方式当中主要是使用簇内误差平方和来进行计算的。
2.2.2 轮廓系数评价方式
对于轮廓方式这种方法来讲,它主要是采用图形工具来对簇中样本的密集程度进行一个计算,计算出数据中单个样本的轮廓系数,具体步骤如下:(1)将某一个样本和簇内其他点进行计算,计算两者之间的平均距离,来当作为簇内的内聚数据。(2)使得样本和最近的所有点之间的距离,计算出它们的平均数值,来当作为与下一个簇数据的分离度。(3)让簇分离度和簇内聚度进行相减,得出两者之间的差,接着在除以两者中心的较大数值。
3 对客户价值呈现的模型进行搭建
RFM模型这是一种可以对用户价值和客户创利能力的管理工具,在众多的客户关系管理当中,RFM这种模型被广泛的使用到,这种模型可以通过对客户进行分析,比如客户的购买能力,交易频率和交易金额,RFM这种模型根据这三个指标来对客户的价值进行简单的记录,在一般的管理软件当中,分析型的CRM注重于对客户的贡献值分析,而RFM则强调以客户的行为来区分客户。
对于RFM在电子商务的使用上,我们对RFM进行一个简单概括。R代表着客户最近一次购买时间距今有多久,F代表着客户在最近一段时间当中购买的次数,而M则代表着客户在最近一段时间当中购买的总数金额。
在本篇文章当中以一家电商女装为例子,我们在对这家网店的交易数据进行一个聚类分析和数据收集。我们通过对于这些数据的提取和变换等步骤之后,使用K-Means算法来对当中的客户群体进行分类,并且使用Python当中的可视化工具。
4 结语
本篇文章对于某个电商当中的客户数据使用K-Means聚类进行一定的分类,并且建立了客户价值评估的模型,在文章当中使用了Python当中强大的开源库,并且展示了聚类效果,在聚类方法之中有着一个不足之处,那么便是需要在事先指定分类数目。
参考文献
[1] 薛芯菊.基于Python的K-means算法及其应用[J].科技视界,2018(24):141-142.
[2] 唐琳,何天宇.基于Python的自然语言数据处理系统的设计与实现[J].电子技术与软件工程,2018(16):160-162.
[3] 赵金晖.基于python的数据处理和模糊层次聚類[J].无线互联科技,2018,15(14):141-142.
[4] 贾桂霞,贾桂云,李向伟,张睿敏.基于Python的聚类方法在电商客户细分中的应用研究[J].兰州文理学院学报(自然科学版),2018,32(03):55-58.
[5] 陈伟,李红,王维.一种基于Python的K-means聚类算法分析[J].数字技术与应用,2017(10):118-119.
Application and Exploration of Python Based Clustering
Method in E-Business Customer Subdivision
XIE Zhong-yang
(Hunan Software Vocational College,Xiangtan Hunan 411100)
Abstract:In this article, Python is mainly used as a programming language and machine learning library Sikit-Lear as a tool to classify the library data of an e-commerce to establish a customer's value assessment model. In this article, the clustering process can be clearly seen. And using elbow methods and contour coefficients to perform an effective quantitative analysis of the established model.
Key words:based on Python; cluster method; E-commerce customers