逻辑回归模型(非回归问题,而是分类问题)
目录:
- 一、Sigmoid函数:
- 二、逻辑回归介绍:
- 三、决策边界
- 四、逻辑回归模型训练过程:
- 1.训练目标:
- 2.梯度下降调整参数:
一、Sigmoid函数:
Sigmoid函数是构建逻辑回归模型的重要函数,如下图所示。

- 二分类问题目标是将模型的输出结果控制在[0,1]的范围内,当模型输出结果<0.5,默认预测结果为0;当模型输出结果>0.5,默认预测结果为1。
- 二分类问题的解决思路是:通过构建逻辑回归模型f将二分类问题的输入x映射到Sigmoid函数的输入z上计算输出g,再根据g的范围(是否大于0.5)获得逻辑回归模型的结果(即二分类问题的结果)。
- 函数的定义域∈R,值域∈[0,1],当输入z<0时,Sogmoid函数输出结果g<0.5,默认为结果是0,构成二分类问题的第一个类别。当输入z>0时,Sogmoid函数输出结果g>0.5,默认为结果是1,构成二分类问题的第二个类别。
二、逻辑回归介绍:
逻辑回归用来解决二分类问题。分类问题即模型的输出结果只有有限个(回归问题则是无限个),二分类问题即模型的输出结果只有两个。
在回归问题的经典案例“肿瘤预测案例”中,使用肿瘤尺寸size特征预测该肿瘤是否是恶性肿瘤,输出结果只有两种:是(1)或否(0)。

这时使用线性回归模型就很难拟合训练集 (线性回归解决的是回归问题,而肿瘤预测案例是一个分类问题,准确说是二分类问题),因此提出了逻辑回归思想。

逻辑回归模型(解决分类问题):输入特征或特征集X并输出0~1之间的数字,其中拟合曲线通过Sogmoid函数来构造。具体构造流程如下图:


- 第一行解释:逻辑回归模型f的构造同线性回归,通过输入特征集X输出预测结果f,不同点在于f取值范围∈[0,1]。
- 第二三四行解释:之前我们介绍了Sigmoid函数的输出g可以很好的解决二分类问题,因此我们巧妙地使用了Sigmoid函数来构建逻辑回归模型f解决二分类问题,通过将输入特征集X使用线性回归或多项式回归映射到Sigmoid函数的输入z,实现Sigmoid函数的输出,然后根据Sigmoid函数输出结果是否大于0.5来计算逻辑回归模型的输出f(0或1),得到二分类问题的结果。
- 第五行解释:上述思想整合一下即可得出逻辑回归模型f,其中模型的输入是特征集X,输出是分类的预测结果0或1。
- 第六行解释:当逻辑回归模型的输出结果大于等于0.5时,预测值y^为1,用上文的例子来讲就是该肿瘤是恶性肿瘤;当逻辑回归模型的输出结果小于等于0.5时,预测值为0,用上文的例子来讲就是该肿瘤不是恶性肿瘤。
三、决策边界
从上文不难得到,当Sigmoid函数的输入z大于等于0时,即特征集X到z的映射z=wx+b大于等于0时,模型的输出结果是1;当Sigmoid函数的输入z小于0时,即特征集X到z的映射z=wx+b小于0时,模型的输出结果是0。
这是我们可以提出决策边界的概念:使得模型输入X到Sigmoid函数输入z的映射等于0的方程叫做决策边界。
以上述肿瘤预测模型为例,模型输入X到Sigmoid函数输入z的映射为z=wx+b,那么决策边界就是wx+b=0。
下面让我们用图像来展示决策边界的意义:
-
例1:映射为线性函数

上图展示了训练集中特征x1、x2不同取值时标签的真实值,其中圈代表该样本分类结果为0,叉代表该样本分类结果为1。逻辑回归模型如上图,其中模型输入X到Sigmoid函数输入z的映射为z=w1x1+w2x2+b,则决策边界为w1x1+w2x2+b=0。若模型训练结果为w1=1,w2=1,b=-3时,决策边界为x1+x2-3=0,决策边界的函数图像如上图所示,可以看到,如果样本的特征位于决策边界左侧,逻辑回归预测时0,反之为1,这就是决策边界的图像意义。
-
例2:映射为多项式函数

