Logistic Regression (Logistic 回归) 的通俗解释

最近开始学习机器学习(怎么感觉这句话怪怪的),了解了Logistic Regression 的原理。我个人认为,Logistic Regression 是机器学习最基础的模型,它诠释了机器学习的基本原理

先来一张经典的图

Logistic Regression (Logistic 回归) 的通俗解释

Logistic Regression 的目的

我们先忘了上面那张图,来看一张干净简单一点的:(纯手画有点丑)

Logistic Regression (Logistic 回归) 的通俗解释
这个过程很简单,便是根据已有的参数给出一个答案

我们先来看一下这里面的参数:

  • x1 和 x2 :输入的参数
  • w1 和 w2 :权重(先不用管)
  • b :biase(也不用管)

我们再来更形象地描述一下:

比方说你有一个房子,有两个属性:房屋面积 x1 ,卧室数量 x2 (大佬给出的例子)
你现在要通过上图的方法,给出你对这个房子的判断:这是不是个好房子

虽然这个例子主观性过强,但我们假设只要 x1 x2 一定,这个房子就是好房子

总结一下:
输入 x1 x2
输出 一个判断 y

Forward Propagation 正向传播

我们现在讨论的东西,是关于如何给出判断的,图中已经给出了,相信很容易看懂。

我再写一遍:z = w1*x1 + w2*x2 + b
y = σ(z)

但他们都是什么意思呢?

x1 x2 我们已经知道了,但是w1 w2表示了什么呢?
学过OI的可能知道w是Weight的缩写,译为权重。你可以想象,如果房屋面积 x1 对我很重要,那我就让 x1 乘上一个很大很大的数 w1,那么它就会对最终的值产生更大的影响

哪b呢?
b是biase的缩写,译作偏差。很容易理解,如果你的预测总是差了0.00001,那么加上个0.00001不久一劳永逸了么

总结一下:
w : 控制对应 x 对结果的影响
b : 微调结果

σ(z)是啥呢?

来张sigmoid函数的靓照

Logistic Regression (Logistic 回归) 的通俗解释

有点感觉了没有?它把 y 的值切成了两部分 0 ~ 0.50.5 ~ 1, 分别对应着 z 中 <0 和>0 的范围。
所以σ(z)的作用:把 z 的值转换为判断

σ(z)>0.5 时 判断为真(当然假也行)
σ(z)<0.5 时 判断为假(同上)

Backward Propagation 反向传播

刚才我们解释了怎么用正确的 w 和 b 来判断,但是它们是怎么来的?
……靠蒙的你信吗……

一开始,我们的 w 和 b 都取的是随机数,当然不能给出完全正确的答案。所以呢,我们需要微调 w 和 b ,让最终结果向真正的 y 靠拢。(注意这个图中 y 成了 a ,因为不是最终答案)

Logistic Regression (Logistic 回归) 的通俗解释

下面将是本文中最吓人的部分请洗把脸再看(实际上你不需要过多的了解)

我们既然要让结果向真正的 y 靠拢,就需要一个函数来判断它的偏差,这里就轮到 Loss 函数登场了。(图中最后一个方框的 L )由于方法众多,公式冗长,你可以将它看作方差(y-a)^2

知道了目标,具体的靠拢方法就要请到梯度下降法了(当然还有更多[转载自博客])

Logistic Regression (Logistic 回归) 的通俗解释

是不是挺像下山?我们的目标是 Loss 最小(J 函数是全局的 Loss),求出最小,即使是局部最小,也对我们有极大帮助。

等一下,我们是不是只求出了 Loss 最小,但是 w 和 b 还不知道呢。这时候就需要导数了。当然我们可以不知道,我觉得就是一个神奇的规律,建立在 Loss 和 w 、b 之间。这样,运用那种我们不太熟悉的神奇规律,就能优化 w 和 b 的值了。

现在,我们已经万事俱备,只欠东风了。现在机器已经知道了学习方法,就是时候给它灌教辅资料了。

Training 训练

这里不必多说,机器学习总是建立在大数据之上的,没有大数据的支持,机器学习的存在就没有意义。
现在假设我们拥有很多很多组房屋的数据 x1, x2,和你对它们的看法 y={0, 1}。
你便可以将它们灌给机器,执行一次正向传播,得出偏差之后,再进行一次反向传播,优化 w 和 b。

Test 测试

当你把它们都灌给机器后,你已经得到了近似完美的 w 和 b,现在,你只要输入未知的的 x,
你就能得到近似正确的 y。

好啦,写到这里差不多就这样了,原理从中可以看出,但具体的推导和向量化优化以及跟优化的**函数,还需要进一步的学习。

如果你觉得我文中有不妥或错误,欢迎跟我交流

图形上的意义

Logistic Regression (Logistic 回归) 的通俗解释

如图,圈点代表着好房子,叉点代表着不好的房子

我们求出的,实际是好房子与不好房子的分界线(蓝线)

我们这里解决的是一个二分分类的问题,实际上也是机器学习最基础的也是最早的问题。当然也比较有意思。

相关文章:

  • 2021-06-20
  • 2021-08-07
  • 2021-08-04
  • 2021-07-27
  • 2021-11-16
  • 2021-11-07
猜你喜欢
  • 2021-12-09
  • 2021-09-05
  • 2021-05-07
  • 2021-04-12
  • 2021-04-14
  • 2021-05-17
  • 2021-09-03
相关资源
相似解决方案