分类与聚类的本质区别
機器學習中有常見的兩類大問題,一個是分類,一個是聚類。
分類與聚類的比較
聚類分析是研究如何在沒有訓練的條件下把樣本劃分為若干類。
在分類中,已知存在哪些類,即對于目標數據庫中存在哪些類是知道的,要做的就是將每一條記錄分別屬于哪一類標記出來。
聚類需要解決的問題是將已給定的若干無標記的模式聚集起來使之成為有意義的聚類,聚類是在預先不知道目標數據庫到底有多少類的情況下,希望將所有的記錄組成不同的類或者說聚類,并且使得在這種分類情況下,以某種度量(例如:距離)為標準的相似性,在同一聚類之間最小化,而在不同聚類之間最大化。
與分類不同,無監督學習不依賴預先定義的類或帶類標記的訓練實例,需要由聚類學習算法自動確定標記,而分類學習的實例或數據樣本有類別標記。
簡而言之:分類是事先有了類然后人為的去分;聚類是事先沒有類,機器去聚出類。
分類
分類有如下幾種說法,但表達的意思是相同的。
分類(classification): 分類任務就是通過學習得到一個目標函數f,把每個屬性集x映射到一個預先定義的類標號y中。
分類是根據一些給定的已知類別標號的樣本,訓練某種學習機器(即得到某種目標函數),使它能夠對未知類別的樣本進行分類。這屬于supervised learning(監督學習)。
分類: 通過學習來得到樣本屬性與類標號之間的關系。
用自己的話來說,就是我們根據已知的一些樣本(包括屬性與類標號)來得到分類模型(即得到樣本屬性與類標號之間的函數),然后通過此目標函數來對只包含屬性的樣本數據進行分類。
分類算法的局限
分類作為一種監督學習方法,要求必須事先明確知道各個類別的信息,并且斷言所有待分類項都有一個類別與之對應。但是很多時候上述條件得不到滿足,尤其是在處理海量數據的時候,如果通過預處理使得數據滿足分類算法的要求,則代價非常大,這時候可以考慮使用聚類算法。
聚類
聚類的相關的一些概念如下
而聚類指事先并不知道任何樣本的類別標號,希望通過某種算法來把一組未知類別的樣本劃分成若干類別,聚類的時候,我們并不關心某一類是什么,我們需要實現的目標只是把相似的東西聚到一起,這在機器學習中被稱作 unsupervised learning (無監督學習)
通常,人們根據樣本間的某種距離或者相似性來定義聚類,即把相似的(或距離近的)樣本聚為同一類,而把不相似的(或距離遠的)樣本歸在其他類。
聚類的目標:組內的對象相互之間時相似的(相關的),而不同組中的對象是不同的(不相關的)。組內的相似性越大,組間差別越大,聚類就越好。
總結
以上是生活随笔為你收集整理的分类与聚类的本质区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: flink sql udf jar包_F
- 下一篇: MyBatis Generator 生成