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

新手村:逻辑回归-理解02:逻辑回归中的伯努利分布

新手村:逻辑回归-理解02:逻辑回归中的伯努利分布

在这里插入图片描述

伯努利分布在逻辑回归中的潜在含义及其与后续推导的因果关系


1. 伯努利分布作为逻辑回归的理论基础

⭐️ 逻辑回归的核心目标是:

建模二分类问题中 目标变量 y y y 的概率分布

伯努利分布(Bernoulli Distribution)是逻辑回归的数学基础,因为它直接描述了二元结果(如“成功”或“失败”)的概率特性:

伯努利分布的定义

随机变量 y y y 服从参数为 p p p 的伯努利分布,即:
P ( y = 1 ) = p , P ( y = 0 ) = 1 − p P(y=1) = p, \quad P(y=0) = 1 - p P(y=1)=p,P(y=0)=1p
其中 p p p 是事件发生的概率, 0 < p < 1 0 < p < 1 0<p<1

逻辑回归的建模目标

逻辑回归假设

  1. 目标变量 y y y 服从伯努利分布,
  2. p p p(即 P ( y = 1 ∣ x ) P(y=1|x) P(y=1∣x))是输入特征 x x x 的函数。

因此,逻辑回归需要通过输入特征 x x x 的线性组合来建模 p p p


2. 对数几率(Odds)与线性组合的推导

⭐️ 逻辑回归的核心假设是:
对数几率(Logit)是输入特征的线性组合

⭐️ ⭐️ ⭐️这一假设直接来源于伯努利分布的参数 p p p 需要被建模为输入特征的函数:

推导

∵ \because ⭐️ 线性模型
z = w ⊤ x ; z=w^\top x ; z=wx;
∴ \therefore ⭐️ 线性数据通过sigmoid函数转换为概率
p = σ ( z ) = 1 1 + e − w ⊤ x p = \sigma(z)= \frac{1}{1+e^{-w^\top x}} p=σ(z)=1+ewx1

∴ \therefore ⭐️ (Odds)赔率公式

若事件发生的概率为 $ p $,则“发生与不发生的比值”称为(Odds)几率/赔率

在这里插入图片描述

O d d s = ( p 1 − p ) = σ ( z ) 1 − σ ( z ) = 1 1 + e − w ⊤ x / e − w ⊤ x 1 + e − w ⊤ x = 1 e − w ⊤ x = e w ⊤ x Odds = \left(\frac{p}{1-p}\right) = \frac{\sigma(z)}{1-\sigma(z)} = \frac{1}{1+e^{-w^\top x}} / \frac{e^{-w^\top x}}{1+e^{-w^\top x}}=\frac{1}{e^{-w^\top x}} = e^{w^\top x} Odds=(1pp)=1σ(z)σ(z)=1+ewx1/1+ewxewx=ewx1=ewx

∴ \therefore ⭐️(Log Odds)对数几率(赔率)的定义

这个等式的核心思想是:对数几率是输入特征 x x x 的线性组合

logit ( p ) = ln ⁡ ( p 1 − p ) = w ⊤ x \text{logit}(p) = \ln\left(\frac{p}{1-p}\right) = w^\top x logit(p)=ln(1pp)=wx
其中 w w w 是权重向量, x x x 是输入特征。

因果关系

因为伯努利分布的参数 p p p 需要满足 0 < p < 1 0 < p < 1 0<p<1,而线性组合 w ⊤ x w^\top x wx 的取值范围是 ( − ∞ , + ∞ ) (-\infty, +\infty) (,+),因此需要通过一个可逆的单调函数将线性组合映射到 ( 0 , 1 ) (0,1) (0,1) 区间,从而得到 p p p


3. Sigmoid函数的引入

