进化算法在模式识别中的应用综述
1. 聚类示例
聚类可视为分类的前一阶段,在这个阶段中,对象组会被赋予整数值标签并分配到子集(即所谓的聚类)中,以便同一聚类中的对象在某种度量下具有相似性。聚类是一种无监督学习方法,广泛应用于数据挖掘、模式识别、图像分析、机器学习和生物信息学等多个领域的统计数据分析。
目前最常用的聚类算法可能是 k - 均值算法。k - 均值算法将 n 个观测值 $(x_1, x_2, \cdots, x_n)$(其中 $x_i$ 是维度为 d 的特征向量)划分为 k($k < n$)个集合 $S = {S_1, S_2, \cdots, S_k}$,使得每个观测值到最近划分的距离之和最小,即:
$$\min_{S} \sum_{i = 1}^{k} \sum_{x_j \in S_i} |x_i - \mu_i|^2$$
其中 $\mu_i$ 是集合 $i$ 中观测值的均值。
最近的研究证明,k - 均值算法所解决问题的复杂度在一般的 d 维欧几里得空间中是 NP 难的,即使对于 2 个聚类也是如此;在二维空间中,对于一般数量的聚类,该问题同样是 NP 难的。NP 难问题意味着,至少到目前为止,没有一种程序能够在多项式时间内解决它。因此,使用元启发式算法来解决这个问题是合理的。这里,我们将使用遗传算法来解决 k - 均值问题。
简单遗传算法
遗传算法(GAs)强调有性重组(主要操作符)的重要性,而将变异操作符作为次要操作符。它们还使用概率选择(与进化规划类似,但与进化策略不同)。遗传算法的基本操作如下:
1. 随机生成一个大小为 M 的初始种群。不过,也可以使用确定性或半确定性程序(
超级会员免费看
订阅专栏 解锁全文
15

被折叠的 条评论
为什么被折叠?



