數據挖掘技術 知識點整理

ch01 緒論

課內重點

Q1. 數據倉庫的四個特徵
  • 面向主題
  • 集成的
  • 不可修改
  • 隨時間變化
Q2. 數據倉庫數據的粒度與組織
  • 數據的粒度是指數據倉庫的數據單元中所保存數據的綜合程度
  • 數據的綜合程度越高,其粒度越粗
  • 數據倉庫存儲的數據粒度越細,則佔用的存儲空間越大,但提供的更細節的查詢
Q3. 知識發現概念
  • 定義:知識發現(KDD)就是採用有效算法從大量的、不完全的、有噪聲的、模糊和隨機的數據中識別出有效的、新穎的、潛在有用乃至最終可理解的模式(Pattern)的非平凡過程
  • 過程:
    • 數據採集
    • 數據預處理
    • 數據挖掘
    • 知識評價
    • 知識應用
  • 知識發現過程中一個特定關鍵的步驟:數據挖掘
Q4. 數據挖掘的數據來源
  • 數據庫
    • 傳統數據庫(DB)
    • 數據倉庫(DW)
    • 空間數據庫(Spatial Database)
    • 時態數據庫和時間序列數據庫(Temporal Database and Time-Series Database)
    • 多媒體數據庫(Multimedia Database)
    • 文本數據庫(Text Database)
  • 非數據庫
    • 數據流(Data Stream)
    • Web數據
Q5. 數據挖掘的步驟
  • 問題定義
  • 數據準備
    • 數據抽取
    • 數據預處理
    • 數據存儲
  • 挖掘實施
  • 評估解釋
  • 知識應用
    在這裏插入圖片描述
Q6. 數據倉庫與數據挖掘的區別

在這裏插入圖片描述

  • 結論:數據倉庫不是爲數據挖掘而生的,反過來數據挖掘也不是爲數據倉庫而活。它們是支持決策的兩個相對獨立的知識體系
Q7. 數據倉庫與數據挖掘的聯繫

一箇中心(決策支持),兩個基本點(DW,DM)

  • DW爲DM提供了更好的、更廣泛的數據源
  • DW爲DM提供了新的數據支持平臺
  • DW爲DM提供了方便
  • DM爲DW提供了更好的決策支持工具
  • DM爲DW的數據組織提出了更高的要求
  • DM爲DW提供了廣泛的技術支持

課後練習題

4. 簡述數據倉庫的定義

答: 數據倉庫是一個面向主題的集成的不可修改的隨時間變化的,支持管理決策的數據集合

5. 簡述數據庫與數據倉庫的關係

答:數據倉庫,是在數據庫已經大量存在的情況下,爲了進一步挖掘數據資源、爲了決策需要而產生的,數據倉庫的出現,並不是要取代數據庫。目前,大部分數據倉庫還是用關係數據庫管理系統來管理的。可以說,數據庫、數據倉庫相輔相成的

相關:
數據庫與數據倉庫的區別:

  • 數據庫是面向事務設計的,數據倉庫是面向主題設計的
  • 數據庫一般存儲在線交易數據,數據倉庫存儲的一般是歷史數據
  • 數據庫是爲捕獲數據而設計,數據倉庫是爲分析數據而設計
  • 事務系統是實時的,而分析系統是事後
6. 簡述數據倉庫特徵

答:

  • 面向主題
  • 集成的
  • 不可修改
  • 隨時間變化
11. 簡述數據挖掘的主要步驟

答:

  • 問題定義
  • 數據準備
  • 挖掘實施
  • 評估解釋
  • 知識應用

ch02 數據倉庫原理

課內重點

Q1. 多數據源的問題
  • 數據不一致:數據之間的矛盾性和不相容性。如職務升遷了,但工資數據卻沒有改變
  • 屬性差異:性別屬性有的取“男”/“女”,長度爲2;有的取“1”/“0”,長度爲1
  • 數據重複:數據源中存在兩條或多條完全相同的記錄,或者同一個數據冗餘地存在於多個數據源中
  • 數據不完整:某些屬性的值可能是缺失的,甚至是錯誤的數據
  • 數據噪聲:測量數據時遇到的隨機或其它不確定因素,導致被測量的數據產生了偏差或錯誤
  • 高維數據:爲較全面的描述實體,原始數據通常都使用了較多屬性
  • 模式不統一:將集成爲單一數據集的多個數據源的模式不同。如“常住人口數據”和“暫住人口數據”兩張表,前者有128個屬性,後者也有98個屬性
  • 數據不平衡:數據集中某一類樣本的數量明顯少於其他類型樣本的數量
Q2. 數據預處理
  • 定義:在多數據源集成爲統一數據集之前進行的數據清洗數據變換數據規約等數據處理過程
  • 目的:清除多數據源集成存在的問題,爲數據倉庫或數據挖掘提供一個完整、乾淨、準確、且有針對性的數據集合
Q3. 數據清洗

定義:發現並糾正數據源,即原始數據中存在的問題或錯誤的過程,包括檢查數據一致性處理無效值填補缺失值、以及過濾掉那些不符合要求的數據

  • 屬性的處理:
    • 重命名屬性
    • 統一屬性
    • 處理主鍵屬性
    • 派生新屬性
    • 選擇相關屬性
  • 空值的處理:
    • 人工填補
    • 忽略記錄
    • 忽略屬性
    • 使用默認值
    • 使用平均值
    • 使用預測值
  • 數據噪聲處理
    • 等深分箱法
    • 等寬分箱法
    • 用戶自定義區間
      • 按平均值平滑
      • 按邊界值平滑
      • 按中值平滑
  • 不平衡數據處理
    • 過抽樣
    • 欠抽樣
Q4. 等深分箱法

