美文网首页
问题汇总(1):逻辑回归

问题汇总(1):逻辑回归

作者: 大王叫我来巡老和山 | 来源:发表于2019-02-18 11:20 被阅读0次

    今天开启一个新的小计划,把我之前学习过的零碎知识整合一遍~
    三个月之内搞定吧,先从机器学习开始,线性回归,就由你来打头阵吧~


    目录:
    机器学习常见面试问题汇总
    问题汇总(1):逻辑回归
    问题汇总(2):支持向量机
    问题汇总(3):树模型
    问题汇总(4):聚类
    问题汇总(5):神经网络
    问题汇总(6):EM算法
    问题汇总(7):朴素贝叶斯


    其他人的总结:

    逻辑回归个人总结
    逻辑回归常见面试问题总结

    大家稍等,等SVM部分写完,我就回头写这篇,,,

    基础概念

    回归:

    "回归" 的含义
    常见的七种回归方法

    高尔顿的一篇谈论人的身高的文章,首次提出了“回归”这个名词:“那些高个子的后代的身高,有种回归到大众身高的趋势。” 回归即从一组数据出发,确定某些变量之间的定量关系式,也就是建立数学模型并估计未知参数。我们这里的线性回归即表示使用最佳拟合直线建立因变量(Y)和一个或多个独立变量(X)之间的关系(也成为回归线)。


    最小二乘法

    到底什么是最小二乘法
    半小时学习最小二乘法

    通过最小化误差的平方和,使得拟合对象无限接近目标对象(核心思想)。首先要求误差,也就是真实值减去预测值,预测值即为拟合函数中,参数和特征之间进行计算得到。然后最小化该误差即可。
    通过最小化误差平方和,直观上便是最小化两者的距离。最小二乘法的解 θ=(X^TX)^{−1}X^TY 正符合投影矩阵的公式:将Y向量投影到X构成的平面上。

    • 局限性:
      首先,最小二乘法需要计算 (X^TX) 的逆矩阵,有可能逆矩阵不存在,这样就没有办法直接用最小二乘法。
      第二,当样本特征n非常的大的时候,计算逆矩阵是一个非常耗时的工作,甚至不可行。建议不超过10000个特征。
      第三,如果拟合函数不是线性的,这时无法使用最小二乘法,需要通过一些技巧转化为线性才能使用。

    (X^TX) 的逆无法求得时,也就无法用矩阵形式得到最小二乘的解。此时可以利用梯度下降的方法逐步的逼近出最优解。梯度下降可以算作解最小二乘的方法,跟矩阵解法、方程解法并列。具体区别可以参考知乎上对该问题的解释(见“最小二乘、极大似然、梯度下降有何区别?”)。
    除此之外,可以考虑在原先的A的最小二乘估计中加一个小扰动λI,使原先无法求广义逆的情况变成可以求出其广义逆,使得问题稳定并得以求解。有:
    θ=(X^TX+λI)^{−1}X^TY ,而此时对应的损失函数为:
    J(θ)=\sum_{i=1}^{m} {(y_i−θ^Tx_i)^2+λ||θ||_2^2}即为岭回归(ridge regression),或L2正则(还有一个L1正则,即LASSO回归,将λ||θ||_2^2换为λ||θ||_1即可)。


    交叉熵:

    交叉熵作用

    交叉熵用来评估label和predicts之间的差距,可作为损失函数。基本形式如下:
    loss = \sum_{i=1}^{m}{y_{true}log(y_{pred})}


    逻辑回归:
    逻辑回归假设数据服从伯努利分布,通过极大化似然函数的方法,运用梯度下降来求解参数,来达到将数据二分类的目的。

    逻辑回归的理解


    最大似然估计:

    最大似然估计思想简单解释
    最大似然估计

    最大似然估计可以拆成三个词,分别是“最大”、“似然”、“估计”,分别的意思如下:
    最大:最大的概率
    似然:看起来是这个样子的
    估计:就是这个样子的
    连起来就是,最大的概率看起来是这个样子的那就是这个样子的。


    问题

    逻辑回归为什么用sigmoid函数?

    为什么 LR 模型要使用 sigmoid 函数,背后的数学原理是什么?
    指数族分布与广义线性模型

    1. 假设预测值符合服从伯努利分布
    2. E(y|x;θ) 利用广义线性模型的假设, 符合逻辑回归模型思想。
    3. 也可以从sigmoid函数良好特性分析,如输出在(0,1)区间,函数单调可导,导数计算方便等等。

    逻辑回归为什么用极大似然估计:

    逻辑回归(logistic regression)的本质——极大似然估计

    1.最终损失函数为凸函数,有全局最优,如果像线性回归一样利用误差平方和来当代价函数,则得到非凸函数,有许多局部最优。
    2.没有sigmoid函数,使得收敛更快。


    最小二乘和梯度下降的异同:

    最小二乘、极大似然、梯度下降有何区别?

    最小二乘和极大似然是目标函数,梯度下降是优化算法。机器学习的核心是一个model,一个loss fuction,再加上一个优化的算法。一个目标函数可以用不同的优化算法,不同的目标函数也可以用相同的优化算法。所以最小二乘和极大似然根本不是算法,和梯度下降毫无可比性。
    PS:最小二乘和极大似然也不是对立的。最小二乘是从函数形式上来看的,极大似然是从概率意义上来看的。事实上,最小二乘可以由高斯噪声假设+极大似然估计推导出来。当然极大似然估计还可以推导出其他的loss function,比如logistic回归中,loss function是交叉熵.

    • 相同
      1.本质相同:两种方法都是在给定已知数据(independent & dependent variables)的前提下对dependent variables算出出一个一般性的估值函数。然后对给定新数据的dependent variables进行估算。
      2.目标相同:都是在已知数据的框架内,使得估算值与实际值的总平方差尽量更小。
    • 不同:
      实现方法和结果不同:最小二乘法是直接对\Delta求导找出全局最小,是非迭代法。而梯度下降法是一种迭代法,先给定一个\beta,然后向\Delta下降最快的方向调整\beta,在若干次迭代之后找到局部最小。梯度下降法的缺点是到最小点的时候收敛速度变慢,并且对初始点的选择极为敏感,其改进大多是在这两方面下功夫。

    相关文章

      网友评论

          本文标题:问题汇总(1):逻辑回归

          本文链接:https://www.haomeiwen.com/subject/kwxaeqtx.html