Sigmoid函数是这一映射的自然选择,其数学形式为:
p = σ ( w ⊤ x ) = 1 1 + exp ⁡ ( − w ⊤ x ) p = \sigma(w^\top x) = \frac{1}{1 + \exp(-w^\top x)} p=σ(wx)=1+exp(wx)1

  • 因果关系
    • ⭐️ Sigmoid函数的输出范围恰好是 ( 0 , 1 ) (0,1) (0,1),与伯努利分布的概率 p p p 的取值范围一致
    • ⭐️ Sigmoid函数的导数形式( σ ( z ) ( 1 − σ ( z ) ) \sigma(z)(1-\sigma(z)) σ(z)(1σ(z))), 在后续的梯度计算中简化了优化过程
    • 在广义线性模型(GLM)框架下,伯努利分布属于指数族分布,其自然参数 η \eta η 是对数几率 log ⁡ ( p / ( 1 − p ) ) \log(p/(1-p)) log(p/(1p)),因此连接函数(link function)选择对数几率,直接导致 Sigmoid 函数的使用。

4. 交叉熵损失函数的来源

逻辑回归的损失函数选择交叉熵(Cross-Entropy),而非均方误差(MSE),这一选择与伯努利分布的概率结构直接相关

  • ⭐️ 伯努利分布的对数似然函数
    对于样本 ( x i , y i ) (x_i, y_i) (xi,yi),其对数似然为:
    log ⁡ P ( y i ∣ x i , w ) = y i log ⁡ p i + ( 1 − y i ) log ⁡ ( 1 − p i ) \log P(y_i | x_i, w) = y_i \log p_i + (1 - y_i)\log(1 - p_i) logP(yixi,w)=yilogpi+(1yi)log(1pi)
    其中 p i = σ ( w ⊤ x i ) p_i = \sigma(w^\top x_i) pi=σ(wxi)
    ⭐️ 最大化对数似然等价于最小化交叉熵损失
    Loss = − 1 N ∑ i = 1 N [ y i log ⁡ p i + ( 1 − y i ) log ⁡ ( 1 − p i ) ] \text{Loss} = -\frac{1}{N}\sum_{i=1}^N [y_i \log p_i + (1 - y_i)\log(1 - p_i)] Loss=N1i=1N[yilogpi+(1yi)log(1pi)]
  • 因果关系
    由于逻辑回归假设 y y y 服从伯努利分布,因此损失函数必须与该分布的对数似然函数一致。交叉熵直接来源于伯努利分布的概率表达式,而均方误差则忽略了概率的非线性约束,可能导致梯度问题(如预测值接近0或1时梯度趋近于0,收敛缓慢)。

5. 广义线性模型(GLM)的框架

逻辑回归是广义线性模型(GLM)的一个特例,其推导过程严格遵循 GLM 的结构:

  • GLM 的三个要素
    1. 随机成分:目标变量 y y y 服从伯努利分布。
    2. 系统成分:线性预测器 η = w ⊤ x \eta = w^\top x η=wx
    3. 连接函数:将线性预测器与 E ( y ∣ x ) E(y|x) E(yx)(即 p p p)联系起来。对于伯努利分布,连接函数选择对数几率函数:
      η = log ⁡ ( p 1 − p ) ⇒ p = σ ( η ) \eta = \log\left(\frac{p}{1-p}\right) \quad \Rightarrow \quad p = \sigma(\eta) η=log(1pp)p=σ(η)
  • 因果关系
    GLM 的框架要求连接函数必须与分布的特性匹配。伯努利分布的方差 Var ( y ) = p ( 1 − p ) \text{Var}(y) = p(1-p) Var(y)=p(1p) 是均值 p p p 的函数,因此模型无需估计方差,只需通过线性组合建模均值 p p p,从而简化了模型结构。

6. 参数估计与优化

逻辑回归通过最大似然估计(MLE) 求解参数 w w w,这一过程依赖于伯努利分布的对数似然函数

  • 极大似然估计
    w ^ = arg ⁡ max ⁡ w ∏ i = 1 N P ( y i ∣ x i , w ) = arg ⁡ max ⁡ w ∑ i = 1 N [ y i log ⁡ p i + ( 1 − y i ) log ⁡ ( 1 − p i ) ] \hat{w} = \arg\max_w \prod_{i=1}^N P(y_i | x_i, w) = \arg\max_w \sum_{i=1}^N [y_i \log p_i + (1 - y_i)\log(1 - p_i)] w^=argwmaxi=1NP(yixi,w)=argwmaxi=1N[yilogpi+(1yi)log(1pi)]
  • 优化方法
    因为对数似然函数是凸函数(在 w w w 上),梯度下降或牛顿法可以高效求解全局最优解。这一凸性也源于伯努利分布的对数似然的数学性质。