計算思路:
把數據集中的數據按照排列順序分配到k個箱子中(k=1,2,…,k)

  • 當k 整除 n時,令p=n/k,則每個箱子都有p個數據,即
    第1個箱子的數據爲:a1,a2,…,ap
    第2個箱子的數據爲:ap+1,ap+2,…,a2p
    ……
    第k個箱子的數據爲:an-p+1,an-p+2,…,an
  • 當k 不能整除 n時,令p=n/k [向下取整],q=n-k*p,則可讓前面q個箱子有p+1個數據,後面k-q個箱子有p個數據,即
    第1個箱子的數據爲:a1,a2,…,ap+1
    第2個箱子的數據爲:ap+2,ap+3,…,a2p+2;;
    ……
    第k個箱子的數據爲:an-p+1,an-p+2,…,an
    也可讓前面k-q個箱放p個數,後面q個箱放p+1個數據

例題:
設A={1, 2, 3, 3, 4, 4, 5, 6, 6, 7, 7, 8, 9,11}共14個數據,請用等深分箱法將其分成k=4個箱子
在這裏插入圖片描述

Q5. 等寬分箱法

計算思路:
把數據集最小值最大值形成的區間分爲k個左閉右開的子區間(最後一個除外)I1,I2,…,Ik。如果ai 屬於 Ij就把數據ai放入第j個箱子

例題:
設A={1, 2, 3, 3, 4, 4, 5, 6, 6, 7, 7, 8, 9,11}共14個數據,請用等深分箱法將其分成k=4個箱子
在這裏插入圖片描述

Q6. 數據變換
  • 數據聚集:對數據按照管理或挖掘需要進行彙總
  • 數據概化:用較高層次的數據代替較低維度層次的數據
  • 數據規範化:將原始數據按照一定的比例縮放,使之落入一個特定的區間
    • 最小—最大規範化
      在這裏插入圖片描述
    • 零—均值規範化
      在這裏插入圖片描述
    • 小數定標規範化
      在這裏插入圖片描述
Q7. 數據規約

定義:用精簡數據表示原始數據的方法,且歸約後數據量通常比原始數據小很多,但具有接近甚至等價於原始數據表達的信息

  • 維歸約:減少描述問題的隨機變量個數
  • 屬性歸約:減少描述問題的數據集的屬性個數
  • 數量歸約:用較少的數據表示形式替換原始數據
  • 數據壓縮:使用變換方法得到原數據的歸約或“壓縮”表示,圖像壓縮技術就是一種典型的數據壓縮方法
Q8. 數據倉庫的概念模型
  • 定義:對現實管理決策中各個主題及其特徵的數據抽象表示
  • 特點:
    • 能夠比較真實地模擬或抽象表示用戶的決策主題
    • 表示方法簡單直觀且易於用戶理解
    • 與計算機系統支持的具體數據模型無關
    • 易於向數據倉庫的邏輯數據模型轉換
Q9. 星型模型
  • 特點
    • 星型模型由一個事實表和多個維度表的連接表示多維數據模型,矩形:事實表,凹圓角矩形表示維度表,並用直線表示其間的主鍵-外鍵聯繫
      在這裏插入圖片描述
    • 星型模型是多維數據模型在關係數據庫中的組織和存儲結構描述,即它是多維數據模型的關係模型表示方法。因此,星型模型是多維數據模型的一種邏輯模型
  • 優勢
    • 星型模型圍繞一個確定的主題,體現了數據倉庫對數據結構和組織的要求
    • 星型模型表達直觀,易於理解且設計相對容易
    • 星型模型維度表包含了用戶經常查詢和分析的屬性,優化了對數據庫的瀏覽,在維度表和事實表之間沒有任何“迷宮”,使查詢的過程變得簡單而直接
    • 星型模型爲OLAP提供了良好的工作條件,使OLAP能通過星形連接和星形索引,顯著提高查詢性能
    • 設計相對較爲簡單
  • 不足
    • 維度表通常是非規範化的,造成很大的數據冗餘
    • 由於星型模型中各個維度表主鍵的組合構成事實表的主鍵,導致維度的變化非常複雜、費時
    • 維度屬性的複雜形成的大維度問題
    • 處理維的層次關係比較困難
    • 無法表達“多對多”的聯繫
Q10. 雪花模型

概念

  • 雪花模型是星形模型按照關係數據庫規範化理論對維度表進行分解的結果
  • 目的:消除數據冗餘,同時增加更多對事實進行細節描述的信息,提高查詢分析的靈活性
  • 其查詢效率通常比星型模型表示的多維數據集要低一些

優勢:

  • 減少了一定數據冗餘量,節約了許多存儲空間
  • 處理複雜維度和更新維度更加容易
  • 表示“多對多”的聯繫方便
  • 查詢分析更具靈活性

不足:

  • 事實表與維度表、詳細類別表聯繫比較複雜,用戶不易理解
  • 瀏覽查詢多維數據內容相對困難
  • 額外的詳細類別連接操作導致查詢性能下降
Q11. 位圖索引模型
  • 重要實用:在數據倉庫的存儲結構中,位圖索引是一項非常重要且實用的索引模型
  • 索引條件:對於那種只取少量幾個離散值的屬性列(屬性取值種類在1%以下)來說,位圖索引就是用一個二進制串,替代基本表中某一列的取值
  • 索引效果:使我們在不觸及數據記錄的情況下,直接通過位圖索引快速地獲得查詢結果

課後練習題

5.試述對一個數據集採用分箱技術包含的主要步驟
  • 對數據集的數據進行排序
  • 確定箱子個數k、選定數據分箱的方法並對數據集中數據進行分箱
  • 選定處理箱子數據的方法,並對其重新賦值
    • 常用分箱方法:等深分箱、等寬分箱、自定義區間、最小熵分箱法
6. 設數據集A={1,1,3,3,4,5,5,5,6,7,7,7,9,10,12,15},請用等深分箱法將其分成k=4個箱子

在這裏插入圖片描述

7. 設數據集A={1,1,3,3,4,5,5,5,6,7,7,7,9,10,12,15},請用等寬分箱法將其分成k=4個箱子

在這裏插入圖片描述

16. 數據倉庫有哪幾種邏輯模型?
  • 多維模型
  • 星型模型
  • 雪花模型

