认识机器学习中的结构风险最小化准则
上一篇文章我们学习了关于经验风险最小化准则,其核心思想是通过最小化训练数据上的损失函数来优化模型参数,从而提高模型在训练集上的表现。但是这也会导致一个问题,经验风险最小化原则很容易导致模型在训练集上错误率很低,但在未知数据上错误率很高。这就是所谓的过拟合(Overfitting)。
过拟合问题往往是由于训练数据少和噪声以及模型能力强等原因造成的,为了解决过拟合问题, 一般在经验风险最小化的基础上再引入参数的正则化 (Regularization)来限制模型能力,使其不要过度地最小化经验风险。
这种准则,就是结构风险最小化(Structure Risk Minimization,SRM)准则。
一、我们先来了解一下参数的正则化:
机器学习中的参数正则化
参数正则化是一种防止模型过拟合的重要技术,目的是在优化模型性能的同时提高其泛化能力。通过对模型参数施加约束,正则化可以防止模型过度拟合训练数据而导致在测试数据上表现不佳。
1. 什么是正则化?
正则化的核心思想是向损失函数中加入一个惩罚项,该惩罚项与模型的参数相关。通过限制参数的大小,正则化鼓励模型选择更简单的解。这样可以避免模型在训练数据上过度复杂,从而提高在新数据上的泛化能力。
正则化后的损失函数通常形式为:

2. 常见的正则化方法
以下是几种常见的参数正则化方法:
(1) L1 正则化(Lasso)
- 定义:正则化项为模型参数的绝对值之和:

- 特点:
- 鼓励稀疏性(某些参数趋近于 0)。
- 常用于特征选择,因为它可以将无关特征的参数变为 0。
- 应用场景:
- 数据有许多无关特征,需要自动选择特征时。
(2) L2 正则化(Ridge)
- 定义:正则化项为模型参数的平方和:

- 特点:
- 防止参数变得过大,但不会直接导致参数为 0。
- 提供较平滑的正则化效果。
- 应用场景:
- 数据噪声较大,但所有特征可能都与目标相关。
(3) Elastic Net
- 定义:结合了 L1 和 L2 正则化:

- 特点:
- 结合了 L1 的稀疏性和 L2 的稳定性。
- 应用场景:
- 既需要稀疏性,又不希望完全丢弃部分特征时。
3. 正则化的作用
- 减少过拟合:
- 模型的高复杂度可能导致其过度拟合训练数据中的噪声,正则化通过限制参数大小来抑制过拟合。
- 提高泛化能力:
- 限制参数幅度,可以使模型对新数据具有更好的预测能力。
- 控制模型复杂度:
- 参数越小,模型复杂度越低。正则化可以通过引导参数趋向较小值,控制模型的复杂性。
4. 参数正则化的几何解释
从几何上看,正则化可以理解为将参数限制在一个特定的范围内:
- 对于 L1 正则化,约束区域是一个菱形,参数可能集中在坐标轴上(导致稀疏解)。
- 对于 L2 正则化,约束区域是一个球体,参数趋向均匀分布且较小。
在优化过程中,正则化会调整参数解,使其既满足误差最小化要求,又符合正则化约束。
5. 正则化超参数 λ\lambda 的影响
- λ=0:表示没有正则化,模型会完全拟合数据。
- λ 较小:正则化效果弱,模型可能仍然复杂。
- λ 较大:正则化效果强,模型可能过于简单,导致欠拟合。
选择合适的 通常需要通过交叉验证来完成。
6. 实例代码
以下是一个使用 Python 的 scikit-learn 实现正则化的简单示例:
from sklearn.linear_model import Ridge, Lasso
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
import numpy as np# 示例数据
X = np.random.rand(100, 5)
y = np.random.rand(100)# 分割数据集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# L2 正则化 (Ridge)
ridge = Ridge(alpha=1.0) # alpha 对应正则化强度 λ
ridge.fit(X_train, y_train)
y_pred_ridge = ridge.predict(X_test)
print("Ridge MSE:", mean_squared_error(y_test, y_pred_ridge))# L1 正则化 (Lasso)
lasso = Lasso(alpha=0.1)
lasso.fit(X_train, y_train)
y_pred_lasso = lasso.predict(X_test)
print("Lasso MSE:", mean_squared_error(y_test, y_pred_lasso))
参数正则化是机器学习中用于防止过拟合的重要技术,它通过向损失函数中加入与参数相关的惩罚项,限制模型的复杂性,增强泛化能力。根据具体任务的需求,可以选择 L1、L2 或 Elastic Net 等正则化方法,并通过超参数调节正则化的强度,找到模型性能和复杂度的平衡点。
二、结合参数正则化,我们来了解结构风险最小化准则
机器学习中的结构风险最小化(SRM)准则
1. 什么是结构风险最小化(SRM)准则?
结构风险最小化(Structural Risk Minimization, SRM)是统计学习理论(Statistical Learning Theory)中的一个重要概念。它是一种用于平衡模型复杂度和训练误差的策略,旨在提高模型的泛化能力。
SRM 的核心思想是,在选择模型时,不仅要考虑在训练数据上的损失(经验风险),还要考虑模型的复杂度(容量),通过引入一个额外的正则化项来综合优化,避免模型过拟合或欠拟合。
2. SRM 的目标
SRM 的目标是最小化以下目标函数:

