今天突然想到了这个话题。那么,有一部分读者可能并不会很理解我的意思防御式编程:客户提出什么问题,我们就解决什么问题。攻击式编程:主动发现问题,其中有一部分问题是性能优化问题,一部分是客户未能发现的BUG。以尽快的方式解决问题。 真实场景:一个功能被做出来了,开发人员于是试了一遍,觉得功能已经出来了....
分类:
其他好文 时间:
2014-07-15 08:44:02
阅读次数:
198
之前我们介绍了用动态规划的方法来解决一些最优化的问题。但对于有些最优化问题来说,用动态规划就是“高射炮打蚊子”,采用一些更加简单有效的方法就可以解决。贪心算法就是其中之一。贪心算法是使所做的选择看起来是当前最佳的,期望通过所做的局部最优选择来产生一个全局最优解。...
分类:
其他好文 时间:
2014-07-13 18:06:01
阅读次数:
377
前文介绍了快速排序的单边扫描和双边扫描,但么有做对比,今天来简单分析下。一、单边扫描的缺点 单边扫描最大的缺点是每次都要交换,如果一个数组是 5 4 3 2 1,用单边扫描的话,则从4开始,4要和4交换一次,3要和3交换一次,依次类推,这种无意义的操作。正因此用双边扫描会更好,第一趟只需交换一次,就能得到1 4 3 2 5这样的数组。但双边扫描也是可以进一步优化的。二、双边扫描的优化 优化一:对k...
分类:
其他好文 时间:
2014-07-12 17:39:47
阅读次数:
181
题目:给你n个数让你在里面找到会不相同的4个数a,b,c,d,使得 d = a + b + c。
分析:数学题,散列表。这是一个优化问题。
方法1:暴力法;
先排序,然后直接利用四层循环求解,找到解后直接跳出,也可以以利用二分代替最后一层循环;
这种方法,如果遇到特殊的数据就会TLE;
方法2...
分类:
其他好文 时间:
2014-07-06 12:02:05
阅读次数:
141
外点惩罚函数法·约束优化问题
外点法惩罚函数(r增加,SUMT.java)用于求解约束优化问题,解题步骤如下:
Step1 输入目标函数与约束方程,构建外点惩罚函数法求解方程,求解初始化。
Step2 对求解方程进行一次无约束优化方法求解(鲍威尔BWE),得到新解。
Step3 新解与原解求误差,如误差满足精度要求,则输出解,否则增加因子r,执行Step 2。
鲍威尔法(BWE.java)是N维无约束求解方法,需要调用一维求解方法,一维...
分类:
其他好文 时间:
2014-07-02 09:11:11
阅读次数:
292
本文是读完 Jeffrey Dean, Greg S. Corrado 等人的文章 Large Scale Distributed Deep Networks (2012) 后的一则读书笔记,重点介绍在 Google 的软件框架 DistBelief 下设计的一种用来训练大规模深度神经网络的随机梯度下降法 — Downpour SGD,该方法通过分布式地部署多个模型副本和一个“参数服务器”,同时实现了模型并行和数据并行,且对机器失效问题具有很好的容错性。结合 Adagrad 自适应学习率使用,对非凸优化问题...
分类:
其他好文 时间:
2014-06-18 00:55:39
阅读次数:
433
上一篇中介绍了图层式窗口管理的思路和算法。在此基础上,本篇就解决绘制窗口及其简单的优化问题。这里稍微吐槽一下《30天自制操作系统》原作者。全书我刚刚看了三分之一,写得确实不错,但是我能感受到原作者是习惯用汇编语言和汇编思维来写程序的。虽然书里尽量使用了C语言,但给我一种用C写汇编的感觉。也可能是原作...
分类:
其他好文 时间:
2014-06-09 16:05:18
阅读次数:
366
机器学习算法中经常碰到非线性优化问题,如 Sparse Filtering
算法,其主要工作在于求解一个非线性极小化问题。在具体实现中,大多调用的是成熟的软件包做支撑,其中最常用的一个算法是
L-BFGS。为了解这个算法的数学机理,这几天做了一些调研,现把学习过程中理解的一些东西整理出来。目录链接....
分类:
其他好文 时间:
2014-06-02 07:28:41
阅读次数:
197
机器学习算法中经常碰到非线性优化问题,如 Sparse Filtering
算法,其主要工作在于求解一个非线性极小化问题。在具体实现中,大多调用的是成熟的软件包做支撑,其中最常用的一个算法是
L-BFGS。为了解这个算法的数学机理,这几天做了一些调研,现把学习过程中理解的一些东西整理出来。目录链.....
分类:
其他好文 时间:
2014-06-02 07:28:03
阅读次数:
210
机器学习算法中经常碰到非线性优化问题,如 Sparse Filtering
算法,其主要工作在于求解一个非线性极小化问题。在具体实现中,大多调用的是成熟的软件包做支撑,其中最常用的一个算法是
L-BFGS。为了解这个算法的数学机理,这几天做了一些调研,现把学习过程中理解的一些东西整理出来。目录链接(...
分类:
其他好文 时间:
2014-06-02 07:27:27
阅读次数:
274