摘要:
这是剑指offer数组中重复的数字那个题,直接使用的swap函数 字符串的全排列也用到了swap 阅读全文
摘要:
1.&在此不是求地址运算,而是起标识作用 2.传递引用给函数与传递指针的效果是一样的。这时,被调函数的形参就成为原来主调函数中的实参变量或对象的一个别名来使用,所以在被调函数中对形参变量的操作就是对其相应的目标对象(在主调函数中)的操作。 3.使用引用传递函数的参数,在内存中并没有产生实参的副本,它 阅读全文
摘要:
1.这个通过partition实现topk,时间复杂度是o(logn*logn),也就是0(n),但需要修改原数组的顺序 下面这个代码本身有一些错误,并且throw excption会在牛客上报错 正确代码 2.用大根堆的做法的时间复杂度是o(nlogk) 阅读全文
摘要:
1. xgboost在目标函数中加入了正则化项,当正则化项为0时与传统的GDBT的目标函数相同2. xgboost在迭代优化的时候使用了目标函数的泰勒展开的二阶近似,paper中说能加快优化的过程!!xgboost可自定义目标函数,但是目标函数必须二阶可导也是因为这个。GDBT中只用了一阶导数。3. 阅读全文
摘要:
欧式距离: l2范数: l2正则化: l2-loss(也叫平方损失函数): http://openaccess.thecvf.com/content_cvpr_2017/papers/Li_Mimicking_Very_Efficient_CVPR_2017_paper.pdf 总结:l2范数和欧式 阅读全文
摘要:
1)Bagging + 决策树 = 随机森林 2)AdaBoost + 决策树 = 提升树 3)Gradient Boosting + 决策树 = GBDT 阅读全文
摘要:
boosting 是一种将弱分类器转化为强分类器的方法统称,而adaboost是其中的一种,或者说AdaBoost是Boosting算法框架中的一种实现 https://www.zhihu.com/question/37683881 gdbt(Gradient Boosting Decision T 阅读全文
摘要:
https://zhuanlan.zhihu.com/p/32230623 首先定义:待优化参数: ,目标函数: ,初始学习率 。 而后,开始进行迭代优化。在每个epoch : sgd: 先来看SGD。SGD没有动量的概念,也就是说: 代入步骤3,可以看到下降梯度就是最简单的 SGD缺点:下降速度慢 阅读全文
摘要:
反向传播:https://zhuanlan.zhihu.com/p/22473137 https://blog.csdn.net/cppjava_/article/details/68941436 2.解决梯度爆炸问题的方法 通常会使用一种叫”clip gradients “的方法. 它能有效地权重 阅读全文
摘要:
作者:魏秀参链接:https://www.zhihu.com/question/38102762/answer/85238569来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 1. What is BN?规范化!即在每次SGD时,通过mini-batch来对相应的ac 阅读全文