SRM 希望找到一个模型,使得 整体风险 最小化,这样可以保证模型对未知数据有更好的预测性能。
3. SRM 与经验风险最小化(ERM)的区别
经验风险最小化(Empirical Risk Minimization, ERM)仅仅关注在训练集上的误差,目标是最小化经验风险:

- 问题:ERM 容易导致模型过拟合,因为它完全忽略了模型复杂度,可能学到过于复杂的模型。
相比之下,SRM 将模型复杂度作为约束条件:

- 优势:SRM 考虑了模型复杂度,使得模型在训练数据上的表现和泛化能力之间取得平衡。
4. 模型复杂度的度量
SRM 中的正则化项 Ω(θ)用于度量模型的复杂度,常见的方法包括:
- 参数范数:

- 模型的自由度:
- 自由度越高,模型越复杂。
- 例如:多项式回归中多项式的阶数。
- 模型的容量:
- 例如 VC 维(Vapnik-Chervonenkis Dimension)或 Rademacher 复杂度,用于度量模型的表示能力。
5. SRM 的实现方法
在实际中,SRM 通过正则化技术来实现,就是我们前面提到的参数正则化:
- L1 正则化(Lasso 回归):
- 通过最小化参数绝对值之和,鼓励稀疏解。
- L2 正则化(Ridge 回归):
- 通过最小化参数平方和,限制参数幅度,防止过拟合。
- Elastic Net 正则化:
- 结合 L1 和 L2 正则化的优点,适用于特征选择和防止过拟合。
7.. SRM 的优势
- 提高泛化能力:通过控制模型复杂度,SRM 能够减少过拟合,提高模型对未知数据的适应性。
- 提供模型选择的理论基础:SRM 提供了一个系统化的方法,用于在不同复杂度的模型中进行选择。
- 与正则化方法紧密结合:SRM 理论支持了正则化在机器学习中的广泛应用。
结构风险最小化是机器学习中用于提高模型泛化能力的重要理论。它通过在损失函数中引入正则化项,在经验风险和模型复杂度之间找到平衡点,从而防止过拟合或欠拟合。实际应用中,SRM 常与正则化方法结合,广泛用于各种机器学习模型中,如线性回归、支持向量机、神经网络等。
相关文章:
认识机器学习中的结构风险最小化准则
上一篇文章我们学习了关于经验风险最小化准则,其核心思想是通过最小化训练数据上的损失函数来优化模型参数,从而提高模型在训练集上的表现。但是这也会导致一个问题,经验风险最小化原则很容易导致模型在训练集上错误率很低,但在未…...
计算机网络 (35)TCP报文段的首部格式
前言 计算机网络中的TCP(传输控制协议)报文段的首部格式是TCP协议的核心组成部分,它包含了控制TCP连接的各种信息和参数。 一、TCP报文段的结构 TCP报文段由首部和数据两部分组成。其中,首部包含了控制TCP连接的各种字段ÿ…...
ubuntu24.04安装docker显卡工具包nvidia-container-toolkit
问题描述 docker 容器启动时如果需要访问 gpu ,需要安装 nvidia-container-toolkit 才行,否则会提示如下错误 sudo docker run --rm -it --gpus all ubuntu:latest docker: Error response from daemon: could not select device driver "" …...
rknn环境搭建之docker篇
目录 1. rknn简介2. 环境搭建2.1 下载 RKNN-Toolkit2 仓库2.2 下载 RKNN Model Zoo 仓库2.3 下载交叉编译器2.4 下载Docker镜像2.5 下载ndk2.5 加载docker镜像2.6 docker run 命令创建并运行 RKNN Toolkit2 容器2.7 安装cmake 3. 模型转换3.1 下载模型3.2 模型转换 4. 编译cdem…...
OpenCV相机标定与3D重建(56)估计物体姿态(即旋转和平移)的函数solvePnPRansac()的使用
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 使用RANSAC方案从3D-2D点对应关系中找到物体的姿态。 cv::solvePnPRansac 是 OpenCV 中用于估计物体姿态(即旋转和平移)的…...
vue倒计时组件封装,根据每个循环项的倒计时是否结束添加新类名。
1.创建countdown.vue文件: <template><p style"font-size: 10px">{{time}}</p> </template> <script>export default{data () {return {time : ,flag : false}},mounted () {let time setInterval(() > {if (this.fla…...
缩放 对内外参的影响
当你对图像进行同比例缩小时,图像的内参需要相应地变化,但外参通常保持不变。 相机内参 相机内参(内参矩阵)描述了相机的固有属性,包括焦距和主点(光轴与图像平面的交点)的坐标。 当你对图像…...
SQL面试题2:留存率问题
引言 场景介绍: 在互联网产品运营中,用户注册量和留存率是衡量产品吸引力和用户粘性的关键指标,直接影响产品的可持续发展和商业价值。通过分析这些数据,企业可以了解用户行为,优化产品策略,提升用户体验…...
晨辉面试抽签和评分管理系统之九:随机编排考生的分组(以教师资格考试面试为例)
晨辉面试抽签和评分管理系统(下载地址:www.chenhuisoft.cn)是公务员招录面试、教师资格考试面试、企业招录面试等各类面试通用的考生编排、考生入场抽签、候考室倒计时管理、面试考官抽签、面试评分记录和成绩核算的面试全流程信息化管理软件。提供了考生…...
【EtherCATBridge】- KRTS C++示例精讲(9)
EtherCATBridge示例讲解 文章目录 EtherCATBridge示例讲解结构说明代码说明 项目打开请查看【BaseFunction精讲】。 结构说明 EtherCATBridge.h :数据定义 EtherCATBridge.cpp :应用层源码 EtherCATBridge_dll.cpp :内核层源码 其余文件说明…...
C++实现设计模式--- 观察者模式 (Observer)
观察者模式 (Observer) 观察者模式 是一种行为型设计模式,它定义了一种一对多的依赖关系,使得当一个对象的状态发生改变时,其依赖者(观察者)会收到通知并自动更新。 意图 定义对象之间的一对多依赖关系。当一个对象状…...
iOS 解决两个tableView.嵌套滚动手势冲突
我们有这样一个场景,就是页面上有一个大的tableView, 每一个cell都是和屏幕一样高的,然后cell中还有一个可以 tableView,比如直播间的情形,这个时候如果我们拖动 cell里面的tableView滚动的话,如果滚动到内…...
Lianwei 安全周报|2025.1.13
新的一周又开始了,以下是本周「Lianwei周报」,我们总结推荐了本周的政策/标准/指南最新动态、热点资讯和安全事件,保证大家不错过本周的每一个重点! 政策/标准/指南最新动态 01 美国国土安全部发布《公共部门生成式人工智能部署手…...
rtthread学习笔记系列(2) -- 宏
文章目录 2.链接文件2.0. 参考链接2.1._stext 和 _etext2.2. "."与"*符号作用2.3..linkonce 段2.4. KEEP2.5 ENTRY2.6 PROVIDE2.7 AT2.8 SORT2.9 NOLOAD 源文件路径:https://github.com/wdfk-prog/RT-Thread-Study 2.链接文件 2.0. 参考链接 https://home.cs…...
美摄科技PC端视频编辑解决方案,为企业打造专属的高效创作平台
在当今这个信息爆炸的时代,视频已成为不可或缺的重要内容形式,美摄科技推出了PC端视频编辑解决方案的私有化部署服务,旨在为企业提供一款量身定制的高效创作平台。 一、全面功能,满足企业多样化需求 美摄科技的PC端视频编辑解决…...
服务端开发模式-thinkphp-重新整理workman
一、登录接口 <?php /*** 登录退出操作* User: 龙哥三年风水* Date: 2024/10/29* Time: 15:53*/ namespace app\controller\common; use app\controller\Emptys; use app\model\permission\Admin; use app\model\param\System as SystemModel; use Email\EmailSender; use…...
HTB:Access[WriteUP]
目录 连接至HTB服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 将靶机TCP开放端口号提取并保存 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机常用UDP端口进行开放扫描 尝试匿名连接至…...
【论文笔记】SmileSplat:稀疏视角+pose-free+泛化
还是一篇基于dust3r的稀疏视角重建工作,作者联合优化了相机内外参与GS模型,实验结果表明优于noposplat。 abstract 在本文中,提出了一种新颖的可泛化高斯方法 SmileSplat,可以对无约束(未标定相机的)稀疏多…...
电机控制的数字化升级:基于DSP和FPGA的仿真与实现
数字信号处理器(DSP,Digital Signal Processor)在工业自动化领域的应用日益广泛。DSP是一种专门用于将模拟信号转换成数字信号并进行处理的技术,能够实现信号的数字滤波、重构、调制和解调等多项功能,确保信号处理的精…...
1/14 C++
练习:将图形类的获取周长和获取面积函数设置成虚函数,完成多态 再定义一个全局函数,能够在该函数中实现:无论传递任何图形,都可以输出传递的图形的周长和面积 #include <iostream>using namespace std; class Sh…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
unix/linux,sudo,其发展历程详细时间线、由来、历史背景
sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建
华为云FlexusDeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色,华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型,能助力我们轻松驾驭 DeepSeek-V3/R1,本文中将分享如何…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
#Uniapp篇:chrome调试unapp适配
chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器:Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...
