什麼是基於模型的聚類?
基於模型的聚類是一種統計方法的資料聚類方法。觀察到的(多變數)資料被認為是由有限的元件模型組合生成的。每個元件模型都是一個機率分佈,通常是引數化多變數分佈。
例如,在多元高斯混合模型中,每個元件都是一個多元高斯分佈。負責生成特定觀察的元件決定了觀察所屬的叢集。
基於模型的聚類試圖提高給定資料與某些數學模型之間的擬合度,並基於這樣的假設:資料是由基本機率分佈的組合生成的。
基於模型的聚類型別如下:
**統計方法**——期望最大化是一種流行的迭代細化演算法。k-means的擴充套件——
它可以根據權重(機率分佈)將每個物件分配到一個叢集。
新的均值是根據權重度量計算的。
基本思想如下:
它可以從引數向量的初始估計開始。
它可以用來迭代地根據引數向量生成的混合密度重新對設計進行評分。
重新評分的模式用於更新引數估計。
如果模式根據它們在特定元件中的分數被放置,則可以將它們用於屬於同一叢集的模式。
演算法
最初,隨機分配k個聚類中心。
它可以迭代地細化基於以下兩個步驟的聚類:
**期望步驟**——它可以將每個資料點Xi分配到具有以下機率的聚類Ci
$$\mathrm{P(X_{i}\in\:C_{k})\:=\:P(C_k\arrowvert\:X_i)\:=\:\frac{P(C_k)P(X_i\arrowvert\:C_k)}{P(X_i)}}$$
**最大化步驟**——它可以用來估計模型引數
$$\mathrm{m_k\:=\:\frac{1}{N}\displaystyle\sum\limits_{i=1}^N \frac{X_{i}P(X_i\:\in\:C_k)}{X_{j}P(X_i)\in\:C_j}}$$
**機器學習方法**——機器學習是一種為海量資料處理建立複雜演算法並向用戶提供結果的方法。它使用可以從經驗中學習並建立預測的複雜程式。
透過頻繁輸入訓練資訊,演算法本身得到改進。機器學習的主要目標是學習資料並從資料中構建可以被人理解和使用的模型。
這是一種著名的增量概念學習方法,它以分類樹的形式生成層次聚類。每個節點定義一個概念,幷包含該概念的機率表示。
侷限性
屬性相互獨立的假設通常過於嚴格,因為可能存在相關性。
它不適用於對大型資料庫資料、傾斜樹和昂貴的機率分佈進行聚類。
**神經網路方法**——神經網路方法將每個聚類表示為一個示例,作為聚類的原型。根據某種距離度量,新的物件被分配到其示例最相似的聚類。
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP