本系列前四篇是随手涂鸦,只为讲清问题,有口语化,且有少数符号误写,以及重复絮叨,且不打算修改:) 第5篇提供了一个严谨的学术语言的完整pdf文档,敬请下载!
Logistic Regession是什么
Logistic Regression是线性回归,但最终是用作分类器:它从样本集中学习拟合参数,将目标值拟合到[0,1]之间,然后对目标值进行离散化,实现分类。
为什么叫Logistic呢?因为它使用了Logisitic函数,形如:
这个函数有一些很有趣的性质,后面会谈到。
Logistic regression有一定的复杂度。对新人来说,最好有一个完整的推导指南,然后反复推导N遍(N>=5),直至能独立推导,再用python或者java实现这个推导,然后用这个实现解决一个实际应用,这样差不多算是掌握Logistic regression了。上述过程缺一不可,而且是成本最小的学习方案。
Logistic regression很重要,据说google的Ads广告使用的预测算法就是一个大Logistic regression模型。
Logistic regression涉及机器学习的多个重要概念,样本集,特征,向量,损失函数,最优化方法,梯度下降。如果对logistic regression能做到庖丁屠牛的程度,对未来进行模式识别和机器学习有事半功倍的收益。
我们现从一个最简单的问题开始,然后逐步增加功能,最终实现logistic regression。
先从一个最简单的问题开始
假如有一组样本,形如
xi 的值决定 yi 的值,也就是说 xi 是自变量, yi 是因变量,每个 xi 对应一个 yi 。从脚标可以看出,这组样本一共有 n 个。
实际上
xi=[xi,1,xi,2,...,xi,j,...xi,k] ,如果这样的话,后面的 W 和公式
我们拟合