机器学习面试准备之一、线性回归与逻辑回归
(1)线性回归(Linear Regression):
线性回归才是真正用于回归的,而不像logistic回归是用于分类,其基本思想是用梯度下降法对最小二乘法形式的误差函数进行优化。单变量线性回归的基本形式就是y = ax + b,用来拟合数据,比如房屋面积和价格的关系。
收集的数据中,每一个分量,就可以看做一个特征数据。每个特征至少对应一个未知的参数。这样就形成了一个线性模型函数,多变量线性回归的表示形式为:
优化目标为:
在线性回归的基础上,有了局部加权线性回归(LWLR),优化目标为:
由此可见LWLR与LR不同,LWLR是一个非参数模型,因为每次进行回归计算都要遍历训练样本至少一次。
线性回归优缺点:
- 优点:实现简单,计算简单;
- 缺点:不能拟合非线性数据;
(2)逻辑回归(Logistic Regression):
Logistic是用来分类的,是一个非线性的二分类模型,主要是计算在某个样本特征下事件发生的概率,但是它本质上又是一个线性回归模型,因为除去sigmoid映射函数,其他的步骤,算法都是线性回归的。可以说,逻辑回归,都是以线性回归为理论支持的。比如根据用户的浏览购买情况作为特征来计算它是否会购买这个商品,抑或是它是否会点击这个商品。然后LR的最终值是根据一个线性和函数再通过一个sigmod function来求得,这个线性和函数权重与特征值的累加以及加上偏置求出来的,所以在训练LR时也就是在训练线性和函数的各个权重值w。
logistic函数表达式为:
sigmoid函数的图像:
逻辑回归模型实际上是预测条件概率,关于逻辑回归的模型参数,是通过极大似然估计法估计的。估计这个L(w)的极大值就可以得到w的估计值。
Logistic回归参数的学习规则,同线性回归一样,都可以通过梯度下降法。
关于LR的多分类:softmax
关于softmax回归的更多:http://ufldl.stanford.edu/wiki/index.php/Softmax%E5%9B%9E%E5%BD%92
softmax:假设离散型随机变量Y的取值集合是{1,2,..,k},则多分类的LR为
P(Y=a|x)=exp(wa * x) / ( 1 - 1到k求和(wk * x)) 1
Logistic回归优缺点:
优点:
实现简单;
分类时计算量非常小,速度很快,存储资源低;
缺点:
容易过拟合,一般准确度不太高;
只能处理两分类问题(在此基础上衍生出来的softmax可以用于多分类),且必须线性可分;
(3)正则化方法
对于线性回归或逻辑回归的损失函数构成的模型,可能会有些权重很大,有些权重很小,导致过拟合,使得模型的复杂度提高,泛化能力较差(对未知数据的预测能力)。过拟合问题往往源自过多的特征。
- 解决方法
1)减少特征数量(减少特征会失去一些信息,即使特征选的很好)
可用人工选择要保留的特征;
模型选择算法;
2)正则化(特征较多时比较有效)
保留所有特征,但减少θ的大小
(4)分类和回归的区别:在于输出变量的类型。
定量输出称为回归,或者说是连续变量预测;
定性输出称为分类,或者说是离散变量预测。
举个例子:
预测明天的气温是多少度,这是一个回归任务;
预测明天是阴、晴还是雨,就是一个分类任务。
总的来说两个问题本质上都是一致的,就是模型的拟合(匹配)。