《機器學習實戰》 無監督學習

2021-07-10 09:33:26 字數 2094 閱讀 7396

基本原理:

無監督學習中,要劃分的類別或者目標變數事先並不存在。擺在面前的是一堆無意義的資料集,要對其進行分組。其中最重要的演算法有三個:k均值演算法、基於apriori的關聯分析、基於fp-growth的關聯分析。

1. k-means(k核算法)

隨機確定k個初始點作為質心;

將資料集中每個點分配到乙個蔟中,即為每個點找最近的簇心;

選擇每個簇的簇心更新為該簇所有點的平均值。

優點:容易實現

缺點:可能收斂到區域性最小值,無法達到全域性最小值;大規模資料上收斂較慢。

提高聚簇效能的方法

使用sse(sum of squared error 誤差平方和)作為度量指標。

(1) 後處理:將具有最大sse值的簇拆分,為保持簇總數不變,可以將某兩個簇進行合併。

合併最近的質心:計算所有質心間的距離

合併兩個使sse增幅最小的質心:在所有可能的兩個簇上重複處理直到找到最佳合併簇。

(2)二分k-均值演算法

將所有點合併為乙個簇;

將該簇按照最小sse原則一分為二;

選擇其中乙個簇繼續劃分,不斷重複,直到達到使用者指定的簇數為止。

2. 基於apriori的關聯分析

(1)頻繁項集

經常出現在一起的物品的集合。量化定義:滿足最小支援度。

例如,一共n條記錄,有3條,豆奶有8條

支援度:資料集中包含該項的記錄所佔的比例。豆奶支援度:8/n;支援度:3/n

置信度:針對諸如——>的關聯規則定義的。這條關聯規則置信度為:支援度 / 支援度

apriori原理如果某個項集是頻繁的,那麼它的所有子集也是頻繁的;如果某個子集是非頻繁的,那麼它的所有超集也是非頻繁的。

使用apriori原理可以避免項集數目的指數增長,從而在合理的時間內計算出頻繁項集。

圖1 所有可能的項集,非頻繁項集用灰色表示。

apriori的兩個輸入引數:最小支援度、資料集。演算法步驟為:

生成單個物品的項集列表;

掃瞄交易記錄檢視哪些項集滿足最小支援度的要求,不滿足最小支援度的集合將被去掉;

剩下的集合進行組合以生成包含兩個元素的項集;

重新掃瞄,去掉不滿足最小支援度的項集;

直到所有最小項集被去掉。

(2)關聯規則

兩個物品之間可能存在的很強的關係。量化定義:滿足最小可信度/

包括兩項:發現頻繁項集、發現關聯規則。

減少需測試的規則數目:如果某條規則並不滿足最小可信度要求,那麼該規則的所有子集也不會滿足最小可信度要求。

圖2 頻繁項集的關聯規則網格示意圖.陰影區給出的是低可信度規則。

3. 基於fp-growth的關聯分析

fp-growth是基於apriori,但是採用了不同的技術——fp樹,可以更高效地發現頻繁項集(只需兩次掃瞄:一次建樹,一次挖掘頻繁項集)。

fp樹會儲存項集的出現頻率,而每個項集會以路徑的方式儲存在樹中。

存在相似元素的集合會共享樹的一部分。只有當集合間完全不同時,樹才會分叉。

相似項之間的鏈結,即節點鏈結,用於發現相似項的位置。

工作流程:

構建fp樹:

第一遍掃瞄資料集,記錄每一項出現頻率。如果某元素出現不頻繁,那麼超集也是不頻繁的,可以直接去掉。第二遍只考慮頻繁項集。

從fp樹中獲得條件模式基(以所查詢的元素項為結尾的路徑集合)

利用條件模式基,構建得到乙個條件fp樹

重複直到樹包含乙個元素

機器學習實戰學習筆記 無監督學習

一 未標註資料的分類 1 k means演算法 缺點 可能收斂到區域性最優,並且在大規模資料上收斂較慢 初始隨機生成k個質心,遍歷所有資料點,計算到所有質心的距離,並將其分配到距離最近的質心所在的簇,然後更新質心,只要質心改變,就重複上述過程 2 後處理 可對k means演算法產生的簇進行後處理從...

機器學習日記 監督學習 無監督學習

監督學習是指 利用一組已知類別的樣本調整 分類器的 引數,使其達到所要求效能的過程,也稱為 監督訓練或有教師學習。無監督學習 現實生活中常常會有這樣的問題 缺乏足夠的 先驗知識 因此難以人工標註類別或進行人工類別標註的成本太高。很自然地,我們希望計算機能代我們完成這些工作,或至少提供一些幫助。根據類...

機器學習筆記 監督學習,無監督學習,半監督學習

這個問題可以回答得很簡單 是否有監督 supervised 就看輸入資料是否有標籤 label 輸入資料有標籤,則為有監督學習,沒標籤則為無監督學習。什麼是學習 learning 學習 乙個成語就可概括 舉一反三。此處以高考為例,高考的題目在上考場前我們未必做過,但在高中三年我們做過很多很多題目,懂...