天天看點

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

昨天分享了以前學習的聚類分析算法K-Means的部分知識,其實這個主要是了解一下這個算法的原理和适用條件就行了,作為應用而不是作為深入研究,能夠很好的将業務和算法模型緊密結合的又有幾人呢?是以一些基本知識還是很必要的,這裡就是簡單把看過的一些知識點列舉一下,梳理一下,快速了解和使用。

今天把TwoSteps的知識也梳理一下,順便做個小的示範,使用SPSS 19,後續在使用SPSS Modeler或者叫做Clementine再示範一次使用方法。首先上圖。

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

TwoSteps支援數值型和分類型資料,這對于我們而言在使用時就友善很多,此外遊戲資料一般來說都很大,TwoStep在這方面來說還是很具有優勢的,資料疊代過程中的記憶體消耗和聚類數目确定,TwoStep表現的都很好,兩步聚類避免了距離矩陣過大,導緻算法執行效率下降,而這也是優勢所在。好了以上的資訊看多也沒什麼意義,還是看看怎麼實踐吧。

最近換了工作,開始做手機網遊的資料分析,也是想嘗試一下,面臨一個問題就是遊戲的留存比較差勁,想來想去就拿這個做一個聚類分析的例子吧。

首先,這裡選取的是次日留存使用者資料進行分析,之是以選擇次日,是由遊戲的特點決定的,再者手機遊戲的周期相對短一些,是以如果考慮周,雙周就不是很好了(當然也不是絕對的),其實3日留存也可以選擇,隻是需要了解你自己的遊戲具體情況再做判斷。

其次,選擇什麼時間的次日留存資料分析呢?這個問題困擾了我很長時間,因為本身分析新登玩家次日登陸的那部分群體的特征(其實這樣分類的方式已經有些破壞了聚類分析的本質和訴求),我選取的時間是周五(為什麼是周五,這裡不說了,大家自己想),且從時間上,全部管道(手機遊戲管道很多)均以開放,且離最近的開放的管道有一段周期(資料平穩後)。同時遊戲沒有重大的更新,BUG,調整時期。

第三,既然要做聚類分析,那我們選什麼資料作分析,提取特征呢?我們要做的是提取次日留存使用者的特征,是以,根據需要我們提取了一些使用者的資料點,如下圖所示:

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

其實,還有很多的資料,然而這裡很多都是取不出來的(2進制,你懂得),由于分析的是次日留存,是以使用者的遊戲程序大多數不會很長,這裡也隻會取一些和新登使用者關聯比較大的,比如來源,職業,好友,是否付費,等級(最高和最低等級)。其實按照我們分析的圍堵不同還可以取其他的資料,這裡就是一個示範,請見諒。下面就用SPSS 19示範一下怎麼進行該計算過程。

打開“菜單|分類|兩步聚類”,如下圖所示:

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

彈出的菜單如下:

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

此時,要進行變量選擇,如果是分類變量,就選擇進入分類變量,如果是連續變量,就選擇進入連續變量,選擇如下:

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

距離變量:确定計算兩個變量之間的相似性,對數相似值系統使用對數似然距離計算,而歐式距離是以全體變量為連續性變量為前提的,由于我們的資料中存在分類型變量,是以這裡選擇對數相似值。

聚類數量:允許指定如何确定聚類數。如果自動确定将會使用聚類準則中指定的準則[BIC 或者 AIC],自動确定最佳的聚類數,或者設定最大值。也可以指定一個固定值,不過一般來說就自動确定OK了。

連續變量計數:對一個變量是否進行标準化的設定。

點選選項,彈出如下的面闆

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

離群值處理:這裡主要是針對CF填滿後,如何對離群值的處理。IBM SPSS手冊如下所訴:

“如果選擇噪聲處理且 CF 樹填滿,則在将稀疏葉子中的個案放到“噪聲”葉子中後,樹将重新生長。如果某個葉子包含的個案數占最大葉大小的百分比小于指定的百分比,則将該葉子視為稀疏的。樹重新生長之後,如有可能,離群值将放置在 CF 樹中。否則,将放棄離群值。

如果不選擇噪聲處理且 CF 樹填滿,則它将使用較大的距離更改門檻值來重新生長。最終聚類之後,不能配置設定到聚類的變量标記為離群值。離群值聚類被賦予辨別号–1,并且不包含在聚類數的計數中。”

關于噪聲處理,此處預設即可。

記憶體配置設定:指定聚類算法應使用的最大的記憶體量。如果該過程超過了此最大值,則将使用磁盤存儲記憶體中放不下的資訊。此項預設就行了。

連續變量的标準化:聚類算法處理标準化連續變量。

點選輸出:彈出界面如下

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

圖和表:

“顯示模型相關的輸出,包括表和圖表。模型視圖中的表包括模型摘要和聚類-特征網格。模型視圖中的圖形輸出包括聚類品質圖表、聚類大小、變量重要性、聚類比較網格和單元格資訊。”有點用。

評估字段:“這可為未在聚類建立中使用的變量計算聚類資料。通過在“顯示”子對話框中選擇評估字段,可以在模型檢視器中将其與輸入特征一起顯示。帶有缺失值的字段将被忽略”可以不用理。

OK,此時,點選繼續,然後确定,等待計算結果出來,這時首先彈出的是檢視器:

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

之後輕按兩下這個模型,就會彈出來聚類浏覽器:

小白學資料分析----->聚類分析理論之TwoSteps理論篇+實踐篇

“聚類浏覽器”包含兩個面闆,主視圖位于左側,連結或輔助視圖位于右側。有兩個主視圖:

模型摘要(預設視圖)

分群。

有四個連結/輔助視圖:

預測變量的重要性.

聚類大小(預設視圖)

單元格分布。

聚類比較。

“模型摘要”視圖顯示聚類模型的快照或摘要,包括加陰影以表示結果較差、尚可或良好的聚類結合和分離的 Silhouette 測量。該快照可讓您快速檢查品質是否較差,如果較差,可傳回模組化節點修改聚類模型設定以生成較好的結果。

結果較差、尚可和良好是基于 Kaufman 和 Rousseeuw (1990) 關于聚類結構解釋的研究成果來判定的。在“模型摘要”視圖中,良好的結果表示資料将 Kaufman 和 Rousseeuw 的評級反映為聚類結構的合理迹象或強迹象,尚可的結果将其評級反映為弱迹象,而較差的結果将其評級反映為無明顯迹象。Silhouette 測量所有記錄的平均值,(B A) / max(A,B),其中 A 是記錄與其聚類中心的距離,B 是記錄與其非所屬最近聚類中心的距離。Silhouette 系數為 1 表示所有個案直接位于其聚類中心上。 值為 1 表示所有個案位于某些其他聚類的聚類中心上。值為 0

表示在正常情況下個案到其自身聚類中心與到最近其他聚類中心是等距的。

摘要所包含的表格具有以下資訊:

算法。所使用的聚類算法,例如“二階”。

輸入功能。字段數量,也稱為輸入或預測變量。

分群。解中聚類的數量。

關于模型的使用的詳細資訊這裡不再累述,請參考 官方手冊 IBM SPSS Statistic 19 Base.pdf [152-159] 

繼續閱讀