机器学习10:正则化-Regularization

news2024/11/13 18:48:01

目录

1.什么是正则化?

2.简化正则化:Lambda

3.两个练习

3.1 问题一

3.2 问题二

4.参考文献


1.什么是正则化?

考虑以下泛化曲线,它显示了训练集和验证集相对于训练迭代次数的损失。

图 1. 训练集和验证集的损失

图 1 显示了一个模型,其中训练损失逐渐减少,但验证损失最终上升。换句话说,这条泛化曲线表明模型对训练集中的数据过度拟合。在实践中,通常可以通过惩罚复杂模型来防止过度拟合,这一原则称为正则化(Regularization。简言之,训练模型不是简单地以最小化损失为目标(经验风险最小化):

\text{minimize(Loss(Data|Model))}

我们现在将【损失+复杂性】最小化,这称为结构风险最小化

\text{minimize(Loss(Data|Model) + complexity(Model))}

我们的训练优化算法现在是两项的函数:损失项(衡量模型对数据的拟合程度)和正则化项(衡量模型复杂性)。在初级阶段,我们主要关注两种常见(且有些相关)的模型复杂性评估方法:

  • 模型复杂性是模型中所有特征权重的函数
  • 将模型复杂性作为具有非零权重的特征总数的函数 

如果模型复杂度是权重的函数,则绝对值高的特征权重比绝对值低的特征权重更复杂。我们可以使用 L_{2} 正则化 公式来量化复杂性,该公式将正则化项定义为所有特征权重的平方和:

L_2\text{ regularization term} = ||\boldsymbol w||_2^2 = {w_1^2 + w_2^2 + ... + w_n^2}

在这个公式中,接近于零的权重对模型复杂性影响很小,而异常值权重可能会产生巨大的影响。例如,具有以下权重的线性模型:

\{w_1 = 0.2, w_2 = 0.5, w_3 = 5, w_4 = 1, w_5 = 0.25, w_6 = 0.75\}

L_{2} 正则化项为 26.915:

w_1^2 + w_2^2 + \boldsymbol{w_3^2} + w_4^2 + w_5^2 + w_6^2
= 0.2^2 + 0.5^2 + \boldsymbol{5^2} + 1^2 + 0.25^2 + 0.75^2
= 0.04 + 0.25 + \boldsymbol{25} + 1 + 0.0625 + 0.5625
= 26.915

w_{3}(上面粗体显示)的平方值为 25,几乎贡献了所有的复杂性。所有其他五个权重的平方和仅向 L_{2} 正则化项添加 1.915。

2.简化正则化:Lambda

模型开发人员通过将正则化项的值乘以称为 lambda 的标量(也称为 正则化率)来调整正则化项的整体影响。也就是说,模型开发人员的目标是执行以下操作:

\text{minimize(Loss(Data|Model)} + \lambda \text{ complexity(Model))}
执行 L_{2} 正则化对模型有以下影响:
  • 鼓励权重值接近 0(但不完全是 0)
  • 鼓励权重均值接近 0,呈正态(钟形或高斯)分布。

增加 lambda 值会增强正则化效果。例如,高 lambda 值的权重直方图可能如图 2 所示。

图 2 权重直方图

降低 lambda 值往往会产生更平坦的直方图,如图 3 所示。

图 3 较低 lambda 值生成的权重直方图

选择 lambda 值时,目标是在简单性和训练数据拟合之间取得适当的平衡:

  • 如果 lambda 值太高,虽然模型会很简单,但会面临数据【拟合不足的风险。最终模型无法充分刻画训练数据,无法做出有用的预测。

  • 如果 lambda 值太低,模型将会更加复杂,并且将面临数据【过度拟合的风险模型会将训练数据的特殊性也学习到,从而导致泛化能力变差。

注意:将 lambda 设置为零会完全消除正则化。在这种情况下,训练只专注于最小化损失,这会带来最高的过度拟合风险。

理想的 lambda 值生成的模型可以很好地泛化(推广)到新的、以前未见过的数据。不幸的是,理想的 lambda 值取决于数据,因此需要进行一些调整。

3.两个练习

3.1 问题一

想象一个具有 100 个输入特征的线性模型:
  • 10 条信息量很大。
  • 90 是非信息性的。
  • 假设所有特征的值都在 -1 到 1 之间。以下哪些陈述是正确的?
A:L_{2} 正则化将鼓励大多数非信息权重恰好为 0.0。
B:L_{2} 正则化可能会导致模型为一些非信息性特征学习适当的权重。
C:L_{2} 正则化将促使许多非信息权重接近(但不完全)0.0。
答案:B,C。
其中 ,B:当非信息性特征恰好与标签相关时,就会发生这种情况。在这种情况下,模型错误地为这些非信息性特征提供了一些本应属于信息性特征的“功劳”。

3.2 问题二

想象一个具有两个强相关特征的线性模型;也就是说,这两个特征几乎是彼此相同的副本,但其中一个特征包含少量随机噪声。如果我们用 L_{2}  正则化训练这个模型,这两个特征的权重会发生什么变化?
A:一个特征的权重很大;另一个的权重几乎为0.0。
B:两个特征的权重大致相等且适中。
C: 一个特征的权重很大;另一个的权重 恰好 为0.0。
答案:B

4.参考文献

链接-简化正则化:Lambda  |  Machine Learning  |  Google for Developers

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

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

相关文章

Docker数据卷与容器的挂载

什么是Docker数据卷: 数据卷(Volumes)是宿主机中的一个目录或文件,当容器目录和数据卷目录绑定后,对方的修改会立即同步。一个数据卷可以被多个容器同时挂载,一个容器也可以被挂载多个数据卷。简单来说数据卷本质其实是…

面试之谈谈你对SpringMVC的理解:

1.把传统的MVC架构里面的Controller控制器进行了拆分。分成了前端控制器的DispatcherServlteth和后端控制器的Controoler. 2.吧Model模型拆分成了业务层Service和数据访问层Repository 3.在试图层,可以支持不同的试图,比图Freemakr,volocity,JSP等等。 所…

【多维Dij+DP】牛客小白月赛75 D

D-矩阵_牛客小白月赛75 (nowcoder.com) 题意: 思路: 首先,对于这种类似于多维BFS的东西,我们一定需要判断是否必要加上新的一维,即我们需要判断新的一维对决策有没有影响 在这道题中,如果把某一个位置取…

MySql脚本 asc 排序字段空值条目靠后的写法

场景: mysql中如果使用正序 asc 排序,那么默认是把排序字段值为空的条目数据,优先排到前面,这明显不符合需求,解决如下 一、重现问题 -- 按排序号-正序 select shop_id,sort_num,update_time from t_shop_trend_conte…

详解c++---哈希闭散列

目录标题 一道题了解哈希哈希的实现原理方法一方法二 准备工作insertfind函数erase函数检测代码 一道题了解哈希 点击此处来尝试做这道题 首先题目告诉我们这个字符串中只含有小写的英文字母而小写的英文字母只有26个,所以我们可以创建一个大小为26的字符数组用来记…

【python爬虫应用03】csdn个人所有文章质量分查询

🛠️ 环境准备 在开始编写代码之前,我们需要进行一些环境准备。以下是所需的环境和库: 操作系统:Windows编程语言:Python 3编辑器:VSCode(可选) 安装所需的库: reque…

2023年最新IDEA中 Java程序 | Java+Kotlin混合开发的程序如何打包成jar包和exe文件(gradle版本)

文章内容: 一. JAVA | JAVA和Kotlin混开开发的程序打包成jar方法 1.1 方法一 :IDEA中手动打包 1.2 方法二 :build.gradle中配置后编译时打包 二. JAVA | JAVA和Kotlin混合开发的程序打包成exe的方法 一. JAVA | JAVA和Kotlin混开开发的程序…

Javalin:一个轻量的 Web Framework

说起 Java 语言下的 Web 框架那就非 Spring Framework 不可了,但是今天在和别人在聊天的过程中发现了一个新奇的项目 Javalin。Javalin 是一个轻量的 Web 框架。支持 WebSocket, HTTP2 和异步请求。简单的看了一下官方的说明文档,确实非常轻量&#xff0…

【ISO26262】汽车功能安全第5部分:硬件层面

对于每种方法,应用相关方法的推荐等级取决于 ASIL等级,分类如下: ———“”表示对于指定的 ASIL等级,高度推荐该方法; ———“”表示对于指定的 ASIL等级,推荐该方法; ———“o”表示对于指定的 ASIL等级,不推荐也不反对该方法。 表2 硬件设计的安全分析 单点故障度量 图 C.…

共享平台用户行为研究

背景 “促进平台经济、共享经济健康发展”是我国第十四个五年规划和二〇三五年远景目标中的重要内容。 研究工作概述 围绕共享平台和双边用户价值创造一般理论和实践,本研究综合多种方法(LDA、社会网络分析、计量经济模型等)和多种数据源交…

chatgpt赋能python:用Python编写SEO文章的技巧

用Python编写SEO文章的技巧 SEO(Search Engine Optimization)是优化网站以在搜索引擎中获得更高排名的过程。编写有趣、有价值且SEO友好的内容是重要的一环。在这篇文章中,我们将探讨使用Python编写SEO文章的技巧。 着重标记加粗的标题 搜…

[Eigen中文文档] 在 BLAS/LAPACK 、英特尔® MKL 和 CUDA 中使用 Eigen

文档总目录 本文目录 在BLAS/LAPACK使用 Eigen在英特尔 MKL使用 Eigen链接 在 CUDA 内核中使用 Eigen 在BLAS/LAPACK使用 Eigen 英文原文(Using BLAS/LAPACK from Eigen) 自Eigen 3.3版本以及以后,任何F77兼容的BLAS或LAPACK库都可以用作稠密矩阵乘积和稠密矩阵分…

第九十四天学习记录:C++核心:类和对象Ⅲ(五星重要)

深拷贝与浅拷贝 深浅拷贝是面试经典问题&#xff0c;也是常见的一个坑 浅拷贝&#xff1a;简单的赋值拷贝操作 深拷贝&#xff1a;在堆区重新申请空间&#xff0c;进行拷贝操作 #define _CRT_SECURE_NO_WARNINGS 1#include<iostream> using namespace std;class Perso…

简述环保用电监管云平台

1、概述 推进打赢蓝天保卫战&#xff0c;打好碧水保卫战&#xff0c;打胜净土保卫战&#xff0c;加快生态环境保护、建设美丽中国&#xff0c;各省市结合物联网和大数据政策&#xff0c;也相继颁布有关污染治理设施用电监管平台等相关政策。针对企业内的环保设施、设备运行状况…

Spring Boot中Elasticsearch的连接配置、原理与使用

Spring Boot中Elasticsearch的连接配置、原理与使用 引言 Elasticsearch是一种开源的分布式搜索和数据分析引擎&#xff0c;它可用于全文搜索、结构化搜索、分析等应用场景。在Spring Boot中&#xff0c;我们可以通过Elasticsearch实现对数据的搜索和分析。本文将介绍Spring …

力扣 -- 62.不同路径、63.不同路径2

题目链接&#xff1a;64. 最小路径和 - 力扣&#xff08;LeetCode&#xff09; 63. 不同路径 II - 力扣&#xff08;LeetCode&#xff09; 以下是用动态规划的思想来解决这两道类似的动规的题目&#xff0c;相信各位老铁都是能够学会并且掌握这两道经典的题目的。 参考代码&am…

mac上使用brew安装mysql5.7

使用Homebrew进行MySQL数据库的安装需要MacOS系统中已经安装了相关环境 1.查询软件信息 首先使用search命令搜索MySQL数据库完整名称&#xff1a; brew search mysql可以看到5.7版本的MySQL数据库完整名称是mysql5.7 2. 执行安装命令 使用install命令进行软件安装&#xf…

Proxy vs Object.defineProperty:哪种对象拦截机制更适合你?

文章目录 简述版详解版相同点不同点1. 功能不同2. 语法和使用方式不同3. 支持程度不同4. 性能差异 简述版 Proxy 和 Object.defineProperty 是 JavaScript 中用于实现对象拦截和代理的两种不同机制。 Object.defineProperty 是一种在对象上定义新属性或修改现有属性的方式。 …

eNSP-DHCP全局配置和接口配置

eNSP-DHCP全局配置和接口配置 文章目录 eNSP-DHCP全局配置和接口配置一、题目要求二、题目分析三、拓扑结构搭建四、基本配置五、测试验证 一、题目要求 要求 &#xff1a; 1 、GE0/0/0 口所在广播域使用全局配置模式 2 、 GE0/0/1 口所在广播域使用接口配置模式 3 、 租期时间…

远古 Windows 98 SE 和 putty 0.63 连接 SSH

远古 Windows 98 SE 和 putty 0.63 连接 SSH 不忘初心一、故障表现二、产生原因三、解决办法四、重启 SSHD 服务生交配置参考 作者&#xff1a;高玉涵 时间&#xff1a;2023.7.1 操作系统&#xff1a; Windows 98 第二版 4.10.2222 A Linux version 5.19.0-32-generic (build…