线性回归模型介绍:

单变量线性回归模型

线性回归方程:

线性回归均方误差代价函数:

--带 1/2 为了使其偏导数更整洁

目标值:

代价函数最小

线性模型:

--梯度下降:寻求最合适的 w 和 b,从而得到最佳拟合线

多特征线性回归模型

样本:

定义标准:

examlpe:

多元线性回归:

多项式回归的介绍

多项式回归:线性回归同特征工程结合(可使非线性模型拟合)

要选择合适的方法降维

向量化的多元线性回归

对于梯度下降(Gradient descent)

单特征

多特征

核心求解方法

梯度下降

梯度下降公式:

--学习率 α (0,1] 为控制下坡的步子大小,small-slow,large-inaccurate

--学习率不是固定的,而且每一个参数的学习率可以不一样

--α 后为 J(w,b)函数的偏导数

关于 w 的偏导数

关于 b 的偏导数

即梯度下降函数为 :

如何选择合适的学习率 α

--使用 w 的赋值时应为 w=w-αd(靠近最小值),而非 w=w+αd(远离最小值)

--代价函数/迭代次数

0.001-0.003-0.01-0.03-0.1-……三倍三倍 plus

--验证梯度下降是否有用:设置非常小的 α,观察图像是否一直下降

正规方程

仅需一次即可选中合适的值

向量化表示

好处--优化计算效率

引用 numpy 创建向量组

w=np.array([1.0,2.5,-3.3])  #创建关于w的数组

d=np.array([10,20,30])      #创建关于d(偏导)的数组

for j in range(0,3):

    w[j]=w[j]-0.1*d[j]

#根据索引值将其遍历,得出答案

np.dot(w,d)

#点积 = w[0]×b[0] + w[1]×b[1] + w[2]×b[2] + ... + w[n]×b[n]

特征工程

创建一个新的特征 x

例:对于房屋--x1(宽度),x2(长度)。有 y=w1x1+w2x2+b

而有新的可能关系更大的系数 x3,使 x1x2= x3

则有 y=w1x1+w2x2+w3x3+b,可以看函数与 x1, x2, x3 那个关系更大

该过程即为特征工程

特征放缩--使梯度下降更好

当有不同特征取值范围差异较大时,会使梯度下降运行缓慢,但通过重新放缩不同的特征,使它们都取值在可比范围内,可显著加快梯度下降速度

--缩小数值范围

未放缩:

放缩后

How to work?

1.放置一个范围内

x/(max-min)

处理前

处理后

2.均值归一化(Mean Normolization)

寻找均值 (x-average)/(max-min)

处理前

处理后

3.Z 分数归一化

计算每个特征的标准差(sigma)

(x-average)/sigma

处理前

处理后

更多推荐