基本原理:
無監督學習中,要劃分的類別或者目標變數事先並不存在。擺在面前的是一堆無意義的資料集,要對其進行分組。其中最重要的演算法有三個: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 學習 乙個成語就可概括 舉一反三。此處以高考為例,高考的題目在上考場前我們未必做過,但在高中三年我們做過很多很多題目,懂...