Pytorch: 'torch.nn' não tem atributo 'TripletMarginLoss'

Criado em 10 abr. 2017  ·  3Comentários  ·  Fonte: pytorch/pytorch

Chamando

triplet_loss = nn.TripletMarginLoss()

resulta em:

AttributeError: module 'torch.nn' has no attribute 'TripletMarginLoss'

mesmo com

import torch.nn as nn

PR relacionado que adicionou introduziu TripletMarginLoss: # 1165

A solução agora é usar F.triplet_margin_loss diretamente, onde F é import torch.nn.functional as F .

high priority

Comentários muito úteis

Olá, algo semelhante acontece quando ligo para m = nn.Upsample(scale_factor=2, mode='bilinear')
AttributeError: o objeto 'módulo' não tem atributo 'Upsample'
Mas posso chamar nn.UpsamplingBilinear2d sucesso.
Além disso, existe algum plano para implementar o Cubic Upsample ~

Todos 3 comentários

Outra solução alternativa seria adicionar from torch.nn.modules.loss import TripletMarginLoss .

fixado no mestre. estará no próximo lançamento.

Olá, algo semelhante acontece quando ligo para m = nn.Upsample(scale_factor=2, mode='bilinear')
AttributeError: o objeto 'módulo' não tem atributo 'Upsample'
Mas posso chamar nn.UpsamplingBilinear2d sucesso.
Além disso, existe algum plano para implementar o Cubic Upsample ~

Esta página foi útil?
0 / 5 - 0 avaliações