码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【深度学习】torch.argmax()函数讲解 | pytorch


    文章目录

    • 前言
    • 一、两个维度的张量使用torch.argmax()函数
    • 二、三个维度的张量使用torch.argmax()函数


    前言

    这篇博客也是属于看了好久一直没写,终于写了。

    一、两个维度的张量使用torch.argmax()函数

    我们直接先举一个例子吧,我们随机生成一个2X3的张量:

    import torch
    x = torch.rand(2, 3)
    print(x)
    y0 = torch.argmax(x, dim=0)
    print(y0)
    y1 = torch.argmax(x, dim=1)
    print(y1)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    结果:
    在这里插入图片描述
    1)dim=0时,返回每一列最大值的索引
    2)dim=1时,返回每一行最大值的索引


    也许看了之后你会说,那这个函数有啥用?我们来看一个实际的例子:
    在深度学习的基础内容中,有一篇内容时使用类似Lenet-5这个网络来识别Fashion-Mnist数据集,里面有讲到这个函数:

    output = model(b_x)  
    output = output.cuda()
    pre_lab = torch.argmax(output,1)
    
    • 1
    • 2
    • 3

    之前我们这里设置的batch_size是64,所以将64张输入到网络中,会得到一个64X10的张量,其中64是指有64张图片,10是指10个衣服类别的概率(Fashion—Mnist数据集一共有10个种类的衣服)
    在这里插入图片描述

    在使用torch.argmax(output,1)后,会返回一个长度为64的一维向量,其中64个元素分别代表这64张照片被识别出的某个物品:
    在这里插入图片描述

    二、三个维度的张量使用torch.argmax()函数

    我们依然还是举一个简单明了的例子:

    import torch
    
    x = torch.rand(3,2,3)
    print(x)
    
    • 1
    • 2
    • 3
    • 4

    在这里插入图片描述

    然后在每一个维度使用这个argmax函数

    y0 = torch.argmax(x, dim=0)
    print(y0)
    y1 = torch.argmax(x, dim=1)
    print(y1)
    y2 = torch.argmax(x, dim=2)
    print(y2)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述
    1)dim=0时,返回每个元素在各个通道最大值的索引号
    2)dim=1时,返回n排每一列最大值的索引(n是通道数)
    3)dim=2时,返回n排每一排最大值的索引(n是通道数)

  • 相关阅读:
    全面理解DAO-Web3.0基本组织形式
    集群中增加数据节点与退役数据节点
    java计算机毕业设计旅游系统源码+系统+mysql数据库+lw文档
    最长的斐波那契子序列的长度
    go开发环境安装和小知识
    【ROS入门】机器人系统仿真——相关组件以及URDF集成Rviz
    Maya 2023安装步骤(附安装、汉化、图文教程)
    【图神经网络学习笔记系列】01-Graph Attention Networks 学习笔记
    D - Project Planning--二分
    三:MySQL数据库管理事务、存储引擎(2)
  • 原文地址:https://blog.csdn.net/weixin_46274756/article/details/128112328
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号