ch03 數據倉庫的設計開發應用

課內重點

Q1. 數據倉庫設計的特點及含義

“數據驅動”的設計

  • 數據倉庫是從已有數據出發的設計方法,即從數據源抽取數據,經轉換形成面向主題,支持決策的數據集合
  • 以全面瞭解並利用現有數據爲出發點

“分析驅動”的設計

  • 從決策分析需求出發的設計
  • 從已有數據源出發,按照決策分析主題對數據源中數據及其之前的聯繫重新考察,並重新組織形成數據倉庫分析需要的主題數據

“需求模糊”的設計

  • 數據倉庫設計的數據分析處理需求更加靈活,也沒有固定的模式,有時用戶自己對所要進行的分析處理也不能事先確定
  • 數據倉庫的分析需求在設計初期往往是模糊或不明確的,通常只有在數據倉庫設計過程中,或後來數據倉庫的決策支持過程中逐漸明確

“螺旋週期”的設計

  • 數據倉庫系統的開發是一個動態反饋啓發式的循環過程,也稱爲螺旋上升的週期性開發過程,即“螺旋週期”
  • 數據倉庫的數據內容、結構、粒度、分割以及其他物理設計,需要根據用戶使用數據倉庫所反饋的意見和建議進行調整,以提高系統的效率和性能
  • 用戶在使用數據倉庫進行決策過程中,不斷提出新的決策分析需求,增加新的主題,使數據倉庫進入新一輪的設計週期,數據倉庫進一步完善,爲用戶提供更準確、更有效的決策信息
Q2. 數據倉庫系統開發過程

5個時期劃分方式

  • 規劃時期
  • 設計時期(需求分析、概念分析、邏輯設計、物理設計)
  • 實施時期
  • 開發時期
  • 應用時期

在這裏插入圖片描述
3個階段劃分方式

  • 規劃設計階段(規劃時期、設計時期)
  • 實施開發階段(實施時期、開發時期)
  • 使用維護階段(應用時期)
Q3. 瞭解虛擬數據倉庫與數據集市
  • 虛擬數據倉庫:決策支持功能直接在事務處理數據庫上實現
  • 單純數據倉庫:從數據源中抽取、轉換和加載到一個統一的數據倉庫之中,各部門的查詢和分析功能都從這個統一的數據倉庫中進行
  • 單純數據集市:一個部門使用的數據倉庫,因爲企業中的每個職能部門都有自己的特殊管理決策需要,而統一的數據倉庫可能無法同時滿足這些部門的特殊要求
  • 完整數據倉庫:數據倉庫從企業各種數據源抽取數據,部門數據集市從企業數據倉庫中獲取數據
Q4. ETL

數據抽取、轉換和裝載(Extraction-Loading-Transformation,ETL)


課後練習題

4. 數據倉庫系統開發需要經歷哪幾個時期?

若劃分爲5個時期

  • 規劃時期:項目規劃
  • 設計時期:需求分析、概念設計、邏輯設計、物理設計
  • 實施時期:DW創建,ETL
  • 開發時期:應用開發
  • 應用時期:決策支持、維護評價

若劃分爲3個時期

  • 規劃設計階段(規劃時期、設計時期)
  • 實施開發階段(實施時期、開發時期)
  • 使用維護階段(應用時期)
5. 簡述數據倉庫設計時期的主要工作內容
  • 決策需求調查、數據倉庫環境分析,數據倉庫開發需求確定
  • 各種模型的建立,包括多維數據模型、星型模型、雪花模型和物理模型等,特別是數據源的屬性列與數據倉庫目標列的映射關係等,並根據選擇的數據倉庫管理系統,完成相應的物理設計

ch04 警務數據倉庫的實現

課內重點

Q1. SSIS包後綴是什麼

.dtsx

ch05 聯機分析處理(OLAP)技術

課內重點

Q1. OLAP的12條準則
  • 多維概念的視圖(multidimensional conceptual view)
    從用戶的角度來看,整個企業的數據視圖本質是多維的(時間,地點,品種),因此OLAP的概念模型也應該是多維的
  • 透明性(transparency)
    • 用戶不必關心表格或圖顯的數據的來源,只用OLAP工具查詢數據
    • OLAP系統應該是開放系統架構的一個部分,當按用戶需要將OLAP系統嵌入到架構的任何地方都不影響 OLAP分析工具的性能
  • 存取能力 (accessibility)
    • OLAP系統應該有能力利用自有的邏輯結構訪問異構數據源,並且進行必要的轉換以提供給用戶一個連貫的展示
    • 還能提供高效的存取策略
  • 穩定的報表性能(consistent reporting performance)
    當數據的維度和數據綜合層次增加時,OLAP系統爲最終用戶提供報表的能力和相應速度不應該有明顯的降低和減慢
  • 客戶/服務器體系結構(client/server architecture)
    OLAP系統應該是一種客戶/服務器(C/S)應用結構,並有足夠的智能保證多維數據服務器能被不同的客戶應用工具以最小的代價訪問
  • 維的等同性(generic dimensionality)
    每個數據維度應該具有等同的層次結構和操作能力,比如對每個維度都可以進行“切片”、“切塊”和“旋轉”等相同的操作
  • 動態的稀疏矩陣處理能力(dynamic sparse matrix handling)
    • 多維數據集的稀疏特性,即大多數單元格的值都是零
    • 若存儲所有這些零值數據就會佔用大量的存儲空間
    • OLAP系統應該爲這種具有稀疏性的多維數據集的存儲和查詢分析提供一種“最優”處理能力,既儘量減少零值單元格的存儲空間,又保證動態查詢分析的快速、高效
  • 多用戶支持能力(multi-user support)
    OLAP應提供併發獲取和更新訪問,保證完整性和安全性的能力
  • 非受限的跨維操作(unrestricted cross-dimensional operations)
    多維數據之間存在固有的層次關係,這就要求OLAP工具能自己推導出而不是最終用戶明確定義出相關的計算
  • 直觀的數據操作(intuitive data manipulation)
    OLAP工具應爲數據的分析操縱提供直觀易懂操作界面,比如“下鑽”、“上卷”、“切片”等多維數據分析方法都可以通過直觀、方便的點擊操作完成
  • 靈活的報表生成(flexible reporting)
    OLAP提供的報表功能應該以用戶需要的任何方式展現信息,以充分反映數據分析模型的多維特徵
  • 非受限維與聚集層次(unlimited dimensions and aggregation levels)
    • OLAP工具不應該爲多維數據的維度數量和維度層次數量設置任何限制
    • 說明:這個要求對系統要求有點高,可以適當降低要求。因爲在實際應用中,多維數據集的維度數量很少超過15個,維度層次也通常在6個以內

