1. 程式人生 > >《資料探勘導論》讀書筆記(二)—— 資料

《資料探勘導論》讀書筆記(二)—— 資料

書名:資料探勘導論(Introduction to Data Mining)
作者: Pang-Ning Tan / Michael Steinbach / Vipin Kumar
出版社: 人民郵電出版社
譯者: 範明 / 範巨集建
出版年: 2010-12-10
ISBN: 9787115241009

第2章 資料

資料型別

屬性與度量

相關定義

  • 屬性(attribute):物件的性質或特性,它因物件而異,或隨時間變化。
  • 測量標度(measurement scale):將數值或符號值與物件的屬性相關聯的規則(函式)。

注意

  • 形式上,測量過程是使用測量標度將一個值與一個特定物件的特定屬性相關聯。
  • 屬性的性質不必與用來度量它的值的性質相同。如代表ID的數字,作為一系列數字,具有平均數等性質,但是這些性質與ID這個屬性無關。

用值的個數描述屬性

  • 離散(discrete):離散屬性具有有限個值或無限可數個值。
  • 連續(continuous):連續屬性是取實數值的屬性。

非對稱的屬性

更關注部分屬性值。如學生選修了對應某屬性的課程,該屬性記為1,否則記為0.由於學生只選修所有可選課程集合中的很小一部分,所以在這種情況,通過更加關注非零值。

資料集型別

資料集的一般特徵

  • 維度(dimensionality)
    資料集的維度是資料集中的物件具有的屬性數目。分析高維資料有時候會陷入所謂的維度災難(curse of dimensionality),所以,資料預處理有的時候需要減少維度,稱為維度歸約(dimensionality reduction)。
  • 稀疏性(sparsity)
    資料集中大部分資料缺失或為0。這將節省大量的計算時間和儲存空間,有些資料探勘演算法僅適合處理稀疏資料。
  • 解析度(resolution)
    在不同的解析度下資料的性質不同。如在幾米的解析度中,地球表面崎嶇,但在幾十公里的解析度中,地球表面相對平坦。

常見的資料集型別

  • 記錄資料
    事務資料(transaction data):其中每個記錄(事務)涉及一系列的項。如顧客一次購買的商品集合。
    資料矩陣(data matrix):如果一個數據集族中的所有資料物件都具有相同的數值屬性集,則資料物件可以看作多維空間中的向量,其中每個維代表物件的一個不同屬性。
  • 基於圖形的資料
    用圖形表示物件之間的關係:如社交網路等。
    資料本身用圖形表示:如化合物的分子結構圖。
  • 有序資料
    時序資料(sequential data):每個記錄包含一個與之相關聯的時間。
    序列資料(sequence data):有序序列,考慮項的位置,如基因序列。
    時間序列資料(time series data):特殊的時序資料,一段時間以來的測量序列,如股票每日價格。
    空間資料:具有空間屬性的資料,如全球溫度。

資料質量

相關定義

  • 精度(percision):(同一個量的)重複測量值之間的接近程度。
  • 偏倚(bias):測量值與被測量值之間的系統變差。
  • 準確率(accuracy):被測量的測量值與實際值之間的接近程度。
    準確率依賴於精度和偏倚,而且是一個一般化的概念,因此沒有用這兩個量表達準確的具體公式。
  • 噪聲:測量誤差的隨機部分。
  • 離群點(outlier):某種意義上具有不同於資料集中其他大部分資料物件的特徵的資料物件,或是相對於該屬性的典型值來說不同尋常的屬性值。注意區別噪聲和離群點,離群點也可以是合法的資料物件或值。
  • 遺漏值:一個物件遺漏一個或多個屬性值。
    對於遺漏值,通常有三種應對措施:1. 刪除資料物件或屬性;2. 估計遺漏值;3. 在分析時忽略遺漏值(有些資料探勘方法可以做到)。

關於應用

注意兩個問題:

  • 資料的時效性
  • 資料的相關性:資料與模型必須相關,可用的資料必須包含應用功能所需要的資訊。

資料預處理

聚集(aggregation)

定義:將兩個或多個物件合併成單個物件。
動機:1. 減少資料規模,可以使用開銷更大的資料探勘演算法。 2. 通過高層而不是低層的資料檢視,起到了範圍或標度轉換的作用。 3. 物件或屬性群的行為比單個物件或屬性的行為更加穩定。
缺點:可能會丟失一些細節。

抽樣

定義:選擇資料物件子集進行分析。
要求:如果樣本具有代表性,則使用樣本與使用整個資料集的效果幾乎一樣。而樣本具有代表性,要求樣本近似地具有與原資料集相同的性質。
漸進抽樣:需要自適應(adaptive)或漸進抽樣(progressive sampling)來確定合適的樣本容量。具體來說,從一個小樣本開始,然後增加樣本容量直至得到足夠容量的樣本。

維歸約

定義:通過建立新屬性,將一些舊屬性合併在一起來降低資料集的維度。
好處:1. 刪除不相關的屬性並降低噪聲; 2. 維歸約使得模型更好理解,更容易讓資料視覺化。
維災難:隨著資料維度的增加,許多資料分析變得非常困難。
維歸約的線性代數技術:主成分分析(Principal Components Analysis, PCA)。奇異值分解(Singular Value Decomposition, SVD)。