总结:伯努利分布的潜在含义与后续推导的因果关系

伯努利分布的作用导致的后续推导
1. 建模二分类目标变量 y y y 的概率分布→ 线性组合的对数几率假设
2. 参数 p p p 需满足 0 < p < 1 0 < p < 1 0<p<1→ 引入 Sigmoid 函数映射到概率空间
3. 对数似然函数的形式→ 交叉熵作为损失函数的选择
4. 属于指数族分布→ 在 GLM 框架下自然推导出模型形式
5. 方差与均值的依赖关系→ 无需估计方差,简化模型参数空间

关键结论

逻辑回归的整个建模过程(从假设到损失函数设计)本质上是伯努利分布的数学特性驱动的:

  • 伯努利分布的二元性:决定了模型需要预测概率 p p p 而不是直接分类。
  • 对数几率的线性假设:通过伯努利分布的对数似然推导出,确保模型的可解释性。
  • Sigmoid 函数与交叉熵:直接来源于伯努利分布的概率表达式,保证了数学上的合理性与优化效率。

这一理论框架使得逻辑回归成为二分类问题中简洁、高效且可解释的模型。

相关文章:

新手村:逻辑回归-理解02:逻辑回归中的伯努利分布

新手村&#xff1a;逻辑回归-理解02&#xff1a;逻辑回归中的伯努利分布 伯努利分布在逻辑回归中的潜在含义及其与后续推导的因果关系 1. 伯努利分布作为逻辑回归的理论基础 ⭐️ 逻辑回归的核心目标是: 建模二分类问题中 目标变量 y y y 的概率分布。 伯努利分布&#xff08…...

golang Error的一些坑

golang Error的一些坑 golang error的设计可能是被人吐槽最多的golang设计了。 最经典的err!nil只影响代码风格设计&#xff0c;而有一些坑会导致我们的程序发生一些与我们预期不符的问题&#xff0c;开发过程中需要注意。 ​​ errors.Is​判断error是否Wrap不符合预期 ​…...

【干货,实战经验】nginx缓存问题

文章目录 案例背景出现的问题:定位到问题解决方式修改配置修改后的nginx配置 案例背景 有2个服务器A 和B&#xff0c;A是一个动态ip经常变公网ip&#xff0c;B是一个云服务器&#xff0c;公网ip固定. 于是我通过ddns &#xff0c;找了个域名C&#xff0c;动态解析A服务器上的公…...

分布式理论:CAPBASE理论

1 CAP理论 1.1 简介 CAP也就是Consistency&#xff08;一致性&#xff09;、Availability&#xff08;可用性&#xff09;、Partition Tolenrance&#xff08;分区容错性&#xff09;这三个单词首字母组合。 在理论计算机科学中&#xff0c;CAP定理&#xff08;CAP theorem&…...

大数据学习(86)-Zookeeper去中心化调度

&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4dd;支持一…...

uniapp再次封装uni-nav-bar导航栏组件

<!-- components/custom-nav-bar/custom-nav-bar.vue --> <template><view class"custom-nav" :style"{ backgroundColor: bgColor }"><!-- 状态栏占位 --><view class"status-bar" :style"{ height: statusBar…...

ngx_http_index_t

定义在 src\http\modules\ngx_http_index_module.c typedef struct {ngx_str_t name;ngx_array_t *lengths;ngx_array_t *values; } ngx_http_index_t; 该结构体用于 存储和解析 index 指令中单个索引文件的信息 &#xff0c;支持静态…...

深入解析Flink Kafka Connector的分布式流数据采集架构与底层实现

目录 1. Flink Kafka连接器的分布式流采集架构 1.1 架构组成 1.2 分布式流模型 2. 数据分区分配策略 3. 为什么重写序列化和偏移量管理 3.1 与Flink分布式架构集成 3.2 与Flink检查点机制集成同时承接多级并行架构 3.3 OffsetsInitializer与细粒度偏移量控制 3.4 与Fl…...

vcd波形转仿真激励

