謝鐘揚
摘要:在本篇文章當中主要是以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