1. 程式人生 > >機器學習-非監督學習(Unüberwachte Lernverfahren)+大型資料庫:Clustering-1

機器學習-非監督學習(Unüberwachte Lernverfahren)+大型資料庫:Clustering-1

把資料庫分析的Clustering加到這裡來吧-為完成哦

內容一覽

1.動機
2.k-means聚類(經典聚類)
3.多級聚類
4.COBWEB(Begriffliche Balungen)和概念聚類
5.前景

動機

動機

1.訓練集的收集和分類相當費力
2.另外訓練時那麼多量要計算也是相當麻煩的
(Engineering z.B:Merkmalsberechnung der Daten kann sehr aufwendig sein)
3.可以運用於資料探勘(Data Mining)
4.(Sich verändernde Charakteristika von Mustern) //這個理解不能???
5.尋找新的屬性(Finden von neuen Eigenschaften)//同樣理解不能???
6.對資料結構的初步認識(Erste Erkenntnisse über Struktur von Daten)
//還是理解不能??????????

Clustering

Clustering的一般問題描述

已知N個具有d維屬性的資料的集合
目的是:
把這個集合中的資料分成k個不同的簇和一個噪音(有辦法區分出噪音嗎,對此暫時表示懷疑???)並且這些簇應該根據下列兩個條件進行選擇:
1.同一個簇中的資料應該相似
(Intra-cluster Similarity wird maximiert)
2.不同簇之間的資料應該不相同
(inter-cluster Similarity wird minimiert)

Criterion Function

在這裡我們引入Criterion Function:

E=
i=1k
xCid(x,mi)

並用他來描述同一個簇內的資料的相似度。那麼相應的Clustering的目的就可以改變為,優化這個Criterion Function。
//好像忽略了簇間的情況。
值的注意的是上式中的d並不一定表示的是x和m之間的距離。實際上函式d表達的是輸入點x和該簇的引數點m之間的相識程度。舉個例子,比如簇內資料分佈符合正太分佈,那麼m就可以是指這個正太分佈的均值和方差,而d函式對應的結果就是輸入點屬於該分佈的概率。而在這裡我們用這個概率來表達這種相似度。

引數的選擇

那麼現在問題就來了,這個式子裡有兩個引數m和k,我們應該怎麼對這兩個引數進行選擇呢??

引數m

一般情況下m得選擇是很難的,因為他要求對資料的分佈具有一定的瞭解。正如上面的例子,如果不知道這些資料符合正太分佈,那麼對於這些引數將無從下手。

引數k

另一個起決定性作用而且很重要的的引數就是k
k表示的是聚類最終要生成的簇的數目。很明顯根據要求的生成簇的數量的不同,他最終生成的結果也會相差很大。
在沒有確定具體k的數目的情況下,我們一般採用的是下面這種方法:
把k從2到n-1的情況都給試一遍,從結果集中選出最好的聚類。

Clustering的評價標準

那麼應該如何評價一個聚類的質量呢??
在介紹具體的方法之前,我們先說一下這種測量方法應該滿足的一些條件:
1.陣列不能隨著k增長呈單調增長。n個數據分成n個簇的話,那是絕對滿足簇內相識最小得條件的。但很明顯這並不是一個好得聚類的方法
(Maß hierfür darf nicht einfach mit k monoton wachsen)
2.測量緊湊性的到的數值同樣也不能隨著k的減少單調下降。
(Kompaktheitsmaß für Clustering fällt monoton mit k)
下面要介紹到的Sihouette係數就是一種值不會隨著k的增大而單調遞增的聚類的質量的測量。

Silhouette係數(Silhouette-Koeffizient)

設計的目的以及其基本思想

1.同一個簇內的物件應該和這個簇的代表儘量的相似,
在這裡我們用簇內物件到簇內代表的平均距離表示。
(Objekte in Cluster sollten Repräsentanten des Clusters möglichst ähneln-durchschnittlicher Abstand der Objekte zum Repräsentanten ihres Clusters)
2.不同簇中的物件應該長得相差儘量的遠一點,在這裡我們用不同簇內物件之間的平均距離表示。
(Objekte in unterschiedlichen Clustering sollten möglichst unähnlich sein -durchschnittlicher Abstand von Objekt zu Objekt in anderen Clustern: hier:zweinächster Cluster)
//不理解這後寫得兩個最近的簇表示的是神馬意思

Silhouette-Koeffizient

a(o):
指簇內點o到簇內其他點得平均距離