特徵子集選擇

定義:僅使用特徵的子集來降低維度。
特徵選擇的理想方法:將所有可能的特徵子集作為感興趣的資料探勘演算法的輸入,然後選取產生最好結果的子集。
特徵選擇的一般方法:

  • 嵌入方法(embedded approach):資料探勘演算法本身會進行特徵選擇。
  • 過濾方法(filter approach):使用某種獨立於資料探勘任務的方法,在資料探勘演算法執行前進行特徵選擇。
  • 包裝方法(wrapper approach):這些方法將目標資料探勘演算法作為黑盒,使用類似於前面介紹的理想演算法,但通常並不列舉所有可能的子集來找出最佳屬性子集。
  • 特徵子集選擇體系
    可將過濾和包裝方法放到一個共同的體系結構中,特徵選擇的過程可以看作由四部分組成:子集評估度量、控制新的特徵子集產生的搜尋策略、停止搜尋判斷和驗證過程。過濾方法和包裝方法的唯一不同是它們使用了不同的特徵子集評估方法。對於包裝方法,子集評估使用目標資料探勘演算法;對於過濾演算法,子集評估技術不同於目標資料探勘演算法。流程如下圖。
    特徵子集選擇過程流程圖
  • 特徵加權
    特徵越重要,所賦予的權值越大;對不太重要的特徵,賦予較小的權值。

特徵建立

定義:由原來的屬性建立新的屬性集,更有效地捕捉資料集中的重要資訊。
方法:特徵建立的方法主要有以下三種:

  • 特徵提取(feature extraction)
    最常用的特徵提取技術都是高度針對具體領域的,對於特定領域,會開發新的特徵和特徵提取方法。
  • 對映資料到新的空間
    使用一種完全不同的視角挖掘資料可能揭示出重要和有趣的特徵,如使用傅立葉變換(Fourier transform)、小波變換(wavelet transform)。
  • 特徵構造
    由原特徵構造新特徵。如用質量和體積來構造密度。

離散化和二元化

定義:
離散化(discretization):將連續屬性變換成分類屬性。
二元化(binarization):連續和離散屬性變換成一個或多個二元屬性。

變數變換(variable transformation)

定義:用於變數值的變換,對於每個物件,變換都作用於該物件的變數值。
兩種重要的變數變換型別:

  • 簡單函式變換
    一個簡單的數學函式(如平方根、倒數、對數)分別作用於每一個值。
  • 規範化
    使整個值的集合具有特定的性質。

相似性和相異性的度量

定義

兩個物件的相似度(similarity)的非正式定義是這兩個物件相似程度的數值度量。
兩個物件的相異度(dissimilarity)的非正式定義是這兩個物件差異程度的數值度量。

簡單屬性的相似度與相似度

x,y是兩個物件,這兩個物件都只有一個屬性,d是兩個物件之間的相異度,s是兩個物件之間的相似度。

  • 對於標稱屬性:
    如果x=y, d=0, s=1;如果x!=y,d=1, s=0
  • 對於序數屬性:
    d = |x-y|/(n-1) (值對映到整數0到n-1,其中n是值的個數)
    s = 1-d
  • 對於區間或比率屬性:
    d = |x-y|
    s = -d, s = 1/(1+d), s = e^(-d), s = 1 - (d-min_d)/(max_d-min_d)

資料物件之間的相異度

  • 閔可夫斯基距離(Minkowski distance)
    $$d(x,y) = \sqrt[r]{\sum_{k=1}^{n} \left | x_{k}-y_{k} \right |^{r}} \tag{2-1}$$
    其中,r是引數,常見有以下三種例子。
    • r=1,城市街區(也稱曼哈頓、計程車、\(L_1\)範數)距離,常見的是海明距離(Hamming distance)。
    • r=2,歐幾里得距離(\(L_2\)範數)。
    • r=\(\infty\),上確界(\(L_{max}\)或\(L_\infty\)範數)。

鄰近性度量

  • 二元資料的相似性度量
    簡單匹配係數(Simple Matching Coefficient, SMC)
    $$SMC=(f_{11}+f_{00})/(f_{11}+f_{00}+f_{10}+f_{01}) \tag{2-2}$$
    其中,
    \(f_{11}\)是x取1並且y取1的屬性個數
    \(f_{00}\)是x取0並且y取0的屬性個數
    \(f_{10}\)是x取1並且y取0的屬性個數
    \(f_{01}\)是x取0並且y取1的屬性個數
    Jaccard係數(Jaccard Coefficient)
    $$SMC=f_{11}/(f_{11}+f_{10}+f_{01}) \tag{2-3}$$
    有些情況下,x取0,y取0的屬性較多,但並不能說明這兩個物件具有相似性。
  • 餘弦相似度(cosine similarity)
    $$cos(x,y)=(x·y)/(\left \| x \right \| \left \| y \right \|)$$

選擇正確的鄰近性度量

對於許多稠密的、連續的資料,通常使用距離度量,連續屬性之間的鄰近度通常用屬性值的差來表示。
對於稀疏資料,餘弦、Jaccard和廣義Jaccard度量對於這類資料是合適的。
如果時間序列的量值是重要的,可以使用歐幾里得距離。