算法总结(集体编程智慧) - 聚类、优化

非监督算法:聚类

     

1. 分级聚类

每次寻找最近的2个进行合并(思路如同哈夫曼编码)

2. K-均值聚类

先设定k的中心(假设分为k类),每次计算空间样本与k个类中心分别距离,并归类,重新设定k中心,然后在重新计算,一直到k中心不再改变为之。

3. 选择:通过k-均值得到的群组往往是有价值的;而当面对一个新的数据集,在不知道该分为接个群组(即k的取值)的时候,或者想了解一下那些群组最接近,可以用分级聚类。

 

 

优化:

      不处理数据集,而是找出使基于数据集的成本函数达到最小值。一般成本函数会有多个局部最小值,而未必是全局最小值,而优化方法目的就是找出全局最小值。

 模拟退火

收到物理学领域合金冷却的启发。从一个较高的温度T开始,选择点,如果该点的成本比当前最小的小,就替代,如果大就以某一概率来取代,概率取决于当前的温度,而温度是随着迭代的次数而逐渐降低的。当温度为0时,返回当前解。

遗传算法

收到进化理论的启发。从给一个种群的随机解开始,将表最为优异的选中(成本最低),而对其他的进行变异或杂交,得到新的种群(下一代),这样连续迭代。

       详解请阅:

模拟退火http://blog.csdn.net/hou_rj/article/details/6876480

遗传算法http://blog.csdn.net/hou_rj/article/details/6876509



阅读更多
文章标签: 算法 优化 编程
个人分类: 集体编程智慧
上一篇算法总结(集体编程智慧) - 分类
下一篇我心目中的编程高手(完整版)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