当前位置: 首页 > news >正文

【人工智能】— 逻辑回归分类、对数几率、决策边界、似然估计、梯度下降

【人工智能】— 逻辑回归分类、对数几率、决策边界、似然估计、梯度下降

  • 逻辑回归分类
  • Logistic Regression Classification
  • Logistic Regression: Log Odds
  • Logistic Regression: Decision Boundary
  • Likelihood under the Logistic Model
  • Training the Logistic Model
  • Gradient Descent

逻辑回归分类

考虑二分类问题,其中每个样本由一个特征向量表示。

直观理解:将特征向量 x \text{x} x映射到一个实数 w T x \text{w}^T\text{x} wTx

  • 一个正的值 w T x \text{w}^T\text{x} wTx表示 x \text{x} x属于正类的可能性较高。
  • 一个负的值 w T x \text{w}^T\text{x} wTx表示 x \text{x} x属于负类的可能性较高。

概率解释:在这里插入图片描述

  • 对映射值应用一个变换函数,将其范围压缩在0和1之间。
  • 变换后的值表示属于正类的概率。
  • 变换后的值 w T x ∈ ( − ∞ , + ∞ ) \text{w}^T\text{x}\in(-∞,+∞) wTx(+)的范围是 [ 0 , 1 ] [0, 1] [0,1]

注意:在逻辑回归中通常使用的变换函数是sigmoid函数。

Logistic Regression Classification

条件概率:

  • 条件概率在分类任务中很重要。
  • 使用逻辑函数(也称为sigmoid函数)计算条件概率。

逻辑函数 / sigmoid函数:

  • 当 z 趋近正无穷时,逻辑函数趋近于1。

  • 当 z 趋近负无穷时,逻辑函数趋近于0。

  • 当 z = 0 时,逻辑函数等于0.5,表示两个类别的概率相等。
    在这里插入图片描述

  • 给定输入 x,正类的概率表示为:
    p ( y = 1 ∣ x ) = σ ( w T x ) = 1 1 + e − w T x = e w T x 1 + e w T x p(y = 1 \,|\, x) =\sigma(w^Tx) = \cfrac{1}{1 + e^{-w^T x}} = \cfrac{e^{w^T x}}{1 + e^{w^T x}} p(y=1x)=σ(wTx)=1+ewTx1=1+ewTxewTx

  • 给定输入 x,负类的概率表示为:
    p ( y = 0 ∣ x ) = 1 − p ( y = 1 ∣ x ) = 1 1 + e w T x p(y = 0 \,|\, x) = 1 - p(y = 1 \,|\, x) = \cfrac{1}{1 + e^{w^T x}} p(y=0x)=1p(y=1x)=1+ewTx1

Logistic Regression: Log Odds

  • 在逻辑回归中,我们使用log odds(对数几率)来建模。
  • 一个事件的几率(odds):该事件发生的概率与不发生的概率的比值, p 1 − p \cfrac{p}{1-p} 1pp
  • log odds / logit function: log ⁡ ( p 1 − p ) \log\left(\cfrac{p}{1-p}\right) log(1pp)
  • Log odds for logistic regression: log ⁡ ( p ( y = 1 ∣ x ) 1 − p ( y = 1 ∣ x ) ) = w T x \log\left(\cfrac{p(y=1|x)}{1-p(y=1|x)}\right) = w^Tx log(1p(y=1∣x)p(y=1∣x))=wTx

在逻辑回归中,我们通过学习适当的权重 w w w 来建立一个线性模型,该模型可以将输入特征 x x x 映射到对数几率(log odds)上。然后,通过对对数几率应用逻辑函数(sigmoid函数)来得到分类概率。

Logistic Regression: Decision Boundary

决策边界:在这里插入图片描述

  • 在逻辑回归中,决策边界是指分类模型对于输入特征的判断边界。
  • 对于线性逻辑回归模型,决策边界是线性的。
    在这里插入图片描述

决策规则:

  • 如果 p ^ ( y = 1 ∣ x ) ≥ 0.5 \hat{p}(y=1|x) \geq 0.5 p^(y=1∣x)0.5,则预测为正类。
  • 如果 p ^ ( y = 1 ∣ x ) < 0.5 \hat{p}(y=1|x) < 0.5 p^(y=1∣x)<0.5,则预测为负类。

