數據挖掘筆記(一)


一些概念與定義

  數據挖掘是從大量數據中挖掘有趣模式和知識的過程。數據源包括數據庫、數據倉庫、Web、其他信息存儲庫或動態地流入系統的數據。

  數據倉庫是一個從多個數據源收集的信息存儲庫,存放在一致的模式下,並且通常駐留在單個站點上。通常,數據倉庫用稱做數據立方體(data cube)的多維數據結構建模。

  數據特征化(data characterization)是目標類數據的一般特性或特征的匯總。

  數據區分(data discrimination)是將目標類數據對象的一般特性與一個或多個對比類對象的一般特性進行比較。

  頻繁模式(frequent pattern)是在數據中頻繁出現的模式。存在多種類型的頻繁模式,包括頻繁項集、頻繁子序列(又稱序列模式)和頻繁子結構。

  頻繁項集一般是指頻繁地在事務數據集中一起出現的商品的集合。如小賣部中被許多顧客頻繁地一起購買的牛奶和面包。頻繁出現的子序列,如顧客傾向於先購買便攜機,再購買數碼相機,然后再購買內存卡這樣的模式就是一個(頻繁)序列模式。子結構可能涉及不同的結構形式(例如,圖、樹或格),可以與項集或子序列結合在一起。如果一個子結構頻繁地出現,則稱它為(頻繁)結構模式。

  分類(classification)是這樣的過程,它找出描述和區分數據類或概念的模型(或函數),以便能夠使用模型預測類標號未知的對象的類標號。

  導出模型是基於對訓練數據集(即,類標號已知的數據對象)的分析。該模型用來預測類標號未知的對象的類標號。導出的模型可以用多種形式表示,如分類規則(即IF-THEN規則)、決策樹、數學公式或神經網絡。

  決策樹是一種類似於流程圖的樹結構,其中每個結點代表在一個屬性值上的測試,每個分支代表測試的一個結果,而樹葉代表類或類分布。容易把決策樹轉換成分類規則。

  神經網絡是一組類似於神經元的處理單元,單元之間加權連接。

  分類預測類別(離散的、無序的)標號,而回歸建立連續值函數模型。也就是說,回歸用來預測缺失的或難以獲得的數值數據值。

  相關分析(relevance analysis)可能需要在分類和回歸之前進行,它試圖識別與分類和回歸過程顯著相關的屬性。

  數據集中可能包含一些數據對象,它們與數據的一般行為或模型不一致。這些數據對象是離群點(outlier)。

  數據挖掘吸納了諸如統計學、機器學習、模式識別、數據庫和數據倉庫、信息檢索、可視化、算法、高性能計算和許多應用領域的大量技術。

