热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

逻辑斯蒂回归_逻辑斯蒂回归详细解析|统计学习方法学习笔记|数据分析|机器学习...

本文包括:重要概念逻辑斯蒂回归和线性回归二项逻辑斯谛回归模型逻辑斯蒂回顾与几率模型参数估计多项逻辑斯谛回归其它有关数据分析,机器学习的文章及社群1.重要

02ee5f9fffaa3b2c1cf46f832f8d58c1.png

本文包括:

  1. 重要概念
  2. 逻辑斯蒂回归和线性回归
  3. 二项逻辑斯谛回归模型
  4. 逻辑斯蒂回顾与几率
  5. 模型参数估计
  6. 多项逻辑斯谛回归
  7. 其它有关数据分析,机器学习的文章及社群

1.重要概念:

在正式介绍逻辑斯蒂回归模型之前,需要先对一些基本概念有所了解,如果明白这些概念可以直接跳过。

分布函数和密度函数:对于一个连续型随机变量,密度函数是指该变量在其可取值范围内为一个特定值的概率,分布函数即在一个特定值和小于该特定值的范围内出现的概率,可以理解为密度函数的面积比率。

用逻辑斯蒂分布举例来说(下图),在密度函数中,可以看到在x=0时出现峰值,即x取0的概率最大,从0开始往无穷小和无穷大都在递减。再看分布函数,可以看到当x=0时,密度函数取值为0.5,对照密度函数,在小于等于0的部分,面积是总面积的一半。

aa9d1b30e63f0ccaa2b8785021ba35a6.png

似然函数:在统计学中,概率描述了已知参数时的随机变量的输出结果,似然则用来描述已知随机变量输出结果时,未知参数的可能取值。那么似然函数就是用来求得未知参数的估计值所使用的函数。

极大似然估计:通过最大化似然函数求得未知参数的估计值。这里讲一下为什么是极大而非其它的方法求参数的估计值。

在机器学习中,我们有大量的记录构成训练集,需要根据训练集进行学习获得模型,根据具体的问题,我们可以将一个特定的模型套用在这个具体问题中。现在,我们有了一个含有未知参数的模型,以及大量训练集记录。

根据模型,我们可以假设Y=1的概率为P,Y=0的概率为1-P(这里的P包含了模型中的未知参数)。假设训练集中有10个记录,3个为1,7个为0,那么得到这个最终结果的概率为P^3*(1-P)^7。

现在重点来了,既然现实情况中已经出现了3个1和7个0的情况,那么我们的模型应该让这种情况出现的概率最大,因为毕竟这个结果已经出现了。

也就是说,我们应当最大化P^3*(1-P)^7,以此推得P中所包含的未知参数的估计值,并最终得到我们想要的模型。


2.逻辑斯蒂回归和线性回归:

在线性回归(感知机)中,我们知道一个分离超平面w·x将特征空间分成两个部分,实例在不同的子空间中则被分为相对应的类。但是线性回归的一个问题在于,我们不知道一个新输入的实例,它属于一个类的概率是多少。

换句话说,新输入实例在特征空间中的位置可能与分离超平面距离非常近,也有可能非常远,如果距离较远,那么它更有可能被分成它所在一侧对应的类,但是如果与超平面的距离非常近,说明它被分成另一类的可能性也很大,比如被分成A的可能性为51%,而分成B类的可能性为49%,此时线性回归会将其分为A类,而忽略了49%分成B类的可能性,也就是说,线性回归仅给出结论,未给出概率。

于是,为了得到这一概率,我们引入了Sigmoid函数:

Sigmoid函数能够将线性回归产生的值(-∞,+∞)转换到(0,1)区间内,而概率的取值也在(0,1)内,这样,就可以显示一个实例被分为一个类的概率是多少了。


3.二项逻辑斯谛回归模型:

首先来看逻辑斯蒂函数的一般形式,其分布具有以下分布函数和密度函数:

式中,μ为位置参数,γ>0为形状参数。

aa9d1b30e63f0ccaa2b8785021ba35a6.png

分布函数以(μ,1/2)为中心对称,满足:

形状参数γ的值越小,分布函数曲线在中心附近增长得越快。

现在,我们让μ取0,γ取1,即得到我们在逻辑斯蒂回归中使用的函数:

采用上式,我们将线性回归产生的值代入到sigmoid函数之中,可得:

二项逻辑斯谛回归模型是一种分类模型,由条件概率分布P(Y|X)表示。这里,随机变量x取值为实数,随机变量Y取值为1或0。

这样,我们就将范围为实数的线性回归产生的值转变为逻辑斯蒂回归中仅在(0,1)范围之内。

逻辑斯谛回归仅对二分类的问题有效,我们可以比较P(Y=1|x)和P(Y=0|x)两个条件概率值的大小,将实例x分到概率较大的那一类,同时也能得知分成两种类别的可能性是多少。