对于线性逻辑回归,决策边界是一个线性函数,用于将特征空间划分为两个不同的类别区域。

Likelihood under the Logistic Model

在逻辑回归中,我们观察标签并测量它们在模型下的概率。在这里插入图片描述

给定参数 w w w,样本的条件对数似然函数为:
在这里插入图片描述

对数似然函数的表达式为:
在这里插入图片描述

其中, N N N 是样本数量, x i x_i xi 是第 i i i 个样本的特征向量, y i y_i yi 是第 i i i 个样本的标签。

通过最大化对数似然函数来估计参数 w w w,可以找到最佳的参数值,使得模型的概率预测与观察到的标签尽可能一致。

Training the Logistic Model

训练逻辑回归模型(即找到参数 w w w)可以通过最大化训练数据的条件对数似然函数或最小化损失函数来完成。在这里插入图片描述

最大化条件对数似然函数 or 最小化损失函数:
在这里插入图片描述

其中, N N N 是训练数据的样本数量, x i x_i xi 是第 i i i 个样本的特征向量, y i y_i yi 是第 i i i 个样本的标签。

通过最大化条件对数似然函数或最小化损失函数,我们可以找到最优的参数 w w w,使得模型能够最好地拟合训练数据,并能够准确地预测新的样本标签。常用的优化算法,如梯度下降法或牛顿法,可以用于求解最优参数。

Gradient Descent

梯度下降是一种常用的优化算法,用于求解最小化损失函数的问题。
在这里插入图片描述

梯度下降的步骤如下:

  1. 初始化参数 w w w 的值。
  2. 重复以下步骤直到满足停止条件:
    • 计算损失函数 J ( w ) J(w) J(w) 对参数 w w w 的梯度,即 ∂ J ( w ) ∂ w \cfrac{\partial J(w)}{\partial w} wJ(w)
    • 根据学习率 α \alpha α,更新参数 w w w 的值: w j : = w j − α ∂ J ( w ) ∂ w j w_j := w_j - \alpha \cfrac{\partial J(w)}{\partial w_j} wj:=wjαwjJ(w),对所有参数 w j w_j wj 同时进行更新。

梯度下降的目标是通过迭代更新参数,逐渐减小损失函数的值,直到达到局部最小值或收敛。

在逻辑回归中,我们可以使用梯度下降算法来最小化损失函数 J ( w ) J(w) J(w),从而找到最优的参数 w w w,使得模型能够最好地拟合训练数据。通过计算损失函数对参数的梯度,然后根据梯度和学习率更新参数,我们可以逐步调整参数的值,使得损失函数逐渐减小,从而达到最优参数的目标。
在这里插入图片描述

相关文章:

【人工智能】— 逻辑回归分类、对数几率、决策边界、似然估计、梯度下降

【人工智能】— 逻辑回归分类、对数几率、决策边界、似然估计、梯度下降 逻辑回归分类Logistic Regression ClassificationLogistic Regression: Log OddsLogistic Regression: Decision BoundaryLikelihood under the Logistic ModelTraining the Logistic ModelGradient Desc…...

k8s pod “cpu和内存“ 资源限制

转载用于收藏学习&#xff1a;原文 文章目录 Pod资源限制requests&#xff1a;limits&#xff1a;docker run命令和 CPU 限制相关的所有选项如下&#xff1a; Pod资源限制 为了保证充分利用集群资源&#xff0c;且确保重要容器在运行周期内能够分配到足够的资源稳定运行&#x…...

datagrip 连接 phoenix

jar替换完后尽量重启datagrip. 然后重新连接即可. 不重启貌似报错... 效果:...

黑客入侵的常法

1.无论什么站&#xff0c;无论什么语言&#xff0c;我要渗透&#xff0c;第一件事就是扫目录&#xff0c;最好一下扫出个上传点&#xff0c;直接上传 shell &#xff0c;诸位不要笑&#xff0c;有时候你花很久搞一个站&#xff0c;最后发现有个现成的上传点&#xff0c;而且很容…...

VB报警管理系统设计(源代码+系统)

