机器学习开篇:Logistic 回归(LR)原理推导

算法聆雪人
• 阅读 3916

机器学习类别比神经网络大,经典的机器学习模型具有非常强的逻辑性、数学性和可解释性。本人选择用经典的LR模型作为机器学习的开篇!
本篇主要注重模型的构建和数学原理的推导,包括模型的评估的方法。代码部分放在另一篇文章探讨。

LR theory

一、来源:用标准线性回归模型得到一系列预测值,设置某参考阈值,将预测值二分类。但是这样分类导致两种问题1、如果预测值过于弥散,且混杂,阈值的设置将很难确定。2、设定阈值后没有数学依据建立合理损失函数,损失函数与标准的线性回归模型大相径庭无法准确修改线性模型参数。
解决方案:1、将预测值转换为概率,将其值压缩在0~1之间。2、利用概率的最大似然估计反过来确定模型参数。和我们上一篇文章softmax层选取思想有相似之处,大家可以对比。

二、LR模型的构建
来源于线性回归模型,我们首先给出标准的线性模型公式:

z=B0+B1X1+B2X2+B3X3+...+BiXi

logistic函数
机器学习开篇:Logistic 回归(LR)原理推导
其实这是一个简化版的logistic函数,他还有个名字叫sigmoid函数,多用在激活函数。

为什么选用logistic函数?

看他的函数分布图:
机器学习开篇:Logistic 回归(LR)原理推导
上图也可以理解为logistics概率分布,数字越大越接近于1,数字越小越接近于0,典型两极分化,既然是两极分化作为分类再适合不过了。但这种样子的函数也挺多,为啥只找它?
1、数字越大概率变化越小,超大数据对模型的影响不会很大。什么意思呢,我举个好玩的例子:印度贫富差异大,可分为富人区和穷人区,我们以楼房的高度去预测楼房属于富人还是穷人。根据现实我们可以知道一般来说富人房子比较高,穷人一般小平房不过几层。那么区分点我们不做分析也想得到,也就大概区分度在5层左右,5层以上是富人,五层一下是穷人。如果现在有个超级大厦200层,按线性的计算他会大大影响模型判断,就会出现5层也是富人200层也是富人这种分类里面数据弥散。所以用logistic(),相当于对两级数据有惩罚,让他们对模型的影响小一点不要像线性那么大。
2、这个函数的倒数可以用它本身表示,方便后续的参数计算。
它的倒数为y(1-y)
三、损失函数构建
首先假设为二分类问题:y取值0和1。
列出概率公式:
机器学习开篇:Logistic 回归(LR)原理推导

这里强调的是服从logistic分布概率分布。

损失函数:

损失函数为所有独立事件的联合概率。
为什么是联合概率呢?源自于重要数学前提-------

极大似然估计

一文搞懂极大似然估计
这篇文章讲的非常通俗易懂大家可以看一看。
我们首先列出‘损失函数’公式:
这里打上引号原因是,这里的的损失函数准确的讲是待优化函数,并没有关于y值的直接损失。
机器学习开篇:Logistic 回归(LR)原理推导
如图所示:是关于参数B的待优化函数。也是极大似然估计联合概率的表达式。摘选于刘顺祥的书中截图。
我们这里简短的描述极大似然估计的数学含义:极大似然估计的目的在于估计,估计样本的真实概率。也就是说先验概率我们是不知道的,我们需要通过已有的样本表现去估计它的概率。怎么估计呢?就是求使样本联合概率最大化的先验概率值。这就非常简单了就是求个概率p使得联合概率最大,也就是求合适的参数B使损失函数最大化。
我们接下来对两边取对数简化一下损失函数:
机器学习开篇:Logistic 回归(LR)原理推导
四、优化损失函数:
这就是一个多元函数求最大值问题,对每个参数求导并令其等于零求极值。
机器学习开篇:Logistic 回归(LR)原理推导
求导之后发现面临1、计算复杂问题。2、需要带入所有样本。前一张的softmax层也提到过重要的解决思想就是随机梯度下降:
首先梯度下降是为了解决计算复杂的问题,随机梯度下降是为了解决需要带入大量样本的问题。
梯度下降优化算法:
机器学习开篇:Logistic 回归(LR)原理推导
随机梯度下降是求目标函数的极小值,我们的目标函数是最大值所以我们需要对函数前面加上负号:
机器学习开篇:Logistic 回归(LR)原理推导
接下来有个疑问,也是我想不太明白的问题,至今也没有好的解释,有大佬看见帮我解答一下。梯度下降算法是求极值问题,而不是最值问题,怎么才能确定我们求得极值是最小值呢?
本题适用于梯度下降优化算法我觉得是损失函数的对数处理,让直接让参数的所在项是一个单调函数,这样可以避免多个极值问题。但是对与参数和损失是高阶关系应该如何运用梯度优化算法呢?
机器学习开篇:Logistic 回归(LR)原理推导