和數據有關的一些筆記

  屬性(attribute)是一個數據字段,表示數據對象的一個特征。

  用來描述一個給定對象的一組屬性稱做屬性向量(或特征向量)。涉及一(兩)個屬性(或變量)的數據分布稱做單(雙)變量分布

  ①標稱屬性(nominal attribute)的值是一些符號或事物的名稱。每個值代表某種類別、編碼或狀態,因此標稱屬性又被看做是分類的(categorical)。在計算機科學中,這些值也被看做是枚舉的(enumeration)。

  ②二元屬性(binary attribute)是一種標稱屬性,只有兩個類別或狀態:0或1,其中0通常表示該屬性不出現,而1表示出現。二元屬性又稱布爾屬性,如果兩種狀態對應於true和false的話。

  一個二元屬性是對稱的,如果它的兩種狀態具有同等價值並且攜帶相同的權重;即關於哪個結果應該用0或1編碼並無偏好。

  一個二元屬性是非對稱的,如果其狀態的結果不是同樣重要的。

  ③序數屬性(ordinal attribute)是一種屬性,其可能的值之間具有有意義的序或秩評定(ranking),但是相繼值之間的差是未知的。如成績A+、A、A一、B+等。

  ④數值屬性(numeric attribute)是定量的,即它是可度量的量,用整數或實數值表示。數值屬性可以是區間標度的或比率標度的。

  區間標度(interval-scaled)屬性用相等的單位尺度度量。區間屬性的值有序,可以為正、0或負。因此,除了值的秩評定之外,這種屬性允許我們比較和定量評估值之間的差。例如,temperature就是區間標度的。

  比率標度(ratio-scaled)屬性是具有固有零點的數值屬性。也就是說,如果度量是比率標度的,則我們可以說一個值是另一個的倍數(或比率)。此外,這些值是有序的,因此我們可以計算值之間的差,也能計算均值、中位數和眾數。

  ⑤離散屬性與連續屬性機器學習領域開發的分類算法通常把屬性分成離散的或連續的。每種類型都可以用不同的方法處理。離散屬性具有有限或無限可數個值,可以用或不用整數表示。如果屬性不是離散的,則它是連續的

  數據的一些統計描述:

  ①中心趨勢度量均值、中位數和眾數。

  它度量數據分布的中部或中心位置。直觀地說,給定一個屬性,它的值大部分落在何處。

  盡管均值是描述數據集的最有用的單個量,但是它並非總是度量數據中心的最佳方法。主要問題是,均值對極端值(例如,離群點)很敏感。為了抵消少數極端值的影響,我們可以使用截尾均值(trimmed mean),即丟棄高低極端值后的均值。

  對於傾斜(非對稱)數據,數據中心的更好度量是中位數(median)。中位數是有序數據值的中間值。它是把數據較高的一半與較低的一半分開的值。

  當觀測的數量很大時,中位數的計算開銷很大。我們可以用插值計算整個數據集的中位數的近似值。

  眾數是另一種中心趨勢度量。數據集的眾數(mode)是集合中出現最頻繁的值。因此,可以對定性和定量屬性確定眾數。可能最高頻率對應多個不同值,導致多個眾數。具有一個、兩個、三個眾數的數據集合分別稱為單峰的(unimodal)、雙峰的(bimodal)和三峰的(trimodal)。如果每個數據值僅出現一次,則它沒有眾數。

  在大部分實際應用中,數據都是不對稱的。它們可能是正傾斜的,其中眾數出現在小於中位數的值上;或者是負傾斜的,其中眾數出現在大於中位數的值上。

  ②度量數據散布極差、四分位數、方差、標准差和四分位數極差、五數概括、盒圖與離群點

  分位數(quantile)是取自數據分布的每隔一定間隔上的點,把數據划分成基本上大小相等的連貫集合。

  第1個和第3個四分位數之間的距離是散布的一種簡單度量,它給出被數據的中間一半所覆蓋的范圍。該距離稱為四分位數極差(IQR),定義為$$I Q R=Q_{3}-Q_{1}$$

  因為Q1、中位數和Q3不包含數據的端點(例如尾)信息,分布形狀的更完整的概括可以通過同時也提供最高和最低數據值得到。這稱做五數概括。分布的五數概括(five-number summary)由中位數(Q2)、四分位數Q1和Q3、最小和最大觀測值組成,按次序Minimum,Q1,Median,Q3,Maximum寫出。

  盒圖(boxplot)是一種流行的分布的直觀表示。盒圖體現了五數概括:

  盒的端點一般在四分位數上,使得盒的長度是四分位數極差IQR。

  中位數用盒內的線標記。

  盒外的兩條線(稱做胡須)延伸到最小(Minimum)和最大(Maximum)觀測值。

  當處理數量適中的觀測值時,值得個別地繪出可能的離群點。在盒圖中這樣做:僅當最高和最低觀測值超過四分位數不到1.5×lQR時,胡須擴展到它們。否則,胡須在出現在四分位數的1.5×IQR之內的最極端的觀測值處終止,剩下的情況個別地繪出。盒圖可以用來比較若干個可比較的數據集。

  

  對於部門1,我們看到銷售商品單價的中位數是80美元,Q1是60美元,Q3是100美元。注意,該部門的兩個邊遠的觀測值被個別地繪出,因為它們的值175和202都超過IQR的1.5倍,這里IQR=40。

  盒圖可以在$O(n \log n)$時間內計算。依賴於所要求的質量,近似盒圖可以在線性或子線性時間內計算。

   方差與標准差都是數據散布度量,它們指出數據分布的散布程度。低標准差意味數據觀測趨向於非常靠近均值,而高標准差表示數據散布在一個大的值域中