a(o)=1|C(o)|pC(o)dist(o,p)
b(o):
指簇內點o到離o第二近的簇內的點得平均距離
//為什麼說是第二近呢??估計是把o所在的簇也算進去了嗎
(Durchschnittliche Distanz zwischen o und Objekten in ‘zweitnächstem’ Cluster)
b(o)=minCiC(o)(1|Ci|pC(i)dist(o,p))
前面提到的距離函式dist(p,q)主要是針對單個數據物件的,現在把針對Cluster的距離函式補上:
single Link:
distst(X,Y)=minxX,yYdist(x,y)
Complete Link:
distcl(X,Y)=maxxinX,yYdist(x,y)
Average Link:
distal(X,Y)=1|X||Y|xX,yYdist(x,y)
Silhouette:
s(o)={ob(o)a(o)max{a(o),b(o)}ifa(o)=0,i.e.,|Ci|=1else
Silhouette的值域是:[-1,1]
當a(o)為0時效果最優,s(o)為1.反之當b(o)為0時,是最不受待見的這時s(o)=-1.當a(o)=b(o)時對應的s(o)為0,雖然他站在正中間,但這結果相信也是挺難接受的。
上面這個是針對物件o的Silhoutte值,下面來看一下針對簇的Silhoutte值:C=C1,C2,...,Ck)
silh(C)=1CCiC1|Ci|oCis(o)
同樣的這個Silhoutte的值域也是[-1,1]
根據S值的不同對聚類進行評價,一般情況下我們認為:
1. 0.7 < s < 1.0,結構化得很好
2. 0.5 < s < 0.7, 一般般
3. 0.25 < s < 0.5,有點弱啊
4. s < 0.25,完全沒有感覺

對聚類演算法的要求

必須是有效的而且是高效的並且能過處理含有比較大得噪音的高維的大型資料的聚類演算法,而且這個演算法應該在下面三方面具有很好的伸縮性:
1. 資料點得數量
2. 資料的維度
3. 噪音
/*
Effektive und effiziente Clustering Algorithmen für große hochdimensionale Datenbestände mit hohem Noise-Annteil erfordern Skalierbarkeit hinsichtlich Anzahl der Datenpunkte(N), Anzahl der Dimensionen(d),Noise-Anteil
*/

k-means聚類

把資料集劃分為事先給定的數量的聚類
他的基本思想是:
1.為每一個類定義一箇中點(Medoid)
//在Clustering中一般稱為Medoid,但也就是均值的意思。他的官方解釋是用作替代簇中重點得點。其實直接使用中點的話,可能照成誤導,以為他是簇中的一個存在的一個點,其實不是,是通過計算後加進去的。
2.迭代迴圈調整這個中點//用新的代替舊的,舊的刪了
3.優化的準則是使類內各點到其中點的距離的總和最小。
已知:
1.未分類的訓練資料集X(這就是被說成是未監督的原因吧???),其中每個訓練例子都含有d個屬性:x1=<attr11,..,attrdi>
2.想要分成的聚類的數量k
尋找的目標:
把訓練資料分配到k個類中,並使得下式最小:

j=1k

相關推薦

機器學習-監督學習(Unüberwachte Lernverfahren)+大型資料庫Clustering-1

把資料庫分析的Clustering加到這裡來吧-為完成哦 內容一覽 1.動機 2.k-means聚類(經典聚類) 3.多級聚類 4.COBWEB(Begriffliche Balungen)和概念聚類 5.前景 動機 動機 1.訓練

機器學習監督學習—k-means及案例分析

一、非監督學習無監督學習,顧名思義,就是不受監督的學習,一種自由的學習方式。該學習方式不需要先驗知識進行指導,而是不斷地自我認知,自我鞏固,最後進行自我歸納,在機器學習中,無監督學習可以被簡單理解為不為訓練

