范数(norm) 几种范数的简单介绍

2023-11-17

转自:https://blog.csdn.net/a493823882/article/details/80569888

https://www.zhihu.com/question/20473040

什么是范数?

我们知道距离的定义是一个宽泛的概念,只要满足非负、自反、三角不等式就可以称之为距离。范数是一种强化了的距离概念,它在定义上比距离多了一条数乘的运算法则。有时候为了便于理解,我们可以把范数当作距离来理解。

在数学上,范数包括向量范数和矩阵范数,向量范数表征向量空间中向量的大小,矩阵范数表征矩阵引起变化的大小。一种非严密的解释就是,对应向量范数,向量空间中的向量都是有大小的,这个大小如何度量,就是用范数来度量的,不同的范数都可以来度量这个大小,就好比米和尺都可以来度量远近一样;对于矩阵范数,学过线性代数,我们知道,通过运算AX=B,可以将向量X变化为B,矩阵范数就是来度量这个变化大小的。

这里简单地介绍以下几种向量范数的定义和含义 
1、 L-P范数 
与闵可夫斯基距离的定义一样,L-P范数不是一个范数,而是一组范数,其定义如下: 



根据P 的变化,范数也有着不同的变化,一个经典的有关P范数的变化图如下: 
这里写图片描述 
上图表示了p从无穷到0变化时,三维空间中到原点的距离(范数)为1的点构成的图形的变化情况。以常见的L-2范数(p=2)为例,此时的范数也即欧氏距离,空间中到原点的欧氏距离为1的点构成了一个球面。

 

实际上,在0时,Lp并不满足三角不等式的性质,也就不是严格意义下的范数。以p=0.5,二维坐标(1,4)、(4,1)、(1,9)为例,。因此这里的L-P范数只是一个概念上的宽泛说法。

2、L0范数 

当P=0时,也就是L0范数,由上面可知,L0范数并不是一个真正的范数,它主要被用来度量向量中非零元素的个数。用上面的L-P定义可以得到的L-0的定义为: 

这里就有点问题了,我们知道非零元素的零次方为1,但零的零次方,非零数开零次方都是什么鬼,很不好说明L0的意义,所以在通常情况下,大家都用的是: 

表示向量x中非零元素的个数。

对于L0范数,其优化问题为: 


s.t. Ax=b 

在实际应用中,由于L0范数本身不容易有一个好的数学表示形式,给出上面问题的形式化表示是一个很难的问题,故被人认为是一个NP难问题。所以在实际情况中,L0的最优问题会被放宽到L1或L2下的最优化。

 

3、L1范数 
L1范数是我们经常见到的一种范数,它的定义如下: 

 

表示向量x中非零元素的绝对值之和。

 

L1范数有很多的名字,例如我们熟悉的曼哈顿距离、最小绝对误差等。使用L1范数可以度量两个向量间的差异,如绝对误差和(Sum of Absolute Difference): 

对于L1范数,它的优化问题如下: 



由于L1范数的天然性质,对L1优化的解是一个稀疏解,因此L1范数也被叫做稀疏规则算子。通过L1可以实现特征的稀疏,去掉一些没有信息的特征,例如在对用户的电影爱好做分类的时候,用户有100个特征,可能只有十几个特征是对分类有用的,大部分特征如身高体重等可能都是无用的,利用L1范数就可以过滤掉。

 

4、L2范数 
L2范数是我们最常见最常用的范数了,我们用的最多的度量距离欧氏距离就是一种L2范数,它的定义如下: 


表示向量元素的平方和再开平方。 
像L1范数一样,L2也可以度量两个向量间的差异,如平方差和(Sum of Squared Difference): 

 

对于L2范数,它的优化问题如下: 

 

L2范数通常会被用来做优化目标函数的正则化项,防止模型为了迎合训练集而过于复杂造成过拟合的情况,从而提高模型的泛化能力。

 

 

5、范数

时,也就是范数,它主要被用来度量向量元素的最大值,与L0一样,通常情况下表示为 

来表示

--------------------- 本文来自 7asonChai 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/a493823882/article/details/80569888?utm_source=copy

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