度量數據的相似性與相異性

①數據矩陣與相異性矩陣

  數據矩陣:存放n個對象的p個屬性。$$\left[\begin{array}{ccccc}{x_{11}} & {\cdots} & {x_{1 f}} & {\cdots} & {x_{1 p}} \\ {\cdots} & {\cdots} & {\cdots} & {\cdots} & {\cdots} \\ {x_{i 1}} & {\cdots} & {x_{i f}} & {\cdots} & {x_{i p}} \\ {\cdots} & {\cdots} & {\cdots} & {\cdots} & {\cdots} \\ {x_{n 1}} & {\cdots} & {x_{n f}} & {\cdots} & {x_{n p}}\end{array}\right]$$

  相異性矩陣:存放n個對象兩兩之間的鄰近度。$$\left[\begin{array}{ccccc}{0} \\ {d(2,1)} & {0} \\ {d(3,1)} & {d(3,2)} & {0} \\ {\vdots} & {\vdots} & {\vdots} \\ {d(n, 1)} & {d(n, 2)} & {\cdots} & {\cdots} & {0}\end{array}\right]$$

  $d(i,j)$是對象i和對象j之間的相異性或“差別”的度量。對象$i$和$j$彼此高度相似或“接近”時,其值接近於0;而越不同,該值越大。

  數據矩陣經常被稱為二模(two-mode)矩陣。相異性矩陣只包含一類實體,因此被稱為單模(one-mode)矩陣。許多聚類和最近鄰算法都在相異性矩陣上運行。

  相似性度量可以表示成相異性度量的函數。$\operatorname{sim}(i, j)=1-d(i, j)$

②標稱屬性的鄰近性度量

  標稱屬性可以取兩個或多個狀態,如顏色可以有5種狀態:紅、黃、綠、粉紅和藍。

  設一個標稱屬性的狀態數目是M。這些狀態可以用字母、符號或者一組整數(如1,2,…,M)表示。

  兩個對象i和i之間的相異性可以根據不匹配率來計算:$$d(i, j)=\frac{p-m}{p}$$

  或者相似性為:$$\operatorname{sim}(i, j)=1-d(i, j)=\frac{m}{p}$$

  其中,m是匹配的數目(即i和i取值相同狀態的屬性數),而p是刻畫對象的屬性總數。

  例子:

  

  假設只有對象標識符和屬性$test-1$是可用的,其中$test-1$是標稱的,計算相異性矩陣:我們令p=1,使得當對象$i$和$j$匹配時,$d(i,j)$=0;當對象不同時,$d(i,j)$=1。於是,我們得到相異性矩陣$$\left[\begin{array}{llll}{0} & {} & {} \\ {1} & {0} & {} \\ {1} & {1} & {0} \\ {0} & {1} & {1} & {0}\end{array}\right]$$

  可以看出除了對象1和4之外,所有對象都互不相似。

