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

P5 PyTorch 合并与分割

前言:

    

目录

  1.     cat
  2.    stack
  3.    split
  4.     chunk

一  cat(合并)

      

      df = torch.cat([df1,df2,df3],dim=0)

      要合并的维度可以不相等,其它维度大小必须一样

      应用场景:

      比如有两个统计数据[class,students,scores]

      A = [4,32,8],    4个班级,每班32人,每个人8个科目的考试成绩

      B=  [5,32,8]    5个班级,每班32人,每个人8个科目的考试成绩

      现在合并成一个张量

       C= [9,32,8]  9个班级,每班32人,每个人8个科目的考试成绩

       

   1.2  例2 

        【students,score】

         df1 = [4,4]: 4个学生,4科成绩

        df2 = [4,4] 4个学生,4科成绩

         df3 = [4,4] 4个学生,4科成绩

        通过cat([df1,df2,df3], dim=0)后得到

         df =[12,4] 12个学生,4科成绩

 

 

 1.3  例3

    

    torch.Size([4, 3, 32, 32])


二  stack(合并)

     原理:

     在指定的维度前面创建一个新的维度,需要stack的张量必须shape一样

    

    如上两个班级

    df1=[32,8] 32个人,8科成绩

    df2=[32,8] 32个人,8 科成绩

    最后df的shape 如下:

    torch.Size([2, 32, 8])

    大小不一样出错例子


   三 split (拆分)

     按指定的长度,在指定的维度上面进行拆分。

   

   比如 4个班,每班8人,3科成绩

   torch.Size([1, 8, 3])  1个重点班
   torch.Size([3, 8, 3])  3个普通班


四 chunk 拆分

     按指定的数量,在指定的维度上面拆分

  6个班,每班8个学生,3科成绩.

  拆分成两组,每组3个班,

 输出:

torch.Size([3, 8, 3]) torch.Size([3, 8, 3])

    

相关文章:

  • Transformer实现以及Pytorch源码解读(四)-Encoder层
  • 归并排序 - 排序链表
  • Vulnhub靶机:LAMPSECURITY_ CTF5
  • 一分钟玩转RPA——word批量转pdf
  • mongodb-cxx-driver使用
  • HackTheBox Soccer 通过WebSockets进行SQL注入,Doas与Dstat插件提权
  • Java到底能干什么?实事求是地说一下
  • mybatis的配置与简单使用
  • lua与c#交互篇
  • B+树详解,一次就懂
  • R语言ggplot2可视化:错误条(error bar)在图形上是水平的、但是在图例中是垂直的、使用ggstance包纠正过来(图例图标也是水平的)
  • 【LeetCode】2011. 执行操作后的变量值
  • python基础(14):模块
  • Mac使用CMake编译stasm
  • Docker容器中安装Jenkins
  • 第5章 管理端(Vue)布局面的重构与路由的全局存储
  • 斩获数亿元B轮融资,这家Tier 1抢跑「L2/L2+」主战场
  • 【C++】类和对象(C++门槛)
  • 2023北京福祉展,残疾人用品展,中国国际康复博览会
  • 怎么给视频加水印?