2016.05.12回顾
2016-05-13 10:06
211 查看
昨天开始尝试自己写logistic regression,参考别人的写了一个demo,主要是为了理解算法,果断发现了不少问题。
1、梯度下降法,有批量梯度下降,有随机梯度下降,批量梯度下降就是按着梯度负方向在走,就是偏导,X矩阵是样本总体,但是我奇怪的是随机梯度下降法,是把X一条一条的使用,为什么这样也能收敛?后来看书上的图像,参数收敛是一种波动式的收敛,但是最终还是会收敛,至于证明应该很复杂,我就不管了,但是这种的好处是时间复杂度很低,特别是数据量大了的情况,批量梯度下降消耗太高,但是原理我仍然没理解透彻
2、写的demo居然发现个神奇的问题,就是sigmoid函数我令成1/(1+exp(z))居然会overflow,但是1/(1+exp(-z))就不会出错,我现在还没发现问题,但至少说这个点有意思!
总结:效率要提高,要专注,思维要清晰,这些东西都很抽象,有难度,然后就是要按时睡觉,昨天又没按时睡觉,11点半前睡觉!养成好习惯!执行力!!!!
1、梯度下降法,有批量梯度下降,有随机梯度下降,批量梯度下降就是按着梯度负方向在走,就是偏导,X矩阵是样本总体,但是我奇怪的是随机梯度下降法,是把X一条一条的使用,为什么这样也能收敛?后来看书上的图像,参数收敛是一种波动式的收敛,但是最终还是会收敛,至于证明应该很复杂,我就不管了,但是这种的好处是时间复杂度很低,特别是数据量大了的情况,批量梯度下降消耗太高,但是原理我仍然没理解透彻
2、写的demo居然发现个神奇的问题,就是sigmoid函数我令成1/(1+exp(z))居然会overflow,但是1/(1+exp(-z))就不会出错,我现在还没发现问题,但至少说这个点有意思!
总结:效率要提高,要专注,思维要清晰,这些东西都很抽象,有难度,然后就是要按时睡觉,昨天又没按时睡觉,11点半前睡觉!养成好习惯!执行力!!!!
相关文章推荐
- xcode编译代码的时候 ld: library not found for -xxx 解决方法
- Css span div
- Ajax Array Json 示例
- 小学生算术
- Winform开发框架中实现多种数据库类型切换以及分拆数据库的支持-伍华聪
- 针对苹果最新审核要求为应用兼容IPv6
- android数据库Sqlite(3)
- 334. Increasing Triplet Subsequence(C++实现)
- cocoapod的报错处理:The dependency `xxx` is not used in any concrete target.
- ListView实现item的卡片效果(不使用RecyclerView+CardView)
- 只言片语
- SpringMVC+Spring4+Mybatis3+Log4j集成
- Android 四种异步操作UI界面的方法
- plugin scala is incompatible with current installation
- push到github时,每次都要输入用户名和密码的问题
- SimpleDateFormat使用详解
- 提示框
- 有没有这样一种程序员写代码的利器
- 另一种阶乘问题
- Spring @Transactional