优化算法入门系列文章目录(更新中): 1.模拟退火算法 2.遗传算法一. 爬山算法 ( Hill Climbing ) 介绍模拟退火前,先介绍爬山算法。爬山算法是一种简单的贪心搜索算法,该算法每次从当前解的临近解空间中选择一个最优解作为当前解,直到达到一个局部最优解。 爬山算法实现很简单,其主要.....
分类:
其他好文 时间:
2014-07-10 10:54:28
阅读次数:
288
在机器学习中,模型的训练是一个很重要的过程,它通常是对一个目标函数进行优化,从而获取模型的参数,比较常见的优化算法包括梯度下降法、牛顿法与拟牛顿法等。但在大数据的背景下,尤其对于并行实现来说,优化算法通常是越简单越好,如坐标下降法(CD)和随机梯度下降法(SCG)就比较受欢迎。本文是阅读完论文 Distributed Coordinate Descent Method for Learning with Big Data 的一则笔记,主要介绍算法 Hydra (一种分布式坐标下降法)的算法框架、收敛性理论、...
分类:
其他好文 时间:
2014-06-29 07:38:26
阅读次数:
350
背景
由于某种原因,我们系统需要记录另一个系统中一个表里的id。
但是,当我们记录完了以后,别人系统可能会删除那个表里的一些数据,这样的话,我们这边就多了一些无效数据,所以,我们必须的找到这些无效的id,然后将其删除。
开始,我们的实现是这样:我们将记录下来的所有id放在一个list里,然后传到另一个系统,他将他们已经删除的id返回。具体处理代码如下:
public String f...
分类:
其他好文 时间:
2014-06-14 15:06:57
阅读次数:
234
算法复杂度用来表示在解决某个问题时,算法的性能表现。
复杂度上限,就是某个具体的已经实现的算法能够保证在一定时间内解决问题
复杂度下限,就是通过数学方法证明,所有的算法都必须花费一定的时间才能解决问题
最优化算法,就是可能达到的最小复杂度的算法,通常介于复杂度上限和下限之间
比如排序问题中:
计算模型为决策树
使用比较次数作为开销...
分类:
其他好文 时间:
2014-06-08 18:20:02
阅读次数:
190
本节介绍的是快速合并的优化算法。基本思想就是在每个节点上增加重量的概念,每次操作的时候将重量小的部件挂在重量大的部件之下。这样就避免了树形结构太高的问题。
下图展示了优化前后的树形结构深度的对比。
证明
可以证明每个节点的深度最大为lgN。
因为每次合并的时候较小的部件要放在较大的部件之下,所以如果要增...
分类:
其他好文 时间:
2014-06-02 19:00:51
阅读次数:
334
生活中我们经常听到人们说“不要把鸡蛋放到一个篮子里”,这样可以降低风险。深究一下,这是为什么呢?其实,这里边包含了所谓的最大熵原理(The Maximum Entropy Principle)。本文为一则读书笔记,将对最大熵原理以及由此导出的最大熵模型进行介绍,重点给出其中所涉及数学公式的理解和详细推导。...
分类:
其他好文 时间:
2014-05-22 22:45:41
阅读次数:
369
原作者:Swagatam Das,Arijit Biswas,Sambarta
Dasgupta,和Ajith Abraham[摘 要]细菌觅食优化算法(Bacterial foraging optimization
algorithm[BFOA])已经被分布式优化和控制的同行们当作一种全局性的优化...
分类:
其他好文 时间:
2014-05-17 23:54:50
阅读次数:
802
1.稳定婚姻问题(延迟认可算法)(后续更新)2.二分图最大匹配(匈牙利算法)3.二分图最优匹配(KM)4.图的着色问题(平面图可用四色定理优化)
分类:
其他好文 时间:
2014-05-10 05:47:38
阅读次数:
226
为了加深对深度学习算法的理解,打算跑一下几个经典的算法。LISA实验室有一个Python库Theano封装了常用的优化算法,用着非常方便。但是之前不了解Python,打算一点一点摸索。
下面说一下这两天搭建平台的过程,当然其中遇到了不少问题,但最后还是成功实现gpu运算。 首先要安装thea...
分类:
其他好文 时间:
2014-05-08 07:31:06
阅读次数:
434