美文网首页Data science机器学习深度学习 神经网络
线性回归和逻辑回归的极大似然估计

线性回归和逻辑回归的极大似然估计

作者: 星光下的胖子 | 来源:发表于2021-04-28 09:59 被阅读0次

    离散变量预测,称之为分类;连续变量预测,称之为回归。

    本文总结,通过极大似然估计得到:

    • 1)线性回归的代价函数J(\theta)为均方误差MSE
    • 2)逻辑回归的代价函数J(\theta)为(经过sigmoid映射后的)二元交叉熵BCE

    一、线性回归

    中心极限定理

    中心极限定理是指,给定足够大的样本量,无论变量在总体中的分布如何,变量均值的抽样分布都将近似于正态分布。详细来讲,给定一个任意分布的总体,从这个总体中抽取n个样本,总共随机抽取m次(n、m越大越好),计算这m次的样本的平均值,则这些平均值的分布是正态分布,并且这些平均值的均值近似等于总体均值,平均值的方差为总体方差除以n。

    误差

    误差指的是实际值与预测值之间的差值:y^{i} = \theta^{T} X^{i} + \epsilon^{i}
    我们期望预测结果\theta^{T} X^{i}尽量接近实际值y^{i},即希望误差\epsilon^{i}最小,因此需要对误差进行分析,以进行数学建模。
    我们假设误差\epsilon^{i}是独立同分布,且服从N(0, \sigma^2)的高斯分布,则其概率密度函数为:
    P(\epsilon^{i}) = \frac{1}{\sqrt{2\pi}\sigma}\cdot e^{-\frac{(\epsilon^{i})^2}{2\sigma^2}}

    似然函数L(\theta)

    对于已经观察到的样本的结果,它的似然函数为:
    L(\theta) = \prod_{i=1}^n P(y^{i}|X^{i};\theta) = \prod_{i=1}^n P(\epsilon^{i}) = \prod_{i=1}^n \frac{1}{\sqrt{2\pi}\sigma}\cdot e^{-\frac{(y^{i} - \theta^{T} X^{i})^2}{2\sigma^2}}
    它表示在已知X;\theta条件下,Y=y发生的概率值,显然L(\theta)越大越好。

    两边取对数,并展开化简得:
    \log L(\theta) = n \log \frac{1}{\sqrt{2\pi}\sigma} - \frac{1}{\sigma^2} \cdot \frac{1}{2} \sum_{i=1}^n(y^{i} - \theta^T X^{i})^2
    约去定值,并乘-1,将求最大值转换为求最小值:
    J(\theta) = \frac{1}{2n}\sum_{i=1}^n(y^i-\theta^T X^i)^2
    代价函数J(\theta)称为L2损失或MSE(均方误差)。

    二、逻辑斯蒂回归(解决分类问题)

    伯努利分布

    如果随机变量X只取0和1两个值,且相应的概率为:
    P(X=1)=p,P(X=0)=1-p,0<p<1
    则称随机变量X服从参数为p的伯努利分布。

    基于线性回归的思考

    如何用线性回归来解决二分类问题?
    1.通过sigmoid函数将值域映射到(0, 1)之间,表示其为正样本的概率值。
    g(z^i) = \frac{1}{1 + e^{-z^i}},z = \theta^T X^i

    2.若继续模仿线性回归,利用MSE作为代价函数,则此时代价函数是一个非凸函数,会有许多局部极小值,不利于求解,我们应该换一种思路。
    J(\theta) = \frac{1}{2n} \sum_{i=1}^n (y^i - g(z^i))^2 = \frac{1}{2n} \sum_{i=1}^n (y^i - \frac{1}{1 + e^{- \theta^T X^i}})^2

    似然函数L(\theta)

    在二分类问题中,y取值0,1服从伯努利分布,则有:
    y=1时的概率为:P(y=1|x;\theta) = g(z)
    y=0时的概率为:P(y=0|x;\theta) = 1- g(z)
    合并得,P(y|x;\theta) = g(z)^y(1-g(z))^{(1-y)}, y=0,1

    对于已经观察到的样本的结果,它的似然函数为:
    L(\theta) = \prod_{i=1}^n P(y^{i}|x^{i};\theta) = \prod_{i=1}^n g(z^{i})^{y^{i}}(1-g(z^{i}))^{(1-y^{i})}
    它表示在已知X;\theta条件下,Y=y发生的概率值,显然L(\theta)越大越好。

    两边取对数,并展开化简得:
    \log{L(\theta)} = \sum_{i=1}^n [y^i \log{g(z^i)} + (1-y^i) \log{(1-g(z^i))}]
    乘以-1,将求最大值转换为求最小值:
    J(\theta) = -\sum_{i=1}^n [y^i \log{g(z^i)} + (1-y^i) \log{(1-g(z^i))}],g(z^i) = \frac{1}{1 + e^{-z^i}},z = \theta^T X^i
    代价函数L(\theta)称为二元交叉熵损失(BCE)。

    相关文章

      网友评论

        本文标题:线性回归和逻辑回归的极大似然估计

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