1. 程式人生 > >挖挖雙色球——資料探勘技術 分享

挖挖雙色球——資料探勘技術 分享

最近雙色球比較熱鬧,因為河南1彩民獨中雙色球3.6億鉅獎!    《媒體報道:2009年10月8日,國慶長假結束前的最後一天,在這個註定要被寫進中國彩票史的日子,河南省安陽市成為了全國矚目的焦點。當期中國福利彩票“雙色球”第2009118期開獎,全國中出93注頭獎,單注獎金409萬元,河南一神勇彩民一人獨得其中88注頭獎,中獎總金額高達3.599億元,在時隔286期後,一舉改寫了“甘肅神話”,重新整理了中國彩票新紀錄。 》最近網上很多網民對此議論紛紛,這次傳統媒體也開始有了質疑聲音:《齊魯晚報:公眾對3.6億鉅獎的懷疑不能漠視》。雙色球能猜中嗎?本篇博文並不是針對如何猜中雙色球的評論,我的能力和知識也無法去評論,當然,作為一個對數字偏愛的人,當然會研究研究雙色球這些數字啦!
    有媒體曾經採訪過沈老師,還說:沈浩老師一直帶領著他的研究生從事雙色球研究。哈哈!!!
    下面我們就一起來挖挖雙色球!
    要挖雙色球,首先要獲得雙色球資料。雙色球網站:www.zhcw.com,往期回顧——>常規專案表,時間:採集日期2009年10月12日。
建議:大家用IE瀏覽器,找到常規專案表,Ctrl+C,然後Ctrl+V,收集到Excel裡面,自從有了雙色球遊戲後,從03年到09年,近7年時間,共開出944期雙色球!

我們能猜中雙色球嗎?基於常識回答:肯定猜不中,如果能猜中,國家沒法玩這個遊戲,如果能猜中,他會告訴你,不可能的事情;所以,我們要有基本的科學素養,但是很多人連基本的科學素養的沒有!
    上面這張表就是採集下來的944期雙色球資料,看到沒有,紅色那期就是買中3.6億的那組號碼啦!我們首先刪除不用的欄位,保留ID期號,記住一定要有ID期號,這是資料的關鍵字。從資料中我們看到資料已經排好序了,已經沒有出球順序資訊了。
    我們也刪掉藍球No7,因為如果能夠猜中紅球,多買16注一定中一等獎!所以抓住主要矛盾不研究藍球,只研究1-33個編號的紅球,欄位No1到No6。
    這裡我們假設:雙色球資料是乾淨的,沒有資料質量問題!
    雙色球資料天生適合資料探勘,因為資料探勘技術就是從資料中發現知識的過程,我們對雙色球一點理論知識都沒有,只好挖唄!
    資料探勘技術就是從資料中尋找隱藏在資料中的模式、趨勢和相關性!
    假設:雙色球如果有規律,944期中應該呈現規律!(記住:雙色球沒有規律,但我們的商業不會像雙色球那樣沒有規律)
    首先,我們把Excel採集到的資料匯入SPSS軟體中,實際上我們現在整理的雙色球資料是一張報表資料,我們需要把它轉換成為交易資料集,也就是商業自動化採集的資料!
    資料探勘往往都是從資料庫資料中挖的,記住:從來我們不是為了資料探勘而收集資料,而是商業自動化導致海量資料儲存,需要資料探勘發現知識!發現分析模型,商業規則!
這裡我們用SPSS17.0資料重組技術,把資料轉換成交易資料集!(現在可以用博易智訊提供的17.0版本,因為是多語言版本,所以可以隨心所欲用英文或中文介面和輸出了)
這時候資料已經轉換成了交易資料集,過去一期資料佔一行六列,現在資料是一期佔一列六行;
下面,我們開始進行資料探勘!
這裡我們採用Clementine挖掘軟體工具,(前段時間聽博易智訊的馬博士說,Clementine已經有了13.0版本,不過我現在採用8.1版本來操作)
    用SPSS型別資料來源節點連上資料,當然要讀取交易資料集,然後連上“型別”節點,注意,不同版本可能有不同的結果,8.1版會把Trans1欄位認為是數值型的,但我們知道雙色球1-33個紅球,沒有1+2=3,只是標記,所以要人工設定為“集合”型別,然後連上“過濾”節點,主要目的是保留ID欄位和Trans1欄位,刪除id1和索引1欄位,因為不考慮出球順序,只要有ID欄位和Trans1欄位資訊全部保留,記住這時候我們也把Trans1欄位改名成欄位P,方便記憶。
    當完成這個基礎工作後,我們就可以連上“設為標誌”欄位,同時要按照ID彙總,另外,如果某期出現這個號碼,則是1,否則是0;
