pytorch入坑指南
不知道叫啥好一点
这个作者很懒,什么都没留下…
展开
-
tqdm pbar.set_postfix使用
参考代码来自https://blog.csdn.net/qq_32464407/article/details/81113373# -*- coding: utf-8 -*- from tqdm import tqdmfrom collections import OrderedDict total = 10000 #总迭代次数loss = totalwith tqdm(total=total, desc="进度条") as pbar: for i in range(total):原创 2020-12-08 10:01:16 · 16549 阅读 · 0 评论 -
torch.nn.BCELoss
import torchimport torch.nn as nna = torch.tensor([0.1,0.3,0.6])b = torch.tensor([0,0,1])loss = nn.BCELoss(reduction='sum')nn.BCELoss(a,b.float())得到输出结果为tensor(0.9729),其中BCELoss的计算过程为:首先这里的预测结果有3个,分别为(p1=0.1,p2=0.2,p3=0.6),对应的真实标签为(y1=0,y2=0,y3=1)原创 2020-11-24 20:18:14 · 711 阅读 · 2 评论 -
numpy expand_dims扩展维度
转载自:https://blog.csdn.net/qq_16949707/article/details/534189121 查看help其实感觉expand_dims(a, axis)就是在axis的那一个轴上把数据加上去,这个数据在axis这个轴的0位置。例如原本为一维的2个数据,axis=0,则shape变为(1,2),axis=1则shape变为(2,1)再例如 原本为 (2,3),axis=0,则shape变为(1,2,3),axis=1则shape变为(2,1,3).这里我的感觉是扩展转载 2020-09-23 16:17:46 · 660 阅读 · 0 评论 -
pytorch clamp()使用
参考:https://pytorch.org/docs/stable/generated/torch.clamp.html#torch.clamp使用格式torch.clamp(input, min, max, out=None)→ Tensor在最大值和最小值之间对input进行裁剪yi={min if xi<minxi if min≤xi≤maxmax if xi>max\mathrm{y}_{\mathrm{原创 2020-09-23 15:46:44 · 1503 阅读 · 0 评论 -
pytorch numel()统计tensor中包含的元素个数
参考:https://blog.csdn.net/schmiloo/article/details/107020922统计tensor张量包含的元素个数import torchx = torch.randn(3,3)print("number elements of x is ",x.numel())y = torch.randn(3,10,5)print("number elements of y is ",y.numel())输出内容:number elements of x is转载 2020-09-23 13:53:25 · 6119 阅读 · 0 评论 -
nms-非极大抑制
Pytorch实现nmsfrom torchvision.ops import nms keep = nms( torch.from_numpy(roi).cuda(), torch.from_numpy(score).cuda(), self.nms_thresh)关于NMS的参数说明:Parameters ---------- boxes : Tensor[N, 4]) boxes to perform NMS on. They are e原创 2020-09-23 13:50:25 · 767 阅读 · 0 评论 -
numpy where()函数
参考:https://www.cnblogs.com/massquantity/p/8908859.htmlnumpy.where() 有两种用法:1. np.where(condition, x, y)满足条件(condition),输出x,不满足输出y。如果是一维数组,相当于[xv if c else yv for (c,xv,yv) in zip(condition,x,y)]>>> aa = np.arange(10)>>> np.where(aa,1转载 2020-09-23 10:44:49 · 253 阅读 · 0 评论 -
numpy中的clip函数
参考:https://blog.csdn.net/qq1483661204/article/details/78150203Numpy 中clip函数的使用numpy.clip(a, a_min, a_max, out=None)[source]其中a是一个数组,后面两个参数分别表示最小和最大值,怎么用呢,老规矩,我们看代码:import numpy as npx=np.array([1,2,3,5,6,7,8,9])np.clip(x,3,8)Out[88]:array([3, 3, 3,原创 2020-09-23 10:31:26 · 519 阅读 · 0 评论 -
Bounding Box Regression
图示Pytorch代码(numpy.array)def loc2bbox(src_bbox, loc): if src_bbox.shape[0] == 0: return np.zeros((0, 4), dtype=loc.dtype) # 进行Bounding Box Regression # 首先计算P框,表示我们当前最优的框 src_bbox = src_bbox.astype(src_bbox.dtype, copy=False) s原创 2020-09-23 10:21:10 · 294 阅读 · 0 评论 -
pytorch中contigous深入理解
参考:https://zhuanlan.zhihu.com/p/64551412https://stackoverflow.com/questions/26998223/what-is-the-difference-between-contiguous-and-non-contiguous-arrays/26999092#26999092总结:tensor经过permute以及transform之后,对应数据的存储并没有发生改变,改变的是数据读出的方式,而view函数是从内存中(python 中多维原创 2020-09-23 09:27:58 · 470 阅读 · 0 评论 -
pytorch中的forward函数详细理解
文章目录前言forward 的使用forward 使用的解释前言最近在使用pytorch的时候,模型训练时,不需要使用forward,只要在实例化一个对象中传入对应的参数就可以自动调用 forward 函数即:forward 的使用class Module(nn.Module): def __init__(self): super(Module, self).__init__() # ...... def forward(self转载 2020-09-23 09:05:43 · 37866 阅读 · 1 评论 -
Truncated normal distribution()
Truncated normal distribution - WikipediaNormal Distribution 称为正态分布,也称为高斯分布,Truncated Normal Distribution一般翻译为截断正态分布,也有称为截尾正态分布。截断正态分布是截断分布(Truncated Distribution)的一种,那么截断分布是什么?截断分布是指,限制变量xx 取值范围(scope)的一种分布。例如,限制x取值在0到50之间,即{0<x<50}。因此,根据限制条件的不同,截转载 2020-09-22 19:13:28 · 2272 阅读 · 0 评论 -
pytorch环境搭建以及双cuda版本的搭建和切换
pytorch环境搭建以及双CUDA搭建和切换pytorch cuda,系统cuda版本对应关系版本查询版本对应关系说明安装显卡驱动安装CUDA软件下载cuda切换以及查看当前使用版本听师姐的话,查查对应版本,不查不知道,一查吓一跳,没想到还有人写的这么详细<https://www.cnblogs.com/Wanggcong/p/12625540.html>这里我再整理下pytorch cuda,系统cuda版本对应关系版本查询python版本直接which python或者p原创 2020-09-13 20:46:45 · 1832 阅读 · 1 评论 -
查看GPU的使用情况
方法1nvidia-smi显示窗口方法1升级版持续输出GPU占用率但是有时我们希望不仅知道那一固定时刻的GPU使用情况,我们希望一直掌握其动向,此时我们就希望周期性地输出,比如每 10s 就更新显示。 这时候就需要用到 watch命令,来周期性地执行nvidia-smi命令了。了解一下watch的功能:$ whatis watch watch(1) - execute a program periodically, showing output fullscreen12作原创 2020-09-13 20:36:14 · 1892 阅读 · 0 评论