multiple features
- 定义
一个样本中含有多个特征变量
- 假设函数
gradient descent for multiple variables
gradient descent int practice 1
为了使得梯度下降速度更快,让梯度下降收敛所需循环次数更少。 因为θ将会在一个小的范围内下降更快。办法就是修正输入x在一个大致相似的范围。有以下两种方法:
- feature scaling(特征缩放)
1. 方法:讲输入变量除以输入变量的范围(最大值减去最小值)
- Mean normalization(均一化)
1. 方法:从输入变量的值中减去输入变量的平均值,再除以输入变量的范围。
gradient descent int practice 2
选择合适小的α,在每次迭代过程中应该下降一点;如果一开始就太大,则不会下降,直接上升
features and Polynomial regression(多项式回归)
- 假设函数选择:
也可以将多项式特征转换为一个,例如将x1和x2转换为x3=x1*x2。
假设函数不一定是线性,如果它不能很好的拟合数据,我们可以改变函数的行为,使其成为二次、立方等。
注意此时选择这种方法后特征缩放就变得很重要。
Multivariate Linear Regression
Normal Equation
- 设计矩阵
用于求解θ
m个样本,n个特征值得特征向量的X为m*(n+1)维矩阵,默认第一个特征值x0=1.
- 梯度下降和normal equation的优缺点
对于normal equation,它的复杂度为O(n3).如果特征矩阵特别大,就不适合用于normal equation
- .normal equation noninvertibility
当在octave中实现θ的时候我们使用pinv而不是inv,即使XTX 是不可逆的。
造成不可逆的原因:
1. 冗余特性,两个特征是线性相关的
2. 太多特性,以至于m<n,因删除一些功能或者“正规化”