當資料流流到設為標誌欄位後,我們已經把交易資料集轉換成為了分析資料集,一個0-1資料集;
    此時,我們並不關係哪個球出現多少次,我們關係的是哪六個球經常一起出現!從上面的資料集角度看,我們並不需要關心哪個欄位列分析,我們是希望橫著分析,行裡面的資料經常出現!
    其實我們在市場研究和經營分析領域經常會碰到類似的資料結構,比如:移動公司某個手機號碼,在33個業務中定製了哪6個業務;在購物籃資料中,33個物品哪6個商品經常被一起購買;市場研究的多項選擇題,33個選項中最多選6個等等。
    象這種型別的資料結構都可以採用Link Analysis叫做連線分析,部落格上有個朋友提問什麼是連線分析,其實一直想回答,但網上有很多描述不想贅述,正好我用這個資料來描述什麼是link Analysis。
    連線分析,也就Link Analysis,是一種關聯分析方法,Link Analysis is the examination of the linkages between effects in a complex system. Analysts typically employ a variety of techniques including OLAP, associations, sequences, clustering, and most important, graphics to examine the relationships between entities in a complex system. They try to discover patterns of activity that can be used to derive useful conclusions. Some applications include forms of fraud detection, criminal network conspiracies, telephone traffic patterns, Web site structure and usage, database visualization, and social network analysis.
    這段英文是來自SAS對Link Analysis的解釋,屬於資料探勘技術,視覺化技術,社會網路分析技術;我前面的文章提到《矩陣就是資訊之一,之二》用到了社會網路技術,其實就是Link Analysis分析的一種形式。
    現在,我們在Clementine中Link Analysis是Web網路節點,也就網路分析圖;現在我們連線上web網路,選擇所有33個變數欄位,此時叫P1到P33個0-1欄位了,標誌型別。
    從這個網路分析圖(連線分析圖)中,我們就可以看出,資料探勘技術已經嵌入了社會網分析(具體可看前面博文——矩陣就是資訊);你可以不斷調整關係的強度,看到強連線資訊等;
   從上圖我們就可以看到,P3-P5經常一起出現,P20-P26經常一起出現等等,當然你也等看到P1,P8,P14,P17,P18,P30是一組經常出現的紅球!其實到了資料探勘,我們不僅能夠看到圖,我們還可以直接從圖上點選哪些關係線,直接生成“與”和“或”節點,直接從資料庫中把記錄抽取出來,也就是看到關係就可以直接挖出來!上圖右邊顯示了“強連線”資訊,你就可以看到“啤酒和尿布經常一起被購買”的資料探勘故事了!
   其實,到現在為止,我們還沒有用到資料探勘的建模技術,也就是真正的“發現規則”!有規則嗎?我們選擇建模面板中的“GRI節點”(一般規則偵測技術——屬於Association技術,也是機器學習的建模方法),連上GRI節點,記住:這之前還有重新加入“型別節點”,選擇所有欄位P1到P33,設定欄位方向為“兩者”,表明33個欄位即可能是預測別人,也可能被別人預測!同時別忘了,把ID欄位設為“無”,不要參與分析!
   好了,現在執行,看看結果!
   從上面的GRI分析,我們可以看出:前項之後,是後項,也就是說:如果出現了P3、P9、P31則下一個最可能出現P11,依次都可以看到GRI發現的規則;有沒有發現六個球的規則呢,沒有!如果有我就不寫這篇博文啦,哈哈,開個玩笑!
  至此,大家可以看到我寫“挖挖雙色球的文章”主要目的是什麼?
  1-沈老師的目的,2-所用工具,3-資料基本結構,4-你可以用來挖什麼?
  我一直堅持說:雙色球沒有規律,你的商業不會像雙色球那樣沒有規律!
  希望對你有幫助!