范数和正则化

2023-10-27

概念

范数是具有“长度”概念的函数。在向量空间内,为所有的向量的赋予非零的增长度或者大小。不同的范数,所求的向量的长度或者大小是不同的。

举个例子,2维空间中,向量(3,4)的长度是5,那么5就是这个向量的一个范数的值,更确切的说,是欧式范数或者L2范数的值。

对于p-范数,如果

X=[x1,x2,...,xn]

那么向量x的p-范数就是

||X||p=(|x1|p+|x2|p+...+|xn|p)1p

当然用的最多的还是L1,L2范数

L1范数:

||X||1=(|x1|+|x2|+...+|xn|)

L2范数:

||X||2=(|x1|2+|x2|2+...+|xn|2)12

特别的,L0范数:指向量中非零元素的个数。无穷范数:指向量中所有元素的最大绝对值。

范数的意义

要更好的理解范数,就要从函数、几何与矩阵的角度去理解。
我们都知道,函数与几何图形往往是有对应的关系,这个很好想象,特别是在三维以下的空间内,函数是几何图像的数学概括,而几何图像是函数的高度形象化,
比如: f(x)=x 就是一条直线。
但当函数与几何超出三维空间时,就难以获得较好的想象,于是就有了映射的概念,映射表达的就是一个集合通过某种关系转为另外一个集合。通常数学书是先说映射,然后再讨论函数,这是因为函数是映射的一个特例。
为了更好的在数学上表达这种映射关系,(这里特指线性关系)于是就引进了矩阵。这里的矩阵就是表征上述空间映射的线性关系。矩阵就是某种关系的集中表达。
于是,我们可以这样理解,一个集合(向量),通过一种映射关系(矩阵),得到另外一个几何(另外一个向量)。那么向量的范数,就是表示这个原有集合的大小。比如维度。
而矩阵的范数,就是表示这个变化过程的大小的一个度量。
那么说到具体几几范数,其不过是定义不同,一个矩阵范数往往由一个向量范数引出,我们称之为算子范数,其物理意义都如我上述所述。

  • 0范数,
  • 1范数,为绝对值之和。
  • 2范数,就是通常意义上的模。
  • 无穷范数,就是取向量的最大值。

  • 具体怎么用,看不同的领域,看你来自计算机领域 用的比较多的就是迭代过程中收敛性质的判断,如果理解上述的意义,在计算机领域,一般迭代前后步骤的差值的范数表示其大小,常用的是二范数,差值越小表示越逼近实际值,可以认为达到要求的精度,收敛。

总结

范数就是度量向量的变化程度的。

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

