监督学习:在一个典型的监督学习中,我们有一个有标签的训练集,我们的目标是找到能够区分正样本和负样本的决策边界,在这里的监督学习中,我们有一系列标签,我们需要据此拟合一个假设函数

非监督学习: 在非监督学习中,我们的数据没有附带任何标签,我们的训练集可以写成只有
x
(
1
)
x^{(1)}
x(1),
x
(
2
)
x^{(2)}
x(2)……一直到
x
(
m
)
x^{(m)}
x(m), 我们没有任何标签
y
y
y ,在非监督学习中,我们需要将一系列无标签的训练数据,输入到一个算法中,然后我们告诉这个算法,快去为我们找找这个给定的数据的内在结构

图上的数据看起来可以分成两个分开的点集(称为簇),一个能够找到我圈出的这些点集的算法,就被称为聚类算法
算法的分类:

基于划分的方法概念: 给定一个包含n个样本的数据集,基于划分的方法(Partitioning Method)就是将n个样本按照特定的度量划分为k个簇(k≤n),使得每个簇至少包含一个对象,并且每个对象属于且仅属于一个簇,而且簇之间不存在层次关系
基于划分的方法 是简单、常用的一种聚类方法,通过将对象划分为互斥的簇进行聚类,每个对象属于且仅属于一个簇。划分结果旨在使簇之间的样本相似性低,簇内部的样本相似度高
基于划分的方法大多数是基于距离来划分样本的,首先对样本进行初始划分,然后计算样本间的距离,重新对数据集中的样本进行划分,将样本划分到距离更近的簇中,得到一个新的样本划分,迭代计算直到聚类结果满足用户指定的要求
典型的算法有k-均值算法和k-medoids算法
大部分基于划分的聚类方法采用贪心策略,即在每一次划分过程中寻求最优解,然后基于最优解进行迭代计算,逐步提高聚类结果的质量
基于层次的方法(Hierarchical Method) 是按层次对数据集进行划分。根据层次聚类的过程,可分为自底向上的凝聚方法和自顶向下的分裂方法,在应用过程中,可以根据需求对指定层数的聚类结果进行截取
两种方法的优缺点:
聚类可以作为一个单独过程,用来寻找样本数据本身所蕴含的“分布结构”规律,也可以作为有监督学习算法的辅助过程
聚类作为有监督学习算法的辅助过程,既可以作为前期处理过程,也可以作为后处理过程

不是所有的聚类分析使用者都是数据分析专家,对于用户来说,聚类分析算法应该方便使用,且聚类得到的结果容易解释
良好的聚类算法在约束条件下同样能够对数据集进行良好的聚类,并且得到高质量聚类结果