机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型

东阳的学习记录,坚持就是胜利!

用回归来处理分类可行吗?

以一个二分类问题为例:

  • training: class1 的target为1;class2的target为-1.
  • testing:接近于1的class1,接近-1的为class2

机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型
从上图可以看出,使用回归来处理分类问题会导致右图中的问题(惩罚太正确的点)。因为回归问题的mse不适用于分类问题

同时,在处理多分类问题时,会使得输出的target之间具有某种相关性,无法满足我们需要达到的分类要求。

一个理想的方案

我们使用分类错误次数n来做Loss函数;
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型
**但是Loss函数不可微,不能采用梯度下降。**可以用SVM和Preception来解决。

原理讲解

Posterior Probability

机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型
总的来说,分类问题需要用到全概率公式贝叶斯公式,以上图为例,即在已知取出的球为蓝色的情况下求该球属于Box1的概率,有多个分类的情况下,选择概率最大的作为最终结果。

大量的数学证明
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型
最终可以看到,结果如上图。

逻辑回归

逻辑回归是应用非常广泛的一个分类机器学习算法,它将数据拟合到一个logistic函数中,从而能够完成对事件发生的概率进行预测。

原理

  • 逻辑回归不是回归模型,而是用于处理标签为二分类问题的模型;
  • 分类问题的本质将训练数据的特征和标签转化为决策面;
  • 逻辑回归函数:含有逻辑函数和线性回归函数

Function Set

  • sigmoid Function
    机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型

Step2: Goodness of a Function(评价函数的好坏/损失函数的选择)

机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型
中间经过大量的数学证明

为什么不能使用平方误差??

机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型
如上下两图所示,如果在逻辑回归中使用Square Error, 会导致梯度值很小,(离目标很近和很远时)都趋于0。会出现训练速度超级慢,甚至无法得到局部最优解的情况。
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型

小结

如下图:在逻辑回归中不能使用MSE
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型

Discriminative v.s. Generative

判别模型 VS 生成模型
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型
answer of Q: 不同

判别模型和生成模型有什么不同

在判别模型中,我们不关心数据符合什么样的分布,只需经过网络得出来w, b的值即可;但是在生成模型中,我们需要首先假定训练数据属于一个分布,然后通过训练,最后输出的是一个概率分布(与假设的属于同一类分布)。
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型
通常来说,判别模型的效果比生成模型的效果要好。

为什么说判别模型的效果通常要好一点

生成模型的好处

  • With the assumption of probability distribution,
    less training data is needed(对数据量的要求较小)
  • With the assumption of probability distribution,
    more robust to the noise。(抗干扰性强)
  • Priors and class-dependent probabilities can be
    estimated from different sources.(先验概率与类相关概率可以从不同的数据源加以估计)

多分类问题

机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型

softmax

https://zh.wikipedia.org/wiki/Softmax%E5%87%BD%E6%95%B0

逻辑回归的局限

有时候无法找到合适的界限
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型

通过对数据进行变换可以解决

但是这样的变换并不好找。
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型

结论

可以看到单个的Logistic Regression并不能很好的解决上诉问题,我们需要将多个Logistic Regression串联在一起。如下图:
机器学习04-ClassiFication(分类问题)-逻辑回归,生成模型与判别模型

Deep Learning诞生了!!!