③二元屬性的鄰近性度量

 

  通過列聯表來計算兩個二元屬性之間的相異性:

  由給定的二元數據計算相異性矩陣。如果所有的二元都被看做具有相同的權重,則我們得到一個兩行兩列的列聯表:

  

  其中,$q$是對象$i$和$i$都取1的屬性數;

  $r$是在對象$i$中取1、在對象$j$中取0的屬性數;

  $s$是在對象$i$中取0、在對象$j$中取1的屬性數;

  $t$是對象$i$和$j$都取0的屬性數。

  屬性的總數是$p$,其中$p=g+r+s+t$。

  基於對稱二元屬性的相異性稱做對稱的二元相異性。如果對象$i$和$j$都用對稱的二元屬性刻畫,則$i$和$j$的相異性為$$d(i, j)=\frac{r+s}{q+r+s+t}$$

  對於非對稱的二元屬性,兩個狀態不是同等重要的。給定兩個非對稱的二元屬性,兩個都取值1的情況(正匹配)被認為比兩個都取值0的情況(負匹配)更有意義。因此,這樣的二元屬性經常被認為是“一元的”(只有一種狀態)。基於這種屬性的相異性被稱為非對稱的二元相異性,其中負匹配數t被認為是不重要的,因此在計算時被忽略$$d(i, j)=\frac{r+s}{q+r+s}$$

  而對應的非對稱的二元相似性可以表示為$\operatorname{sim}(i, j)=\frac{q}{q+r+s}=1-d(i, j)$,$\operatorname{sim}(i, j)$被稱做$Jaccard$系數,

  例子:

  name是對象標識符,gender是對稱屬性,其余的屬性都是非對稱二元的。

  對於非對稱屬性,值Y(yes)和P(positive)被設置為1,值N(no或negative)被設置為0。

  $Jack$、$Mary$和$Jim$兩兩之間的距離如下:$$\begin{aligned} d(\text { Jack, }, \text { Jim }) &=\frac{1+1}{1+1+1}=0.67 \\ d(\text { Jack, Mary }) &=\frac{0+1}{2+0+1}=0.33 \\ d(\text { Jim }, \text { Mary }) &=\frac{1+2}{1+1+2}=0.75 \end{aligned}$$

  因為具有最高的相異性,所以$Jim$和$Mary$不大可能患類似的疾病。而$Jack$和$Mary$最可能患類似的疾病。

④數值屬性的相異性:閔可夫斯基距離

  計算數值屬性刻畫的對象的相異性的距離度量如下:

  用p個屬性來表示n個樣本的數據矩陣:$$\left[\begin{array}{ccc}{x_{11}} & {\cdots} & {x_{1 p}} \\ {\vdots} & {} & {\vdots} \\ {x_{n 1}} & {\cdots} & {x_{n p}}\end{array}\right]$$

  歐幾里得距離的計算公式為:$$d(i, j)=\sqrt{\left(x_{i 1}-x_{j 1}\right)^{2}+\left(x_{i 2}-x_{j 2}\right)^{2}+\cdots+\left(x_{i p}-x_{j p}\right)^{2}}$$

  $i=\left(x_{i 1}, x_{i 2}, \cdots, x_{i p}\right)$和$j=\left(x_{j 1}, x_{j 2}, \cdots, x_{j p}\right)$是兩個被p個數值屬性描述的對象,歐幾里得距離即這兩個對象的直線距離。

  曼哈頓距離的計算公式為:$$d(i, j)=\left|x_{i+}-x_{j 1}\right|+\left|x_{2}-x_{j 2}\right|+\cdots+\left|x_{i p}-x_{i p}\right|$$

  曼哈頓距離又稱城市塊距離,表示城市兩點之間的街區距離。如圖:

  圖中紅線代表曼哈頓距離綠線代表歐氏距離,也就是直線距離,而藍色黃色代表等價的曼哈頓距離

  閔可夫斯基距離是以上兩個距離的推廣的計算公式為:$$d(i, j)=\sqrt[q]{\left|\left(x_{i 1}-x_{j 1} |\right)^{q}+\left(\left|x_{i 2}-x_{j 2}\right|\right)^{q}+\cdots+\left(\left|x_{i p}-x_{j p}\right|\right)^{q}\right.}$$

  q為正整數,q=1時為曼哈頓距離;q=2時為歐幾里得距離。

  上確界距離(又稱切比雪夫(Chebyshev)距離)是h→oo時閔可夫斯基距離的推廣。$$d(i, j)=\lim _{h \rightarrow \infty}\left(\sum_{f=1}^{p}\left|x_{i f}-x_{i f}\right|^{h}\right)^{\frac{1}{h}}=\max _{f}\left|x_{i f}-x_{i f}\right|$$

  

