小言_互联网的博客

python、pytorch语法汇总

529人阅读  评论(0)

np.empty() 函数的用法

np.empty()返回一个随机元素的矩阵,大小按照参数定义。

 

np.argmax()函数用法

返回的是输入列表中最大值的位置

它重要的特点就是在有多个最大值的情况下,只返回第一个出现的最大值的位置。

如果需要返回所有最大值的位置的话,np.where(a == np.max(a))

 

np.sum()函数的用法

Numpy中的sum函数,无参时,所有全加;axis=0,按列相加;axis=1,按行相加;

 

两个列表的差集

ret_list = [item for item in a_list if item not in b_list] + [item for item in b_list if item not in a_list]

 

np.permute()函数的用法

a=rand(2,3,4);  %这是一个三维数组,各维的长度分别为:2,3,4

%现在交换第一维和第二维:

permute(A,[2,1,3])  %变成3*2*4的矩阵

参考:https://blog.csdn.net/york1996/article/details/81876886

 

contiguous()函数的用法

view只能用在contiguous的variable上。如果在view之前用了transpose, permute等,需要用contiguous()来返回一个contiguous copy。 

一种可能的解释是: 
有些tensor并不是占用一整块内存,而是由不同的数据块组成,而tensor的view()操作依赖于内存是整块的,这时只需要执行contiguous()这个函数,把tensor变成在内存中连续分布的形式。

 

torch.tensor.view()函数的用法

torch.Tensor.view会返回具有相同数据但大小不同的新张量。 返回的张量必须有与原张量相同的数据和相同数量的元素,但可以有不同的大小。一个张量必须是连续contiguous()的才能被查看。类似于Numpy的np.reshape()。

 

np.clip(a, a_min, a_max, out=None)的用法

表示会给出一个区间,在区间之外的数字将被区间边缘数字替代,例如给定一个区间[0,1],小于0的将变成0,大于1则变成1,其余不变。

 

np.ravel()函数的用法

首先声明两者所要实现的功能是一致的(将多维数组降位一维),两者的区别在于返回拷贝(copy)还是返回视图(view),numpy.flatten()返回一份拷贝,对拷贝所做的修改不会影响(reflects)原始矩阵,而numpy.ravel()返回的是视图(view,也颇有几分C/C++引用reference的意味),会影响(reflects)原始矩阵。

 

np.argsort()[num]函数的用法

将x中的元素从小到大排列,提取其对应的index(索引),然后输出到y。当num<0时,np.argsort()[num]就是把数组y的元素反向输出,例如np.argsort()[-1]即输出x中最大值对应的index。


转载:https://blog.csdn.net/x550262257/article/details/101197299
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场