Я работаю над трубопроводом с выводом OCR, используя пользовательский декодер Pytorch, который возвращает переменную, называемую весами, и включает файл models_faster_dan.py, определяющий модель. Первоначально я звонил .size () на весах, подобных этим: print (wewss.size ()), что дало мне ошибку: AttributeError: «Torch.Size 'Object не имеет атрибута« размер ». Я узнал, что веса на самом деле является объектом Torch.Size, и вызов .size () на нем недействителен, потому что сама Torch.Size представляет форму. FAR: < /p>
Добавлены проверки, чтобы проверить, не являются ли веса нет перед его использованием. < /p>
Пробое заменить. Замените его на torch.zeros (1, device = output.device), чтобы избежать сбоев. /> for i, dec_layer in enumerate(self.decoder_layers):
output, weights, weights_self = dec_layer(...)
if weights is None:
weights = torch.zeros(1, device=output.device) # prevent .size() crash
else:
print(f"[DEBUG] Decoder layer {i}: weights type: {type(weights)}, shape: {len(weights)}")
< /code>
Ошибка происходит по адресу: < /p>
if not keep_all_weights and weights is not None:
weights = weights.reshape(weights.size(0), weights.size(1), features_size[2], features_size[3])
Подробнее здесь: https://stackoverflow.com/questions/796 ... ibute-size
Attributeerror: 'torch.size' объект не имеет атрибута 'размер' [закрыто] ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Почему я должен не допустить данных от Torch.Size ([50]) до Torch.Size ([50, 1])
Anonymous » » в форуме Python - 0 Ответы
- 21 Просмотры
-
Последнее сообщение Anonymous
-