數據挖掘

上世紀80年代末到90年代初,流行的一句話:咱們沉浸在數據的海洋裏,卻渴望這知識的淡水。這句話生動地描述了當時人們對海量數據的迷茫和無奈,就在這時,商業巨頭沃爾瑪演繹了一場「啤酒與尿布的故事」揭示了隱藏在海量數據中美國人的一個行爲規律:年輕父親給孩子買尿布時會隨手買一瓶啤酒。因而調整商品佈局,並策劃促銷價格,結果銷量大增。這一現象引發了科學界的重視,他們將此引伸爲「關聯規則獲取」,進而講「從大量的,不徹底的、有噪聲的、模糊的、隨機的數據中,提取隱含在其中的、人們事先不知道的、但又潛在的信息和知識的過程」定義爲「數據挖掘」。html

一、揭開數據挖掘的面紗web

派克漢尼汾公司是一流的工業企業,年銷售額超過100億美圓,年維修費用很是高。他們經過數據分析機器各個零件之間的壽命關係,發現昂貴零件的壽命是和少數幾種便宜零件的磨損有關的,他們經過及時替換便宜部件來達到延長昂貴部件壽命的目的,大大節約了費用。算法

2006年世界盃,1/4決賽德國對阿根廷,德國門將萊曼全部點球都判斷對了方向,撲出了3個點球,阿根廷黯然出局。關鍵是點球大戰前,卡恩給萊曼的紙條,上面記錄了阿根廷隊隊員習慣的腳法,這些數據來自於德國科隆體育學院數據分析小組夜以繼日的努力。網絡

二、數據挖掘能幹什麼框架

關聯規則挖掘:挖掘兩個或多個事件之間的關係。最經典的算法是Apriori算法,其基本思想是:首先從事件中集中收集全部頻繁出現的事件子集,而後在這些子集中發現可信度較高的規則。佈局

聚類:將數據對象劃分爲幾類,類間距離最大,類內距離最小(對象差別較小)。聚類算法包括劃分方法和層次聚類方法,兩類的典型表明是K-Means、K-Medoids和彙集、分裂算法。性能

k-means流程學習

clipboard

k-means的難點是找到最適合的聚類個數k,通常要用若干個k去實驗,那個k最後的距離平方和最小,則認爲那個k最佳。測試

k-means用聚類點的均值做爲新的聚類中心,若是以各聚類均值點最近的點爲聚類中心,其餘步驟不變,則變成了k-medoids算法。優化

另外k-means應用的侷限就是對象的距離是能夠計算的,有些離散屬性的數據是沒有均值科研的,好比A=(北郵,本科)B=(吉大,博士),就須要從新定義距離了,因而改進獲得了k-模算法;進而將k-means和k-模算法結合,用來處理數值類型和分類類型的數據,就產生了k-原型算法。

其次,k-means算法不適合發現非球狀的簇,緣由是這類算法使用距離來描述數據之間的類似度;對於非球狀數據集,要使用密度來代替類似性設計聚類算法,這就是基於密度的聚類算法Density-based Method。基於密度的算法從數據對象的分佈密度出發,把密度足夠大的區域鏈接起來,從而發現任意形狀的簇,並且此類算法還能有效地消除噪聲,常見的基於密度的聚類算法有DBSCAN、OPTICS、DENCLUE等。

層次聚類算法按照數據分層創建簇,造成一棵以簇爲節點的樹,若是自底向上稱爲彙集,自頂向下稱爲分裂法。彙集:把每一個對象看作一個簇,而後逐漸合併這些簇造成較大的簇,知道全部的對象都在一個簇中,或者知足某一終止條件;分裂:把全部對象置於一個簇中,而後逐漸劃分愈來愈小的簇,直到每一個對象自成一簇,或者達到某個終止條件,例如達到了但願的簇數或者最近簇的聚類超過了必定的閾值。

層析方法能夠在不一樣的粒度水平對數據進行探測,並且容易實現類似度量或距離度量。可是缺點是終止條件含糊,合併和分裂的操做不可修正,這可能致使聚類結果質量不好,另外,因爲須要檢查和估算大量的操做才能決定簇的分裂和合並,因此這種方法的擴展性很低。所以一般將其和其餘聚類方法結合起來造成多階段聚類來改善聚類質量,包括BIRCH、CURE、ROCK、Chameleon等。

三、預測

數據挖掘預測是經過對反應了事物輸入和輸出之間的關聯性的學習,獲得預測模型,再利用該模型對將來數據進行預測的過程。