我们使用vivado的ila抓取波形后&#xff0c;常常希望用该波形作为激励参与仿真。稍微复杂的项目中手动输入的工作量巨大&#xff0c;几乎是不可能采取的方式。我的方法是保存ila波形为vcd格式文件&#xff0c;用python解析vcd文件&#xff0c;转换成仿真激励的代码。 python代码…...

【STM32】知识点介绍二:GPIO引脚介绍

文章目录 一、概述二、GPIO的工作模式三、寄存器编程 一、概述 GPIO&#xff08;英语&#xff1a;General-purpose input/output&#xff09;,即通用I/O(输入/输出)端口&#xff0c;是STM32可控制的引脚。STM32芯片的GPIO引脚与外部设备连接起来&#xff0c;可实现与外部通讯、…...

【AI】NLP

不定期更新&#xff0c;建议关注收藏点赞。 目录 transformer大语言模型Google Gemma疫情网民情绪识别 整体框架 baseline构建 模型调参、模型优化、其他模型 数据trick、指标优化、magic feature 数据增强、伪标签、迁移学习 模型融合sklearn中TFIDF参数详解 频率阈值可以去掉…...

Go 代理爬虫

现在注册&#xff0c;还送15美金注册奖励金 --- 亮数据-网络IP代理及全网数据一站式服务商 使用代理服务器&#xff0c;通过 Colly、Goquery、Selenium 进行网络爬虫的基础示例程序 本仓库包含两个分支&#xff1a; basic 分支包含供 Go Proxy Servers 这篇文章改动的基础代码…...

【NLP 43、大模型技术发展】

目录 一、ELMo 2018 训练目标 二、GPT-1 2018 训练目标 三、BERT 2018 训练目标 四、Ernie —— baidu 2019 五、Ernie —— Tsinghua 2019 六、GPT-2 2019 七、UNILM 2019 八、Transformer - XL & XLNet 2019 1.模型结构 Ⅰ、循环机制 Recurrence Mechanism Ⅱ、相对位置…...

在普通用户下修改root用户密码

1 从普通用户切换到root用户 sudo -s 再输入密码。 2 输入passwd ,会提醒你输入当前用户密码&#xff0c;验证后会提醒你输入root用户密码。 3 切换到root用户&#xff0c;使用修改过的密码登陆。 4 成功进入root用户。...

【每日算法】Day 6-1:哈希表从入门到实战——高频算法题(C++实现)

摘要 &#xff1a;掌握高频数据结构&#xff01;今日深入解析哈希表的核心原理与设计实现&#xff0c;结合冲突解决策略与大厂高频真题&#xff0c;彻底掌握O(1)时间复杂度的数据访问技术。 一、哈希表核心思想 哈希表&#xff08;Hash Table&#xff09; 是一种基于键值对的…...

go命令使用

查看配置信息 go env配置go国内源 export GO111MODULEon export GOPROXYhttps://goproxy.cn测试 go install github.com/jesseduffield/lazydockerlatesthttps://github.com/jesseduffield/lazydocker...

深入 SVG:矢量图形、滤镜与动态交互开发指南

1.SVG 详细介绍 SVG&#xff08;Scalable Vector Graphics&#xff09; 是一种基于 XML 的矢量图形格式&#xff0c;用于描述二维图形。 1. 命名空间 (Namespace) 命名空间 URI&#xff1a;http://www.w3.org/2000/svg 用途&#xff1a;在 XML 或 XHTML 中区分不同标记语言的…...

SPPAS安装及问题汇总

SPPAS下载地址 文件找不到&#xff0c;可能是MAC的自动化操作问题&#xff0c;解决方案有二&#xff1a; 方案一&#xff1a; 直接查看SPPAS中的readme&#xff0c;运行sppas.command 方案二&#xff1a; 在自动化脚本中添加 export PATH/usr/local/bin:$PATH...

LINUX基础 [三] - 进程创建

目录 前言 进程创建的初次了解&#xff08;创建进程的原理&#xff09; 什么是fork函数&#xff1f; 初识fork函数 写时拷贝 fork函数存在的意义 fork调用失败的原因 进程终止 运行完毕结果不正确 main函数返回 库函数函数exit 系统调用接口_exit 进程异常终止 进…...

