在未归一化的线性回归模型中,特征的尺度差异可能导致模型对特征重要性的误判

通过数学公式来更清晰地说明归一化对模型的影响,以及它如何改变特征的重要性评估。


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)=(b1a1)β1
    总影响 ( x 2 ) = ( b 2 − a 2 ) ⋅ β 2 \text{总影响}(x_2) = (b_2 - a_2) \cdot \beta_2 总影响(x2)=(b2a2)β2
  • 如果 b 1 − a 1 ≫ b 2 − a 2 b_1 - a_1 \gg b_2 - a_2 b1a1b2a2(即 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=biaixiai
其中:

  • (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+β1x1+β2x2+ϵ
其中:
β 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=b1a1x1a1,x2=b2a2x2a2

代入模型:
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((b1a1)x1+a1)+β2((b2a2)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(b1a1)x1+β2(b2a2)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(b1a1),β2=β2(b2a2)

则归一化后的模型为:
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)+β1x1+β2x2+ϵ

关键结论
  • 归一化后的系数 β 1 ′ \beta'_1 β1 β 2 ′ \beta'_2 β2 是未归一化系数 β 1 \beta_1 β1 β 2 \beta_2 β2 乘以各自的范围 ( b 1 − a 1 (b_1 - a_1 (b1a1 b 2 − a 2 b_2 - a_2 b2a2
  • 这意味着,归一化消除了特征范围对系数的影响,使得模型可以直接比较 β 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)=(20050)1=150
总影响 ( x 2 ) = ( 5 − 1 ) ⋅ 100 = 400 \text{总影响}(x_2) = (5 - 1) \cdot 100 = 400 总影响(x2)=(51)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(b1a1)=1(20050)=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(b2a2)=100(51)=400

此时,归一化后的系数 β 1 ′ = 150 \beta'_1 = 150 β1=150 β 2 ′ = 400 \beta'_2 = 400 β2=400 直接反映了两者的总影响。


5. 总结

通过归一化,我们将特征的范围标准化为 [0, 1],并重新调整了系数,使得模型能够公平地评估特征的重要性。具体来说:

  • 未归一化时,特征的总影响由范围和系数共同决定;
  • 归一化后,特征的总影响仅由系数决定,从而避免了因范围差异导致的偏差。

希望这个数学推导能帮助你更好地理解归一化的作用!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/75365.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JS—页面渲染:1分钟掌握页面渲染过程

个人博客:haichenyi.com。感谢关注 一. 目录 一–目录二–页面渲染过程三–DOM树和渲染树 二. 页面渲染过程 浏览器的渲染过程可以分解为以下几个关键步骤 2.1 解析HTML,形成DOM树 浏览器从上往下解析HTML文档,将标签转成DOM节点&#…

niuhe插件, 在 go 中渲染网页内容

思路 niuhe 插件生成的 go 代码是基于 github.com/ma-guo/niuhe 库进行组织管理的, niuhe 库 是对 go gin 库的一个封装,因此要显示网页, 可通过给 gin.Engine 指定 HTMLRender 来实现。 实现 HTMLRender 我们使用 gitee.com/cnmade/pongo2gin 实现 1. main.go …

openEuler24.03 LTS下安装HBase集群

前提条件 安装好Hadoop完全分布式集群,可参考:openEuler24.03 LTS下安装Hadoop3完全分布式 安装好ZooKeeper集群,可参考:openEuler24.03 LTS下安装ZooKeeper集群 HBase集群规划 node2node3node4MasterBackup MasterRegionServ…

LVGL移植说明

https://www.cnblogs.com/FlurryHeart/p/18104596 参考,里面说明了裸机移植以及freeRTOS系统移植。 移植到linux https://blog.csdn.net/sunchao124/article/details/144952514

ubuntu虚拟机裁剪img文件系统

1. 定制文件系统前期准备 将rootfs.img文件准备好,并创建target文件夹2. 挂载文件系统 sudo mount rootfs.img target #挂载文件系统 sudo chroot target #进入chroot环境3. 内裁剪文件系统 增删裁剪文件系统 exit #退出chroot环境 sudo umount target…

esp826601s固件烧录方法(ch340+面包板)

esp826601s固件烧录方法(ch340面包板) 硬件 stm32f10c8t6,esp826601s,面包板,ch340(usb转ttl),st_link(供电) 接线 烧录时: stm32f10c8t6:gnd->负极, 3.3->正极…

Servlet 点击计数器

Servlet 点击计数器 引言 Servlet 是 Java 企业版(Java EE)技术中的一种服务器端组件,用于处理客户端请求并生成动态内容。本文将详细介绍如何使用 Servlet 实现一个简单的点击计数器,帮助读者了解 Servlet 的基本用法和原理。 …

LangChain vs. LlamaIndex:深入对比与实战应用

目录 引言LangChain 与 LlamaIndex 概述 什么是 LangChain?什么是 LlamaIndex?两者的核心目标与适用场景 架构与设计理念 LangChain 的架构设计LlamaIndex 的架构设计关键技术差异 核心功能对比 数据连接与处理查询与检索机制上下文管理能力插件与扩展性…

【Java中级】10章、内部类、局部内部类、匿名内部类、成员内部类、静态内部类的基本语法和细节讲解配套例题巩固理解【5】

❤️ 【内部类】干货满满,本章内容有点难理解,需要明白类的实例化,学完本篇文章你会对内部类有个清晰的认知 💕 内容涉及内部类的介绍、局部内部类、匿名内部类(重点)、成员内部类、静态内部类 🌈 跟着B站一位老师学习…

内容中台:驱动多渠道营销的关键策略

在数字营销快速发展的今天,企业需要在多个渠道(网站、社交媒体、移动应用等)上同步管理内容。尽管网站仍是品牌展示的核心,但信息分散、多平台重复创建内容的问题,让营销人员面临巨大的管理挑战。 内容中台&#xff0…

SvelteKit 最新中文文档教程(17)—— 仅服务端模块和快照

前言 Svelte,一个语法简洁、入门容易,面向未来的前端框架。 从 Svelte 诞生之初,就备受开发者的喜爱,根据统计,从 2019 年到 2024 年,连续 6 年一直是开发者最感兴趣的前端框架 No.1: Svelte …

CMake 中的置变量

在 CMake 中,变量是存储和传递信息的重要方式。以下是一些常用的 CMake 变量,以表格形式列出,包括它们的名称、含义和常见用途: 变量名称含义常见用途CMAKE_CURRENT_SOURCE_DIR当前处理的 CMakeLists.txt 文件所在的源代码目录的…

深入解析C++类:面向对象编程的核心基石

一、类的本质与核心概念 1.1 类的基本定义 类是将**数据(属性)与操作(方法)**封装在一起的用户自定义类型,是面向对象编程的核心单元。 // 基础类示例 class BankAccount { private: // 访问控制string owner; …

介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用及数组讲解

Docker 是一种轻量级的容器化技术,能够让开发者将应用程序和其所有依赖项打包成一个独立的容器,实现快速部署和运行。以下是 Docker 的基本概念和优势: 基本概念: 镜像(Image):镜像是一个只读的…

在msys2里面的mingw64下面编译quickjs

其实非常的简单,就是正常的make 和make install就行了,这里只是简单的做个编译过程记录。 打开开始--程序--里面的msys64里面的mingw64控制台窗口,切换到quickjs下载解压缩后的目录,执行make和make install ndyHP66G5 MINGW64 ~…

el-table实现表头带筛选功能,并支持分页查询

最开始尝试了下面方法,发现这种方法仅支持筛选当前页的数据,不符合产品要求 于是通过查询资料发现可以结合filter-change事件,当表格的筛选条件发生变化的时候会触发该事件,调接口获取符合条件的数据,实现如下 1、表格…

OpenCV 从入门到精通(day_03)

1. ROI切割 ROI:Region of Interest,翻译过来就是感兴趣的区域。什么意思呢?比如对于一个人的照片,假如我们要检测眼睛,因为眼睛肯定在脸上,所以我们感兴趣的只有脸这部分,其他都不care&#xf…

OpenGL进阶系列20 - OpenGL SuperBible - bindlesstex 例子学习

目录 一:概述: 二:相关API介绍 三:代码完整注释 一: 概述: 什么是无绑定纹理(bindless texture)?无绑定纹理是OpenGL的一项技术,旨在消除传统的纹理绑定操作。这项技术允许着色器直接访问纹理而不需要显式地将纹理绑定到某个纹理单元,从而减少了渲染管线中的开销…

Spring Security认证授权深度解析

一 Spring Security简介 Spring Security是Spring生态系统中的一个安全框架,主要用于处理认证(Authentication)和授权(Authorization)。它提供了一套完整的安全解决方案,可以轻松集成到Spring应用中。 二 核心概念 1. 认证(Authentication) 验证用户…

[学成在线]10-课程审核

课程审核 需求分析 根据模块需求分析,课程发布前要先审核,审核通过方可发布。下图是课程审核及发布的流程图: 为什么课程审核通过才可以发布呢? 这样做为了防止课程信息有违规情况,课程信息不完善对网站用户体验也不…