本篇文章主要是繼續上一篇Microsoft決策樹分析算法后,采用另外一種分析算法對目標顧客群體的挖掘,同樣的利用微軟案例數據進行簡要總結。
應用場景介紹
通過上一篇中我們采用Microsoft決策樹分析算法對已經發生購買行為的訂單中的客戶屬性進行了分析,可以得到幾點重要的信息,這里做個總結:
1、對于影響購買自行車行為最重要的因素為:家中是否有小汽車,其次是年齡,再次是地域
2、通過折疊樹對于比較想買自行車的顧客群體特征主要是:家里沒有車、年齡在45歲一下、不在北美地區、家里也沒有孩子(大米國里面的屌絲層次)、
同樣還有就是家里有一輛車、年齡在37到53之間、通勤距離小于10Miles,家里孩子少于4個,然后年收入在58000$以上(大米國的高富帥了)
其實決策樹算法最主要的應用場景就是分析影響某種行為的因素排序,通過這種算法我們可以知道某些特定群體他們都會有幾個比較重要的屬性,比如家里有沒有車、年齡等,但是我們想要分析這部分特定群體其特有屬性就沒法做到,而要分析這種特定群體所共同含有的共同屬性就需要今天我們的Microsoft聚類分析算法出場了,簡單點講就是:物以類分、人以群分,通過聚類分析算法我們要找到那些將要買自行車的顧客群里都有哪些屬性,比如當我們晚上進入廣場會看到,廣場大媽一群、兒童扎在一群、打籃球的一群、還有一群情侶在廣場邊幽暗的樹林里等等,而他們這些團隊之間是有差別的,若果要去賣兒童玩具...那種群體是你最想靠近的自然而然了。
技術準備
(1)同樣我們利用微軟提供的案例數據倉庫(AdventureWorksDW2008R2),兩張事實表,一張已有的歷史購買自行車記錄的歷史,另外一張就是我們將要挖掘的收集過來可能發生購買自行車的人員信息表,可以參考上一篇文章
(2)VS、SQL Server、 Analysis Services沒啥可介紹的,安裝數據庫的時候全選就可以了。
下面我們進入主題,同樣我們繼續利用上次的解決方案,依次步驟如下:
(1)打開解決方案,進入到“挖掘模型”模板
通過上面可以看到已經存在一種決策樹算法了,我們來添加另外一種算法。
2、右鍵單擊“結構”列,選擇“新建挖掘模型”,輸入名稱即可
點擊確定,這樣我們新建立的聚類分析就會增加在挖掘模型中,這里我們使用的主鍵和決策樹一樣,同樣的預測行為也是一樣的,輸入列也是,可以更改。
下一步,部署處理該挖掘模型。
結果分析
同樣這里面我們采用“挖掘模型查看器”進行查看,這里挖掘模型我們選擇“Clustering”,這里面會提供四個選項卡,下面我們依次介紹,直接曬圖:
同樣這里面我們選擇要發生購買自行車的群里,顏色最深的為最可能購買自行車的群里,圖中箭頭我們已經顯示出來了,同樣我們也可以找到最不可能買自行車的一群人,也就是“分類四”,他們之間線條的強弱表示關聯關系強弱,當然這里為了好記我們可以給他們改改名,直接選擇類,右鍵重命名。
如上圖,下面我們要做的就是要分析這些群體有啥特征了,當然我們最關心的為:最想買自行車的一群人、不想買自行車的也可以分析,至于不明真相的群體、路人群體甲、乙...這些個都是些打醬油的了,我們就不分析了。
我們打開“分類剖面圖”看看:
哈...這幾類群體的特征已經展示出來了,如果玩數據久了,會對圖表有一種直觀敏銳,對數據也要保持一種特定的嗅覺。
我們重新整理一下這個“分類剖面圖”的列的順序,根據我們關注的強弱橫向依次展開,如圖:
圖中第一列為屬性,比如年齡、小汽車的數量、家里孩子數量等,第二列為各個屬性的圖例,這里面是根據屬性的值類型進行的圖例展示,一般分為兩種,比如年齡在庫中存儲的值類型通常分布在1-100之間,故圖例采取分段取樣,形成一個從小到大的柱狀體,中間含有有一個棱形圖,棱形圖的大小代表屬性中群體的密集度,比如上圖的顧客集中在29歲到48歲之間:
當然如果該屬性值不為離散的屬性值的話,就采取不同顏色的原型圖表表示,專業術語叫做:直方圖,面板中有一個地方可以設置直方圖條數,也就是該屬性值所取得的最多屬性值個數。比如:家里孩子的總數,一般分為0個、1個、2個、3個、其他...
納尼!...上面這個圖例中沒有3個孩子的,這里面的圖例也是通過數據采樣得到,只取量比較多的作為展示,上圖說明家里有3個孩子的比較少。
下面我們分析一下最想購買自行車的群體特征:
首先從圖中可以看到年齡集中在40來歲,平均為43.65歲
我汗....最小年齡為29歲.平均年齡43.65歲..最大年齡81.79歲..估計微軟案例數據庫中的數據也不一定可靠,抑或者米國的人群特征就這樣三十歲以下的人都不喜歡騎自行車反而80多歲的人還買自行車,或者這個店就不賣給三十歲以下的顧客,當然有可能年輕人沒有買的,大部分是老人給孩子買的,這個就不分析了..反正數據是這么說的,有圖有真相!
家里沒有小汽車的或者只有一輛小汽車的購買的概率大部分集中在0.3以上...而大于一輛小汽車的家庭購買自行車的概率就很少...家里四輛車的概率則少到了0.003...接近不會買的概率了...
家里有一個孩子的概率最高0.483...家里沒有孩子的根本不會買自行車...我去...基本驗證了我上面的推測,看來大部分人是買自行車給子女騎的,沒有孩子就不買了,上圖中的沒有子女的購買自信車的概率為0.000,還有一個屬性可以研究下,那就是是否有房子,看圖:
嗯...想買車的群體家里大部分都有房子,也就說有固定住所,他們買自行車的概率高達0.854...而沒有房子的則少到可憐...為0.146。
別的屬性也可以通過該屬性面板進行分析,可以分析出我們想要的那部分群體的屬性特征,有針對性的做到定向營銷。
以上只是通過分類的剖面圖進行了局部分析,VS還提供了另外一個專門列舉屬性特征的面板:分類特征。
我們點擊開這個面板看看:
通過上面的圖表展示,已經將我們想要了解的這部分群體,赤裸裸的展現出來了,嗯,來瞅瞅..法國職業:、英國職業:
同樣我們也可以針對某一個屬性,有針對性的對兩組群體進行比較,這里就應用到另一個面板:“分類對比”,我突然想到可以針對“性別”這個屬性,把IT行業和非IT行業進行對比,估計結果應該不寒而栗...呵呵...題外話,下面看圖:
尼瑪...上圖的圖片我看了下..發現有一個屬性值特別有趣,年收入在10000-29950之間的基本是不打算買自行車了,然而年收入到了29950-1700000,想買自行車的概率就高很多了,上圖中可以看到。嗯...自行車也是車...想要買車還是得有錢才行。
準確性驗證
最后我們來驗證一下今天這個聚類分析算法的準確性如何,和上篇文章中的決策樹算法有何差距,我們點擊進入數據挖掘準確性圖表:
上圖中我們可以看到,今天這次用的聚類分析算法,分數為0.72,比上一篇的決策樹算法0.87,還是略有差距的,當然不能僅以分數來評比兩種算法的好壞,不同的挖掘需求需要不同的挖掘模型,同樣不同的挖掘模型就需要不同的挖掘分析算法。
不過通過上圖有幾點需要特別注意的,數據分析算法的準確性是要取決于基礎數據的多少,也就是說數據量越大,你所分析的數據結果將越準確,同樣這也是未來大數據的概念的形成,沒有數據任何牛逼的算法也沒有招,而當數據達到一定量級別之后,任務個別的不準確也將被大數據的事實所掩蓋,這就是大數據時代的意義所在。
當然凡事都得拿數據說話,不能憑空亂想,上圖中的理想模型也就是紅色的那條就驗證了我剛才的說法,當數據總體達到50%以后,我們的數據挖掘結果就是100分,100分啥含義?完全正確!也就是說你下一步想干啥是我們完全能推測出來的,當然在數據量少的時候,我們就無能為力了,我們所利用的任何數據挖掘算法理論上講將無限的接近這條紅線(理想模型),將永遠無法超越,而這接近的過程就是我們大數據時代的推動。
當然還有一條最爛的隨機預測模型它永遠的以50%的概率神一般存在著...因為對于買自行車這件事只有兩種結果,一個是買,另一個就是不買,它所預測準確的概率永遠就是一半一半...50%.....。
對大數據有興趣的不要忘記你的“推薦”哦。
曬一句數據挖掘的力量:小樣,我就知道你會這么做!
文章列表