人工智能中常用的L1和L2范数是什么?如何实现它?
ztj100 2024-11-03 16:15 11 浏览 0 评论
专栏推荐
正文
L1范式
就是将向量中所有元素的绝对值相加求和
以上是对a、b、c三个向量求L1范式,都是8
L2范式
L2是所有元素平方和然后再开根号
还可以在向量的指定维度求范式,需要知道的是,在向量的哪个维度取范式,那么求出来的范式的维度就是原始向量消掉所取维度后的向量维度。
B的shape为(2,4)
对b在1维度上求范式,那么也就是b的维度为消掉原始b在1维度上的4,那么它的维度就是(2)
最大值man、最小值min、均值mean,累乘prod,求和sum,最大值索引argmax
求最小值索引argmin
如果argmax和argmin没有参数,那么它会求将一个向量拉伸开,也就是拉成dim=0之后求下标
如果要是想让向量不伸展开,那么我们可以再指定维度上求最大最小的索引
a. argmin(dim=0)这个表示再dim=0的维度上求最小值得索引
如图所示,求dim=1维度上的最大值,因为a得维度为(4,5)所以求最大值之后dim为1了,keepdim=True的意思就是说要保持维度,如上所示求最大值之后的dim仍为2
取最大或者最小的几个值
a.topk(2,dim=1)表示求a在dim=1维度上最大的两个值
b. topk(1,dim=1)表示求a在dim=1维度上最大的一个值
如果要是想要求最小的几个值可以
a.topk(2,dim=1,largest=False)
直接求第几个(从1开始)最小的值
如果不keepdim,那么输出的维度为[4]
比较>,>=,<,<=,!=,==会对向量的每个元素进行判断比较
Torch.equal(a,b)等价于torch.equal(a,b)
会对a,b向量的每一个维度进行比较,相等则返回1,不等返回0
tensor的操作
x = torch.randn(4, 3,1)
print(x)
max_value, max_idx = torch.max(x, dim=2)#我们约定0为第一维度,1为第二维度,2为第三维度
#print(max_value)
sum_x = torch.sum(x, dim=2)
print(sum_x)
归并操作此类操作会使输出形状小于输入形状,并可以沿着某一维度进行指定操作
以上大多数函数都有一个参数dim,用来指定这些操作是在哪个维度上执行的。关于dim(对应于Numpy中的axis)的解释众说纷纭,这里提供一个简单的记忆方式:
假设输入的形状是(m, n, k)
· 如果指定dim=0,输出的形状就是(1, n, k)或者(n, k)
· 如果指定dim=1,输出的形状就是(m, 1, k)或者(m, k)
· 如果指定dim=2,输出的形状就是(m, n, 1)或者(m, n)
size中是否有"1",取决于参数keepdim,keepdim=True会保留维度1。注意,以上只是经验总结,并非所有函数都符合这种形状变化方式,如cumsum。
逐元素比较操作
· t.max(tensor):返回tensor中最大的一个数
· t.max(tensor,dim):指定维上最大的数,返回tensor和下标
· t.max(tensor1, tensor2): 比较两个tensor相比较大的元素
相关推荐
- Whoosh,纯python编写轻量级搜索工具
-
引言在许多应用程序中,搜索功能是至关重要的。Whoosh是一个纯Python编写的轻量级搜索引擎库,可以帮助我们快速构建搜索功能。无论是在网站、博客还是本地应用程序中,Whoosh都能提供高效的全文搜...
- 如何用Python实现二分搜索算法(python二分法查找代码)
-
如何用Python实现二分搜索算法二分搜索(BinarySearch)是一种高效的查找算法,适用于在有序数组中快速定位目标值。其核心思想是通过不断缩小搜索范围,每次将问题规模减半,时间复杂度为(O...
- 路径扫描 -- dirsearch(路径查找器怎么使用)
-
外表干净是尊重别人,内心干净是尊重自己,干净,在今天这个时代,应该是一种极高的赞美和珍贵。。。----网易云热评一、软件介绍Dirsearch是一种命令行工具,可以强制获取web服务器中的目录和文件...
- 78行Python代码帮你复现微信撤回消息!
-
来源:悟空智能科技本文约700字,建议阅读5分钟。本文基于python的微信开源库itchat,教你如何收集私聊撤回的信息。...
- 从零开始学习 Python!2《进阶知识》 Python进阶之路
-
欢迎来到Python学习的进阶篇章!如果你说已经掌握了基础语法,那么这篇就是你开启高手之路的大门。我们将一起探讨面向对象编程...
- 白帽黑客如何通过dirsearch脚本工具扫描和收集网站敏感文件
-
一、背景介绍...
- Python之txt数据预定替换word预定义定位标记生成word报告(四)
-
续接Python之txt数据预定替换word预定义定位标记生成word报告(一)https://mp.toutiao.com/profile_v4/graphic/preview?pgc_id=748...
- Python——字符串和正则表达式中的反斜杠('\')问题详解
-
在本篇文章里小编给大家整理的是关于Python字符串和正则表达式中的反斜杠('\')问题以及相关知识点,有需要的朋友们可以学习下。在Python普通字符串中在Python中,我们用'\'来转义某些普通...
- Python re模块:正则表达式综合指南
-
Python...
- python之re模块(python re模块sub)
-
re模块一.re模块的介绍1.什么是正则表达式"定义:正则表达式是一种对字符和特殊字符操作的一种逻辑公式,从特定的字符中,用正则表达字符来过滤的逻辑。(也是一种文本模式;)2、正则表达式可以帮助我们...
- MySQL、PostgreSQL、SQL Server 数据库导入导出实操全解
-
在数字化时代,数据是关键资产,数据库的导入导出操作则是连接数据与应用场景的桥梁。以下是常见数据库导入导出的实用方法及代码,包含更多细节和特殊情况处理,助你应对各种实际场景。一、MySQL数据库...
- Zabbix监控系统系列之六:监控 mysql
-
zabbix监控mysql1、监控规划在创建监控项之前要尽量考虑清楚要监控什么,怎么监控,监控数据如何存储,监控数据如何展现,如何处理报警等。要进行监控的系统规划需要对Zabbix很了解,这里只是...
- mysql系列之一文详解Navicat工具的使用(二)
-
本章内容是系列内容的第二部分,主要介绍Navicat工具的使用。若查看第一部分请见:...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- Whoosh,纯python编写轻量级搜索工具
- 如何用Python实现二分搜索算法(python二分法查找代码)
- 路径扫描 -- dirsearch(路径查找器怎么使用)
- 78行Python代码帮你复现微信撤回消息!
- 从零开始学习 Python!2《进阶知识》 Python进阶之路
- 白帽黑客如何通过dirsearch脚本工具扫描和收集网站敏感文件
- Python之txt数据预定替换word预定义定位标记生成word报告(四)
- 假期苦短,我用Python!这有个自动回复拜年信息的小程序
- Python——字符串和正则表达式中的反斜杠('\')问题详解
- Python re模块:正则表达式综合指南
- 标签列表
-
- idea eval reset (50)
- vue dispatch (70)
- update canceled (42)
- order by asc (53)
- spring gateway (67)
- 简单代码编程 贪吃蛇 (40)
- transforms.resize (33)
- redisson trylock (35)
- 卸载node (35)
- np.reshape (33)
- torch.arange (34)
- node卸载 (33)
- npm 源 (35)
- vue3 deep (35)
- win10 ssh (35)
- exceptionininitializererror (33)
- vue foreach (34)
- idea设置编码为utf8 (35)
- vue 数组添加元素 (34)
- std find (34)
- tablefield注解用途 (35)
- python str转json (34)
- java websocket客户端 (34)
- tensor.view (34)
- java jackson (34)