這份簡報檔案是關於「進階資料探勘」(Advanced Data Mining) 課程的介紹,授課教師為莊秀敏 (Hsiu-Min Chuang) 教授,隸屬於中原大學資訊工程學系。
為什麼需要資料探勘?
- 動機: 資訊的爆炸性增長(從 TB 到 PB 等級)。我們處於「資料充斥 (drowning in data),但缺乏知識 (starving for knowledge)」的狀態 。
- 需求:資料探勘的出現是為了「自動化分析巨量資料集」。
什麼是資料探勘?
- 定義:資料探勘是「從巨量資料中,萃取出有趣的 (非顯而易見、隱含的、先前未知且具有潛在用途的) 模式或知識」。
- 別名:它也被稱為 KDD (資料庫知識發現)、知識萃取、資料/模式分析等 。
Knowledge Discovery (KDD) Process
- 資料整合 (Data Integration)
- 資料清理 (Data Cleaning)
- 資料倉儲 (Data Warehouse)
- 選取任務相關資料 (Task-relevant Data / Selection)
- 資料探勘 (Data Mining)
- 模式評估 (Pattern Evaluation)
- 知識呈現 (Knowledge)
資料探勘的功能 (Patterns/Functions)
概化 (Generalization)
將低層次、詳細的資料,轉換為高層次、更易於理解的摘要資訊,助於從宏觀的角度來理解資料的總體特徵。
- 資訊整合與資料倉儲建構:
- 將來自不同來源的資料進行清理 (cleaning)、轉換 (transformation) 和整合 (integration)。
- 目標是建立一個多維度資料模型 (multidimensional data model),這也是資料倉儲 (Data Warehouse) 的基礎。
- 資料方塊技術:
- 使用可擴展的方法 (Scalable methods) 來預先計算 (computing / materializing) 各種維度組合下的彙總值 (aggregates)。
- 多維度概念描述:
這是概化的具體應用,主要分為兩種:
- 特徵化 (Characterization): 描述某一特定資料群組的總體特徵。例如:總結「高額度信用卡客戶」的共同特徵(如年齡、收入、職業分佈)。
- 區辨 (Discrimination): 比較兩個或多個不同資料群組之間的特徵差異 。例如,投影片中的例子:比較「乾燥地區 (dry region)」與「潮濕地區 (wet region)」在特性上的差異 。
關聯性分析(Association Analysis)
找出資料中經常一起出現的項目,例如「買了尿布的顧客,也很常一起買啤酒」。
- 頻繁樣式 (Frequent patterns): 指經常一起出現的項目組合 (itemsets)。例如,在超市中,「尿布」和「啤酒」是否經常被一起購買?
- 關聯規則 (Association rule): 用來表示項目間關聯性的規則。
- 「關聯 (Association)」或「相關 (Correlation)」不等於「因果關係 (Causality)」。(買尿布並不會導買啤酒)。
分類 (Classification)
為一項「監督式學習」任務,根據已知的訓練資料建立模型,用以預測未知資料的類別標籤。例如判斷信用卡交易是否為盜刷。
- 流程:
- 建立模型:依據一組已知的「訓練範例 (training examples)」來建立一個模型或函數。
- 預測未來:使用這個模型來描述和區分不同的類別,並預測「未知類別標籤」的資料。
- 範例:
- 根據「氣候 (climate)」來分類國家。
- 根據「油耗 (gas mileage)」來分類汽車。
- 典型方法:決策樹 (Decision trees)、貝氏分類 (naïve Bayesian)、支持向量機 (SVM)、神經網路 (neural networks)、迴歸 (logistic regression) 等。
- 典型應用:信用卡詐欺偵測、精準行銷、疾病分類、網頁分類等。
分群 (Cluster Analysis)
為一項「非監督式學習」任務,在沒有類別標籤的情況下(非監督式,將資料依照「群內相似度高、群間相似度低」的原則,自動分成數個群組)。
基本原則:
- 最大化「群內」相似度 (Maximizing intra-class similarity):同一群集內的資料點彼此盡可能相像。
- 最小化「群間」相似度 (Minimizing interclass similarity):不同群集之間的資料點彼此盡可能不同。
範例: 對房屋資料進行分群,以找出其分佈模式。
離群值分析 (Outlier Analysis)
偵測出「不符合資料一般行為」的資料,可用於詐欺偵測或稀有事件分析。
- 離群值 (Outlier):是一個資料物件,其行為不符合資料的「一般行為 (general behavior)」。
- 重要概念:離群值是「雜訊 (Noise)」還是「特例 (Exception)」?「一個人的垃圾可能是另一個人的寶藏 (One person’s garbage could be another person’s treasure)」。這意味著離群值雖然異常,但可能蘊含著非常重要的資訊。
時間和順序 (Time and Ordering) 相關的資料探勘功能
分析有時間順序的模式 (如先買A、再買B) ,或是結構性資料 (如社群網路、圖形)。
- 序列、趨勢與演化分析 (Sequence, trend and evolution analysis)
趨勢、時間序列與偏差分析 (Trend, time-series, and deviation analysis): 這類分析著重於資料隨時間的變化趨勢,例如使用「迴歸 (regression)」來進行「數值預測 (value prediction)」。
序列模式探勘 (Sequential pattern mining): 找出經常「依序發生」的事件模式。
- 例如:顧客「先 買了數位相機,然後 才去買大容量 SD 記憶卡」。這和關聯規則 (同時購買) 不同,這裡強調的是「先後順序」。
週期性分析 (Periodicity analysis): 找出資料中重複出現的循環或週期 (例如:季節性銷售高峰)。
基序與生物序列分析 (Motifs and biological sequence analysis): 找出在序列資料中 (例如 DNA 或蛋白質序列) 反覆出現的子序列或「基序 (motifs)」,包含「近似 (approximate)」或「連續 (consecutive)」的模式。
相似性分析 (Similarity-based analysis): 比較不同時間序列或序列模式之間的相似度。
- 探勘資料串流 (Mining data streams)
資料串流的特性是:有順序性 (Ordered)、隨時間變化 (time-varying),且可能是無限的 (potentially infinite)。例如:感測器資料、網站點擊流 (clickstreams) 或金融交易資料,這些資料必須即時且連續地進行分析。
認識你的資料
資料集的組成
- 一個資料集(Data Set)是由多個資料物件(Data Objects)所構成。
- 每個資料物件代表一個實體(Entity),也就是現實世界中可被觀察或分析的對象。
屬性描述資料物件
- 每個資料物件是由一組屬性(Attributes)來描述的。
- 在資料庫中,每一列(row)代表一個資料物件,每一欄(column)則代表一個屬性。
資料集的類型
記錄型資料
關聯式記錄(Relational Records):如資料庫中的表格,每列為一筆資料,每欄為一個屬性。
資料矩陣(Data Matrix):例如數值矩陣或交叉表(crosstabs),常見於統計分析。
文件資料(Document Data):文字文件可轉換為「詞頻向量(Term-Frequency Vector)」
team coach ball Document1 3 0 5 Document2 0 7 0 Document3 0 1 0 交易資料(Transaction Data):每筆交易包含一組項目,例如購物籃中的商品。
TID Items 1 Bread, Coke, Milk 2 Beer, Bread 3 Beer, Coke, Diaper, Milk
圖形與網路資料
這類資料具有節點與連結的結構。
- 全球資訊網(World Wide Web):網頁之間的超連結形成網路結構。
- 社群或資訊網路(Social/Information Networks):如 Facebook、LinkedIn 的人際關係圖。
- 分子結構(Molecular Structures):化學分子可表示為原子節點與鍵結邊。
有序資料
這類資料具有時間或順序性。
- 影像資料(Video Data):由一連串影像構成。
- 時間序列資料(Temporal Data):如股價、氣溫等隨時間變化的資料。
- 序列資料(Sequential Data):如顧客購物行為序列、網頁瀏覽路徑。
空間、影像與多媒體資料
這類資料通常具有位置或視覺特性。
- 空間資料(Spatial Data):如地圖、地理資訊系統(GIS)。
- 影像與影片資料(Image & Video Data):如照片、監視器錄影、醫學影像。
屬性(Attributes)概念與分類
- 屬性(也稱為維度、特徵、變數)是資料物件的特徵欄位。
- 每個屬性代表一種特性,例如:顧客的 ID、姓名、地址。
- 在資料表中,每一欄(column)就是一個屬性。
屬性類型
名目型屬性(Nominal)
- 表示分類或名稱,無順序性。
- 適合用於分類分析。
二元屬性(Binary)
- 只有兩種狀態,通常以 0 和 1 表示。
- 對稱二元(Symmetric Binary):兩種狀態同等重要,例如性別。
- 非對稱二元(Asymmetric Binary):其中一種狀態較重要,例如醫療檢測結果(陽性 vs 陰性),通常將重要狀態設為 1。
序位型屬性(Ordinal)
- 屬性值有明確的順序,但無法量化差距。
- 範例:尺寸 = {小、中、大}
數值型屬性(Numeric)
- 區間尺度(Interval-Scaled)
- 有順序,且單位間距相等,無絕對零點。
- 例,日期。
- 比例尺度(Ratio-Scaled)
- 有順序,且單位間距相等,有絕對零點。
- 例,長度、金額、計數。
- 區間尺度(Interval-Scaled)
離散與連續屬性
- 離散屬性(Discrete):只有有限或可數無限個值。
- 連續屬性(Continuous):屬性值為實數,通常以浮點數表示,實際上受限於儀器精度。
結構化資料的重要特性
維度性(Dimensionality)
- 指資料中屬性的數量,也就是每筆資料的欄位數。
稀疏性(Sparsity)
- 指資料中大多數欄位值為零或缺值,只有少數欄位有意義的值。
- 在這種情況下,「有出現」比「沒出現」更重要。
解析度(Resolution)
- 指資料的尺度或精細程度。
分布性(Distribution)
- 指資料值的分布情形,包括集中趨勢與離散程度。
- 集中性(Centrality):如平均值、中位數,反映資料的中心位置。
- 離散性(Dispersion):如變異數、標準差,反映資料的擴散程度。