范数和正则化 的相关文章

  • STM32的PWM相关函数TIM_SetCompare1的一定理解

    void TIM SetCompare1 TIM TypeDef TIMx uint16 t Compare1 Check the parameters assert param IS TIM LIST8 PERIPH TIMx Set t
  • CSMA/CA协议详解【计算机网络】

    读书笔记 2018年9月5日17 13 26 计算机网络 第六版 谢希仁 虽然CSMA CD协议已成功地应用于使用有线连接的局域网 但无线局域网能不能也使用CSMA CD协议呢 显然 这个协议的前一部分CSMA能够使用 在无线局域网中 在发
  • Java基础知识之笔记总结分享(超详细)

    给大家分享一篇我之前在学习java过程中的关于java基础部分的笔记 比较详细 内容也比较多 如有问题请指出以便修改 谢谢 篇幅较长建议收藏浏览 1 环境变量配置 JAVA HOME jdk路径 Path 要把jdk的bin目录路径 添加到
  • c++中setw()与setfill()的用法详情

    c 中setw 与setfill 的用法详情 在C 中 setw int n 用来控制输出间隔 例如 cout lt lt s lt
  • 使用pandas将numpy中的数组数据保存为csv文件的方法

    如果想保存numpy中的数组元素到一个文件中 在这方面 pandas工具的使用就会让工作方便很多 下面通过一个简单的小例子来演示一下 首先 创建numpy中的数组 import numpy as np import pandas as pd
  • C#知识结构

    对于一个工作多年的程序员而言 接口 反射 索引器 事件 委托这些耳熟能详的词汇 提起来别说多简单了 但是让老司机坐在那一个人拿起一支笔 把脑海中对C 知识结构进行梳理一下 大抵是写不了多内容的 原因是什么呢 是遗忘 当然不是 每天面对代码的
  • 两个数值互换的几种方式

    一 建立临时变量 1 普通的方法 思路简介 建立一个临时变量 通过temp a a b b temp来实现交换 缺点 这只是一种假交换 由于这只是在函数内部临时变量间的交换 所以当函数退出 函数栈帧被释放 原本的值并没有交换 具体方法 in
  • js声明函数(function)和变量(variable)不得不防的坑

    在工作中初级程序员容易忽略的细节就是函数和变量的声明都存在提升 而且他们之间的提升是不同的 请看下面的演示 function funa console log funa 函数声明 function funb console log funb
  • C++中函数返回引用

    1 返回引用和不返回引用的区别 下面两个代码是在类中的成员函数 而m data 变量为类的私有成员变量 int at return m data int at return m data 上面两个函数 第一个返回值是int的引用int 第二
  • ##顺序表 编码##

    ifndef LIST H define LIST H class List public List int size List 析构函数 void ClearList 清空线性表 bool ListEmpty 判断线性表是否为空 int
  • Lua封装延时执行函数

    延时执行函数 function delayTimeGuideEvent target func times 延迟时间执行函数 local delaytime 1 if times then delaytime times end getRo
  • 代数余子式与伴随矩阵

    关系 例题 伴随矩阵运算
  • matplotlib设置坐标轴

    在使用matplotlib模块时画坐标图时 往往需要对坐标轴设置很多参数 这些参数包括横纵坐标轴范围 坐标轴刻度大小 坐标轴名称等 在matplotlib中包含了很多函数 用来对这些参数进行设置 plt xlim plt ylim 设置横纵
  • 高数:第一章:函数、极限、连续

    文章目录 一 函数 1 函数的概念 基本初等函数 初等函数 2 函数的性质 函数四性态 1 单调性 2 奇偶性 3 导函数的奇偶性 3 周期性 4 有界性 5 对称性 3 基本不等式 4 开根要带绝对值 二 极限 1 极限的概念 数列极限
  • Go基础(包、变量和函数):开启Go语言之旅

    开启Go语言之旅 Go编程语言是一个开源项目 可以让程序员提高工作效率 Go是富有表现力 简洁 干净和高效的 其并发机制使编写充分利用多核和联网机器的程序变得容易 而其新颖类型系统则可实现灵活的模块化程序构建 快速编译为机器代码 但具有垃圾
  • [数据库] MySQL基础知识之日期判断及添加排序序号

    这篇文章主要记录MySQL中遇到的几个基础问题 希望文章对你有所帮助 包括 1 日期类型的判断 2 decode函数的替代方法 3 查询语句中添加一个排序的序号 4 子函数查询select a 1 日期类型判断 日期类型主要是 DATE 显
  • Java CGLIB动态代理示例

    1 CGLIB动态代理简介 JDK动态代理是利用反射机制生成一个实现代理接口的匿名类 在调用具体方法前调用InvokeHandler来处理 而cglib动态代理是利用asm开源包 对代理对象类的class文件加载进来 通过修改其字节码生成子
  • python 3.2 错误 ‘generator’ object has no attribute ‘next’

    下面是一段简单的示例 定义Generator函数 def func n for i in range n yield i 在for循环中输出 for i in func 3 print i 使用next 输出 r func 4 print
  • 为什么jmeter做压测叫做“并发”而不叫“并行”?

    昨天开测试方案评审会议 其中有一条性能测试需求为 测试100个用户同时进行查询 响应时间小于2s 方案中给出了100个用户并发操作的说明 关于 并发 二字 百思不得其解 首先 挖出脑袋里大学操作系统课堂上提到的概念 并发 在操作系统中 是指
  • js制作简易计算器

    实现2个输入框中输入整数后 点击第三个输入框能给出2个整数的加减乘除 提示 获取元素的值设置和获取方法为 例 赋值 document getElementById id value 1 取值 var document getElementB