【day1】数据结构刷题 链表

一 反转链表 206. 反转链表 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5] 输出&#xff1a;[5,4,3,2,1]示例 2&#xff1a; 输入&#xff1a;head [1,2] 输出&#xff1a;[2,1]…...

鼠标在客户区内按下左键和双击右键

书籍&#xff1a;《Visual C 2017从入门到精通》的2.6鼠标 环境&#xff1a;visual studio 2022 内容&#xff1a;【例2.44】鼠标在客户区内按下左键和双击右键 1.创建一个单文档程序 一个简单的单文档程序-CSDN博客https://blog.csdn.net/qq_20725221/article/details/1463…...

c++ map和vector模板类

在这一章中C语法之模板函数和模板类-CSDN博客 我们学习了怎样写模板函数和模板类&#xff0c;接下来我们来学习系统给我们写好的两个模板类:map和vector。 我相信有了上文的基础&#xff0c;能帮助我们更好的理解这些模板类。 map和vector 是C STL(标准模板库) 中的一部分&a…...

hn航空app hnairSign unidbg 整合Springboot

声明: 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 逆向分析 学习unidbg补环境。先弄一个…...

Arm Linux ceres库编译

由于工作需要&#xff0c;需在国产化系统上编译ceres库&#xff0c;手上有一块树莓派&#xff0c;就在树莓派上面进行测试编译ceres库&#xff0c;总体来说比较顺利。只出现了一点小问题 参考链接&#xff1a; Ceres中文教程-安装 Ceres官方网站&#xff08;英文&#xff09; …...

c++中的四种cast转换

文章目录 前言一、dynamic_cast二、static_cast三、const_cast四、reinterpret_cast总结 前言 C继承并扩展C语言的传统类型转换方式&#xff0c;提供了功能更加强大的转型机制&#xff08;检查与风险&#xff09; 转换类型典型用途安全性static_cast相关类型转换&#xff08;…...

矩阵补充,最近邻查找

矩阵补充&#xff0c;最近邻查找 矩阵补充是向量召回最简单的一种方法&#xff0c;现在不常用&#xff0c;学习矩阵补充是为了更好的理解后面学到的双塔模型 下图&#xff0c;输入用户ID和物品ID后从Eebedding层拿到对应的向量做内积&#xff0c;内积的结果就是矩阵补充 模型…...

gradio调用多个CSS的HTML页

很多博客介绍的gradio读取html和css比较简单&#xff0c;如果要做很细致的前端页面优化&#xff0c;比如丰富的响应式的cssjs&#xff0c;至少要有html多个css&#xff0c;是暂不能实现的。bootstrap、font-awesome、jquery等 方案一当然是直接更换htmlcss为主的部署方式&#…...

NVIDIA NeMo 全面教程:从入门到精通

NVIDIA NeMo 全面教程&#xff1a;从入门到精通 文章目录 NVIDIA NeMo 全面教程&#xff1a;从入门到精通目录框架介绍NeMo的核心特点NeMo的架构NeMo与其他框架的比较NeMo的模型集合NeMo的工作流程NeMo 2.0的新特性 安装指南系统要求使用Docker容器安装步骤1&#xff1a;安装Do…...

Go 语言封装邮件发送功能

Go 语言封装邮件发送功能 &#x1f3c6; 目标&#x1f4e6; 依赖包&#x1f31f; 项目结构&#x1f680; 代码实现&#x1f6e0;️ 主要方法说明&#x1f9ea; 单元测试&#x1f308; 使用示例&#x1f3c6; 代码亮点&#x1f31f; 改进方向&#x1f680; 总结 在现代 Web 开发…...

加新题了,MySQL 8.0 OCP 认证考试 题库更新

MySQL 8.0 OCP 认证考试 题库更新 MySQL 8.0 Database Administrator 考试科目&#xff1a;1Z0-908 近期发现&#xff0c;MySQL OCP认证考试题库发生变化&#xff0c;出现了很多新题&#xff0c;对此&#xff0c;CUUG专门收集整理了最新版本的MySQL考试原题&#xff0c;并会给…...