可定时显示报警系统是一个能够定时并及时报警,提醒人们安全有效地按计划完成任务的系统。本论文从软件工程的角度,对可定时显示报警系统做了全面的需求分析,简要说明了该系统的构思、特点及开发环境;阐述了系统的主要功能,论述了它的设计与实现,并且叙述了系统的测试与评…...

Redis入门 - Redis Stream

原文首更地址&#xff0c;阅读效果更佳&#xff01; Redis入门 - Redis Stream | CoderMast编程桅杆Redis入门 - Redis Stream Redis Stream 是 Redis 5.0 版本新增加的数据结构。 Redis Stream 主要用于消息队列&#xff08;MQ&#xff0c;Message Queue&#xff09;&#xf…...

微服务中常见问题

Spring Cloud 组件 Spring Cloud五大组件有哪些&#xff1f; Eureka&#xff1a;注册中心 Ribbon&#xff1a;负载均衡 Feign&#xff1a;远程调用 Hystrix&#xff1a;服务熔断 Zuul/Gateway&#xff1a;服务网关 随着SpringCloud Alibaba在国内兴起&#xff0c;我们项目中…...

更新删除清理购物车

目录 1 更新购物车 2 取会员门店购物车项 3 取会员门店购物车项(无缓存) 4 删除门店购物车某项 5 删除门店购物车多项 6 清理门店购物车 7 清理门店购物车 8 添加商品至购物车 9 添加商品至购物车...

基于Intel NUC平台的字符设备陀螺仪GX5-25驱动程序

陀螺仪GX5-25连接到Intel NUC上可能需要进行一些设备树的修改和编写驱动程序的工作。这是因为陀螺仪GX5-25可能需要特定的设备树配置和驱动程序来与Intel NUC的硬件和操作系统进行通信。 如果陀螺仪GX5-25没有官方的Linux驱动程序或文档&#xff0c;您可能需要自己编写驱动程序…...

建立小型医学数据库(总结)

建立小型医学数据库 小型医学数据库可以用于存储和管理医学数据&#xff0c;如患者病历、药品信息、试验结果等。这对于医疗机构和科研机构来说非常必要&#xff0c;可以提高数据管理和共享的效率&#xff0c;进而促进医学研究和诊疗水平的提升。 建立小型医学数据库有以下基本…...

Git学习笔记

文章目录 一. 引入1. SCM软件2. 概念 二. GitHubDesktop三. Git1. 版本号 (底层原理)1.1 视频笔记1.2 实操记录 2. Git命令2.0 汇总2.1 仓库操作2.2 文件操作2.3 分支操作2.4 标签操作2.5 远程仓库 四. idea操作 一. 引入 1. SCM软件 2. 概念 集中式版本控制 文件冲突 可以上…...

vue面试题1. 请说下封装 vue 组件的过程?2. Vue组件如何进行传值的?3. Vue 组件 data 为什么必须是函数?4. 讲一下组件的命名规范

1. 请说下封装 vue 组件的过程&#xff1f; 首先&#xff0c;组件可以提升整个项目的开发效率。能够把页面抽象成多个相对独立的模块&#xff0c;解决了我们传统项目开发&#xff1a;效率低、难维护、复用性等问题。 分析需求&#xff1a;确定业务需求&#xff0c;把页面中可以…...

Docker使用记录

文章目录 Docker基本使用Docker配置查看状态卸载安装使用 apt 存储库安装在 Ubuntu 上安装 Docker 桌面(非必要) Docker实例使用现有的镜像查找镜像拖取镜像列出镜像列表更新镜像导出镜像删除镜像导入镜像清理镜像查看容器导出容器导入容器-以镜像的方式创建容器重启容器进入容…...

OpenCV(图像处理)-基于Python-形态学处理-开运算、闭运算、顶帽、黑帽运算

1. 形态学2. 常用接口2.1 cvtColor()2.2 图像二值化threshod()自适应阈值二值化adaptiveThreshod() 2.3 腐蚀与膨胀erode()getStructuringElement()dilate() 2.4开、闭、梯度、顶帽、黑帽运算morphologyEx() 1. 形态学 OpenCV形态学是一种基于OpenCV库的数字图像处理技术&…...

chatgpt赋能python:Python支持跨平台软件开发

