-
a = (1,3)[True]
a
3a = (1,3)[False]
a
1True 返回后者, False 返回前者
-
for a, b in enumerate(torch.randn(4, 4), 2):
print(a)
print(b)2
tensor([ 0.5245, 0.5983, -0.4501, 0.6317])
3
tensor([ 0.8469, 0.6904, 0.7923, -0.1515])
4
tensor([-1.0094, -0.5022, -0.1177, 0.4782])
5
tensor([ 0.1024, 0.4733, -0.8040, 0.5486])遍历,a拿到后面的数字,b拿到前面的tensor
-
a = 0 or 1
a
1a = 2 or 1
a
2等号右边第一个数为真则直接输出,为假则输出后者
-
from itertools import product as product
for a, b in product(range(10), repeat=2):
print(a, b)0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
1 0
1 1
1 2
1 3
1 4
1 5
1 6
…
9 9 -
import torch
import torch.nn as nnw = torch.empty(3, 5)
nn.init.constant_(w, 0.3)tensor([[0.3000, 0.3000, 0.3000, 0.3000, 0.3000],
[0.3000, 0.3000, 0.3000, 0.3000, 0.3000],
[0.3000, 0.3000, 0.3000, 0.3000, 0.3000]]) -
cudnn.benchmark
(1)如果网络的输入数据维度或类型上变化不大,设置 torch.backends.cudnn.benchmark = true 可以增加运行效 率;
(2)如果网络的输入数据在每次 iteration 都变化的话,会 导致 cnDNN 每次都会去寻找一遍最优配置,这样反而会降低运行效率。
本条参考https://www.pytorchtutorial.com/when-should-we-set-cudnn-benchmark-to-true/
记录一些python和pytorch用法
最新推荐文章于 2024-08-05 15:36:53 发布