機器學習——監督學習——層次聚類(Hierarchical clustering

1、層次聚類(Hierarchical clustering)的步驟 假設有N個待聚類的樣本,對於層次聚類來說,其步驟為: (1)初始化:把每個樣本各自歸為一類(每個樣本自成一類),計算每兩個類之間的距離,在這裡也就是樣本與樣本之間的相似度(本質還是計算類與類之間的距離)。

什麼是監督學習監督學習,強化學習

機器學習按照學習方式的不同,分為很多的型別,主要的型別分為 監督學習 非監督學習 強化學習 半監督學習 什麼是監督學習?     利用一組已知類別的樣本調整分類器的引數,使其達到所要求效能的過程,也稱為監督訓練。    正如下圖中

[吳恩達機器學習筆記]15.1-3監督學習異常檢測算法/高斯回回歸模型

閾值 訓練集 jpg -a 情況 color 訓練 ase 需要 15.異常檢測 Anomaly detection 覺得有用的話,歡迎一起討論相互學習~Follow Me 15.1問題動機 Problem motivation 飛機引擎異常檢測 假想你是一個飛機引擎制造

[吳恩達機器學習筆記]15監督學習異常檢測7-8使用多元高斯分布進行異常檢測

進行 平均值 info 錯誤 blog 占用 ron 關系 http 15.異常檢測 Anomaly detection 覺得有用的話,歡迎一起討論相互學習~Follow Me 15.7-8 多變量高斯分布/使用多元高斯分布進行異常檢測 -Multivariate Gaus

機器學習工程師 - Udacity 監督學習 Part One

一、聚類 1.k-means首先隨意給出聚類中心,然後進行分配和優化。初始位置非常重要,不同的初始位置可能會使最後的聚類結果完全不一樣。並且可能會使結果陷入區域性最優: 2.sklearn中的k-means最重要的三個引數:n_cluster:聚類數量,預設為8;max_iter:最大迭代次數,預設為30

機器學習工程師 - Udacity 監督學習 Part Two

四、特徵縮放1.特徵縮放的優點:Andrew在他的機器學習課程裡強調,在進行學習之前要進行特徵縮放,目的是保證這些特徵都具有相近的尺度,這將幫助梯度下降演算法更快地收斂。python裡常用的是preprocessing.StandardScaler(),公式為:(X-mean)/std,得到的結果是,對於每個

機器學習監督學習監督學習、強化學習、深度學習、遷移學習

文章目錄 機器學習(machine learning) 監督學習(supervised learning) 非監督學習(unsupervised learning) 強化學習(reinforcement learning) 傳統

[吳恩達機器學習筆記]15.1-3監督學習異常檢測演算法/高斯回回歸模型

15.異常檢測 Anomaly detection 覺得有用的話,歡迎一起討論相互學習~Follow Me 15.1問題動機 Problem motivation 飛機引擎異常檢測

監督學習演算法(聚類、降維、關聯規則挖掘)--機器學習--思維導圖手寫筆記(32)

一、思維導圖(點選圖方法) 二、補充筆記 三、K-means演算法的收斂性 說明: 當聚類中心μ確定時,求得的各個資料的cluster滿足聚類目標函式最小。 當資料cluster確

監督學習之混合高斯模型和EM演算法——Andrew Ng機器學習筆記(十)

0、內容提要 這篇博文主要介紹: - 混合高斯模型(mixture of Gaussians model) - EM演算法(Expectation-Maximization algorithm) 1、引入 假設給定一個訓練集{x(1),...,x(m)

機器學習——聚類(clusteringK-means演算法(監督學習

1、歸類 聚類(clustering):屬於非監督學習(unsupervised learning),是無類別標記(class label) 2、舉例 3、K-means演算法 (1)K-means演算法是聚類(clustering)中的經典演算法,資料探勘的十大經典演算

[吳恩達機器學習筆記]15監督學習異常檢測4-6構建與評價異常檢測系統

15.異常檢測 Anomaly detection 覺得有用的話,歡迎一起討論相互學習~Follow Me 15.4開發和評價一個異常檢測系統 Developing and Evaluati

監督學習之k-means聚類演算法——Andrew Ng機器學習筆記(九)

寫在前面的話 在聚類問題中,我們給定一個訓練集,演算法根據某種策略將訓練集分成若干類。在監督式學習中,訓練集中每一個數據都有一個標籤,但是在分類問題中沒有,所以類似的我們可以將聚類演算法稱之為非監督式學習演算法。這兩種演算法最大的區別還在於:監督式學習有正確答

TF之AEAE實現TF自帶數據集AE的encoder之後decoder之前的監督學習分類

feature print all feed 定義 jason 學習分類 and lib import tensorflow as tf import numpy as np import matplotlib.pyplot as plt #Import MNIST d

數學模型3.監督學習--聚類分析 和K-means聚類

rand tar 聚類分析 復制 clust tle 降維算法 generator pro 1. 聚類分析 聚類分析(cluster analysis)是一組將研究對象分為相對同質的群組(clusters)的統計分析技術 ---->> 將觀測對象的群體按照

Week One - 3. Andrew Ng - 監督學習

在前面的監督學習中,已獲取的資料集中包含正確答案,因此計算機可以通過學習來發現資料和正確答案之間的關係,進而進行預測。接下來,我們要計算機學習那些為賦予正確答案的資料。 在上圖中,我們對於資料的類別一無所知,現在只有x1和x2兩個特徵,對於無監督演算法,我們能做的就是

吳恩達機器學習 - 無監督學習——K-means演算法 吳恩達機器學習 - 無監督學習——K-means演算法

原 吳恩達機器學習 - 無監督學習——K-means演算法 2018年06月25日 12:02:37 離殤灬孤狼 閱讀數:181

機器學習 - 無監督學習-多元高斯模型

(一)異常檢測---基於高斯(正態)分佈   m個訓練樣本,每個樣本有n個features 即m個樣本的每個屬性集都呈現高斯分佈,因此有以下計算:   例子如下: (二)評價異常檢測系統 將所有資料按照60%,20%,20%的比例分成三部分