Python支持跨平台软件开发 作为一种高级编程语言&#xff0c;Python 以其丰富的库和跨平台支持而备受开发人员欢迎。Python 通过将应用程序的可移植性最大化&#xff0c;使得开发人员可以轻松地在不同的操作系统平台上构建和部署软件。 跨平台支持 Python 支持各种不同的操作…...

哈工大计算机网络课程网络层协议详解之:CIDR与路由聚集

哈工大计算机网络课程网络层协议详解之&#xff1a;CIDR与路由聚集 文章目录 哈工大计算机网络课程网络层协议详解之&#xff1a;CIDR与路由聚集CIDR与路由聚集CIDR路由聚集 CIDR与路由聚集 CIDR CIDR&#xff1a;无类域间路由&#xff08;CIDR&#xff1a;Classless InterDo…...

C++ 教程(19)——日期 时间

C 日期 & 时间 C 标准库没有提供所谓的日期类型。C 继承了 C 语言用于日期和时间操作的结构和函数。为了使用日期和时间相关的函数和结构&#xff0c;需要在 C 程序中引用 <ctime> 头文件。 有四个与时间相关的类型&#xff1a;clock_t、time_t、size_t 和 tm。类型…...

React 应用 Effect Hook 函数式中操作生命周期

React Hook入门小案例 在函数式组件中使用state响应式数据给大家演示了最简单的 Hook操作 那么 我们继续 首先 Hook官方介绍 他没有破坏性是完全可选的 百分比兼容 也就说 我们一起的 类 class的方式也完全可以用 只要 react 16,8以上就可以使用 Hook本身不会影响你的react的理…...

C代码程序实现扫雷游戏纯代码版本

//test.c文件 #define _CRT_SECURE_NO_WARNINGS 1#include "game.h"void menu() {printf("***********************\n");printf("***** 1. play *****\n");printf("***** 0. exit *****\n");printf("*******************…...

ai代写---怎么在ubutnu服务器中安装mqtt

在Ubuntu服务器中安装MQTT Broker可以使用Mosquitto&#xff0c;它是一个开源的MQTT Broker实现&#xff0c;支持Linux、Windows和MacOS等多个平台。 以下是在Ubuntu服务器中安装Mosquitto的步骤&#xff1a; 更新apt-get包列表 打开终端&#xff0c;执行以下命令更新apt-get…...

Flask RESTful 示例

目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题&#xff1a; 下面创建一个简单的Flask RESTful API示例。首先&#xff0c;我们需要创建环境&#xff0c;安装必要的依赖&#xff0c;然后…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题&#xff08;可多选&#xff09; 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘&#xff1a;专注于发现数据中…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日&#xff0c;2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席&#xff0c;并作《智能体在安全领域的应用实践》主题演讲&#xff0c;分享了在智能体在安全领域的突破性实践。他指出&#xff0c;百度通过将安全能力…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;社区养老保险系统小程序被用户普遍使用&#xff0c;为方…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

QT3D学习笔记——圆台、圆锥

类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体&#xff08;对象或容器&#xff09;QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质&#xff08;定义颜色、反光等&#xff09;QFirstPersonC…...

C语言中提供的第三方库之哈希表实现

一. 简介 前面一篇文章简单学习了C语言中第三方库&#xff08;uthash库&#xff09;提供对哈希表的操作&#xff0c;文章如下&#xff1a; C语言中提供的第三方库uthash常用接口-CSDN博客 本文简单学习一下第三方库 uthash库对哈希表的操作。 二. uthash库哈希表操作示例 u…...

MySQL 主从同步异常处理

阅读原文&#xff1a;https://www.xiaozaoshu.top/articles/mysql-m-s-update-pk MySQL 做双主&#xff0c;遇到的这个错误&#xff1a; Could not execute Update_rows event on table ... Error_code: 1032是 MySQL 主从复制时的经典错误之一&#xff0c;通常表示&#xff…...

学习一下用鸿蒙​​DevEco Studio HarmonyOS5实现百度地图

在鸿蒙&#xff08;HarmonyOS5&#xff09;中集成百度地图&#xff0c;可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API&#xff0c;可以构建跨设备的定位、导航和地图展示功能。 ​​1. 鸿蒙环境准备​​ ​​开发工具​​&#xff1a;下载安装 ​​De…...