說明
聯機分析處理(On-Line Analysis Processing,OLAP):針對特定問題的聯機多維數據快速訪問和分析處理的軟件技術、能幫助決策者對數據進行深入的多角度觀察

Q2. OLAP的簡要準則

聯機分析處理(OLAP)就是共享多維信息的快速分析,即FASMI(Fast Analysis of Shared Multidimensional Information)

  • 快速性(Fast)
    • 用戶對OLAP系統的快速反應能力有很高的要求,希望系統能在5秒內對用戶的大部分分析要求做出反應
    • 快速性需求必須在線響應才能完成,故又稱爲在線性
    • 快速性還需要一些專門的技術支持,如專門的數據存儲結構、大量數據的預先計算、還有硬件特別設計等
  • 分析性(Analysis)
    • OLAP系統應能處理與應用有關的任何邏輯分析和統計分析
    • 例如,連續時間序列分析、成本分析、意外報警等
    • 此外,還應使用戶無須編程就可以定義新的計算,並作爲查詢分析的一部分,以用戶理想的方式給出報告
  • 共享性(Shared)
    • OLAP系統必須提供併發訪問控制機制,讓多個用戶共享同一OLAP數據集的查詢分析,並保證數據完整性和安全性
  • 多維性(Multidimensional)
    • OLAP系統必須提供對數據分析的多維視圖,包括對層次維多重層次維的完全支持
    • 事實上,多維分析是分析企業數據最有效的方法,是OLAP系統的靈魂和關鍵特性
  • 信息性(Information)
    • 無論數據量有多大,也不管數據存儲在何處,OLAP系統應能及時獲得信息,並且能管理大容器信息

關鍵特徵:快速性和多維性

Q3. OLAP的多維分析操作
  • 切片(slice)
  • 切塊(dice)
  • 下鑽(drill-down)
  • 上卷(roll-up)
  • 旋轉(pivot)
Q4. 切片
  • 在n(>=3)維數據集的某一維上,指定一個維成員的選擇操作
  • 若對一個n維數據集進行切片操作,則將得到一個n-1維的數據集
  • 多維數據集的維度越高,人們對其理解就越困難
  • 切片操作是對多維數據集進行降維處理,方便用戶理解多維數據蘊藏的決策信息
  • 從n(>=2)維數據集中選擇一個2維子集的操作稱爲局部切片操作
  • 對任意n(>=2)維數據集,其局部切片操作結果永遠是2維數據集
Q5. 切塊
  • 在n(>=3)維數據集的某一維上指定若干維成員的選擇操作
  • 對於n(>=3)維數據集,如果某一維上指定的維度成員數大於等於2,則切塊操作的結果仍然是一個n維數據集(僅當指定一個維度成員時,其切塊操作的結果是一個切片)
Q6. 旋轉
  • 在多維數據集展示的時候,對其改變維的顯示方向的操作
  • 多維數據集的旋轉結果仍然是原先的多維數據集,它僅僅改變了數據集展示的方位,方便用戶觀察數據
Q7. 鑽取
  • 多維數據集的鑽取就是改變數據所屬的維度層次,變換數據分析的粒度,它是下鑽和上卷這兩個相反操作的統稱
  • 目的:方便用戶從不同維度的不同層次觀察多維數據

上卷

  • 對多維數據選定的維度成員,按照其上層次維度對數據進行求和計算並展示的操作
  • 它是在某一維度上,將低層次的細節數據概括爲高層次的彙總數據,以增大數據的粒度,並減少了數據單元格個數或數據的維度

下鑽

  • 對多維數據選定的維度成員,按照其下層次維度對數據進行分解的操作
  • 它從由當前的彙總數據深入到其下一層次的細節數據,以便用戶觀察到更爲細粒度的數據
Q8. OLAP、DW與DM的聯繫
  • OLAP(聯機分析處理)、DW(數據倉庫)與DM(數據挖掘)是相互獨立而又相互聯繫的3個概念
  • 相互獨立:它們在不同的時間,由不同的學者或組織分別提出,因此它們在基本內涵,解決的主要問題和使用的基本技術上都有很大的區別
  • 相互聯繫:它們都是爲了支持企業的管理決策這一中心任務,即共同目標而提出的。因此,我們可以用“一箇中心,三個基本點”來形容DW、OLAP、DM之間關係
    在這裏插入圖片描述
Q9. OLAP、DW與DM的區別

在這裏插入圖片描述

課後練習題

4. 寫出FASMI的英文短語,並簡述其含義
  • fast:快速性,指用戶對OLAP系統的快速反應能力要求很高
  • analysis:分析性,指OLAP系統應能處理與應用有關的任何邏輯分析和統計分析
  • shared:共享性,指OLAP系統必須提供併發訪問控制機制,讓多個用戶共享同一OLAP數據集的查詢分析,並保證數據完整性和安全性
  • multidimensional:多維性,指OLAP系統必須提供對數據分析的多維視圖
  • information:信息性,指OLAP系統應能及時獲得信息,並且能管理大容量信息
5. 在OLAP的5個特徵FASMI中,哪兩個是OLAP的關鍵特性?
  • 快速性
  • 多維性
6. 多維數據分析有哪幾種基本分析操作?
  • 切片
  • 切塊
  • 下鑽
  • 上卷
  • 旋轉
