线性回归处理多个特征值
(Linear Regression with multiple variables)
1、多特征值线性回归的假设函数形式
在之前的房价预测例子中,我们看到只有房屋面积一个特征值,现在增加特征值,比如,房屋使用时间,房间的数量,房屋楼层数等等n个features。就表示第i个样本的特征向量,
表示第j个特征在第i个样本中的值。
假设函数就变成了 ,这里假设第一个特征值x0为1.所以可以写成参数向量的转置乘以样本特征向量。
2、梯度下降
(1)Gradient descent for multiple variables
(2)特征规模(Feature Scaling)
如果特征规模差别很大的画,得到的损失函数的图像不光滑,导致不利于函数的收敛,可以采用均值归一化的方法对其进行缩放
(3)学习率(Learning rate)
一般看到不再变小就证明已经收敛,
当学习率太小,会让收敛速度很慢,学习率太大会让有可能不是每一个迭代都会变小,还有可能不会收敛。对于学习率一般这么选择:0.001~0.003~0.01~0.03~0.1~0.3这样三倍选择。
(4)特征和多项式回归(Features and polynomial regression)
对于房价预测的例子,如果有两个特征分别表示房屋地基的长和宽,那么我们可以用一个特征值s表示长和宽的乘积来设置假设函数
关于房价预测,如果是一个三次多项式能比较好的拟合数据的话,可以把特征值转换成、
、
这样又变成了
的线性回归形式。但是要注意归一化处理,因为特征值之间规模差别太大。
当然还有一些特征值的选择可能能更好拟合数据
3、标准方程法(Normal equation)
依然是房价预测的例子,构造如下的矩阵:X,参数向量即为所求。也不需要考虑特征规模的问题。
公式证明:(这里要注意只有方阵才有逆矩阵,所以不能直接乘以X的逆,X转置乘以X为方阵)
假设函数: y=X⋅θ
首先在等式两边同时左乘一个 XT,得到: XT