范数(norm) 几种范数的简单介绍 的相关文章

  • ctfshow web入门题解(一) web1-10

    ctfshow web入门题解 一 web1 10 被带佬丢进坑里了 备考的时候顺便做做题目 就当放松了 狗比套妈人拐进来自己跑掉 遇见他记得喊人贩子 信息搜集 ctfshow web入门题解 一 web1 10 web1 web2 web
  • eclipse2019 从头创建web项目到运行网页的过程总结

    简介 今天朋友在github上下载了一个老版本的eclipse项目 叫我帮忙配置运行环境且运行出网页页面 由于我一开始学习java就是用的IDEA 几乎对eclipse没有任何的接触 对怎么使用也是一点都不清楚 更别说别的了 经过一下午的不
  • OpenCV在Python上的调用( import cv2的解决办法)

    OpenCV是一个图像处理的经典库 而且关键是一直在升级 为了在Python中调用opencv 特别是看到好多代码都是import cv2 而这个在python中是无法直接进行pip install安装的 查了下 才知道需要从opencv库
  • PS接入人工智能!Photoshop (Beta) AI PS最新AI版支持创意AI文生图

    adobe 在 Photoshop最新的 Beta 版本中 新增AI创意填充功能让你只需要使用简单的文字提示就可以帮你完成对图像内容的添加 扩展 移除 在几秒钟内实现令您感到惊叹 喜悦和震撼的逼真效果 实际体验后我发现这一功能将改变传统作图
  • 关于安卓手机如何访问Tomcat服务器详解

    关于安卓手机访问Tomcat服务器 Tomcat的安装整备 运行Tomcat 手机接入局域网 关于查找IP 启动cmd exe 找到自己的ip 关闭防火墙 将文件放入Tomcat的webapps 手机端连接服务器 Tomcat的安装整备 下