7. 簡述多維數據集“切片”(slice)操作的含義,並舉例說明切片操作的結果
  • 含義:在數據集的某一維上,指定一個維成員的選擇操作
  • 舉例:若對一個3維數據集進行切片,會得到一個2維的數據集
8. 簡述多維數據集“下鑽”(drill down)操作的含義,並舉例說明下鑽操作的結果
  • 含義:對多維數據選定的維度成員,按照其下層次維度對數據進行分解的操作
  • 舉例:“1季度”這個數據集,將其下鑽到下層次“月”,則得到“1月”、“2月”、“3月”
9. 簡述多維數據集“上卷”(roll up)操作的含義,並舉例說明上卷操作的結果
  • 含義:對多維數據選定的維成員,按照其上層次維度對數據進行求和計算並展示的操作
  • 舉例:將時間維“1月”、“2月”、“3月”上卷恰好爲“季度”的層次,即“1季度”
10. 簡述多維數據集“切塊”(dice)操作的含義,並舉例說明切塊操作的結果
  • 含義:在數據集的某一維上指定若干維成員的選擇操作
  • 舉例:對於一個3維數據集進行切片,還是得到3維的數據集

ch07 數據的屬性與相似性

課內重點

Q1. 數據集的結構
  • 二維表
    在這裏插入圖片描述
  • 數據矩陣
    在這裏插入圖片描述
Q2. 屬性的類型
  • 連續屬性:通常在一個實數區間內取值,因此其取值個數理論上是無窮個
  • 離散屬性:該屬性可以取有限或可數無限個不同的值
  • 分類屬性:
    • 特殊的離散屬性,即離散屬性的一個細分類別
    • 取值是一些符號或事物的名稱,每個值代表某種類別、編碼或狀態,並且這些值之間不存在大小或順序關係
    • 例如:單身、已婚、離異、喪偶
  • 二元屬性
    • 分類屬性的一種特殊情況
    • 這種屬性只取兩種可能的值或只能處於兩個狀態之一
    • 例如:1或0,布爾屬性
  • 序數屬性
    • 離散屬性的一種
    • 它所有可能的取值之間可以進行排序,雖然任意兩個相距值之間的差值是未知的
    • 例如:其他<學士<碩士<博士
  • 數值屬性
    • 一種定量屬性,也看作是一種連續屬性
    • 它的取值是可以度量的,一般用整數或實數值表示
    • 數值屬性可以是區間標度或比率標度屬性
      • 區間標度屬性:用相等的單位尺度度量。區間屬性的值是有序的,可正、0、負
      • 比率標度屬性:具有固有零點的數值屬性,它彌補了區間標度無固定0點的不足,故可有一個值是另一個的倍數(或比率)
Q3. 相似度與相異度

相似度
在這裏插入圖片描述

  • 非負有界性:0<=s(Xi,Xj)<=1,當Xi=Xj時,s(Xi,Xj)=1
  • 對稱性

相異度
在這裏插入圖片描述

關係: 當d(X,Y) != 0時,s(X,Y) = 1/d(X,Y)

Q4. 數值屬性的距離

明可夫斯基距離
在這裏插入圖片描述
當r取不同的值時,上述距離公式就特化爲一些常用的距離公式

  • 若r=1,則得絕對值距離公式,就稱曼哈坦距離
    在這裏插入圖片描述
  • 若r=2,則得歐幾里得距離,也簡稱爲歐氏距離
    在這裏插入圖片描述
  • 若r->∞,稱切比雪夫距離
    在這裏插入圖片描述

二次型距離
設A是n階非負定矩陣,則向量Xi與Xj的二次型距離定義爲:
在這裏插入圖片描述

Q5. 分類屬性的相似度

簡單匹配係數相似度(二元相似度)
在這裏插入圖片描述
Jaccard係數相似度(非對稱的二元相似度)
在這裏插入圖片描述
Rao係數相似度(非對稱的二元相似度)
在這裏插入圖片描述


例子:試計算smc(X1,X2),sjc(X1,X2)和src(X1,X2)
在這裏插入圖片描述
在這裏插入圖片描述

Q6. 序數屬性的相似度

序數屬性的值之間具有實際意義的順序或排位,但相繼值之間的差值是未知的,可用mk表示第k個屬性的可能取值有狀態

計算方式:例子
假設某校用考試成績獎學金月消費 3個屬性來描寫學生在校的信息(下表)。其中第1個屬性考試成績取m1=5個狀態,其 順序排位爲優秀>良好>中等>及格>不及格;第2個屬性獎學金取m2=3個狀態,其 順序排位爲甲等>乙等>丙等 ;第3個屬性月消費取m3=3個狀態,其順序排位爲高>中>低
在這裏插入圖片描述

序數屬性的數據對象之間相異度計算的基本思想是將其轉換爲數值型屬性,並用距離函數來計算,主要分爲三個步驟:

  • 將第k個屬性的域映射爲一個整數的排位集合,即將每個數據對象Xi對應分量的取值xik用其對應排位數代替並仍記爲xik
  • 將整數表示的數據對象Xi的每個分量映射到[0, 1]實數區間之上,其映射方法爲 zik=(xik-1)/(mk-1)
  • 根據實際情況選擇一種距離公式,計算任意兩個數值型數據對象Xi和Xj的相異度

答:
考試成績的域爲 {優秀, 良好, 中等, 及格, 不及格} ,其整數排位集合爲{5, 4, 3, 2, 1},同理可得下圖
在這裏插入圖片描述
將其映射到0~1區間內
在這裏插入圖片描述
選用歐幾里得距離函數計算任意兩點之間的相異度
在這裏插入圖片描述
同理可得:d(X1,X3)=1.22, d(X2,X3)=0.56

所以 從計算結果可知d(X2,X3)的值是最小的,即X2與X3的差異度最小

Q7. 餘弦相似度

