簡而言之,數據挖掘(Data Mining)是有組織有目的地收集數據,通過分析數據使之成為信息,從而在大量數據中尋找潛在規律以形成規則或知識的技術。在本文中,我們從數據挖掘的實例出發,并以數據挖掘中比較經典的分類算法入手,給讀者介紹我們怎樣利用數據挖掘的技術解決現實中出現的問題。
數據挖掘是如何解決問題的?
本節通過幾個數據挖掘實際案例來詮釋如何通過數據挖掘解決商業中遇到的問題。下面關于“啤酒和尿不濕”的故事是數據挖掘中最經典的案例。而Target公司通過“懷孕預測指數”來預測女顧客是否懷孕的案例也是近來為數據挖掘學者最津津樂道的一個話題。
尿不濕和啤酒
很多人會問,究竟數據挖掘能夠為企業做些什么?下面我們通過一個在數據挖掘中最經典的案例來解釋這個問題——一個關于尿不濕與啤酒的故事。超級商業零售連鎖巨無霸沃爾瑪公司(Wal Mart)擁有世上最大的數據倉庫系統之一。為了能夠準確了解顧客在其門店的購買習慣,沃爾瑪對其顧客的購物行為進行了購物籃關聯規則分析,從而知道顧客經常一起購買的商品有哪些。在沃爾瑪龐大的數據倉庫里集合了其所有門店的詳細原始交易數據,在這些原始交易數據的基礎上,沃爾瑪利用數據挖掘工具對這些數據進行分析和挖掘。一個令人驚奇和意外的結果出現了:“跟尿不濕一起購買最多的商品竟是啤酒”!這是數據挖掘技術對歷史數據進行分析的結果,反映的是數據的內在規律。那么這個結果符合現實情況嗎?是否是一個有用的知識?是否有利用價值?
為了驗證這一結果,沃爾瑪派出市場調查人員和分析師對這一結果進行調查分析。經過大量實際調查和分析,他們揭示了一個隱藏在“尿不濕與啤酒”背后的美國消費者的一種行為模式:
在美國,到超市去買嬰兒尿不濕是一些年輕的父親下班后的日常工作,而他們中有30%~40%的人同時也會為自己買一些啤酒。產生這一現象的原因是:美國的太太們常叮囑她們的丈夫不要忘了下班后為小孩買尿不濕,而丈夫們在買尿不濕后又隨手帶回了他們喜歡的啤酒。另一種情況是丈夫們在買啤酒時突然記起他們的責任,又去買了尿不濕。既然尿不濕與啤酒一起被購買的機會很多,那么沃爾瑪就在他們所有的門店里將尿不濕與啤酒并排擺放在一起,結果是得到了尿不濕與啤酒的銷售量雙雙增長。按常規思維,尿不濕與啤酒風馬牛不相及,若不是借助數據挖掘技術對大量交易數據進行挖掘分析,沃爾瑪是不可能發現數據內這一有價值的規律的。
Target和懷孕預測指數
關于數據挖掘的應用,最近還有這樣一個真實案例在數據挖掘和營銷挖掘領域廣為流傳。
美國一名男子闖入他家附近的一家美國零售連鎖超市Target店鋪(美國第三大零售商塔吉特)進行抗議:“你們竟然給我17歲的女兒發嬰兒尿片和童車的優惠券。”店鋪經理立刻向來者承認錯誤,但是其實該經理并不知道這一行為是總公司運行數據挖掘的結果。如圖所示。一個月后,這位父親來道歉,因為這時他才知道他的女兒的確懷孕了。Target比這位父親知道他女兒懷孕的時間足足早了一個月。
Target懷孕預測指數
Target能夠通過分析女性客戶購買記錄,“猜出”哪些是孕婦。他們從Target的數據倉庫中挖掘出25項與懷孕高度相關的商品,制作“懷孕預測”指數。比如他們發現女性會在懷孕四個月左右,大量購買無香味乳液。以此為依據推算出預產期后,就搶先一步將孕婦裝、嬰兒床等折扣券寄給客戶來吸引客戶購買。
如果不是在擁有海量的用戶交易數據基礎上實施數據挖掘,Target不可能做到如此精準的營銷。
電子商務網站流量分析
網站流量分析,是指在獲得網站訪問量基本數據的情況下對有關數據進行的統計和分析,其常用手段就是Web挖掘。Web挖掘可以通過對流量的分析,幫助我們了解Web上的用戶訪問模式。那么了解用戶訪問模式有哪些好處呢?
在技術架構上,我們可以合理修改網站結構及適度分配資源,構建后臺服務器群組,比如輔助改進網絡的拓撲設計,提高性能,在有高度相關性的節點之間安排快速有效的訪問路徑等。
幫助企業更好地設計網站主頁和安排網頁內容。
幫助企業改善市場營銷決策,如把廣告放在適當的Web頁面上。
幫助企業更好地根據客戶的興趣來安排內容。
幫助企業對客戶群進行細分,針對不同客戶制定個性化的促銷策略等。
人們在訪問某網站的同時,便提供了個人對網站內容的反饋信息:點擊了哪一個鏈接,在哪個網頁停留時間最多,采用了哪個搜索項、總體瀏覽時間等。而所有這些信息都被保存在網站日志中。從保存的信息來看,網站雖然擁有了大量的網站訪客及其訪問內容的信息,但擁有了這些信息卻不等于能夠充分利用這些信息。
那么如果將這些數據轉換到數據倉庫中呢?這些帶有大量信息的數據借助數據倉庫報告系統(一般稱作在線分析處理系統),雖然能給出可直接觀察到的和相對簡單直接的信息,卻也不能告訴網站其信息模式及怎樣對其進行處理,而且它一般不能分析復雜信息。所以對于這些相對復雜的信息或是不那么直觀的問題,我們就只能通過數據挖掘技術來解決,即通過機器學習算法,找到數據庫中的隱含模式,報告結果或按照結果執行。為了讓電子商務網站能夠充分應用數據挖掘技術,我們需要采集更加全面的數據,采集的數據越全面,分析就能越精準。在實際操作中,有以下幾個方面的數據可以被采集:
訪客的系統屬性特征。比如所采用的操作系統、瀏覽器、域名和訪問速度等。
訪問特征。包括停留時間、點擊的URL等。
條款特征。包括網絡內容信息類型、內容分類和來訪URL等。
產品特征。包括所訪問的產品編號、產品目錄、產品顏色、產品價格、產品利潤、產品數量和特價等級等。
當訪客訪問該網站時,以上有關此訪客的數據信息便會逐漸被積累起來,那么我們就可以通過這些積累而成的數據信息整理出與這個訪客有關的信息以供網站使用。可以整理成型的信息大致可以分為以下幾個方面:
訪客的購買歷史以及廣告點擊歷史。
訪客點擊的超鏈接的歷史信息。
訪客的總鏈接機會(提供給訪客的超級鏈接)。
訪客總的訪問時間。
訪客所瀏覽的全部網頁。
訪客每次會話的產出利潤。
訪客每個月的訪問次數及上一次的訪問時間等。
訪客對于商標總體正面或負面的評價。
分類:從人臉識別系統說起
美國電視劇《反恐24小時》中有一集,當一個恐怖分子用手機撥打了一個電話,從CTU(反恐部隊)的計算機系統中便立刻發出恐怖分子出現的預警。很多好萊塢的大片中此類智能系統的應用也比比皆是,它能從茫茫人群中實時找出正在苦苦追蹤的恐怖分子或間諜。而在2008年北京奧運會上,最引人注意的IT 熱點莫過于“實時人臉識別技術”在奧運會安檢系統中的應用,這種技術通過對人臉關鍵部位的數據采集,讓系統能夠精確地識別出所有進出奧運場館的觀眾身份。
目前人臉識別技術正廣泛的應用于各種安檢系統中,警方只需將犯罪分子的臉部數據采集到安檢數據庫,那么只要犯罪分子一出現,系統就能精確地將其識別出來。現如今人臉識別技術已經相對成熟,谷歌在Picasa照片分享軟件的工具中就已經加入了人臉識別功能。當然,人臉識別技術牽涉到隱私,是把雙刃劍,谷歌在谷歌街景地圖中故意將人臉模糊化,變得無法識別就是這個原因。如圖所示為人臉識別示意圖。
人臉識別示意圖
雖然需要借力于其他技術,但是人臉識別中的主要技術還是來自于數據挖掘中的分類算法(Classification)。讓我們從一個最簡單的事實來解釋分類的思想。設想一下,一天中午,你第一次到三里屯,站在幾家以前從未去過的餐廳門前,現在的問題是該選擇哪家餐廳用餐。應該怎樣選擇呢?假設您沒有帶手機,無法上網查詢,那么可能會出現如下兩種情況:
一種,你記起某位朋友去過其中一家,并且好像他對這家的評價還不錯,這時,你很有可能就直接去這家了。
第二種,沒有類似朋友推薦這類先驗知識,你就只能從自己以往的用餐經歷中來選擇了,例如你可能會比較餐廳的品牌和用餐環境,因為似乎以前的經歷告訴自己,品牌響、用餐環境好的餐廳可能味道也會好。不管是否意識得到,在最終決定去哪家吃的時候,我們已經根據自己的判斷標準把候選的這幾家餐廳分類了,可能分成好、中、差三類或者值得去、不值得去兩類。而最終去了自己選擇的那家餐廳,吃完過后我們自然也會根據自己的真實體驗來判定我們的判斷準則是否正確,同時根據這次的體驗來修正或改進自己的判斷準則,決定下次是否還會來這家餐廳或者是否把它推薦給朋友。
選擇餐廳的過程其實就是一個分類的過程,此類分類例子是屢見不鮮的。在古時,司天監會依賴長時間積累的信息,通過觀察天象對是否會有天災做出分類預測。古人則通過對四季氣候雨水的常年觀察,總結出農作物最佳播種時間。在伯樂的《相馬經》中,就通過簡單分類區分出羸馬的三條標準:“大頭小頸,弱脊大腹,小頸大蹄”。
其實在數據挖掘領域,有大量基于海量數據的分類問題。通常,我們先把數據分成訓練集(Training Set)和測 試集(Testing Set),通過對歷史訓練集的訓練,生成一個或多個分類器(Classifier),將這些分類器應用到測試集中,就可以對分類器的性能和準確性做出評判。如果效果不佳,那么我們或者重新選擇訓練集,或者調整訓練模式,直到分類器的性能和準確性達到要求為止。最后將選出的分類器應用到未經分類的新數據中,就可以對新數據的類別做出預測了。