热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

Logistic回归算法详细介绍

Logistic回归又称Logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。        L

Logistic回归又称Logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。

 

      Logistic回归模型中的因变量只有1-0(如是和否,发生和不发生)两种取值。假设在p个独立自变量x1,x2,...,xp作用下,记y取1的概率是p = P(y=1|X),取0的概率是1-p,取1和0的概率之比为p/(1-p),称为事件的优势比(odds),对odds取自然对数得Logistic变换Logit=In(p/(1-p))。

      令Logit(p)=In(p/(1-p))=z ,则p=1/(1+exp(-z))即为Logistic函数,或者称为Sigmoid函数。如图所示:

 

 

      p是关于z的函数,令g(z)=1/(1+exp(-z)),则

      注意,p是我们要求解的,我们的终极目标,那么z又是关于样本特征的函数,即

构造预测函数为:

      函数表示结果取1的概率,因此对于输入样本x分类结果为类别1和类别0的概率分别为

      两个式子综合起来,则

 

      取似然函数为:

      翻译成人话就是,我对于一个样本进行预测判别,判断正确的概率为P,那么我对所有样本m进行判断的概率是,前面说过p是我们的求解目标,而现在是对所有样本求解p的值,累乘后的值到达最大,值越大说明全局样本预测越准确。到这里,我们应该清楚,函数就是我们找到损失函数。接下来,我会再进一步的优化函数。

 

 

      对损失函数取对数为:

      最大似然估计就是要求取最大值是的,其实这里可以用梯度上升法求解即可。但是我们习惯了梯度下降法,故需要乘一个负的系数-1/m,得到

      所以取最小值时的为要求的最佳参数。

 

      终于,到我们强大的梯度下降法表演真正技术的时候了。

      根据梯度下降法可得的迭代更新过程:

      其中为学习步长,求偏导得到:

 

      求偏导过程用到如下的公式:

      脑补一下,要看懂这个求偏导化简公式并不难,你只要掌握偏导,复合函数求导和链式法则的知识便可。

      因此,参数的迭代更新过程又可以写成:

      在式子中,是常量,1/m也是常量,一般将1/m省略掉,所以最终的参数迭代更新过程为:

 

      接下来,对参数的更新过程向量化,在机器学习领域里,我们要转变一种思维,就是捆绑思维。我们处理的数据是一批一批的数据,并非是一个一个的概念。所以这就是向量化的必要性。

      我们约定训练数据的矩阵形式如下,x的每一行为一条训练样本,而每一列为不同的特征取值:

      约定待求的参数矩阵形式为:

      先求并记为A:

      求并记为E:

      所以,参数的迭代更新过程写成:

      综合起来就是:

      综上所述,向量化后的的更新的步骤如下:

(1)求

(2)求

(3)求


推荐阅读
  • Python 工具推荐 | PyHubWeekly 第二十一期:提升命令行体验的五大工具
    本期 PyHubWeekly 为大家精选了 GitHub 上五个优秀的 Python 工具,涵盖金融数据可视化、终端美化、国际化支持、图像增强和远程 Shell 环境配置。欢迎关注并参与项目。 ... [详细]
  • 随着技术的发展,黑客开始利用AI技术在暗网中创建用户的‘数字孪生’,这一现象引起了安全专家的高度关注。 ... [详细]
  • 聚焦法是一种采用穷尽搜索策略的Filter型特征选择方法,其核心在于寻找能有效区分不同样本的最小特征集合。此方法的评估标准主要依赖于一致性测量。 ... [详细]
  • 本文深入探讨了数据挖掘领域内的十个经典算法,包括但不限于C4.5决策树、K-Means聚类、支持向量机等。这些算法不仅在理论上有深厚的数学基础,也在实践中展现出强大的应用价值。 ... [详细]
  • 本文探讨了数据挖掘技术的发展及其在大数据环境下的应用流程,重点介绍了统计学、在线分析处理、信息检索、机器学习、专家系统和模式识别等领域的最新进展。 ... [详细]
  • 解决getallheaders函数导致的500错误及8种服务器性能优化策略
    本文探讨了解决getallheaders函数引起的服务器500错误的方法,并介绍八种有效的服务器性能优化技术,包括内存数据库的应用、Spark RDD的使用、缓存策略的实施、SSD的引入、数据库优化、IO模型的选择、多核处理策略以及分布式部署方案。 ... [详细]
  • 大数据核心技术解析
    本文深入探讨了大数据技术的关键领域,包括数据的收集、预处理、存储管理、以及分析挖掘等方面,旨在提供一个全面的技术框架理解。 ... [详细]
  • 尽管深度学习带来了广泛的应用前景,其训练通常需要强大的计算资源。然而,并非所有开发者都能负担得起高性能服务器或专用硬件。本文探讨了如何在有限的硬件条件下(如ARM CPU)高效运行深度神经网络,特别是通过选择合适的工具和框架来加速模型推理。 ... [详细]
  • 本教程详细介绍了如何使用 TensorFlow 2.0 构建和训练多层感知机(MLP)网络,涵盖回归和分类任务。通过具体示例和代码实现,帮助初学者快速掌握 TensorFlow 的核心概念和操作。 ... [详细]
  • 机器学习核心概念与技术
    本文系统梳理了机器学习的关键知识点,涵盖模型评估、正则化、线性模型、支持向量机、决策树及集成学习等内容,并深入探讨了各算法的原理和应用场景。 ... [详细]
  • 随着生活节奏的加快和压力的增加,越来越多的人感到不快乐。本文探讨了现代社会中导致人们幸福感下降的各种因素,并提供了一些改善建议。 ... [详细]
  • Python中HOG图像特征提取与应用
    本文介绍如何在Python中使用HOG(Histogram of Oriented Gradients)算法进行图像特征提取,探讨其在目标检测中的应用,并详细解释实现步骤。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
  • 掌握Python岗位,你需要了解的关键技能
    最近,在社交平台脉脉上,一条关于Python岗位的消息引起了广泛关注。本文将探讨Python岗位的实际价值,并深入解析阿里巴巴等大公司在面试Python开发者时常见的问题。 ... [详细]
  • 使用R语言进行Foodmart数据的关联规则分析与可视化
    本文探讨了如何利用R语言中的arules和arulesViz包对Foodmart数据集进行关联规则的挖掘与可视化。文章首先介绍了数据集的基本情况,然后逐步展示了如何进行数据预处理、规则挖掘及结果的图形化呈现。 ... [详细]
author-avatar
当即和谐
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有