在未归一化的线性回归模型中,特征的尺度差异可能导致模型对特征重要性的误判
通过数学公式来更清晰地说明归一化对模型的影响,以及它如何改变特征的重要性评估。
1. 未归一化的情况
假设我们有一个线性回归模型:
y = β 0 + β 1 x 1 + β 2 x 2 + ϵ y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \epsilon y=β0+β1x1+β2x2+ϵ
其中:
- x 1 x_1 x1 和 ( x 2 x_2 x2) 是两个特征(如面积和卧室数量),
- ( β 1 \beta_1 β1) 和 ( β 2 \beta_2 β2) 是对应的系数,
- ( y y y) 是目标变量(如房价),
- ( ϵ \epsilon ϵ) 是误差项。
特征范围的影响
- 假设 ( x 1 x_1 x1) 的范围是 ( [ a 1 , b 1 ] ([a_1, b_1] ([a1,b1], x 2 x_2 x2 的范围是 ( [ a 2 , b 2 ] ) ([a_2, b_2]) ([a2,b2])。
- 特征的范围差异会影响模型的优化过程。例如:
- 如果 x 1 x_1 x1 的范围较大(如面积:50~200),而 x 2 x_2 x2 的范围较小(如卧室数量:1~5),那么在最小化损失函数时,模型可能会赋予 x 1 x_1 x1 较小的系数 β 1 \beta_1 β1,而赋予 x 2 x_2 x2 较大的系数 β 2 \beta_2 β2,以平衡两者对预测值的影响。
总影响的计算
- 特征的总影响可以表示为:
总影响 ( x 1 ) = ( b 1 − a 1 ) ⋅ β 1 \text{总影响}(x_1) = (b_1 - a_1) \cdot \beta_1 总影响(x1)=(b1−a1)⋅β1
总影响 ( x 2 ) = ( b 2 − a 2 ) ⋅ β 2 \text{总影响}(x_2) = (b_2 - a_2) \cdot \beta_2 总影响(x2)=(b2−a2)⋅β2 - 如果 b 1 − a 1 ≫ b 2 − a 2 b_1 - a_1 \gg b_2 - a_2 b1−a1≫b2−a2(即 x 1 x_1 x1 的范围远大于 x 2 x_2 x2),即使 β 1 ≪ β 2 \beta_1 \ll \beta_2 β1≪β2, x 1 x_1 x1 的总影响可能仍然占据主导地位。
2. 归一化后的公式
归一化将特征缩放到相同的范围(如 [0, 1])。归一化的公式为:
x i ′ = x i − a i b i − a i x'_i = \frac{x_i - a_i}{b_i - a_i} xi′=bi−aixi−ai
其中:
- (x’_i) 是归一化后的特征值,
- (a_i) 和 (b_i) 分别是原始特征的最小值和最大值。
归一化后,特征的范围变为 [0, 1],因此:
x 1 ′ ∈ [ 0 , 1 ] , x 2 ′ ∈ [ 0 , 1 ] x'_1 \in [0, 1], \quad x'_2 \in [0, 1] x1′∈[0,1],x2′∈[0,1]
归一化后的模型
归一化后的线性回归模型变为:
y = β 0 + β 1 ′ x 1 ′ + β 2 ′ x 2 ′ + ϵ y = \beta_0 + \beta'_1 x'_1 + \beta'_2 x'_2 + \epsilon y=β0+β1′x1′+β2′x2′+ϵ
其中:
β 1 ′ \beta'_1 β1′ 和 β 2 ′ \beta'_2 β2′ 是归一化后特征的系数。
总影响的变化
- 归一化后,特征的总影响可以直接通过系数比较:
总影响 ( x 1 ′ ) = β 1 ′ \text{总影响}(x'_1) = \beta'_1 总影响(x1′)=β1′
总影响 ( x 2 ′ ) = β 2 ′ \text{总影响}(x'_2) = \beta'_2 总影响(x2′)=β2′ - 因为所有特征的范围相同([0, 1]),所以系数的绝对值可以直接反映特征的重要性。
3. 数学推导:归一化对系数的影响
假设未归一化时的模型为:
y = β 0 + β 1 x 1 + β 2 x 2 + ϵ y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \epsilon y=β0+β1x1+β2x2+ϵ
归一化后,特征 (x_1) 和 (x_2) 被替换为 (x’_1) 和 (x’_2),即:
x 1 ′ = x 1 − a 1 b 1 − a 1 , x 2 ′ = x 2 − a 2 b 2 − a 2 x'_1 = \frac{x_1 - a_1}{b_1 - a_1}, \quad x'_2 = \frac{x_2 - a_2}{b_2 - a_2} x1′=b1−a1x1−a1,x2′=b2−a2x2−a2
代入模型:
y = β 0 + β 1 ( ( b 1 − a 1 ) x 1 ′ + a 1 ) + β 2 ( ( b 2 − a 2 ) x 2 ′ + a 2 ) + ϵ y = \beta_0 + \beta_1 \left((b_1 - a_1)x'_1 + a_1\right) + \beta_2 \left((b_2 - a_2)x'_2 + a_2\right) + \epsilon y=β0+β1((b1−a1)x1′+a1)+β2((b2−a2)x2′+a2)+ϵ
整理后:
y = β 0 + β 1 a 1 + β 2 a 2 + β 1 ( b 1 − a 1 ) x 1 ′ + β 2 ( b 2 − a 2 ) x 2 ′ + ϵ y = \beta_0 + \beta_1 a_1 + \beta_2 a_2 + \beta_1 (b_1 - a_1) x'_1 + \beta_2 (b_2 - a_2) x'_2 + \epsilon y=β0+β1a1+β2a2+β1(b1−a1)x1′+β2(b2−a2)x2′+ϵ
令:
β 1 ′ = β 1 ( b 1 − a 1 ) , β 2 ′ = β 2 ( b 2 − a 2 ) \beta'_1 = \beta_1 (b_1 - a_1), \quad \beta'_2 = \beta_2 (b_2 - a_2) β1′=β1(b1−a1),β2′=β2(b2−a2)
则归一化后的模型为:
y = ( β 0 + β 1 a 1 + β 2 a 2 ) + β 1 ′ x 1 ′ + β 2 ′ x 2 ′ + ϵ y = (\beta_0 + \beta_1 a_1 + \beta_2 a_2) + \beta'_1 x'_1 + \beta'_2 x'_2 + \epsilon y=(β0+β1a1+β2a2)+β1′x1′+β2′x2′+ϵ
关键结论
- 归一化后的系数 β 1 ′ \beta'_1 β1′ 和 β 2 ′ \beta'_2 β2′ 是未归一化系数 β 1 \beta_1 β1 和 β 2 \beta_2 β2 乘以各自的范围 ( b 1 − a 1 (b_1 - a_1 (b1−a1 和 b 2 − a 2 b_2 - a_2 b2−a2。
- 这意味着,归一化消除了特征范围对系数的影响,使得模型可以直接比较 β 1 ′ \beta'_1 β1′和 β 2 ′ \beta'_2 β2′来评估特征的重要性。
4. 示例
假设未归一化时:
- 面积 x 1 x_1 x1 的范围是 [50, 200],系数 β 1 = 1 \beta_1 = 1 β1=1;
- 卧室数量 x 2 x_2 x2 的范围是 [1, 5],系数 β 2 = 100 \beta_2 = 100 β2=100。
未归一化时的总影响
总影响 ( x 1 ) = ( 200 − 50 ) ⋅ 1 = 150 \text{总影响}(x_1) = (200 - 50) \cdot 1 = 150 总影响(x1)=(200−50)⋅1=150
总影响 ( x 2 ) = ( 5 − 1 ) ⋅ 100 = 400 \text{总影响}(x_2) = (5 - 1) \cdot 100 = 400 总影响(x2)=(5−1)⋅100=400
卧室数量的总影响更大。
归一化后的系数
归一化后:
β 1 ′ = β 1 ⋅ ( b 1 − a 1 ) = 1 ⋅ ( 200 − 50 ) = 150 \beta'_1 = \beta_1 \cdot (b_1 - a_1) = 1 \cdot (200 - 50) = 150 β1′=β1⋅(b1−a1)=1⋅(200−50)=150
β 2 ′ = β 2 ⋅ ( b 2 − a 2 ) = 100 ⋅ ( 5 − 1 ) = 400 \beta'_2 = \beta_2 \cdot (b_2 - a_2) = 100 \cdot (5 - 1) = 400 β2′=β2⋅(b2−a2)=100⋅(5−1)=400
此时,归一化后的系数 β 1 ′ = 150 \beta'_1 = 150 β1′=150和 β 2 ′ = 400 \beta'_2 = 400 β2′=400 直接反映了两者的总影响。
5. 总结
通过归一化,我们将特征的范围标准化为 [0, 1],并重新调整了系数,使得模型能够公平地评估特征的重要性。具体来说:
- 未归一化时,特征的总影响由范围和系数共同决定;
- 归一化后,特征的总影响仅由系数决定,从而避免了因范围差异导致的偏差。
希望这个数学推导能帮助你更好地理解归一化的作用!
相关文章:
在未归一化的线性回归模型中,特征的尺度差异可能导致模型对特征重要性的误判
通过数学公式来更清晰地说明归一化对模型的影响,以及它如何改变特征的重要性评估。 1. 未归一化的情况 假设我们有一个线性回归模型: y β 0 β 1 x 1 β 2 x 2 ϵ y \beta_0 \beta_1 x_1 \beta_2 x_2 \epsilon yβ0β1x1β2x2ϵ 其…...
TDengine tar.gz和docker两种方式安装和卸载
下载地址 3.1.1.0 Linux版本 安装包 下载地址 3.1.1.0 docker 镜像 下载地址 3.1.1.0 Window客户端 1. 将文件上传至服务器后解压 tar -zxvf TDengine-server-3.1.1.0-Linux-x64.tar.gz 2. tar.gz安装 解压文件后,进入相应子目录,执行其中的 install.…...
【STM32设计】基于STM32的智能门禁管理系统(指纹+密码+刷卡+蜂鸣器报警)(代码+资料+论文)
本课题为基于单片机的智能门禁系统,整个系统由AS608指纹识别模块,矩阵键盘,STM32F103单片机,OLED液晶,RFID识别模块,继电器,蜂鸣器等构成,在使用时,用户可以录入新的指纹…...
贪心算法,其优缺点是什么?
什么是贪心算法? 贪心算法(Greedy Algorithm)是一种在每一步选择中都采取在当前状态下最优(局部最优)的选择,从而希望导致全局最优解的算法策略。 它不像动态规划那样考虑所有可能的子问题,而是做出局部最优选择,依赖这些选择来…...
java知识梳理(二)
一.lambda表达式 作用:Lambda 表达式在 Java 8 引入,主要用于简化匿名内部类的写法,特别是在函数式编程场景中,比如 函数式接口、流式 API(Streams)、并发编程等。它让 Java 代码更简洁、可读性更强&#x…...
鸿蒙Flutter实战:20. Flutter集成高德地图,同层渲染
本文以同层渲染为例,介绍如何集成高德地图 完整代码见 Flutter 鸿蒙版 Demo 概述 Dart 侧 核心代码如下,通过 OhosView 来承载原生视图 OhosView(viewType: com.shaohushuo.app/customView,onPlatformViewCreated: _onPlatformViewCreated,creation…...
c++中%符号使用的注意事项/易错点
在C中,% 是取模运算符(modulus operator),用于计算两个数相除后的余数。虽然它的用法看起来简单,但在实际编程中有一些需要注意的细节和易错点。以下是关键注意事项: 1. 操作数必须为整数类型 % 只能用于整…...
AI辅助下基于ArcGIS Pro的SWAT模型全流程高效建模实践与深度进阶应用
目前,流域水资源和水生态问题逐渐成为制约社会经济和环境可持续发展的重要因素。SWAT模型是一种基于物理机制的分布式流域水文与生态模拟模型,能够对流域的水循环过程、污染物迁移等过程进行精细模拟和量化分析。SWAT模型目前广泛应用于流域水文过程研究…...
Java 基础-30-单例设计模式:懒汉式与饿汉式
在软件开发中,单例设计模式(Singleton Design Pattern)是一种常用的设计模式,它确保一个类只有一个实例,并提供一个全局访问点。这种模式通常用于管理共享资源(如数据库连接池、线程池等)或需要…...
尚语翻译图册翻译|专业图册翻译|北京专业翻译公司推荐|专业文件翻译报价
内容概要 尚语翻译公司聚焦多语种产品图册翻译的竞价推广服务,通过行业垂直化运营构建差异化竞争力。其核心服务覆盖机械制造、医疗器械、电子元件三大领域,依托ISO 17100认证的翻译流程和Trados术语管理系统,实现技术文档的精准转化。为提升…...
杂篇-行业分类一二-2(通、专用设备制造,汽车制造)
接上篇, 本篇列举制造业中另外几个细分行业:通用设备制造,专用设备制造,汽车制造业。 一、通用设备制造 分类 序号 类别名称 说明 1 锅炉及原动设备制造 1 锅炉及辅助设备制造 指各种蒸汽锅炉、汽化锅炉,以及…...
[笔记.AI]大模型训练 与 向量值 的关系
(借助 DeepSeek-V3 辅助生成) 大模型在训练后是否会改变向量化的值,取决于模型的训练阶段和使用方式。以下是详细分析: 1. 预训练阶段:向量化值必然改变 动态调整过程: 在预训练阶段(如BERT、…...
LeetCode 解题思路 30(Hot 100)
解题思路: 递归参数: 生成括号的对数 n、结果集 result、当前路径 path、左括号数 open、右括号数 close。递归过程: 当当前路径 path 的长度等于 n * 2 时,说明已经生成有效括号,加入结果集。若左括号数小于 n&…...
Java EE(18)——网络原理——应用层HTTP协议
一.初识HTTP协议 HTTP(HyperText Transfer Protocol,超文本传输协议)是用于在客户端(如浏览器)和服务器之间传输超媒体文档(如HTML)的应用层协议。 HTTP协议发展至今发布了多个版本,其中1.0,1.…...
强大而易用的JSON在线处理工具
强大而易用的JSON在线处理工具:程序员的得力助手 在当今的软件开发世界中,JSON(JavaScript Object Notation)已经成为了数据交换的通用语言。无论是前端还是后端开发,我们都经常需要处理、验证和转换JSON数据。今天&a…...
Qt笔记----》不同环境程序打包
文章目录 概要1、windows环境下打包qt程序2、linux环境下打包qt程序2.1、程序目录2.2、创建一个空文件夹2.3、添加依赖脚本2.4、打包过程2.4.1、添加程序依赖库2.4.2、添加Qt相关依赖库 概要 qt不同运行环境下打包方式:windows/linux 1、windows环境下打包qt程序 …...
企业服务器备份软件,企业服务器备份的方法有哪些?
企业服务器备份需综合考虑数据量、业务连续性要求(RTO/RPO)、合规性及成本等因素。以下是分场景的工具和方法指南: 一、备份软件推荐 1. 80KM备份软件 80KM备份软件可以进行很复杂的备份方式,也可以内网对内网备份、还能内网的…...
Vue3 表单
Vue3 表单 随着前端技术的发展,Vue.js 作为一款流行的前端框架,不断更新迭代,以适应更高效、更便捷的开发需求。Vue3 作为 Vue.js 的第三个主要版本,引入了许多新特性和改进,其中包括对表单处理机制的优化。本文将深入探讨 Vue3 表单的使用方法、技巧以及注意事项。 1. …...
html5炫酷图片悬停效果实现详解
html5炫酷图片悬停效果实现详解 这里写目录标题 html5炫酷图片悬停效果实现详解项目介绍技术栈核心功能实现1. 页面布局2. 图片容器样式3. 炫酷悬停效果缩放效果倾斜效果模糊效果旋转效果 4. 悬停文字效果5. 性能优化6. 响应式设计 项目亮点总结 项目介绍 本文将详细介绍如何使…...
安徽京准:GPS北斗卫星校时服务器助力大数据云计算
安徽京准:GPS北斗卫星校时服务器助力大数据云计算 安徽京准:GPS北斗卫星校时服务器助力大数据云计算 GPS北斗卫星校时服务器在大数据与云计算系统中发挥着关键作用,其通过提供高精度、高可靠的时间同步服务,解决了分布式系统的核…...
【Linux】内核驱动学习笔记(二)
7、framebuffer驱动详解 7.1、什么是framebuffer (1)裸机中如何操作LCD (2)OS下操作LCD的难点 (3)framebuffer帧缓冲(简称fb)是linux内核中虚拟出的一个设备 (4)framebuffer向应用层提供一个统一标准接口的显示设备 (5)从驱动来看,fb是一个…...
机器学习的一百个概念(5)数据增强
前言 本文隶属于专栏《机器学习的一百个概念》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和参考文献请见[《机器学习的一百个概念》 ima 知识库 知识库广场搜索&…...
在MCU工程中优化CPU工作效率的几种方法
在嵌入式系统开发中,优化 CPU 工作效率对于提升系统性能、降低功耗、提高实时性至关重要。Keil 作为主流的嵌入式开发工具,提供了多种优化策略,包括 关键字使用、内存管理、字节对齐、算法优化 等。本文将从多个方面介绍如何在 Keil 工程中优…...
优化程序命名:提升专业感与用户体验
在软件开发的广阔天地中,程序命名这一环节常常被开发者们忽视。不少程序沿用着简单直白、缺乏雕琢的名字,如同素面朝天的璞玉,虽不影响其核心功能的发挥,但却在无形之中错失了许多提升用户印象与拓展应用场景的机会。今天…...
美团民宿 mtgsig 小程序 mtgsig1.2 分析
声明 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! 逆向分析 cp execjs.compile(open(民…...
短视频团队架构工作流程---2025.3.30 李劭卓
短视频团队架构&工作流程—2025.3.30 李劭卓 文章目录 短视频团队架构&工作流程---2025.3.30 李劭卓1 工作职责1.1 编剧:1.2 主编:1.3 总编:1.4 导演:1.5 摄影:1.6 演员:1.7 后期:1.8 美…...
es 集群存储字典 json字段----python实现
本人的意思是value为json格式数据,而不是简单的如下这种:这种我就没有必要写个博文,肯定是复杂的情况啊。 from elasticsearch import Elasticsearch import json# 创建Elasticsearch客户端 es = Elasticsearch([{host: localhost, port: 9200}])# 定义要存储的字典 my_dic…...
(done) MIT6.824 Lecture 02 - RPC and Threads
知乎专栏:https://zhuanlan.zhihu.com/p/641105196 原视频:https://www.bilibili.com/video/BV16f4y1z7kn?spm_id_from333.788.videopod.episodes&vd_source7a1a0bc74158c6993c7355c5490fc600&p2 看知乎专栏 一、Why we choose go?…...
软件工程面试题(二十四)
1、连接池的原理 j2ee 服务器启动时会建立一定数量的池连接,并一直维持不少于此数量的池连接。当客户端程序需要连接时,吃驱动程序会返回一个未使用的池连接并将其标记为忙。如果当前 没有空闲连接,池驱动就建立一定新的 连接 2、用javascript编写脚本小程序,实现点击全选…...
LayaAir3.3.0-beta.3重磅更新!Spine4.2、2D物理、UI系统、TileMap等全面升级!
正式版推出前,说明3.3的功能还没开发完。所以,又一大波更新来了~ 下面对重点更新进行说明。 Spine的重要更新 3.3.0-beta.3版本开始,新增了Spine 4.2 的运行时库,Spine动画上可以支持物理特性了。例如,下图右侧女孩在启…...