對數值型或屬性值用數字表示的數據集中任意兩個數據對象Xi=(xi1,xi2,…,xin)和Xj=(xj1,xj2,…,xjn),其餘弦(cosine)相似度定義爲:
在這裏插入圖片描述

  • Xi*Xj表示兩個向量的內積
  • ||Xi||表示向量Xi歐幾里得範數,即Xi到座標原點的距離,也就是向量Xi的長度

當scos(Xi,Xj)=0,即向量Xi和Xj呈90°夾角,也就是說它們是相互垂直的,亦即它們是不相似
當scos(Xi,Xj)=1,即向量Xi和Xj的方向是一致的,它們的方向是完全相似

餘弦相似度常常用來評價文檔間的相似性。每一個文檔通常用一個詞頻向量(term-frequency vector)來表示,每個屬性爲文檔中可能出現的特定詞或短語,屬性取值爲該詞或短語在文檔中出現的頻度

在這裏插入圖片描述

Q8. 混合屬性的相異度

若數據集S={X1 ,X2, …Xm}的屬性既有數值屬性,又有離散屬性時,稱S爲混合屬性數據集
處理方法:

  • 假設S有d個屬性
  • 根據第k屬性的類型,計算S關於第k屬性的相異度矩陣D(k)(S) (k=1,2,…,d)
  • 將其集成爲S的相異度矩陣D(S),公式如下:
    在這裏插入圖片描述
    • 相異度d(k)(Xi,Xj)的取值都在 [0, 1]內
    • 第k屬性是分類或二元屬性時,比較Xi和Xj在第k屬性的取值
      • 如果xik=xjk,則d(k)(Xi,Xj)=0,否則d(k)(Xi,Xj)=1
    • 當第k屬性是數值屬性時,先求出S第k屬性所有非缺失值的最大值maxk和最小值mink,則有
      在這裏插入圖片描述
    • 當第k屬性是序數屬性
      • 先將Xi的第k屬性值轉換爲[0,1]區間的實數zik=(xik-1)/(mk-1),其mk是X第k屬性排位數的最大值,xik是Xi的第k屬性值對應的排位數
      • 用zik和zjk代替上述公式中的xik和xjk即可

注意:
在這裏插入圖片描述


例題:設有下表所示的混合屬性數據集S,試計算其相異度矩陣
在這裏插入圖片描述
從上表可知,數據集S除顧客id外,共有4個屬性。下面分別計算S關於第1、第2、第3和第4屬性的相異度矩陣

第1屬性“性別”是二元屬性,其的相異度矩陣
在這裏插入圖片描述
第2屬性“婚姻狀況”是分類屬性,其相異度矩陣
在這裏插入圖片描述
第3屬性“當月消費額”是數值屬性,其相異度矩陣
在這裏插入圖片描述
第4屬性“學位”是序數屬性

  • 首先轉換成排位數
    在這裏插入圖片描述
  • 再將排位數轉換爲[0,1]區間的實數
    在這裏插入圖片描述
  • 得其相異度矩陣
    在這裏插入圖片描述

最後
在這裏插入圖片描述

提醒:若有null值,則在計算相異度時 該項直接忽略即可

課後練習題

4. 設有5個分類屬性,3個屬性對象的數據集,試計算s(X1, X2)和s(X1, X3)和s(X2, X3)

在這裏插入圖片描述
注意:第一個s(X1, X2)=1/5,上圖錯寫成2/5了

5. 設某校用考試成績、獎學金和月消費 3個屬性來描寫學生在校的信息(見表7-15)。其中第1個屬性考試成績取m1=5個狀態,其 順序排位爲優秀>良好>中等>及格>不及格;第2個屬性獎學金取m2=3個狀態,其順序排位爲甲等>乙等>丙等;第3個屬性月消費取m3=3個狀態,其順序排位爲高>中>低,試按照序數屬性相似度計算方法求s(X1, X2)和s(X1, X3)和s(X2, X3)

在這裏插入圖片描述

7. 設有混合屬性數據集(見表7-16),試計算S的相異度矩陣

在這裏插入圖片描述

ch08 關聯規則挖掘

課內重點

Q1. 關聯規則挖掘的概念

支持度
在這裏插入圖片描述


最小支持度
在這裏插入圖片描述


關聯規則
在這裏插入圖片描述


關聯規則X \Rightarrow Y的支持度
在這裏插入圖片描述


頻繁項集
在這裏插入圖片描述


最大頻繁項集
在這裏插入圖片描述


置信度
在這裏插入圖片描述


最小置信度
在這裏插入圖片描述


強關聯規則
在這裏插入圖片描述

Q2. 四個重要定理
  • 定理1(頻繁項集性質1):如果X是頻繁項集,則它的任何 非空子集X’ 也是頻繁項集,即頻繁項集的子集必是頻繁項集
  • 定理2(頻繁項集性質2):如果X是非頻繁項集,那麼它的所有超集都是非頻繁項集,即非頻繁項集的超集也是非頻繁項集
  • 定理3(關聯規則性質1)
    在這裏插入圖片描述
  • 定理4(關聯規則性質2)
    在這裏插入圖片描述
Q3. 關聯規則的Apriori算法

步驟:

  • 發現頻繁項集
    根據用戶給定的最小支持度MinS,尋找出所有的頻繁項集,即滿足支持度Support不低於MinS的所有項集。由於這些頻繁項集之間有可能存在包含關係,因此,我們可以只關心所有的最大頻繁項集,即那些不被其他頻繁項集所包含的所有頻繁項集
  • 生成關聯規則
    根據用戶給定的最小可信度MinC,在每個最大頻繁項集中,尋找置信度Confidence不小於MinC的關聯規則

計算:發現頻繁項集
在這裏插入圖片描述

計算:生成關聯規則
在這裏插入圖片描述

Q4. FP-增長算法的背景

Apriori算法存在兩方面的不足

  • 產生大量的候選項集
    例如,當事務數據庫有104個頻繁1-項集時,Apriori算法就需要產生多達107個候選2-項集,即對存儲空間要求會影響算法的執行效率
  • 多次重複地掃描事務數據庫
    對每個k=1,2,3,…,m,爲了計算候選k-項集的支持度,都需要掃描一次事務數據庫,才能確定候選k-項集的支持度,其計算時間開銷很大