⑤混合類型屬性的相異性

  如何計算混合屬性類型的對象之間的相異性?將不同的屬性組合在單個相異性矩陣中,把所有有意義的屬性轉換到共同的區間[0.0,1.0]上

  假設數據集包含$p$個混合類型的屬性,對象$i$和$j$之間的相異性$d(i,j)$定義為:$$d(i, j)=\frac{\sum_{f=1}^{p} \delta_{i j}^{(f)} d_{i j}^{(f)}}{\sum_{f=1}^{p} \delta_{i j}^{(f)}}$$

  例子:

  根據數值屬性的規則,我們令${\max _h}{x_h} = 64,{\min _h}{x_h} = 22$。二者之差用來規格化相異性矩陣的值。結果,$test-3$的相異性矩陣為:$$\left[\begin{array}{llll}{0} & {} & {} & {} \\ {0.55} & {0} & {} & {} \\ {0.45} & {1.00} & {0} & {} \\ {0.40} & {0.14} & {0.86} & {0}\end{array}\right]$$
  可以得到:$d(3,1)=\frac{1(1)+1(0.5)+1(0.45)}{3}=0.65$。由三個混合類型的屬性所描述的數據得到的結果相異性矩陣如下:$$\left[\begin{array}{llll}{0} & {} & {} & {} \\ {0.85} & {0} & {} & {} \\ {0.65} & {0.83} & {0} & {} \\ {0.13} & {0.71} & {0.79} & {0}\end{array}\right]$$

  基於對象1和對象4在屬性test-1和test-2上的值,我們可以直觀地猜測出它們兩個最相似。這一猜測通過相異性矩陣得到了印證,因為$d(4,1)$是任何兩個不同對象的最小值。類似地,相異性矩陣表明對象2和對象4最不相似。

⑥余弦相似性

  詞頻向量的引入:文檔用數以千計的屬性表示,每個記錄文檔中一個特定詞(如關鍵詞)或短語的頻度。這樣,每個文檔都被一個所謂的詞頻向量(term-frequency vector)表示。而且,詞頻向量通常很長,並且是稀疏的(即,它們有許多0值)。我們想要探索兩個文檔共有的詞和詞頻,就需要忽略0匹配的數據。但是因為數據的稀疏性,傳統的距離度量效果不好,便引入了余弦相似性。

  余弦相似性:余弦相似性是一種度量,它可以用來比較文檔,或針對給定的查詢詞向量對文檔排序。令$x$和$y$是兩個待比較的向量,使用余弦度量作為相似性函數。$$\operatorname{sim}(x, y)=\frac{x \cdot y}{\|x\|\|y\|}$$

  余弦值0意味兩個向量呈90°夾角(正交),沒有匹配。余弦值越接近於1,夾角越小,向量之間的匹配越大

  當屬性是二值屬性時,余弦相似性函數可以用共享特征或屬性解釋。$$\operatorname{sim}(x, y)=\frac{x \cdot y}{x \cdot x+y \cdot y-x \cdot y}$$

  這是$x$和$y$所共有的屬性個數與x或y所具有的屬性個數之間的比率。這個函數被稱為$Tanimoto$系數或$Tanimoto$距離,它經常用在信息檢索和生物學分類中。

  例子:

  $x=(5,0,3,0,2,0,0,2,0,0)$和$y=(3,0,2,0,1,1,0,1,0,1)$,計算這兩個向量之間的余弦相似性。$$\begin{array}{l}{x \cdot y=5 \times 3+0 \times 0+3 \times 2+0 \times 0+2 \times 1+0 \times 1+0 \times 0+2 \times 1+0 \times 0+0 \times 1=25} \\ {\|x\|=\sqrt{5^{2}+0^{2}+3^{2}+0^{2}+2^{2}+0^{2}+0^{2}+2^{2}+0^{2}+0^{2}}=6.48} \\ {\|y\|=\sqrt{3^{2}+0^{2}+2^{2}+0^{2}+1^{2}+1^{2}+0^{2}+1^{2}+0^{2}+1^{2}}=4.12} \\ {\operatorname{sim}(x, y)=0.94}\end{array}$$

  所以,這兩個文檔被認為是高度相似的。

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM