Shortcuts

Struct TripletMarginLossImpl

Inheritance Relationships

Base Type

Struct Documentation

struct torch::nn::TripletMarginLossImpl : public torch::nn::Cloneable<TripletMarginLossImpl>

Creates a criterion that measures the triplet loss given an input tensors :math:x1, :math:x2, :math:x3 and a margin with a value greater than :math:0.

This is used for measuring a relative similarity between samples. A triplet is composed by a, p and n (i.e., anchor, positive examples and negative examples respectively). The shapes of all input tensors should be :math:(N, D). See https://pytorch.org/docs/master/nn.html#torch.nn.TripletMarginLoss to learn about the exact behavior of this module.

See the documentation for torch::nn::TripletMarginLossOptions class to learn what constructor arguments are supported for this module.

Example:

TripletMarginLoss model(TripletMarginLossOptions().margin(3).p(2).eps(1e-06).swap(false));

Public Functions

TripletMarginLossImpl(const TripletMarginLossOptions &options_ = {})
void reset() override

reset() must perform initialization of all members with reference semantics, most importantly parameters, buffers and submodules.

void pretty_print(std::ostream &stream) const override

Pretty prints the TripletMarginLoss module into the given stream.

Tensor forward(const Tensor &anchor, const Tensor &positive, const Tensor &negative)

Public Members

TripletMarginLossOptions options

The options with which this Module was constructed.

Docs

Access comprehensive developer documentation for PyTorch

View Docs

Tutorials

Get in-depth tutorials for beginners and advanced developers

View Tutorials

Resources

Find development resources and get your questions answered

View Resources