Q5. FP-增長算法的計算過程

用FP-增長(Frequent-Pattern Growth,FP-Growth)算法來發現頻繁項集。算法只需掃描事務數據庫兩次,其計算過程主要由以下兩步構成:

  • 構造FP-樹
  • 生成頻繁項集

舉例說明:構造FP-樹
對下表所示的事務數據庫T,假設最小支持數MinS=2,試構造它的FP-樹
在這裏插入圖片描述

冒號後面的數字代表有多少個事務含有該商品,例如 a:8,代表有8個事務中含有商品a
在這裏插入圖片描述
注意:上圖僅僅是瞭解如何構造fp樹,對於該題並沒有做完,還需要進行剪枝(即滿足最小支持數爲2)

Q6. 提升度
  • 提升度(lift) 是一種簡單的相關性度量
  • 對於項集A和B,如果概率P(A\bigcupB) = P(A)P(B),則A和B是相互獨立的,否則它們就存在某種依賴關係
  • Lift(A,B)=P(A\bigcupB)/(P(A))×\timesP(B))=(P(A\bigcupB)/P(A))/P(B)
  • Lift(A,B)=Confidence(A\RightarrowB)/Support(B)
  • 如果Lift(A,B)的值大於1表示二者存在正相關,而小於1表示二者存在負相關。若其值等於1,則表示二者沒有任何關係

課後練習題

8. 設有交易數據庫如表8-17所示,令MinS=0.3,試用Apriori算法求出其所有的頻繁項集 + 9. 對如表8-17所示的交易數據庫,令MinC=0.6,試在習題8所得頻繁項集的基礎上,求出所有的強關聯規則

在這裏插入圖片描述

10. 設有交易數據庫如表8-18所示,令MinS=0.3,試用Apriori算法求出其所有的頻繁項集 + 11. 對如表8-18所示的交易數據庫,令MinC=0.6,試在習題10所得頻繁項集的基礎上,求出所有的強關聯規則

在這裏插入圖片描述

ch09 分類規則挖掘

課內重點

Q1. 數據分類的目的

從歷史數據記錄中自動地推導出已知數據的趨勢,使其能夠對未來的新數據進行預測

Q2. 分類規則挖掘
  • 通過對由分類標號的訓練集進行分析處理(稱爲有監督的學習),找到一個數據分類函數或分類模型(也稱爲分類器)
  • 對訓練集以外的、沒有分類標號的任意樣本點Zu,該模型都能夠將其映射到給定類別集合中的某一個類別,即給出Zu可能的類別標號
Q3. 分類分析的三個步驟
  • 挖掘分類規則(建立分類器或分類模型)
  • 分類規則評估
  • 分類規則應用

具體內容:
挖掘分類規則

  • 先將一個已知類別標號的數據樣本集(也稱爲示例數據庫)隨機地劃分爲訓練集S(通常佔2/3)測試集T兩部分
  • 通過分析S中的所有樣本點(數據對象),爲每個類別做出準確的特徵描述,或建立分類模型,或挖掘出分類規則。這一步也稱爲有監督的學習,即 在模型建立之前就被告知每個訓練樣本
  • 定義:對於給定的訓練樣本數據集S和分類屬性C={\lbraceC1,C2,…,Ck}\rbrace,如果能找到一個函數f 滿足以下條件,則稱函數f爲分類器,或分類規則,或分類方法,器尋找過程稱爲分類規則挖掘
    • f: S\rightarrowC,即f是S到C的一個映射;
    • 對於每個Xi\inS存在唯一Cj使f(Xi)=Cj,並記Cj= {\lbrace Xi | f(Xi)=Cj,1\leqj\leqk,Xi \in S }\rbrace

分類規則評估

  • 對測試集T中的樣本點,若有N個樣本點被分類模型正確地分類,則分類模型在測試集T上的準確率定義爲 “正確預測數/預測總數”,即準確率=N/|T|
  • 由於T中的樣本點已有分類標識,很容易統計分類器對T中樣本進行正確分類的準確率,加之T中樣本是隨機選取的,且完全獨立於訓練集S,其測試準確率高就說明分類模型是可用的
  • 若直接使用訓練集S進行評估,則其評估結果完全可能是樂觀的,即準確率很高,但因爲分類模型是由S學習而得到的,它會傾向於過分擬合訓練集S,而對S以外的其他數據對象進行分類卻可能很不準確。因此,交叉驗證法來對模型進行評估是更合理的方法

分類規則應用

  • 如果評估分類模型的準確率可以接受,接下來就是利用這個分類器對沒有類別標號的數據集Z進行分類
    在這裏插入圖片描述
  • 即從Z中任意取出一個樣本點Zu,將其輸入分類器,得到的類別標號就是Zu所屬的類別集合
Q4. k-最近鄰分類法
  • k-最近鄰(k-Nearest Neighbour,KNN)分類法是一種基於距離的分類算法,它既不需要事先建立分類模型,也無需對分類模型進行評估,而僅利用有類別標號的樣本集,直接對沒有類別標號的數據對象Zu進行分類,即確定其類別標號
  • 假定樣本集S中每個數據點都有一個唯一的類別標號,每個類別標識Cj中都有多個數據對象。對於一個沒有標識的數據點Zu,k-最近鄰分類法遍歷搜索樣本集S,找出距離Zu最近的k個樣本點,即k-最近鄰集N,並將其中多數樣本的類別標號分配給Zu

例題
設某公司現有15名員工的基本信息,包括其個子爲高個、中等、矮個的分類標識
在這裏插入圖片描述