4.逻辑斯蒂回归与几率:

一个事件的几率是指该事件发生的概率与该事件不发生的概率的比值。如果事件发生的概率是p,那么该事件的几率是

,该事件的对数几率或logit函数是:

我们将逻辑斯蒂回归的P代入,可得:

通过上式我们知道,通过几率的概念对线性函数进行转换,可以得到逻辑斯蒂回归公式。

一个直观的理解是,对于上式,分子是y=1的概率,而分母是y≠1的概率,显然wx+b越大,y=1的概率越大,也就是实例点x在y=1的一侧距离分离超平面越远,则y=1的概率越大。


5.模型参数估计:

设:

似然函数为:

为了计算方便,我们对似然函数取对数,得到对数似然函数:

以上公式的第二个等式使用了上一节谈到的几率。注意,这里的式子中w和xi都是进行扩展后的w和xi,即权值向量中最后一项为b,xi最后一项为1。

现在根据极大似然估计法,对L(w)求导:

接下来通常采用的方法是梯度下降法及拟牛顿法来求得w的估计值,待后续更新。


6.多项逻辑斯谛回归:

逻辑斯蒂回归需要将线性回归通过sigmoid函数进行转换,但这种方法仅对二分类的问题有效,如果碰到多分类的问题逻辑斯蒂回归就失效了。

于是,对于多分类的问题,我们使用softmax函数代替sigmoid函数,可以将softmax函数看做sigmoid函数的推广。

Softmax函数:

Softmax函数计算新输入实例被分为每一个类的概率,并选择概率最大的对应的类作为新输入实例的类。

多项逻辑斯蒂回归:


github:

如果觉得对您有帮助,还烦请点击下面的链接,帮忙github点个star~谢谢~

Zhouxiaonnan/machine-learning-notesandcode

所有笔记目录:包括《统计学习方法》中各个模型的理论和python复现部分,以及数据分析Mysql查询优化。

舟晓南:所有笔记目录 | 数据分析 | 机器学习 | 深度学习等

如何转行数据分析师:

舟晓南:如何转行和学习数据分析 | 工科生三个月成功转行数据分析心得浅谈

舟晓南:求职数据分析师岗位,简历应该如何写?|工科生三个月成功转行数据分析心得浅谈

欢迎关注专栏:

学习笔记:数据分析,机器学习,深度学习​zhuanlan.zhihu.com
2eb0c434662f09a9adbda491b9675ec9.png

数据分析,机器学习学习社群正式启动~

需要学习资料,想要加入社群均可私信~

在这里会分享各种数据分析相关资源,技能学习技巧和经验等等~

详情私信,一起进步吧!

写于成都 2020-9-10

第一次修改 2020-9-26

第二次修改 2020-11-5



推荐阅读
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 闭包一直是Java社区中争论不断的话题,很多语言都支持闭包这个语言特性,闭包定义了一个依赖于外部环境的自由变量的函数,这个函数能够访问外部环境的变量。本文以JavaScript的一个闭包为例,介绍了闭包的定义和特性。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • Python开源库和第三方包的常用框架及库
    本文介绍了Python开源库和第三方包中常用的框架和库,包括Django、CubicWeb等。同时还整理了GitHub中最受欢迎的15个Python开源框架,涵盖了事件I/O、OLAP、Web开发、高性能网络通信、测试和爬虫等领域。 ... [详细]
  • 如何使用代理服务器进行网页抓取?
    本文介绍了如何使用代理服务器进行网页抓取,并探讨了数据驱动对竞争优势的重要性。通过网页抓取,企业可以快速获取并分析大量与需求相关的数据,从而制定营销战略。同时,网页抓取还可以帮助电子商务公司在竞争对手的网站上下载数百页的有用数据,提高销售增长和毛利率。 ... [详细]
  • 合并列值-合并为一列问题需求:createtabletab(Aint,Bint,Cint)inserttabselect1,2,3unionallsel ... [详细]
  • 本文介绍了在Python张量流中使用make_merged_spec()方法合并设备规格对象的方法和语法,以及参数和返回值的说明,并提供了一个示例代码。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • 腾讯安全平台部招聘安全工程师和数据分析工程师
    腾讯安全平台部正在招聘安全工程师和数据分析工程师。安全工程师负责安全问题和安全事件的跟踪和分析,提供安全测试技术支持;数据分析工程师负责安全产品相关系统数据统计和分析挖掘,通过用户行为数据建模为业务决策提供参考。招聘要求包括熟悉渗透测试和常见安全工具原理,精通Web漏洞,熟练使用多门编程语言等。有相关工作经验和在安全站点发表作品的候选人优先考虑。 ... [详细]
author-avatar
小东东5201314
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有