当前位置:网站首页>Pytoch learning (4)
Pytoch learning (4)
2022-07-04 19:49:00 【Master Ma】
1、range and arange
establish 1 D tensor
Here is an example :
z = torch.range(1,10)
print(z,z.shape)
z = torch.arange(1,10)
print(z,z.shape)
torch.range(1,10) and torch.arange(10) All produced a 1 An array of dimensions , The type is <class ‘torch.Tensor’>
The difference between them is
range The resulting length is 10-1+1=10 By 1 To 10 Composed of 1 D tensor , type float
and arange What happened was 10-1=9 from 1-9 Composed of 1 Dimensional tensor , type int
Their outputs are 
It should be noted that ,range The first value cannot be defaulted ,arange Sure , Default 0, The output is :tensor([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) torch.Size([10])
# z = torch.range(10)
# print(z,z.shape)
z = torch.arange(10)
print(z,z.shape)

Two 、repeat Copy tensor
z = torch.arange(10)
print(z,z.shape)
z = torch.arange(10).repeat(10,1)
print(z,z.shape)

z = torch.arange(10).repeat(10,2,1)
3、 ... and 、View: Change the tensor shape
View The mechanism fills shapes with data sequentially , Be careful , The amount of data required for a defined shape must = The amount of data that can be provided
such as :[10x10] The tensor of can .view(1,1,10,10) It's fine too .view(5,20) But not .view(10,11) , Once the amount of data is different , The error of invalid data will be reported
Code example
z = torch.arange(10)
print(z,z.shape)
z = torch.arange(10).repeat(10,1)
print(z,z.shape)
z = torch.arange(10).repeat(10,1).view(1,1,10,10)
print(z,z.shape)

z = torch.arange(10).view(1,10).repeat(10,2)
print(z,z.shape)

Four 、Concat and add operation
Concat: Tensor splicing , It expands the dimensions of two tensors ,
add: Add tensor , Tensors are added directly , It doesn't expand dimensions .
In general ,feature maps There are two ways to combine , One is the corresponding addition of elements , abbreviation add, The other is to pile up feature maps , abbreviation concatenate.
hypothesis feature map 1 The dimensions are B1∗ C1 ∗ H1 ∗ W1
feature map 2 The dimensions are B2 ∗ C2 ∗ H2 ∗ W2
1) stay add Under the circumstances , It is the addition of two four-dimensional matrices by elements , Then at this time, we need the two matrix dimensions to be all equal . And the dimension of the matrix remains unchanged after adding .
for example 26 * 26 * 256 and 26 * 26 * 256 Add up , The results are 26 * 26 * 256
2) stay concatenate Under the circumstances , We superimpose the two matrices in a certain dimension , This requires that the dimension of this connection can be different , But it must be equal in other dimensions . After stack , A dimension will increase , Is the addition of a dimension on two matrices . such as , We are Channel This dimension connects two matrices , So the new matrix dimension is B2 ∗ ( C2 + C1 )∗ H2 ∗ W2
for example 26 * 26 * 256 and 26 * 26 * 512 Add up , The result is 26 * 26 * 768
边栏推荐
猜你喜欢

Introduction to polyfit software

Pointnet/Pointnet++点云数据集处理并训练

BCG 使用之CBCGPTabWnd控件(相当于MFC TabControl)

TCP waves twice, have you seen it? What about four handshakes?

Siemens HMI download prompts lack of panel image solution

FPGA timing constraint sharing 01_ Brief description of the four steps

mysql中explain语句查询sql是否走索引,extra中的几种类型整理汇总

Oracle with as ora-00903: invalid table name multi report error

TCP两次挥手,你见过吗?那四次握手呢?

在线SQL转Excel(xls/xlsx)工具
随机推荐
1011 World Cup Betting (20 分)(PAT甲级)
BCG 使用之CBCGPProgressDlg进度条使用
Lm10 cosine wave homeopathic grid strategy
应用实践 | 蜀海供应链基于 Apache Doris 的数据中台建设
BCG 使用之CBCGPTabWnd控件(相当于MFC TabControl)
在线文本行固定长度填充工具
Oracle with as ora-00903: invalid table name multi report error
Basic use of kotlin
HDU 1097 A hard puzzle
Multi table operation inner join query
C语言-入门-基础-语法-流程控制(七)
双冒号作用运算符以及命名空间详解
Stream stream
1007 Maximum Subsequence Sum(25 分)(PAT甲级)
欧拉函数
Hough Transform 霍夫变换原理
牛客小白月赛7 谁是神箭手
BCG 使用之CBCGPProgressDlgCtrl进度条使用
Opencv functions and methods related to binary threshold processing are summarized for comparison and use
Siemens HMI download prompts lack of panel image solution