整数规划中的分支定界和分支切割 branch and bound: 分支定界 branch and cut:分支切割 例如一个问题: branch and cut: 在每个node上寻找切割不等式,最后的得到的最优解很可能大于上界,该node就被切割掉了。 如何选址cut不等式就是一门学问了。。有实数切割UserCut,也有整数切割LazyCut 2019-08-28 数学
优化问题本质上分为凸和非凸两大类。 凸问题有着巨大的优势: 成熟有效的求解算法求得全局最优解。(内点法、椭圆法、梯度下降法等) 计算复杂度基本上是多项式的,基本是P的。 非凸问题则求解比较困难,实际上大部分的解法都是将非凸问题转化为凸问题。 P,NP,NP-hard, NPC则是计算复杂度的表示。 P代表多项式内可求解的问题 NP代表多项式内可验证的问题 NP-hard表示所 2019-08-27 数学
拉格朗日对偶 拉格朗日对偶问题的上界一定小于原问题的下界: 拉格朗日强对偶条件: 对于凸问题,不等式约束严格可行,存在<0, 对于凸问题,KKT条件满足,则全局最优点,KKT条件是充分必要条件;对于优化问题,KKT是必要条件。 2019-08-26 数学
前端学习流程 京华哥强推: es6 ===>java react===>springboot antd===>UI框架 Joe哥整理 第三方技术(1)React全家桶:React、Redux、Sagas、immutableJS(2)框架:DVA、ANTD PRO(3)组件库:ANTD(4)打包:webpack4(5)服务端渲染:puppeteer 软件安装(1)NodeJ 2019-08-10 Web开发 #前端
shell的变量 局部变量只在函数内定义的变量,如果不加local关键词,其实还是一个全局变量(函数外能够访问) 全局变量在当前shell内定义的变量,其他shell不能访问 环境变量用export定义,在当前shell的子shell中可以传递,传子不传父。 2019-07-02 编程开发 > Shell
java I/O 多线程(同步阻塞); IO多路复用(select,poll,epoll)(同步非阻塞,严格地来讲,是把阻塞点改变了位置); 直接暴露出异步的IO接口,如kernel-aio和IOCP(异步非阻塞)。 NIO就是IO多路复用,同步非阻塞,selector用来监听channel(OS内核空间),另有ByteBuffer可读可写,处理程序数据空间。 字节流操作,无输入输出缓存,所以一般包一个bu 2019-06-11 编程开发 > Java
java和python的字符字节数问题 Java Java中的基本类型char的字节数是固定的,2个字节,默认编码是UTF-16 Java中的字符串的字节数则是不固定的,对于英文字符,占1个字节,而对于中文字符的话,就会因为编码方式而改变: 如GBK编码,中文字符2个字节 如UTF-8编码,中文字符3个字节 查看方式:str1.getBytes(“utf-8”).length Python Python没有基本类型,就是指字符串, 2019-06-11 编程开发 > Java
关于模型选型 模型可以分为高偏差/低方差和低偏差/高方差两种。前者一般指简单的模型,如生成式模型(NB),后者一般指复杂模型,如判别式模型之类的。 在学习曲线上来看: 高偏差/低方差:训练样本很少的情况下就可以达到渐进线(低方差),但是偏差较高,持续增加样本也没用。所以小样本的情况,建议用该类模型。 低偏差/高方差:训练样本很少时,容易过拟合,无法达到渐进线。当训练样本变多时,训练曲线和测试曲线达到渐进线,此时 2019-05-16 机器学习
Dead ReLu问题 原因很简单,是因为函数的负数区间值为0,导数为0,导致权重不更新。 但实际上,真要出现永久dead还是很严苛的: 所用训练样本x在该神经元的输入值都是 < 0 一般都是网络第一层,前面没有隐藏层。因为如果有隐藏层,隐藏层不死的话,隐藏层输出值还是会变,同样的x, 输入到该层还是有可能被激活。 BP经典公式: 该神经元某条链路w导数 = 前面的导数累计 该神经元导数值 该链路输入值x 2019-05-16 深度学习