注意事项:

这里我们发现一个很有意思现象,在更新参数的时候每一步都得导入所有样本,并没有随机梯度下降。这里的主要原因是,损失函数定义是极大似然估计的联合样本乘积,不能狭义的用单个样本定义损失函数,这里只适合梯度下降不适合随机

至此LR理论的算法部分就完结了,下一篇将完善LR模型的评估与参数解释。

点赞
收藏
评论区
推荐文章
小天 小天
2年前
机器学习入门简介
在这篇博文中,我们将简要介绍以下主题,为您提供机器学习的基本介绍:什么是机器学习训练机器学习模型优化参数神经网络如果您不是专家,请不要担心—这篇博文所需的唯一知识是基础高中数学。什么是机器学习?牛津词典将机器学习定义为:“计算机从经验中学习的能力”。机器学
京东云开发者 京东云开发者
6个月前
大模型在软件测试中的应用论讨
1、大模型的概念大模型是指具有大规模参数和复杂计算结构的机器学习模型。这些模型通常由深度神经网络构建而成,拥有数十亿甚至数千亿个参数。大模型的设计目的是为了提高模型的表达能力和预测性能,能够处理更加复杂的任务和数据。大模型在各种领域都有广泛的应用,包括自然
黎明之道 黎明之道
4年前
天池比赛数据挖掘心电图模型调参
Task4建模与调参4.1学习目标学习机器学习模型的建模过程与调参流程完成相应学习打卡任务4.2内容介绍逻辑回归模型:理解逻辑回归模型;逻辑回归模型的应用;逻辑回归的优缺点;树模型:理解树模型;树模型的应用;树模型的优缺点;集成模型基于bagging思想的集成
Wesley13 Wesley13
4年前
AI金融知识自学偏量化方向
前提:统计学习(统计分析)和机器学习之间的区别金融公司采用机器学习技术及招募相关人才要求第一个问题:  机器学习和统计学都是数据科学的一部分。机器学习中的学习一词表示算法依赖于一些数据(被用作训练集),来调整模型或算法的参数。这包含了许多的技术,比如回归、朴素贝叶斯或监督聚类。但不是所有的技术都适合机器学习。例如有一种统计和数
卷积神经网络模型发展及应用
卷积神经网络模型发展及应用转载地址:http://fcst.ceaj.org/CN/abstract/abstract2521.shtml深度学习是机器学习和人工智能研究的最新趋势,作为一个十余年来快速发展的崭新领域,越来越受到研究者的关注。卷积神经网络(CNN)模型是深度学习模型中最重要的一种经典结构,其性能在近年来深度学习任务上逐步提高。由于可以自动学
人工智能人才培养
No.1第一天一、机器学习简介与经典机器学习算法介绍什么是机器学习?机器学习框架与基本组成机器学习的训练步骤机器学习问题的分类经典机器学习算法介绍章节目标:机器学习是人工智能的重要技术之一,详细了解机器学习的原理、机制和方法,为学习深度学习与迁移学习打下坚实的基础。二、深度学习简介与经典网络结构介绍神经网络简介神经网络组件简介神经网络训练方法卷积神经网络介
大模型在软件测试中的应用论讨
作者:京东物流张媛1、大模型的概念大模型是指具有大规模参数和复杂计算结构的机器学习模型。这些模型通常由深度神经网络构建而成,拥有数十亿甚至数千亿个参数。大模型的设计目的是为了提高模型的表达能力和预测性能,能够处理更加复杂的任务和数据。大模型在各种领域都有广
京东云开发者 京东云开发者
11个月前
大模型在软件测试中的应用论讨
作者:京东物流张媛1、大模型的概念大模型是指具有大规模参数和复杂计算结构的机器学习模型。这些模型通常由深度神经网络构建而成,拥有数十亿甚至数千亿个参数。大模型的设计目的是为了提高模型的表达能力和预测性能,能够处理更加复杂的任务和数据。大模型在各种领域都有广
迁移学习核心技术的开发与应用
一、机器学习简介与经典机器学习算法介绍1.什么是机器学习?2.机器学习框架与基本组成3.机器学习的训练步骤4.机器学习问题的分类5.经典机器学习算法介绍章节目标:机器学习是人工智能的重要技术之一,详细了解机器学习的原理、机制和方法,为学习深度学习与迁移学习打下坚实的基础。二、深度学习简介与经典网络结构介绍1.神经网络简介2.神经网络组件简介3.神经网