随机推荐

  • Flutter与Android iOS 的双向通信

    本文章中的完整代码在这里 GitHub zhaolongs Flutter Android iOS Flutter 与 Android iOs 的双向通信 demo demo运行注意 1 Json数据解析异常 org json JSONEx
  • 443.压缩字符串

    443 压缩字符串 给你一个字符数组 chars 请使用下述算法压缩 从一个空字符串 s 开始 对于 chars 中的每组 连续重复字符 如果这一组长度为 1 则将字符追加到 s 中 否则 需要向 s 追加字符 后跟这一组的长度 压缩后得到
  • String内部一次性替换多个字符串

    问题 String进行字符串的替换的时候 可以使用 s replace 但是只能替换一个字符 所以说 当需要多个字符串进行替换是 会有些麻烦 解决 使用StrUtil removeAll 引入hutool包 使用 StrUtil remov
  • 电感相关知识总结

    一 定义及原理 电感就是将导线绕制成线圈形状 当电流流过时 在线圈 电感 两端就会形成较强的磁场 由于电磁感应的作用 会对电流的变化起阻碍作用 因此 电感对直流呈现很小的电阻 近似于短路 对交流呈现的阻抗较高 其阻值的大小与所通过交流信号的
  • 一、深度学习框架究竟是什么?

    1 引言 一直在说深度学习框架 最近也在使用tensorflow进行了简单的实验 但是对其中关系的理解还是不够到位 他们里面究竟是怎样的一个运行机制呢 2 说明 深度学习框架也就像Caffe tensorflow这些是深度学习的工具 简单来
  • k8s从入门到放弃-第九章安全认证

    文章目录 9 1访问控制概述 9 2认证管理 9 3授权管理 9 4准入控制 本章节主要介绍Kubernetes的安全认证机制 9 1访问控制概述 Kubernetes作为一个分布式集群的管理工具 保证集群的安全性是其一个重要的任务 所谓的
  • Java基础语法-标识符

    标识数据的符号称为标识符 变量名称就是标识符 标识符主要用于起名 String name zhangsan 标识符的命名规则 1 英文拉丁字母 String name zhangsan 2 符号 标识符只能采用下划线 和美元 符号其他符号不
  • 关于tomcat繁忙线程数获取

    在某些情况下 我们需要对tomcat的繁忙线程数进行监控以满足我们队应用服务器状态信息的把控 那么我们该如何通过我们自定义的接口来获得tomcat的繁忙线程数 首先 我们应该想到tomcat本身是否为我们提供了类似的方法 博主在实际开发中拜
  • 图床搭建快速入门(PICGO + 腾讯云)

    写在前面 本文参考文章 总结补充有手就行 搭建图床 PicGo 腾讯云 贤蛋大眼萌的博客 CSDN博客 一 安装PICGO 去PICGO官网安装 官网地址 但是需要去Github去下载安装包 下载发行版 更稳定 PicGo PicGo 图片
  • 微信小程序 background-image 报错

    开发过程中使用background设置背景图片在小程序上运行报错如下 报错原因 微信小程序通过background image设置背景 只支持线上图片和base64图片 不支持本地图片 解决 1 图片放到服务器上 使用线上图片 2 base
  • 代码质量与安全

    在任何新的软件开发项目开始时 您就应该考虑软件安全 开始一个新项目或许会令人望而生畏 因为有许多的决定要做 有许多想法必须考虑清楚 通常来说 这些决定和想法包括了定义项目需求 选择正确的流程 选择正确的工具以及确保软件安全 为此 Perfo
  • 【Kettle】【使用Kettle存储数据】【csv_to_MySQL】【xlsx_to_MySQL】

    1 csv to MySQL csv xlsx表格内容如下 需要通过kettle导入MySQL中 在MySQL中创建相同与csv文件相同结构的表 kettle gt book 1 1CSV表输入设置 1 2表输出设置 注意这里如果预览数据
  • 基本增删改查(jquery Datatables+java)

    此例子展示基于Datatables的最新版1 10 5的服务器处理的增删改查 弹窗效果 结合Bootstrap显示表格 局部刷新数据 还应用了dom 自定义按钮 使表格和按钮看起来是一个整体 这个例子中还是用模板引擎 目的是为了掩饰在使用r
  • Linux编程语言glob函数,Linux中glob的用法

    bash中用于实现文件名 通配 通配符 1 任意长度的任意字符 a b aab ab a123b 可以 abc 不可以 2 任意单个字符 a b aab 可以 ab a12b abc 不可以 3 匹配指定范围内的任意单个字符 0 9 a z
  • AD altium designer 按照板子外形覆铜

    AD全是自学 遇到问题baidu 关于覆铜 之前一直看的视频 全都是选了覆铜自己画线 费劲还画不准确 尤其是异型板子还要直线曲线切来切去 其实大部分时候都是板子所有部分都要覆铜 今天终于找到如何不画线直接按照板子外形覆铜了 依次点选菜单栏的
  • Pycharm一个文件多次运行-allow parallel run

    在平时使用Pycharm的时候难免遇到同一个程序运行后 修改参数多次运行 我在平时使用的时候编写RabbitMQ的消费者程序 需要模拟多个消费者进行消费 因此一个程序需要运行数十个副本 在Pycharm里设置如下 View Appearan
  • Java 诊断神器 Arthas

    关于 Arthas Arthas 是一款开源在线 Java 诊断工具 采用命令行交互模式 支持 web 端在线诊断 同时提供丰富的 Tab 自动补全功能 进一步方便进行问题的定位和诊断 得益于 Arthas 强大且丰富的功能 让 Artha
  • mac charles4.0.2免费破解版安装

    mac charles4 0 2免费破解版安装 按相关步骤即可成功安装并使用 1 下载安装charles https www jianshu com p 4f0573f3c5db 2 安装成功之后相关配置 https www jianshu
  • python数据分页pandas,Python数据分析[3] - Pandas包

    Series Series是一个一维的向量 每个值都会有对应标签 该标签我们称之为Index Obj Series 4 5 7 8 Obj Out 5 0 4 1 5 2 7 3 8 dtype int64 Obj2 Series 4 5
  • 范数(norm) 几种范数的简单介绍

    转自 https blog csdn net a493823882 article details 80569888 https www zhihu com question 20473040 什么是范数 我们知道距离的定义是一个宽泛的概念