机器学习2(线性回归Linear regression)

线性回归适用范围

x和y值必须保持一定的线性关系,且y的取值为连续值,而不是离散值,离散值需要使用

logistic regression逻辑回归

1. 假设一个线性方程组

若我们有4个特征值,则线性方程组应该为,其中有四个参数w1,w2,w3,w4,和一个b值

y = w_1x_1 + w_2x_2 + w_3x_3 + w_4x_4 + b

当然,你也可以根据具体问题选择具体的方程组,可以二次方程组,可以是三次方程组,可以是根

号方程组。

如上所说只是一个通常且简单的情况

The model is to linearly transform data points from the feature space to the label space.

2. 选择误差公式

既然我们已经有了方程组,那我们需要去寻找合适的参数w1w2w3w4,如何评价参数是否合适,那

就需要用到一个统计学的原理,计算误差。也就是选择loss function。选择误差计算的方法有多,

这里选择mean square error,用真实的y值减去自己方程式所计算得出的拟合y值,然后平方

L = \frac{1}{N} \sum_{n=1}^N (y_{real} - y_{calculate})^2

L = \frac{1}{N} \sum_{n=1}^N (y_{real} - (w_1x_1+w_2x_2+w_3x_3+w_4x_4+b))^2

当然也可以根据需要选则合适得function,这里就不再赘述

3. 寻找最小值

寻找最小值,也就是线性回归的核心所在,我们需要找到合适的w1,w2,w3,w4使得我们的误差公式

loss function 计算出来的值最小。

这里我们就要介绍一种数学方法叫做梯度下降(gradient descent),与AI课程中学习的爬山算法

类似,就是当我们处在一个点时,我们总希望爬到山顶/山脚,所以我们会一直沿着同一个方向不

断爬,直到山顶/山脚。但是这个算法会导致一个问题,就是局部最优解的问题,local optimal

solution而非global optimal solution,但好在已有专家学者证明,linear regression 不存在这个问

题所以我们可以放心的使用这个算法进行计算

假设我们只有一个w值也就是y = wx + b

此时w如果不满足条件,则我们如何寻找一个w值呢,这个时候我们就需要用到高等数学中的导数

w = w - \eta \left. \frac{d f(w)}{d w} \right |_{w=0}

其中希腊字母表示学习速率,learning rate,学习速率选择不要太大也不要太小,还是自己决定学

习速率,根据最后的结果来调整。不要太大也不要太小喔!

通常情况,学习速率过大,会导致误差无法梯度下降,反而不断上升的情况,学习速率过小,会导

致迭代次数过多的问题。

如果我们有四个w值,则需要用到偏导数(paticial derivative )来计算新的w1,w2,w3,w4

w_1 = w_1 - \eta \left. \frac{\partial f(w_1,w_2,w_3,w_4)}{\partial w_1} \right |_{w_1=0}   w_2 = w_2 - \eta \left. \frac{\partial f(w_1,w_2,w_3,w_4)}{\partial w_2} \right |_{w_2=0}

通常情况,当更新w值以后,新的L值 - 旧的L值小于10的-3次可能就可以判断为到达最低点了

也是自己去把握这样一个度,什么情况我们认为已经得到最优解了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值