Привет, я новичок в Pytorch и тензорах torch. Я читаю код yolo_v3 и сталкиваюсь с этим вопросом. Я думаю, что это связано с тензорной индексацией с помощью ...
, но поиск ...
в Google затруднен, поэтому я решил задать его здесь. Код:
prediction = (
x.view(num_samples, self.num_anchors, self.num_classes + 5, grid_size, grid_size)
.permute(0, 1, 3, 4, 2)
.contiguous()
)
print (prediction.shape)
# Get outputs
x = torch.sigmoid(prediction[..., 0]) # Center x
y = torch.sigmoid(prediction[..., 1]) # Center y
w = prediction[..., 2] # Width
h = prediction[..., 3] # Height
pred_conf = torch.sigmoid(prediction[..., 4]) # Conf
pred_cls = torch.sigmoid(prediction[..., 5:]) # Cls pred.
Насколько я понимаю, прогноз будет тензором с формой [пакет, привязка, x_grid, y_grid, class]. Но что делает предсказание [..., x] (x = 0,1,2,3,4,5)? Это похоже на индексирование numpy [:, x]? Если да, то вычисление x, y, w, h, pred_conf и pred_cls не имеет смысла.