当前位置: 首页 > news >正文

PyTorch 统计属性-Tensor基本操作

  • 最小 min, 最大 max, 均值 mean,累加 sum,累乘 prod …

    >>> a = torch.arange(0,8).view(2,4).float()
    >>> a
    tensor([[0., 1., 2., 3.],[4., 5., 6., 7.]])>>> a.min()  	## 最小值:tensor(0.)
    >>> a.max()  	## 最大值:tensor(7.)>>> a.argmin()	## 最小值对应的 idx: tensor(0)
    >>> a.argmax()	## 最大值对应的 idx: tensor(7)>>> a.argmin(dim=1)	## 每行 dim=1 最小值对应的 idx: tensor([0, 0])  每行都是最前面的数最小
    >>> a.argmax(dim=1)	## 每行 dim=1 最大值对应的 idx: tensor([3, 3])  每行都是最后面的数最大>>> a.argmin(dim=1, keepdim=True)  ## 加 keepdim 可以保持原 a 维度
    tensor([[0],[0]])
    >>> a.argmax(dim=1, keepdim=True)  ## 加 keepdim 可以保持原 a 维度
    tensor([[3],[3]])>>> a.topk(3, dim=1)  ## k 大的 value 和对应的 idx
    torch.return_types.topk(
    values=tensor([[3., 2., 1.],[7., 6., 5.]]),
    indices=tensor([[3, 2, 1],[3, 2, 1]]))
    >>> a.topk(3, dim=1, largest=False)   ## k 小的:largest=False
    torch.return_types.topk(
    values=tensor([[0., 1., 2.],[4., 5., 6.]]),
    indices=tensor([[0, 1, 2],[0, 1, 2]]))>>> a.mean()  	## 平均值:tensor(3.5000)
    >>> a.sum()		## 累加值:tensor(28.)
    >>> a.prod()	## 累乘值:tensor(0.)
    
  • norm 范数,非 normalization 不是一个概念

    >>> a = torch.full([1], 8)  # tensor([1, 1, 1, 1, 1, 1, 1, 1])     
    >>> a.float().norm(1)  		#: tensor(8.)
    >>> a.float().norm(2)  		#: tensor(2.8284)>>> b = a.view(2,4) 		# tensor([[1, 1, 1, 1], [1, 1, 1, 1]])
    >>> b.float().norm(1)  		#: tensor(8.)	
    >>> a.float().norm(2)  		#: tensor(2.8284)>>> b.float().norm(1, dim=0)  # 指定 dim:0
    tensor([2., 2., 2., 2.])
    >>> b.float().norm(1, dim=1)  # 指定 dim: 1
    tensor([4., 4.])
    
    • .norm() 时可能出现的 RuntimeError 解决方案:加 .float() -> a.float.norm()
      >>> a.norm()
      Traceback (most recent call last):File "<stdin>", line 1, in <module>File "D:\Tutu.Python\lib\site-packages\torch\tensor.py", line 389, in normreturn torch.norm(self, p, dim, keepdim, dtype=dtype)File "D:\Tutu.Python\lib\site-packages\torch\functional.py", line 1290, in normreturn _VF.frobenius_norm(input, dim=(), keepdim=keepdim)  # type: ignore
      RuntimeError: Can only calculate the mean of floating types. Got Long instead.
      

  • B站视频参考资料

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • ARM-V9 RME(Realm Management Extension)系统架构之系统安全能力的MPAM
  • android 异屏同显二.
  • 方差,标准差,CPK指标数据分析 (使用SQL做数据分析)
  • Mongodb使用$<identifier>过滤更新数组元素
  • 高通Android开关机动画踩坑简单记录
  • 【QT】QSettings读取中文乱码
  • 小程序外卖开发中的关键技术与实现方法
  • Android WebSocket长连接的实现
  • winhttp劫持dll
  • 文字悬停效果
  • PCIE的吞吐量如何计算和记忆诀窍?
  • Calibre版图验证工具调用_笔记
  • 下载kibana-7.10.2教程
  • 恭喜!X医生斩获英国伦敦大学学院访问学者邀请函
  • Java工程师入职指南:从准备到适应新工作的每一步
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • AWS实战 - 利用IAM对S3做访问控制
  • github从入门到放弃(1)
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • iOS编译提示和导航提示
  • IOS评论框不贴底(ios12新bug)
  • Java Agent 学习笔记
  • Java超时控制的实现
  • QQ浏览器x5内核的兼容性问题
  • Webpack 4 学习01(基础配置)
  • 解析 Webpack中import、require、按需加载的执行过程
  • 入门级的git使用指北
  • 学习HTTP相关知识笔记
  • 一个JAVA程序员成长之路分享
  • 移动端 h5开发相关内容总结(三)
  • 找一份好的前端工作,起点很重要
  • Nginx实现动静分离
  • puppet连载22:define用法
  • ​学习一下,什么是预包装食品?​
  • # C++之functional库用法整理
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • #DBA杂记1
  • (33)STM32——485实验笔记
  • (a /b)*c的值
  • (Charles)如何抓取手机http的报文
  • (poj1.3.2)1791(构造法模拟)
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (web自动化测试+python)1
  • (创新)基于VMD-CNN-BiLSTM的电力负荷预测—代码+数据
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (三)终结任务
  • (转)3D模板阴影原理
  • (转)Unity3DUnity3D在android下调试
  • *ST京蓝入股力合节能 着力绿色智慧城市服务
  • .ai域名是什么后缀?
  • .bat文件调用java类的main方法
  • .Net 6.0--通用帮助类--FileHelper
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .NET 的程序集加载上下文
  • .php文件都打不开,打不开php文件怎么办