Shortcuts

Struct CrossEntropyLossOptions

Page Contents

Struct Documentation

struct CrossEntropyLossOptions

Options for the CrossEntropyLoss module.

Example:

CrossEntropyLoss
model(CrossEntropyLossOptions().ignore_index(-100).reduction(torch::kMean));

Public Types

typedef std::variant<enumtype::kNone, enumtype::kMean, enumtype::kSum> reduction_t

Public Functions

inline auto weight(const Tensor &new_weight) -> decltype(*this)

A manual rescaling weight given to each class.

If given, has to be a Tensor of size C

inline auto weight(Tensor &&new_weight) -> decltype(*this)
inline const Tensor &weight() const noexcept
inline Tensor &weight() noexcept
inline auto ignore_index(const int64_t &new_ignore_index) -> decltype(*this)

Specifies a target value that is ignored and does not contribute to the input gradient.

inline auto ignore_index(int64_t &&new_ignore_index) -> decltype(*this)
inline const int64_t &ignore_index() const noexcept
inline int64_t &ignore_index() noexcept
inline auto reduction(const reduction_t &new_reduction) -> decltype(*this)

Specifies the reduction to apply to the output. Default: Mean.

inline auto reduction(reduction_t &&new_reduction) -> decltype(*this)
inline const reduction_t &reduction() const noexcept
inline reduction_t &reduction() noexcept
inline auto label_smoothing(const double &new_label_smoothing) -> decltype(*this)

Specifies the amount of smoothing when computing the loss. Default: 0.0.

inline auto label_smoothing(double &&new_label_smoothing) -> decltype(*this)
inline const double &label_smoothing() const noexcept
inline double &label_smoothing() noexcept

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