数据仓库与数据挖掘
數據倉庫與數據挖掘
- 第1章 概論
- 1.1 數據倉庫
- 1.2 數據挖掘
- 第2章 數據倉庫的基本概念
- 2.1 什么是數據倉庫
- 1. 面向主題
- 2. 集成性
- 3. 數據不易丟失(穩定的)
- 4. 隨時間而變化的(時變的)
- 2.2 為什么建立數據倉庫
- 區別
- 環境分離
- 系統結構
- 2.3 數據倉庫與數據挖掘關系
- 聯系
- 2.4 數據立方體
- 1. 概念分層
- 方體的格
- 三級模型
- 1. 概念模型
- 2. 邏輯模型
- 3. 物理模型
- 5. 數據倉庫的設計
- 第3章
- 3.1 OLAP概述
- 3.2 OLAP的分析方法
- 3.3 OLAP數據組織
- 第5章 數據預處理
- 5.1 數據清洗
- 1 .空缺值處理方法
- 2. 噪聲數據的處理
- 3. 不一致數據的處理
- 5.2 數據集成和變換
- 1. 數據集成
- 2. 數據變換
- 5.3 數據歸約
- 1. 概念
- 2. 數據立方體聚集
- 3. 維歸約(重點)
- 5.4 數據離散化
- 1. 概念
- 1.自然劃分分段
- 第6章 概念描述
- 6.1 數據概化與基于匯總的特征化
- 6.2 屬性相關分析
- 1. 屬性相關分析的方法
- 2. 屬性相關分析步驟
- 3. 區分不同的類
- 5. 大型數據庫中挖掘描述統計度量
邊學邊寫,持續更新中
配合目錄用
第1章 概論
數據挖掘定義:從大量的數據中發現有用信息的過程。
數據倉庫和聯機分析處理技術(存儲)
數據挖掘:在大量的數據中挖掘感興趣的知識/規則/規律/模式/約束(分析)
1.1 數據倉庫
數據倉庫用于決策分析
- 產生
為了進一步挖掘數據資源、為了決策需要
1.2 數據挖掘
過程
- 功能
-
關聯分析
關聯規則挖掘:反映一個事件和其他事件之間依賴或關聯的知識。
廣泛用于購物籃或事物數據分析 -
聚類分析
最大化類內的相似性和最小化類間的相似性(無監督的學習方法)
例如:撲克牌劃分 -
分類挖掘
反映同類事物共同性質的特征型知識和不同事物之間的差異型特征知識(有監督的學習方法)
通過分析訓練集中的數據,為每個類別建立分類分析模型;然后用這個分類分析模型對數據庫中的其他記錄進行分類。
例如:垃圾郵件識別分類、信用卡的使用
-
聚類和分類區別
聚類是一種無指導的觀察式學習,沒有預先定義的類;
分類是有指導的示例式學習,有預先定義的類 -
孤立點分析
對差異和極端特例的描述
孤立點:事物偏離常規的異常現象,如標準類外的特例,數據聚類外的離群值等;
異常檢測通過構建正常行為模型(稱為特征描述),來檢測與特征描述嚴重偏離的新的模式。
例如:信用卡欺詐檢測、移動電話欺詐檢測、醫療分析(異常)
分析極端數據,保險公司
第2章 數據倉庫的基本概念
事務型(操作型)數據處理:數據庫
分析型數據處理:數據倉庫
知識發現:數據挖掘
2.1 什么是數據倉庫
數據倉庫是為構建分析型數據處理環境而出現的一種數據存儲和組織技術。用來保存從多個數據庫或其它信息源選取的數據,并為上層應用提供統一用戶接口,完成數據查詢和分析。
數據倉庫之父: William H.Inmon 1993
數據倉庫是一個面向主題的、集成的、隨時間而變化的、不容易丟失的數據集合,支持管理部門的決策過程.—W.H.Inmon
- 兩個主要作用:
存儲數據的一種形式
加工和集成后的再存儲
為數據驅動型的決策支持提供數據基礎
- 特征
1. 面向主題
在較高層次上對分析對象的數據進行一個完整、一致的描述,能完整、統一管理各個分析對象所涉及的企業各項數據以及數據之間的聯系
高層次:很高的數據抽象級別,如整個企業、組織
面向主題,是數據倉庫顯著區別于關系數據庫系統的一個特征
因此數據在進入數據倉庫之前,必然要經過加工和集成,將原始數據結構做一個從面向應用到面向主題的大轉變
2. 集成性
? 一個數據倉庫是通過集成多個異種數據源來構造的
? 數據倉庫中的綜合數據不能從原有的數據庫系統直接得到,需使用數據清理和數據集成技術對數據進行處理
? 主要工作:1.統一源數據中所有矛盾之處(命名約定、編碼結構、屬性度量等)2.進行數據綜合和計算
消除沖突
數據的綜合和計算
3. 數據不易丟失(穩定的)
盡管數據倉庫中的數據來自于操作數據庫,但它們卻是在物理上分離保存的
只進行兩種數據訪問:1. 數據的初始裝載 2. 查詢操作
在某個時間點保持不變
定期加載,加載后的數據極少更新。并不意味著數據倉庫中的數據不更新
4. 隨時間而變化的(時變的)
數據倉庫從歷史的角度來提供信息:時間范圍比操作數據庫系統要長的多
例如:
- 操作數據庫系統: 主要保存當前數據;
數據倉庫: 從歷史的角度提供信息(比如過去 5-10 年)
數據倉庫中的每一個關鍵結構都隱式或顯式地包含時間元素,時間維是數據倉庫中一個非常重要的維度
2.2 為什么建立數據倉庫
事務型處理:管理者 日常管理 數據庫
分析型處理:決策者 預處判斷分析 數據倉庫
區別
環境分離
轉同時進行的集成
數據倉庫的數據分為四個級別:早期細節級、當前細節級、輕度綜合級、高度綜合級
數據倉庫中的元數據描述了數據的結構、內容、索引、碼、數據轉換規則、粒度定義等
系統結構
2.3 數據倉庫與數據挖掘關系
數據倉庫–存儲技術
數據挖掘–分析技術
聯系
成功的數據挖掘的關鍵之一是通過訪問正確的、完整的和集成的數據,以進行深層次的分析,而這正是數據倉庫所能提供的
數據倉庫不僅是集成數據的一種方式,而且為數據挖掘提供了一個極佳的操作平臺
數據倉庫不是數據挖掘的必要條件
數據挖掘不一定必須建立在數據倉庫上,數據倉庫不是實施數據挖掘的必要條件
2.4 數據立方體
在數據倉庫中,數據立方體是n-D的。不只是三維的
多維數據模型為不同角度上的數據建模和觀察提供了一個良好的基礎
1. 概念分層
在數據倉庫中,一個概念分層(concept hierarchy)定義一個映射序列,將低層概念映射到更一般的高層概念
對于一個給定的屬性或維,根據不同的用戶視圖,可能有多個概念層次。例如:
允許我們在各種抽象級審查和處理數據
作用:
方體的格
定義:給定一個維的集合,將在不同匯總級別上給出的數據立方體稱為方體的格
每個方體的格都在不同的匯總級或不同的數據子集顯示數據
頂點方體:0維方體存放最高層的匯總
基本方體:存放最底層匯總的方體
三級模型
- 概念模型
從客觀世界到主觀認識的映射
首先將現實世界抽象為概念模型,然后再用適合計算機世界的模型和語言來描述 - 邏輯模型
邏輯模型描述了數據倉庫主題的邏輯實現. - 物理模型
邏輯模型在數據倉庫中的實現,如數據存儲結構、存儲策略、索引策略、存儲分配優化等
1. 概念模型
是數據倉庫的數據模型的第一層或最高層
數據倉庫用“信息包圖”表示概念模型
信息包圖:提供了分析人員思維模式的可視化表示
2. 邏輯模型
是數據倉庫數據模型的第二層
通常有三種邏輯模型表示法:星型模型、雪花模型、事實星座模型
- 星型模型
事實表在中心,周圍圍繞地連接著維表
星型模型中,每維只用一個表表示,每個表包含一組屬性
這一限制可能造成某些冗余
雪花模型
是星型模型的變種
在雪花模型中,某些維表是規范化的,通過把數據進一步分解到附加表中,以便減少冗余 — 表套表
- 事實星座模型
復雜的應用(如多主題的數據倉庫)可能需要多個事實表共享維表
這種模式可以看作星型模式集,因此稱為星系模式
3. 物理模型
是邏輯模型在數據倉庫中的實現
主要進行:數據存儲結構、存儲策略、索引策略、存儲分配優化等工作
常見存儲結構:1. 分布式存儲 2. 集中式存儲
5. 數據倉庫的設計
-
處理類型不同
DB : 操作型數據環境,面向業務
DW: 面向主題的分析型數據環境,面向分析,從基本主題開始,不斷發展新主題 -
面向需求不同
DB:業務需求
DW:分析需求 -
設計目標不同
DB:OLTP
DW:OLAP -
數據來源不同
DB:企業的業務流程中產生的數據
DW:系統內部,主要從OLTP系統中獲取,經過轉換、重組、綜合; 同時包括部分外部信息 -
設計方法不同
DB:SDLC – 應用需求驅動
DW:CLDS – 數據驅動(主要)+ 需求驅動
數據驅動是指根據當前數據基礎和質量等情況,進行數據源分析
需求驅動是指根據業務方向性需求、業務問題等,確定系統范圍和需求框架
第3章
3.1 OLAP概述
E.F.Codd 提出了OLAP概念
多維數據庫和多維分析的概念
定義:聯機分析處理是共享多維信息的、針對特定問題的聯機數據訪問和分析的快速軟件技術
OLAP是針對特定問題的聯機數據訪問和分析處理。使分析人員能迅速、一致、交互地從各個方面觀察信息,以達到深入理解數據的目的
OLAP的目標是滿足決策支持或多維環境下特定的查詢和報表需求,其技術核心是“維”這一概念,因此OLAP也可以說是多維數據分析工具的集合
數據倉庫側重于存儲和管理面向主題的數據;
OLAP則側重于數據倉庫中的數據分析,并將其轉換成輔助決策的信息。
- OLAP特性
快速性
可分析性
多維性
信息性
3.2 OLAP的分析方法
切片 切塊 旋轉 鉆取
-
切片
在多維數組的某一維上選定一個維成員,即從n維數組選取n-1維子集.(降維操作)
選擇多維數組的一個二維子集 -
切塊
定義1:在多維數組的某一維上選定某一區間的維成員,即限制某一維的取值區間
切片是切塊的特例,即限制的取值區間只取一個維成員
切塊可看作由多個鄰接的切片迭合而成
定義2:選定多維數組的一個三維子集 -
鉆取
下鉆:加深細節
上鉆:靠近宏觀 -
旋轉
改變一個報告或頁面顯示的內容
3.3 OLAP數據組織
ROLAP:利用關系數據庫來存儲和管理基本數據和聚合數據,并利用一些中間件來支持缺失數據的處理
具有良好的可擴展性
MOLAP:利用多維數據庫來存放和管理基本數據和聚合數據
對預綜合的數據進行快速索引
HOLAP:對最常用的維,使用多維數據庫存儲;對于不常用的維度,采用ROLAP存儲;充分利用ROLAP的可伸縮性和MOLAP的快速計算
第5章 數據預處理
-
數據與處理的重要性
- 雜亂性:命名規則不同
- 重復性:同一客觀事物在數據庫中存在兩個以上相同的物理描述
- 不完整性:由于實際系統設計時存在的缺陷以及使用過程中的一些人為因素,數據記錄可能會出現數據值的丟失或不確定
- 噪聲數據:數據中存在著錯誤或異常(偏離期望值)
-
數據預處理的常見方法
-
數據清理(清洗) 去掉數據中的噪聲,糾正不一致
-
數據集成 將多個數據源合并成一致的數據存儲,構成一個完整的數據集,如數據倉庫
-
數據變換(轉換) 將一種格式的數據轉換為另一格式的數據(如規范化)
-
數據歸約(消減) 通過聚集、刪除冗余屬性或聚類等方法來壓縮數據
5.1 數據清洗
- 臟數據的來源:
1 .空缺值處理方法
2. 噪聲數據的處理
分箱方法 通過考察“鄰居”(即周圍的值)來平滑存儲數據的值 局部平滑
需要確定方法 如何分箱 如何對
-
分箱步驟
-
排序數據,它們分到等深(等寬)的箱中
1.1 等深分箱 按記錄數進行分箱,每箱具有相同的記錄數,每箱的記錄數稱為箱的權重,也稱箱子的深度
1.2 等寬分箱 在整個屬性值的區間上平均分布,即每個箱的區間范圍設定為一個常量,稱為箱子的寬度 用的最多 處理極端數值最佳方法
-
然后可以按箱的平均值、按箱中值或者按箱的邊界等進行平滑
按箱的平均值平滑:箱中每一個值被箱中的平均值替換
按箱的中值平滑:箱中的每一個值被箱中的中值替換
按箱的邊界平滑:箱中的最大和最小值被視為箱邊界,箱中的每一個值被最近的邊界值替換
聚類 相似或相鄰近的數據聚合在一起形成各個聚類集合,而那些位于聚類集合之外的數據對象,被視為孤立點
特點:直接形成簇并對簇進行描述,不需要任何先驗知識
通過聚類分析查找孤立點,消除噪聲
計算機和人工檢查結合 計算機檢測可疑數據,然后對它們進行人工判斷
回歸 發現兩個相關的變量之間的變化模式,利用回歸分析方法所獲得的擬合函數,幫助平滑數據及除去噪聲
3. 不一致數據的處理
5.2 數據集成和變換
數據集成:將來自多個數據源的數據合并到一起
數據變換:對數據進行規范化操作,將其轉換成適合于數據挖掘的形式
1. 數據集成
模式匹配問題 冗余問題 數據值沖突問題
2. 數據變換
平滑處理:從數據中消除噪聲; 分箱
聚集操作:對數據進行綜合;
數據規范化:將數據轉換到一個較小的范圍之內
數據規范化常用方法:將數據按比例縮放至一個小的特定區間
最小-最大規范化;
零-均值規范化(z-score規范化);
小數定標規范化
5.3 數據歸約
1. 概念
? 壓縮數據集的規模
? 數據消減或約簡,是在不影響最終挖掘結果的前提下,縮小所挖掘數據的規模。
? 對歸約后的數據集進行挖掘可提高挖掘的效率,并產生相同(或幾乎相同)的結果
-
標準
- 用于數據歸約的時間 不應當超過或“抵消在歸約后的數據集上挖掘節省的時間
- 歸約得到的數據比原數據小得多,但可以產生相同或幾乎相同的分析結果
-
策略
數據立方體聚集
維歸約
數據離散化
2. 數據立方體聚集
略
3. 維歸約(重點)
主要用于檢測并刪除不相關、弱相關或冗余的屬性維
最常用的方法:屬性子集選擇。
目標:尋找出最小的屬性子集并確保新數據子集的概率分布盡可能接近原來數據集的概率分布
方法:啟發式算法
對于屬性子集選擇,通常使用壓縮搜索空間的啟發式算法。它們的策略是做局部最優選擇,期望由此導致全局最優解
常用的啟發式方法:
5.4 數據離散化
1. 概念
-
三種類型的屬性值:
標稱型(無序) 不可比不可加
序數型(有序) 可比不可加
連續型 可比可加 -
常用的離散化方法
- 分箱:屬性的值可以通過將其分配到各分箱中而將其離散化
- 基于熵的離散化:通過信息熵度量,實現離散化
- 通過自然劃分分段:3-4-5自然劃分分段法
- 聚類:聚類算法可以將數據集劃分為若干類或組,每個類構成概念層次樹的一個節點;每個類還可以進一步分解為若干子類,從而構成更低水平的層次
1.自然劃分分段
思想:將數值區域劃分為相對一致的、易于閱讀的、看上去更直觀或自然的區間
自然劃分的3-4-5規則常可以將數值數據劃分為相對一致和“自然”的區間。一般的,根據最重要的數字上的值區域,遞歸的和逐層的將給定的數據區域劃分為3、4或5個等寬區間。
步驟:
將該規則遞歸的應用于每個子區間,產生給定數值屬性的概念分層;
最高有效位:絕對值最大 看是10的幾次方
例如; 252 劃分為 [0,300]
對于數據集中出現的最大值和最小值的極端分布,為了避免上述方法出現的結果扭曲,可以在頂層分段時,選用一個大部分的概率空間。e.g. 5%-95%
第6章 概念描述
從數據分析角度,兩類DM:描述式數據挖掘、預測式數據挖掘
特征化:提供給定數據集的簡潔匯總
比較(區分):提供兩個或多個數據集的比較描述
6.1 數據概化與基于匯總的特征化
數據概化可以將大量的相關數據從一個較低的概念層次轉化到一個比較高的層次
- 方法
數據立方體(或者OLAP方法)
面向屬性的歸納方法
在數據立方體上進行計算和存儲結果
優點:
數據概化的一種有效實現
效率高,能夠計算多種不同的度量值
概化和特征分析通過一系列的數據立方體操作完成,如roll-down和roll-up操作
–
數據立方體是數據的多維建模和表示,由維和事實組成
維 — 屬性 事實 — 數據
數據立方體聚集定義 — 將n維數據立方體聚集為 n-1 維的數據立方體
–
缺點
維和度量的數據類型有限,數據立方體和OLAP只能處理非數值 類型(離散類型)的維和簡單聚集數值類型的度量值
大部分現有商業系統中,只能為非數值類型的維產生概念分層
缺乏智能分析,不能自動確定分析中該使用哪些維,應該概化到哪個層次
基本思想
a. 使用關系數據庫查詢收集任務相關的數據
b. 屬性刪除;屬性概化
c. 通過合并相等的、概化的廣義元組,并累計它們對應的計數值進行聚集操作
d. 通過與用戶交互,將廣義關系以圖表或規則等形式,提交給用戶
屬性刪除:若一個屬性(在初始數據集中)有許多不同數值
且1.該屬性上沒有定義概化操作符 2. 它的較高層概念可用其他屬性表示
不重要且可替代
屬性概化
若一個屬性(在初始數據集中)有許多不同數值,且:在該屬性上存在概化操作符,則應當選擇該概化操作符
有簡稱用簡稱
大量不同值處理:1. 屬性概化閾值控制 2. 概化關系閾值控制
屬性概化閾值控制:取值范圍一般為2到8,可以是指定的也可以是默認的
如果用戶感到一個屬性概化達到的層次太高,可以加大閾值(屬性下鉆);反之,可減小閾值(屬性上卷)
概化關系閾值控制:控制最后關系/規則的大小
為概化關系設置一個閾值,如果概化關系中不同元組的個數超過該閾值,則應進一步概化;否則,不再概化。
閾值可在數據挖掘系統中預先設定(通常為10~30),或由用戶或專家設置、調整
如果用戶感到概化的關系太少,可以加大閾值(屬性下鉆);反之,可減小閾值(屬性上卷)
面向屬性歸納結果的表示方法
t-weight(t-權):規則興趣度度量指標
6.2 屬性相關分析
過濾掉統計上不相關或弱相關的屬性,而僅保留對手頭挖掘任務最相關的屬性
1. 屬性相關分析的方法
基本思想:對給定的數據集,計算某種度量,用于量化屬性與給定的類或概念間的相關性
常用的度量包括信息增益、GINI索引、不確定性和相關系數等
信息增益法:
ID3算法 決策樹
在ID3算法中,決策節點屬性的選擇運用了信息論中的熵概念作為啟發式函數
在這種屬性選擇方法中,選擇具有最大信息增益的屬性作為當前劃分節點
通過這種方式選擇的節點屬性可以保證決策樹具有最小的分枝數量,使得到的決策樹冗余最小
2. 屬性相關分析步驟
3. 區分不同的類
- 比較概念描述的步驟
- 比較概念描述結果的表示
與特征化概念描述類似,比較概念描述也可采用多種形式,如:關系表、組合表、棒圖、曲線和規則的形式加以表示
基于規則表示方法
5. 大型數據庫中挖掘描述統計度量
關系數據庫系統通常提供了5個內置的合計函數:count(), sum(), avg(), max() 和 min()。這些函數可以對數據進行高效運算,仍可用于多維數據的統計度量
除此之外,在許多挖掘任務中,需要了解更多有關數據的中心趨勢(central tendency)和數據分布(data dispersion)等數據特點
中心趨勢:均值(average)、中位數(median)、模(mode) ;
數據分布:四分位數(quartiles)、方差、標準差等
數據離散度的最常用度量是四分位數和標準差
四分位數;數值序下的數據集合的第k個百分位數是具有如下性質的值x:數據項的百分之k在x上或低于x
中間四分位數區間IQR=Q3-Q1
識別孤立點:落在至少高于第三個四分位數或低于第一個四分位數1.5*IQR處的值
總結
- 上一篇: 数据库宿舍管理系统
- 下一篇: BP神经网络公式推导