公司現剛招進一位名叫劉萍的新員工Z1,令k=5,試採用k-最近鄰分類算法判斷員工劉萍的個子屬於哪一類
在這裏插入圖片描述
解:

  • 只有身高才是與個子高矮相關的屬性,因此用Xi表示第i個員工的身高
  • 首先從X中選擇5個員工作爲初始k-最近鄰集N。不失一般性,取N={X1=1.60,X2=2.00,X3=1.90,X4=1.88,X5=1.70}
  • 對S的X6=1.85,身高X2=2.00是N中與身高Z1=1.62 差距最大的員工且有d(Z1,X2)>d(Z1,X6),因此,在N中用X6 替換 X2得到N={X1=1.60,X6=1.85 ,X3=1.90,X4=1.88,X5=1.70}
  • 同理,用S中X7=1.59 替換 N中身高距離Z1=1.65最大的員工X3=1.90,得到N={X1=1.60,X6=1.85,X7=1.59,X4=1.88,X5=1.70}
  • 用X8=1.70 替換 N中距離Z1最大的員工X6=1.85,得到N={X1=1.60,X8=1.70,X7=1.59,X4=1.88,X5=1.70}
  • 因爲S中的X9=2.20和X10=2.10,故根據算法,N 不需要改變
  • 用X11=1.8 替換 N中X4=1.88得N={X1=1.60,X8=1.70,X7=1.59,X11=1.80,X5=1.70};
  • 因爲S中的X12=1.95,X13=1.90,X14=1.80,故N 不需要改變
  • 用X15=1.75 替換 N中X11=1.8得N={X1=1.60,X8=1.70,X7=1.59,X15=1.75,X5=1.70};
  • 由上所得N中,有5個身高最接近Z1=1.62的員工,且其X1=1.60,X8=1.70,X7=1.59, X5=1.70這4個員工的類別都是“矮個”,僅有X15=1.75的類別是“中等”;因此,新員工Z1=劉萍的個子爲矮個
Q5. 決策樹的概念

在這裏插入圖片描述
決策樹是一棵有向樹,也稱爲根樹,它由矩形結點、橢圓型結點和有向邊構成。

  • 根結點(root node),用矩形表示,如“天氣”結點,它沒有入邊,但有零條或多條出邊。其中的字串“天氣”是樣本集屬性名稱
  • 內部結點(internal node),用矩形表示。如“溫度”結點,它恰有一條入邊,但有兩條或多條出邊。“溫度”是樣本集屬性名稱
  • 葉結點(leaf node)或終結點(terminal node),用橢圓表示,如“是”結點,恰有一條入邊,但沒有出邊。橢圓形裏的“是”等字符串是樣本集的一個類別標號
  • 每條有向邊都用其出點的屬性值標記,如“晴天”,“多雲”、“雨天”是其出點“天氣”屬性的三種取值

通常,一個屬性有多少種取值,就從該結點引出多少條有向邊,每一條邊代表屬性的一種取值

Q6. Hunt算法

Hunt算法是Hunt等人1966年提出的決策樹算法,它在選擇劃分訓練集的屬性時採用貪心策略,將訓練集相繼劃分成較純(包括更少類別)的子集,以遞歸方式建立決策樹,併成爲許多決策樹算法的衍生框架,包括ID3C4.5

假設結點h對應的樣本集用Sh表示,而C={\lbraceC1,C2,…,Ck}\rbrace是其類別屬性,則Hunt算法的遞歸定義如下:

  • 如果Sh中所有樣本點都屬性同一個類Ch,則h爲葉結點,並用分類標號Ch標記該結點
  • 如果Sh包含多個類別的樣本點,則選擇一個 “好” 的屬性A,以屬性A命名h並作爲一個內部結點
  • 按照屬性A的取值將Sh劃分爲較小的子集,併爲每個子集創建A的子結點
  • 把A的每個子結點作爲h結點,遞歸地調用Hunt算法

Hunt算法的停止

  • 簡單策略:分裂結點直到所有的記錄都屬於同一個類,或者所有的記錄都具有相同的屬性值
  • 其他策略:在實際過程中還可能出現其他情況,應該考慮其它的標準來提前終止決策樹的生長過程,如下所示:
    • 子結點爲空
    • 訓練集Sh屬性值完全相同,但類別標號卻不同
Q7. ID3分類方法
  • ID3分類算法以信息論的信息熵爲基礎,以信息增益度爲“屬性測試條件”,並選擇信息增益最大的屬性對訓練集進行分裂,從而實現數據的歸納分類
  • 熵:最早來源於統計熱力學,它是熱力學系統混亂程度的一種度量。系統的混亂程度越低,其熵值就越小
  • 優點
    • 模型理解容易:可方便地提取“如果-則”形式的分類規則
    • 噪聲影響較小:信息增益計算使用當前的所有訓練樣本,可以降低個別錯誤樣本點帶來的影響
    • 分類速度較快,對未知類別標號的樣本Zu,只需從樹根開始搜索一條分裂屬性值與Zu對應屬性值相等的一條路徑,即可對Zu分類
  • 缺點
    • 只能處理離散屬性數據
    • 不能處理有缺失的數據
    • 僅是局部最優的決策樹:ID3採用貪心算法,結果非全局最優
    • 偏好取值種類多的屬性:ID3採用信息增益作爲選擇分裂屬性的度量標準,但大量的研究分析與實際應用發現,信息增益偏向於選擇屬性值個數較多的屬性,而屬性取值個數較多的屬性並不一定是最優或分類能力最強的屬性
Q8. C4.5算法

C4.5算法不僅繼承了ID3算法的優點,並增加了對連續型屬性和屬性值空缺情況的處理,對樹剪枝也使用了當時更爲成熟的方法

Q9. 貝葉斯分類方法

貝葉斯(Bayes)分類方法是以貝葉斯定理爲基礎的一系列分類算法的總稱。貝葉斯定理就是以研究者Thomas Bayes的姓氏命名的,他是一位英國牧師,也是18世紀概率論和決策論的早期研究者之一

  • 樸素貝葉斯分類器
  • 樹擴展的樸素貝葉斯分類器
  • 貝氏增強網絡樸素貝葉斯分類器
  • 貝葉斯多網分類器
  • 一般貝葉斯網絡分類器
發佈了116 篇原創文章 · 獲贊 58 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章