参考资料:
吴恩达教授机器学习课程
机器学习课程中文笔记

Week2

一. 多变量线性回归(Linear Regression with Multiple Variables)

多变量就时当一个example里有n个特征的情况,将n个特征统一到一个matrix里去看作整体。
多变量线性回归还是先出cost function,然后用梯度下降算法/正规方程法使cost function最小化

特征的选择

多变量线性回归中有很多特征,选择合适的特征很重要,下面是常见的可用特征:

  1. training set中原始特征中选择合适的
  2. 由多个特征合成的一个新特征(例如:长度*宽度=面积,面积作为新特征)

  3. 运算后的特征,如x: x2,x1/2

特征缩放 feature scaling

面对多维特征问题的时候,在对代价函数使用梯度下降算法前要对特征进行一些处理。保证这些特征都具有相近的尺度,这将帮助梯度下降算法更快地收敛。

将training set中的同一特征值进行scaling处理,用下面公式:(x-平均值)/(最大值-最小值)范围 可以将所有的这一特征值控制在-0.5<=x<=0.5,方便进行梯度下降

学习率的选择

梯度下降算法的每次迭代受到学习率的影响,如果学习率过小,则达到收敛所需的迭代次数会非常高;如果学习率过大,每次迭代可能不会减小代价函数,可能会越过局部最小值导致无法收敛。

通常可以考虑尝试些学习率:0.01,0.03,0.1,0.3,1,3

正规方程

将cost function最小化除了用梯度下降还可以用正规方程。正规方程法不需要学习率,不需要特征缩放,可以直接一次计算出:

只要特征变量的数目并不大,标准方程是一个很好的计算参数的替代方法。具体地说,只要特征变量数量小于一万,我通常使用标准方程法,而不使用梯度下降法。

注意:有些时候对于某些模型不能使用正规方程而只能用梯度下降。

最新文章

  1. RDD:基于内存的集群计算容错抽象(转)
  2. C#版的eval,C#Light开源嵌入式脚本,unity热更新不再愁
  3. 遇到tomcat端口被占用问题解决方案
  4. 简单好用的Toast封装类——EasyToast
  5. .net 内存分配及垃圾回收总结
  6. iOS-网络编程(一)HTTP协议
  7. C#遍历数组
  8. HDU 1312 Red and Black(bfs)
  9. 解决PhpCms V9后台无法上传图片
  10. WebGL 3D 工业隧道监控实战
  11. [SQL]LeetCode197. 上升的温度 | Rising Temperature
  12. 【转】Android 增,删,改,查 通讯录中的联系人
  13. 后端必备的Linux知识
  14. C# DataGridView 在最左侧显示行号方法
  15. 安卓测试【三】adb简单命令及monkey使用
  16. Ubuntu 13.04下安装WPS for Linux
  17. linux shell读取配置文件
  18. 【二分答案+智障的字符串hash】BZOJ2946-[Poi2000]公共串(Ranklist倒一达成!!!!!)【含hash知识点】
  19. 7个高级技巧帮助你释放大量Mac OS X硬盘空间
  20. The Definitive Guide To Django 2 学习笔记(六) 第四章 模板 (二)使用模板系统

热门文章

  1. JS高级---案例:验证表单
  2. 油候插件grant的使用
  3. bugku sql2
  4. 洛谷P1068 分数线划定
  5. console.log对象全部展开
  6. 随机数模块random_python
  7. [bzoj1905] [ZJOI2007] Hide 捉迷藏
  8. CentOS7利用docker安装MySQL5.7
  9. EF中的查询方法
  10. linux命令 EOF