第二周 - Multivariate Linear Regression(多元线性回归)

多个特征量

4个特征量

m表示训练集记录条数;
n表示特征量的数量;
x(i)表示第i条训练数据;
xj(i)表示第i条训练数据的第j个特征量;

多元线性回归的假设函数
hθ(x) = θ0 + θ1x1 + θ2x2 + θ3x3 + ⋯ + θnxn
引入变量x0=1,假设函数可写为:
hθ(x) = θ0x0 + θ1x1 + θ2x2 + θ3x3 + ⋯ + θnxn

利用矩阵乘法的定义,我们的多元假设函数可以简洁地表示为:

θ向量的转置向量 乘以 x向量

多元线性回归的梯度下降

多元线性回归的梯度下降公式

公式展开形式

公司简洁形式

一元线性回归和多元线性回归的梯度下降公式实际上是一个公式。
一元线性回归和多元线性回归的梯度下降公式

梯度下降实际应用 - 特征缩放

如果多个特征量的数据范围差别较大,比如房屋面积为500 ~ 2000,卧室数量为2 ~ 5,那么梯度下降时会导致计算性能下降,此时就需要将特征值统一缩放到-1 ~ 1或-0.5 ~ 0.5。
一般使用2种技术,一种是特征缩放,一种是均值归一化(mean normalization)。

特征缩放公式没有特定的公式,一般只要将特征值缩放到-3 ~ 3范围内就可以接受。特征缩放的结果不要求太精确。

均值归一化公式:

均值归一化

μi为xi的均值;
si为max(xi) - min(xi),称为标准差。
均值归一化的计算结果在-0.5和+0.5之间。

梯度下降实际应用 - 学习速率

选择正确的α,代价函数逐渐收敛

学习速率过大,导致发散或波动

特征及多项式回归

选择合适的特征会使学习算法更加有效。多个相关特征可以考虑合并为一个特征,比如房屋的长和宽,可以相乘合并为面积。

如果训练样本不是线性分布,我们可以通过将假设函数变成二次函数、三次函数或平方根函数(或任何其他形式)来改变其行为或曲线。


二次函数会下降,所以这里使用平方根函数更合适

需要记住的一件重要事情是,如果您以这种方式选择特性,那么特性伸缩就变得非常重要。因为平方、三次方、平方根会使特征值相差太大。

推荐阅读更多精彩内容