12#ifndef MLPACK_METHODS_ANN_LOSS_FUNCTION_HUBER_LOSS_HPP
13#define MLPACK_METHODS_ANN_LOSS_FUNCTION_HUBER_LOSS_HPP
33 typename InputDataType = arma::mat,
34 typename OutputDataType = arma::mat
46 HuberLoss(
const double delta = 1.0,
const bool mean =
true);
54 template<
typename InputType,
typename TargetType>
55 typename InputType::elem_type
Forward(
const InputType& input,
56 const TargetType& target);
65 template<
typename InputType,
typename TargetType,
typename OutputType>
67 const TargetType& target,
76 double Delta()
const {
return delta; }
78 double&
Delta() {
return delta; }
81 bool Mean()
const {
return mean; }
83 bool&
Mean() {
return mean; }
88 template<
typename Archive>
93 OutputDataType outputParameter;
106#include "huber_loss_impl.hpp"
The Huber loss is a loss function used in robust regression, that is less sensitive to outliers in da...
bool & Mean()
Set the value of reduction type.
OutputDataType & OutputParameter() const
Get the output parameter.
double & Delta()
Set the value of delta.
void Backward(const InputType &input, const TargetType &target, OutputType &output)
Ordinary feed backward pass of a neural network.
InputType::elem_type Forward(const InputType &input, const TargetType &target)
Computes the Huber Loss function.
bool Mean() const
Get the value of reduction type.
double Delta() const
Get the value of delta.
OutputDataType & OutputParameter()
Modify the output parameter.
HuberLoss(const double delta=1.0, const bool mean=true)
Create the HuberLoss object.
void serialize(Archive &ar, const unsigned int)
Serialize the layer.
Linear algebra utility functions, generally performed on matrices or vectors.
The core includes that mlpack expects; standard C++ includes and Armadillo.