模型输入X到Sigmoid函数输入z的映射为多项式函数,决策边界如图,可以看到,模型训练完成后,参数值确定了,决策边界也立即就确定了,这时样本的特征相对决策边界的位置决定了该样本的预测结果。
四、逻辑回归模型训练过程:
其实和线性回归训练过程一样,只不过是待训练模型(函数)不同而已。
1.训练目标:

2.梯度下降调整参数:

相关文章:
逻辑回归模型(非回归问题,而是分类问题)
目录: 一、Sigmoid函数:二、逻辑回归介绍:三、决策边界四、逻辑回归模型训练过程:1.训练目标:2.梯度下降调整参数: 一、Sigmoid函数: Sigmoid函数是构建逻辑回归模型的重要函数,如下…...
qt hasPendingDatagrams() 函数
hasPendingDatagrams 是 Qt 框架中 QUdpSocket 类的一个方法,用于检查是否有待处理的数据报到达。在 UDP 通信中,数据以数据报的形式发送,而 QUdpSocket 类提供了用于接收和处理这些数据报的功能。 功能描述 hasPendingDatagrams() 方法用于…...
数据结构第08小节:双端队列
双端队列(deque,double-ended queue)是一种具有队列和栈特性的数据结构,允许在其两端进行插入和删除操作。在Java中,java.util.Deque接口就是双端队列的实现,而ArrayDeque和LinkedList是其中的具体实现类。…...
Python骨架肌体运动学数学模型
🎯要点 🎯运动学矢量计算 | 🎯跳远的运动学计算 | 🎯关节肢体运动最小加加速度模型 | 🎯膝关节和踝关节角度二维运动学计算 | 🎯上下肢体关节连接运动链数学模型 | 🎯刚体连接点速度加速度计算…...
二叉树的序列化和反序列化(Java)
概述 关于面试中常见的其他二叉树算法题,参考面试算法之二叉树(Java)。二叉树的定义(注意到有使用lombok提供的两个注解): lombok.Data lombok.AllArgsConstructor private static class TreeNode {private TreeNode left;priva…...
Java中的泛型类
Java中的泛类 Java 的泛型(Generics)是一种语言特性,允许你定义类、接口和方法时使用类型参数。这使得代码更具可读性和安全性,因为编译器能够在编译时检查类型,而不是在运行时。 泛型类 定义泛型类时,可…...
57、Flink 的项目配置概述
1)概览 1.开始 要开始使用 Flink 应用程序,请使用以下命令、脚本和模板来创建 Flink 项目。 可以使用如下的 Maven 命令或快速启动脚本,基于原型创建一个项目。 a)Maven 命令 mvn archetype:generate \-Darch…...
零基础自学爬虫技术该从哪里入手?
零基础学习Python并不一定是困难的,这主要取决于个人的学习方法、投入的时间以及学习目标的设定。Python是一门相对容易入门的编程语言,它有着简洁的语法、丰富的库和广泛的应用领域(如数据分析、Web开发、人工智能等),…...
Vue.js 基础入门指南
前言 在前端开发的广阔领域中,Vue.js 无疑是一颗璀璨的明星,以其渐进式框架的特性吸引了无数开发者的目光。Vue.js 旨在通过简洁的 API 实现响应式的数据绑定和组合的视图组件,使得构建用户界面变得既快速又简单。本文将带你走进 Vue.js 的世…...
山泰科技集团陈玉东:争当数字化时代的知识产权卫士
随着互联网和数字技术的飞速普及,大版权时代已经悄然到来。在这个新时代,信息的传播速度、广度和深度均达到了前所未有的高度,极大地拓展了人们的精神世界和知识视野。然而,这一科技发展的浪潮也为版权保护带来了前所未有的挑战。…...
WBCE CMS v1.5.2 远程命令执行漏洞(CVE-2022-25099)
前言 CVE-2022-25099 是一个影响 WBCE CMS v1.5.2 的严重安全漏洞,具体存在于 /languages/index.php 组件中。该漏洞允许攻击者通过上传精心构造的 PHP 文件在受影响的系统上执行任意代码。 技术细节 受影响组件:/languages/index.php受影响版本&…...
鸿蒙语言基础类库:【@ohos.url (URL字符串解析)】
URL字符串解析 说明: 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。开发前请熟悉鸿蒙开发指导文档:gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复制转到。 导入…...
【AutoencoderKL】基于stable-diffusion-v1.4的vae对图像重构
模型地址:https://huggingface.co/CompVis/stable-diffusion-v1-4/tree/main/vae 主要参考:Using-Stable-Diffusion-VAE-to-encode-satellite-images sd1.4 vae 下载到本地 from diffusers import AutoencoderKL from PIL import Image import torch import to…...
《警世贤文》摘抄:守法篇、惜时篇、修性篇、修身篇、待人篇、防人篇(建议多读书、多看报、少吃零食多睡觉)
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/140243440 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV…...
vue2+element-ui新增编辑表格+删除行
实现效果: 代码实现 : <el-table :data"dataForm.updateData"border:header-cell-style"{text-align:center}":cell-style"{text-align:center}"><el-table-column label"选项字段"align"center&…...
Day05-组织架构-角色管理
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.组织架构-编辑部门-弹出层获取数据2.组织架构-编辑部门-编辑表单校验3.组织架构-编辑部门-确认取消4.组织架构-删除部门5.角色管理-搭建页面结构6.角色管理-获取数…...
【LLM】二、python调用本地的ollama部署的大模型
系列文章目录 往期文章: 【LLM】一、利用ollama本地部署大模型 目录 文章目录 前言 一、ollama库调用 二、langchain调用 三、requests调用 四、相关参数说明: 总结 前言 本地部署了大模型,下一步任务便是如何调用的问题,…...
20240708 每日AI必读资讯
🤖破解ChatGPT惊人耗电!DeepMind新算法训练提效13倍,能耗暴降10倍 - 谷歌DeepMind研究团队提出了一种加快AI训练的新方法——多模态对比学习与联合示例选择(JEST),大大减少了所需的计算资源和时间。 - JE…...
为什么KV Cache只需缓存K矩阵和V矩阵,无需缓存Q矩阵?
大家都知道大模型是通过语言序列预测下一个词的概率。假定{ x 1 x_1 x1, x 2 x_2 x2, x 3 x_3 x3,…, x n − 1 x_{n-1} xn−1}为已知序列,其中 x 1 x_1 x1, x 2 x_2 x2, x 3 x_3 x…...
VS code修改底部的行号的状态栏颜色
VSCode截图 相信很多小伙伴被底部的蓝色状态栏困扰很久了 处理的方式有两种: 1、隐藏状态栏 2、修改其背景颜色 第一种方法大伙都会,今天就使用第二种方法。 1、点击齿轮进入setting 2、我现在用的新版本,设置不是以前那种json格式展示&…...
在软件开发中正确使用MySQL日期时间类型的深度解析
在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
基于数字孪生的水厂可视化平台建设:架构与实践
分享大纲: 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年,数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段,基于数字孪生的水厂可视化平台的…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...
RLHF vs RLVR:对齐学习中的两种强化方式详解
在语言模型对齐(alignment)中,强化学习(RL)是一种重要的策略。而其中两种典型形式——RLHF(Reinforcement Learning with Human Feedback) 与 RLVR(Reinforcement Learning with Ver…...
【Redis】Redis从入门到实战:全面指南
Redis从入门到实战:全面指南 一、Redis简介 Redis(Remote Dictionary Server)是一个开源的、基于内存的键值存储系统,它可以用作数据库、缓存和消息代理。由Salvatore Sanfilippo于2009年开发,因其高性能、丰富的数据结构和广泛的语言支持而广受欢迎。 Redis核心特点:…...
学习 Hooks【Plan - June - Week 2】
一、React API React 提供了丰富的核心 API,用于创建组件、管理状态、处理副作用、优化性能等。本文档总结 React 常用的 API 方法和组件。 1. React 核心 API React.createElement(type, props, …children) 用于创建 React 元素,JSX 会被编译成该函数…...
