Deep Learning Algorithm Implementations 1.0.0
C++ implementations of fundamental deep learning algorithms
|
Huber Loss with autograd support. More...
#include <losses.hpp>
Public Member Functions | |
HuberLoss (T delta=1.0, const std::string &reduction="mean") | |
Constructor. | |
Variable< T > | forward (const Variable< T > &predictions, const Variable< T > &targets) override |
Forward pass: compute Huber loss. | |
![]() | |
virtual | ~AutogradLoss ()=default |
Variable< T > | operator() (const Variable< T > &predictions, const Variable< T > &targets) |
Convenience operator for computing loss. | |
Huber Loss with autograd support.
Combines MSE and MAE for robustness to outliers.
Huber(y_pred, y_true) = { 0.5 * (y_pred - y_true)² if |y_pred - y_true| <= delta delta * |y_pred - y_true| - 0.5 * delta² otherwise }
Definition at line 207 of file losses.hpp.
|
inlineexplicit |
Constructor.
delta | Threshold for switching between MSE and MAE |
reduction | Type of reduction ('mean', 'sum', 'none') |
Definition at line 214 of file losses.hpp.
|
overridevirtual |
Forward pass: compute Huber loss.
predictions | Predicted values |
targets | Target values |
Implements dl::loss::AutogradLoss< T >.
Definition at line 166 of file losses.cpp.