數據建模是基於數據創建數學模型的過程,它是相對於基於物理、化學或其餘專業基本原理創建數學模型而言的(機理建模)。對於預測問題,若是所研究的對象有明晰的機理,可對其創建數學模型,這固然是最好的選擇。可是咱們常常會遇到不少複雜的實際問題,不適合用某種機理來描述,從而沒法以某種機理來描述,可是若是累計足夠的歷史數據,這時數據模型就大顯身手了。

決策樹方法:是一種相似流程圖的樹型結構,數的最高層節點是根節點,數的每一內部節點表明對一個屬性的測試,其分支表明測試的每一個結果,數的頁節點表示一個類別。從根節點到葉子節點的每條路徑構成了一條IF...THEN...分類規則。

應用很普遍,經常使用的有ID三、C4.5。步驟

clipboard[4]

ID3的核心思想是:採起基於信息增益的特徵選擇策略,即選取具備最高信息增益的屬性做爲當前節點的分裂屬性,從而保證了決策樹具備最小的分支數量和最小的冗餘度。缺點是:不能回溯重新考慮選擇過的屬性,從而收斂到局部最優解;信息增益的度量偏袒於取值數目較多的屬性;不能處理連續屬性;訓練樣本小或包含噪聲時,容易產生多擬合現象。

C4.5算法對ID3作了相應修正:用信息增益比率做爲選擇標準;合併連續屬性的值;運用剪枝技術來避免過擬合;K次交叉驗證等。剪枝包括:預剪枝和後剪枝兩種,預剪枝是事先創建某些規則來限制決策樹的生長,後剪枝是決策樹充分生長後再減去那些不具備表明性的分支。儘管前種方法更直接,但實踐中後者效果更好。

人工神經網絡:經過創建適當的網絡結構,根據大量數據訓練獲得各層之間的傳遞參數,神經網絡也具備較強的穩定性和容錯性。

clipboard[6]

支撐向量機:SVM分類問題,創建在計算學習理論的結構化風險最小化原則之上,具備良好的泛化能力,且適宜於小樣本學習。後來根據向量機模型又擴展出SVR用於解決迴歸問題。具體可參見SVM系列教程

正則化方法:神經網絡的缺點是網絡拓撲結構的肯定沒有成熟的理論指導,訓練代價高,創建的模型難以映射到實際理論等。支撐向量機的缺點是SVM的實質是求解一個凸二次優化問題,理論上是存在全局最優解的,但對於大規模數據,效率很低且存在大量冗餘支撐向量,更使人愁苦的是參數沒有好的選擇策略。基於這些問題,人們提出了很多知足不一樣性能要求的基於正則化的框架模型,有Lasso和推廣的Lasso模型、L1/2正則化模型等。

PS:時間序列預測和迴歸的功能相似,只是時間序列是用歷史數據來預測將來數值,是一種特殊的自迴歸。

四、跨行業數據挖掘標準流程Cross Industry Standard Process for Data Mining,CRISP-DM。

它包括業務理解、數據理解及收集、數據準備、數據建模、數據評估和部署六個階段。

(1)業務理解

主要任務是深入理解業務需求,在此基礎上制定數據挖掘的目標和初步計劃。

(2)數據理解及收集

收集數據、熟悉數據,探索引發興趣的子集。

(3)數據準備

從收集的數據集中選擇必要的屬性,並按照關聯關係將它們鏈接成一個數據集;而後進行數據清洗,即空值異常值處理、離羣值剔除、數據標準化等。

(4)數據建模

選擇應用不一樣的數據挖掘技術,肯定模型最終的參數。若是初步分析發現模型的效果不太滿意,須要再跳回到數據準備階段,甚至數據理解階段。

(5)模型評估

對所創建的模型進行可靠性評估和合理性解釋。

(6)部署階段

根據評估後認爲合理的模型,制定將其應用於實際工做的策略,造成應用部署報告。

PS:web數據挖掘概述

分爲三類:Web內容挖掘,是從文檔內容或其描述中抽取信息;Web連接結構挖掘;Web使用模式挖掘,從訪問記錄中抽取感興趣的模式。垂直搜索用戶行爲側重於Web連接結構和使用模式挖掘,面向電子商務和社交網絡方面則側重於Web內容挖掘和模式挖掘。

今天看了《大話數據挖掘》一書,看網評說這本書有點虛,看完果真有同感...編者仍是院士困惑。基本內容都在前兩章,除去招搖的書名剩下的東西,整理了下也就上面這三千多字了。

相關文章
相關標籤/搜索