机器学习——线性回归及逻辑回归原理及numpy代码实现

引言

机器学习两大主要任务为回归和分类。当预测值为连续时,该任务为回归任务;当预测值为离散时,该任务为分类任务。线性回归和逻辑回归分别为回归和分类的机器学习算法,神经网络也是基于这两个算法在层数上进行加深,获得了更好的效果。

线性回归

直观地从二维上来说,线性回归做的是对现有的数据做一个拟合,当新的数据输入时做预测。如下图,我们知道一些点的x和y值,我们对这些点进行直线拟合,当新的x输入进来,我们可以通过拟合的直线预测一个y值。
在这里插入图片描述
我们将这个想法推广到三维的平面,以及维数更高的超平面。这时候就不仅仅是一个标量x对应一个标量y,而是一个向量 x x x对应一个标量或者向量 y y y。我们可以写成下面这个形式:

h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 h_{\theta}(x)=\theta_{0}+\theta_{1} x_{1}+\theta_{2} x_{2} hθ(x)=θ0+θ1x1+θ2x2
h θ ( x ) = ∑ i = 0 n θ i x i = θ T x h_{\theta}(x)=\sum_{i=0}^{n} \theta_{i} x_{i}=\theta^{T} x hθ(x)=i=0nθixi=θTx

一旦我们将 θ T \theta^{T} θT的值确定下来便确定了拟合的这个平面

怎么做

两种思路:极大似然估计和最小二乘发估计,两种方法结果相同,但解决思路却不一样。

极大似然估计

对于一条拟合得很好的直线,可能会经过较多的样本点。较少的样本点距离直线较近,很少的样本点距离直线较远。把样本和直线的距离定义为 ε ( i ) \varepsilon^{(i)} ε(i),则实际值 y ( i ) y^{(i)} y(i),预测值 θ T x ( i ) \theta^{T} x^{(i)} θTx(i)满足下面的关系:
y ( i ) = θ T x ( i ) + ε ( i ) y^{(i)}=\theta^{T} x^{(i)}+\varepsilon^{(i)} y(i)=θTx(i)+ε(i)
由于处在直线上样本点最多,随着距离 ε ( i ) \varepsilon^{(i)} ε(i)的增大,样本点逐渐减少,所以我们可以假设 ε ( i ) \varepsilon^{(i)} ε(i)服从均值为0,方差为 σ 2 \sigma^{2} σ2的高斯分布。
p ( ϵ ( i ) ) = 1 2 π σ exp ⁡ ( − ( ϵ ( i ) ) 2 2 σ 2 ) p ( y ( i ) ∣ x ( i ) ; θ ) = 1 2 π σ exp ⁡ ( − ( y ( i ) − θ T x ( i ) ) 2 2 σ 2 ) \begin{aligned} p\left(\epsilon^{(i)}\right) &=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(\epsilon^{(i)}\right)^{2}}{2 \sigma^{2}}\right) \\ p\left(y^{(i)} | x^{(i)} ; \theta\right) &=\frac{1}{\sqrt{2 \pi} \sigma} \exp \left(-\frac{\left(y^{(i)}-\theta^{T} x^{(i)}\right)^{2}}{2 \sigma^{2}}\right) \end{aligned} p(ϵ(i))p(y(i)x(i);θ)=2π σ1exp(2σ2(ϵ(i))2)=2π σ1exp(2σ2

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值