随机推荐

  • 当前端的一次操作会调用多个有关联的后台接口

    由于历史原因 前端的一次操作需要调用多个后台接口 以前写的一般都是调用一个的 或者哪怕是多个 接口之间也不会有依赖 但最近做的需求里 前端一次操作需要调用两个后台接口 且这两个接口是有关联的 需要先调用接口A 再调用接口B 一开始直接写两个
  • Zabbix的客户端安装教程

    Zabbix的客户端安装教程 一 Zabbix客户端及其它相关介绍 二 Zabbix客户端安装步骤 三 测试安装结果 一 Zabbix客户端及其它相关介绍 1 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开
  • 12 papers to understand QA system with Deep Learning

    由于最近入手NLP任务 需要看一些paper 本文对最近两周看的paper做个总结 适用于有deep learning背景 希望了解NLP应用的同学 主要针对NLP方向 问答系统 QA 和翻译 Machine Translation 本文提
  • Java Thread Dump 分析

    诊断 Java 应用的过程中 我们经常要去看线程的相关信息 比如当前 JVM 有多少线程 从启动到现在已经创建过多少线程 线程的 CPU 使用率 线程是不是发生了死锁 CPU 使用率过高是哪些代码导致的 这要求我们对 Java 的线程必须有
  • 浏览器访问云服务器上图片的两种方法

    浏览器访问云服务器上图片的两种方法 1 Tomcat方式 打开tomcat的conf目录下配置文件server xml 添加以下内容
  • css 动画

    2d动画 div class layout div class dd style width 200px height 100px background color darkred div style width 100px height
  • linux内核I2C子系统详解——看这一篇就够了

    1 I2C通信协议 参考博客 I2C通信协议详解和通信流程分析 2 通过KXTF9 2050芯片分析I2C协议 参考博客 通过KXTF9 2050芯片分析I2C协议 3 I2C子系统框架 1 I2C子系统分为三层 I2C核心层 I2C适配器
  • 【Elasticsearch】 05-桶聚合查询详解及示例

    1 引言 Elasticsearch 是一款强大的分布式搜索和分析引擎 提供了丰富的聚合查询功能 桶聚合 Bucket Aggregations 是其中一种重要的聚合查询方式 本文将详细介绍 Elasticsearch 的桶聚合查询 并提供
  • 盘点全球8K视频直播的解决方案和成果

    8K是什么 简单来说 8K就是更加清晰的视觉体验 8K分辨率高达7680 4320像素 是4K分辨率的4倍 很多公司早就已经开始布局研发8K产品和技术了 就众视媒体小编ZL了解所得 早在2013年CES展会上 夏普就推出了全球首款85寸8K
  • AS把本地项目放到远程git和从远程git拉取项目到本地

    在开发项目过程中时常会将本地代码上传至远程git仓库 作为代码备份或者团队共同开发 本章讲解下 AS如何将本地项目上传至远程git和从远程git拉取项目到本地 一 AS将本地项目上传至远程git 准备步骤 1 先下载windows上的git
  • Anaconda3 离线安装和配置 Django-3.2.7 使用 MySQL-5.7 数据库

    Django文档 Settings Core Settings DATABASES 一节阐述了django与数据库交互配置的内容 先在 MySQL 5 7 版本数据库中创建一个名为 learning log db 的数据库 和名为 myus
  • VMware安装win10虚拟机教程及常见问题

    win10虚拟机安装教程 一 前言 1 准备VMware虚拟机 可自行到VMware官网 或 点击链接 下载正版VMware Workstation Pro 2 准备需要安装的win10镜像 下载地址 下载 Windows 10 3 文章不
  • Win10中Docker下修改mysql配置(主要修改utf-8字符集)

    由于要修改MySQL的配置文件 在命令行修改每次重启都会失效 所以想修改Docker下的mysql配置文件 这样将其再作为一个镜像保存 以后就可以一劳永逸了 在Win10的Docker容器中进行vi操作时 没有Linux中的vi操作那么顺畅
  • 程序员面试题精选100题(35)-两链表的第一个公共结点

    程序员面试题精选100题 35 两链表的第一个公共结点 题目 两个单向链表 找出它们的第一个公共结点 链表的结点定义为 struct ListNode int m nKey ListNode m pNext 分析 这是一道微软的面试题 微软
  • 用Java去掉中文中括号【】,你学废了吗?

    大家好 今天我有多了一个需求 甲方爸爸让我取中文括号里的文本 这可怎么办嘛 费劲心思 i get do not bb show me code ok String msg sadasd 的范德萨发斯蒂芬斯蒂芬 打撒所所多多 String r
  • C语言常用的8种滤波算法

    最近在研究一些滤波算法 扒了网络上的一些算法做了总结 并加入了自己思考和想法 梳理一些代码 仅供参考学习 1 滑动平均滤波 A 名称 递推平均滤波法 又称滑动平均滤波法 B 方法 把连续取得的N个采样值看成一个队列 队列的长度固定为N 每次
  • SSM框架整合之单表操作

    1 Spring和Spring MVC父子容器 概念介绍 1 在Spring与SpringMVC进行整合的时候 一般情况下我们会使用不同的配置文件来配置Spring和SpringMVC 因此我们的应用中会存在至少2个ApplicationC
  • 学了C++能做什么?

    相信很多人接触编程都是源于大学期间的那堂C 语言程序编程 但是这门课却只告诉了你编程语言是什么 却没告诉你要怎么去熟练掌握编程 所以 不可避免的是许多人在毕业前夕才发现虽然学会了C 但是好像却不知道能干什么 能找什么样的工作 能去什么样的公
  • 创建oracle的sequence 和 trigger

    Create sequence NOMAXvalue create sequence SEQ ADMIN ID minvalue 1 maxvalue 99999999 NOMAXvalue start with 1 increment b
  • 范数和正则化

    概念 范数是具有 长度 概念的函数 在向量空间内 为所有的向量的赋予非零的增长度或者大小 不同的范数 所求的向量的长度或者大小是不同的 举个例子 2维空间中 向量 3 4 的长度是5 那么5就是这个向量的一个范数的值 更确切的说 是欧式范数