本文整理匯總了Python中torch.all方法的典型用法代碼示例。如果您正苦於以下問題:Python torch.all方法的具體用法?Python torch.all怎麽用?Python torch.all使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類torch
的用法示例。
在下文中一共展示了torch.all方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: get_gt_priorities
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def get_gt_priorities(self, gt_bboxes):
"""Get gt priorities according to their areas.
Smaller gt has higher priority.
Args:
gt_bboxes (Tensor): Ground truth boxes, shape (k, 4).
Returns:
Tensor: The priority of gts so that gts with larger priority is
more likely to be assigned. Shape (k, )
"""
gt_areas = bboxes_area(gt_bboxes)
# Rank all gt bbox areas. Smaller objects has larger priority
_, sort_idx = gt_areas.sort(descending=True)
return sort_idx
示例2: test_max_iou_assigner
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_max_iou_assigner():
self = MaxIoUAssigner(
pos_iou_thr=0.5,
neg_iou_thr=0.5,
)
bboxes = torch.FloatTensor([
[0, 0, 10, 10],
[10, 10, 20, 20],
[5, 5, 15, 15],
[32, 32, 38, 42],
])
gt_bboxes = torch.FloatTensor([
[0, 0, 10, 9],
[0, 10, 10, 19],
])
gt_labels = torch.LongTensor([2, 3])
assign_result = self.assign(bboxes, gt_bboxes, gt_labels=gt_labels)
assert len(assign_result.gt_inds) == 4
assert len(assign_result.labels) == 4
expected_gt_inds = torch.LongTensor([1, 0, 2, 0])
assert torch.all(assign_result.gt_inds == expected_gt_inds)
示例3: test_max_iou_assigner_with_ignore
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_max_iou_assigner_with_ignore():
self = MaxIoUAssigner(
pos_iou_thr=0.5,
neg_iou_thr=0.5,
ignore_iof_thr=0.5,
ignore_wrt_candidates=False,
)
bboxes = torch.FloatTensor([
[0, 0, 10, 10],
[10, 10, 20, 20],
[5, 5, 15, 15],
[30, 32, 40, 42],
])
gt_bboxes = torch.FloatTensor([
[0, 0, 10, 9],
[0, 10, 10, 19],
])
gt_bboxes_ignore = torch.Tensor([
[30, 30, 40, 40],
])
assign_result = self.assign(
bboxes, gt_bboxes, gt_bboxes_ignore=gt_bboxes_ignore)
expected_gt_inds = torch.LongTensor([1, 0, 2, -1])
assert torch.all(assign_result.gt_inds == expected_gt_inds)
示例4: test_max_iou_assigner_with_empty_gt
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_max_iou_assigner_with_empty_gt():
"""Test corner case where an image might have no true detections."""
self = MaxIoUAssigner(
pos_iou_thr=0.5,
neg_iou_thr=0.5,
)
bboxes = torch.FloatTensor([
[0, 0, 10, 10],
[10, 10, 20, 20],
[5, 5, 15, 15],
[32, 32, 38, 42],
])
gt_bboxes = torch.FloatTensor([])
assign_result = self.assign(bboxes, gt_bboxes)
expected_gt_inds = torch.LongTensor([0, 0, 0, 0])
assert torch.all(assign_result.gt_inds == expected_gt_inds)
示例5: test_approx_iou_assigner
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_approx_iou_assigner():
self = ApproxMaxIoUAssigner(
pos_iou_thr=0.5,
neg_iou_thr=0.5,
)
bboxes = torch.FloatTensor([
[0, 0, 10, 10],
[10, 10, 20, 20],
[5, 5, 15, 15],
[32, 32, 38, 42],
])
gt_bboxes = torch.FloatTensor([
[0, 0, 10, 9],
[0, 10, 10, 19],
])
approxs_per_octave = 1
approxs = bboxes
squares = bboxes
assign_result = self.assign(approxs, squares, approxs_per_octave,
gt_bboxes)
expected_gt_inds = torch.LongTensor([1, 0, 2, 0])
assert torch.all(assign_result.gt_inds == expected_gt_inds)
示例6: test_approx_iou_assigner_with_empty_gt
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_approx_iou_assigner_with_empty_gt():
"""Test corner case where an image might have no true detections."""
self = ApproxMaxIoUAssigner(
pos_iou_thr=0.5,
neg_iou_thr=0.5,
)
bboxes = torch.FloatTensor([
[0, 0, 10, 10],
[10, 10, 20, 20],
[5, 5, 15, 15],
[32, 32, 38, 42],
])
gt_bboxes = torch.FloatTensor([])
approxs_per_octave = 1
approxs = bboxes
squares = bboxes
assign_result = self.assign(approxs, squares, approxs_per_octave,
gt_bboxes)
expected_gt_inds = torch.LongTensor([0, 0, 0, 0])
assert torch.all(assign_result.gt_inds == expected_gt_inds)
示例7: test_center_region_assigner
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_center_region_assigner():
self = CenterRegionAssigner(pos_scale=0.3, neg_scale=1)
bboxes = torch.FloatTensor([[0, 0, 10, 10], [10, 10, 20, 20], [8, 8, 9,
9]])
gt_bboxes = torch.FloatTensor([
[0, 0, 11, 11], # match bboxes[0]
[10, 10, 20, 20], # match bboxes[1]
[4.5, 4.5, 5.5, 5.5], # match bboxes[0] but area is too small
[0, 0, 10, 10], # match bboxes[1] and has a smaller area than gt[0]
])
gt_labels = torch.LongTensor([2, 3, 4, 5])
assign_result = self.assign(bboxes, gt_bboxes, gt_labels=gt_labels)
assert len(assign_result.gt_inds) == 3
assert len(assign_result.labels) == 3
expected_gt_inds = torch.LongTensor([4, 2, 0])
assert torch.all(assign_result.gt_inds == expected_gt_inds)
shadowed_labels = assign_result.get_extra_property('shadowed_labels')
# [8, 8, 9, 9] in the shadowed region of [0, 0, 11, 11] (label: 2)
assert torch.any(shadowed_labels == torch.LongTensor([[2, 2]]))
# [8, 8, 9, 9] in the shadowed region of [0, 0, 10, 10] (label: 5)
assert torch.any(shadowed_labels == torch.LongTensor([[2, 5]]))
# [0, 0, 10, 10] is already assigned to [4.5, 4.5, 5.5, 5.5].
# Therefore, [0, 0, 11, 11] (label: 2) is shadowed
assert torch.any(shadowed_labels == torch.LongTensor([[0, 2]]))
示例8: process
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def process(self):
mat = loadmat(self.raw_paths[0])['Problem'][0][0][2].tocsr().tocoo()
row = torch.from_numpy(mat.row).to(torch.long)
col = torch.from_numpy(mat.col).to(torch.long)
edge_index = torch.stack([row, col], dim=0)
edge_attr = torch.from_numpy(mat.data).to(torch.float)
if torch.all(edge_attr == 1.):
edge_attr = None
size = torch.Size(mat.shape)
if mat.shape[0] == mat.shape[1]:
size = None
num_nodes = mat.shape[0]
data = Data(edge_index=edge_index, edge_attr=edge_attr, size=size,
num_nodes=num_nodes)
if self.pre_transform is not None:
data = self.pre_transform(data)
torch.save(self.collate([data]), self.processed_paths[0])
示例9: test_backward_for_binary_cmd_with_autograd
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_backward_for_binary_cmd_with_autograd(cmd, backward_one):
"""
Test .backward() on local tensors wrapped in an AutogradTensor
(It is useless but this is the most basic example)
"""
a = torch.tensor([[3.0, 2], [-1, 2]], requires_grad=True)
b = torch.tensor([[1.0, 2], [3, 2]], requires_grad=True)
a = syft.AutogradTensor().on(a)
b = syft.AutogradTensor().on(b)
a_torch = torch.tensor([[3.0, 2], [-1, 2]], requires_grad=True)
b_torch = torch.tensor([[1.0, 2], [3, 2]], requires_grad=True)
c = getattr(a, cmd)(b)
c_torch = getattr(a_torch, cmd)(b_torch)
ones = torch.ones(c.shape)
ones = syft.AutogradTensor().on(ones)
c.backward(ones if backward_one else None)
c_torch.backward(torch.ones(c_torch.shape))
assert (a.child.grad == a_torch.grad).all()
assert (b.child.grad == b_torch.grad).all()
示例10: test_backward_for_binary_cmd_with_inputs_of_different_dim_and_autograd
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_backward_for_binary_cmd_with_inputs_of_different_dim_and_autograd(cmd, shapes):
"""
Test .backward() on local tensors wrapped in an AutogradTensor
(It is useless but this is the most basic example)
"""
a_shape, b_shape = shapes
a = torch.ones(a_shape, requires_grad=True)
b = torch.ones(b_shape, requires_grad=True)
a = syft.AutogradTensor().on(a)
b = syft.AutogradTensor().on(b)
a_torch = torch.ones(a_shape, requires_grad=True)
b_torch = torch.ones(b_shape, requires_grad=True)
c = getattr(a, cmd)(b)
c_torch = getattr(a_torch, cmd)(b_torch)
ones = torch.ones(c.shape)
ones = syft.AutogradTensor().on(ones)
c.backward(ones)
c_torch.backward(torch.ones(c_torch.shape))
assert (a.child.grad == a_torch.grad).all()
assert (b.child.grad == b_torch.grad).all()
示例11: test_backward_for_remote_unary_cmd_local_autograd
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_backward_for_remote_unary_cmd_local_autograd(workers, cmd):
"""
Test .backward() on unary methods on remote tensors using
implicit wrapping
"""
alice = workers["alice"]
a = torch.tensor([0.3, 0.2, 0], requires_grad=True)
a = a.send(alice, local_autograd=True)
a_torch = torch.tensor([0.3, 0.2, 0], requires_grad=True)
c = getattr(a, cmd)()
c_torch = getattr(a_torch, cmd)()
ones = torch.ones(c.shape).send(alice)
ones = syft.AutogradTensor().on(ones)
c.backward(ones)
c_torch.backward(torch.ones_like(c_torch))
# Have to do .child.grad here because .grad doesn't work on Wrappers yet
assert (a.grad.get() == a_torch.grad).all()
示例12: test_backward_for_fix_prec_binary_cmd_with_autograd
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_backward_for_fix_prec_binary_cmd_with_autograd(cmd, backward_one):
"""
Test .backward() on Fixed Precision Tensor for a single operation
"""
a = torch.tensor([[3.0, 2], [-1, 2]], requires_grad=True).fix_prec()
b = torch.tensor([[1.0, 2], [3, 2]], requires_grad=True).fix_prec()
a = syft.AutogradTensor().on(a)
b = syft.AutogradTensor().on(b)
a_torch = torch.tensor([[3.0, 2], [-1, 2]], requires_grad=True)
b_torch = torch.tensor([[1.0, 2], [3, 2]], requires_grad=True)
c = getattr(a, cmd)(b)
c_torch = getattr(a_torch, cmd)(b_torch)
ones = torch.ones(c.shape).fix_prec()
ones = syft.AutogradTensor().on(ones)
c.backward(ones if backward_one else None)
c_torch.backward(torch.ones(c_torch.shape))
assert (a.grad.float_prec() == a_torch.grad).all()
assert (b.grad.float_prec() == b_torch.grad).all()
示例13: test_get_float_prec_on_autograd_tensor
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_get_float_prec_on_autograd_tensor(workers):
bob, alice, james = workers["bob"], workers["alice"], workers["james"]
x = torch.tensor([0.1, 1.0])
x2 = syft.AutogradTensor().on(x.fix_prec())
assert (x2.float_precision() == x).all()
x = torch.tensor([1, 2])
x2 = x.share(bob, alice, crypto_provider=james)
x2 = syft.AutogradTensor().on(x2)
assert (x2.get() == x).all()
x = torch.tensor([0.1, 1.0])
x2 = x.fix_precision()
x2 = x2.share(bob, alice, crypto_provider=james, requires_grad=True)
assert (x2.get().float_precision() == x).all()
示例14: test_inplace_send_get
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_inplace_send_get(workers):
bob = workers["bob"]
tensor = torch.tensor([1.0, -1.0, 3.0, 4.0])
tensor_ptr = tensor.send_(bob)
assert tensor_ptr.id == tensor.id
assert id(tensor_ptr) == id(tensor)
tensor_back = tensor_ptr.get_()
assert tensor_back.id == tensor_ptr.id
assert tensor_back.id == tensor.id
assert id(tensor_back) == id(tensor)
assert id(tensor_back) == id(tensor)
assert (tensor_back == tensor).all()
示例15: test_gradient_send_recv
# 需要導入模塊: import torch [as 別名]
# 或者: from torch import all [as 別名]
def test_gradient_send_recv(workers):
"""Tests that gradients are properly sent and received along
with their tensors."""
bob = workers["bob"]
# create a tensor
x = torch.tensor([1, 2, 3, 4.0], requires_grad=True)
# create gradient on tensor
x.sum().backward(th.tensor(1.0))
# save gradient
orig_grad = x.grad
# send and get back
t = x.send(bob).get()
# check that gradient was properly serde
assert (t.grad == orig_grad).all()