1 #ifndef STAN__AGRAD__REV__FUNCTIONS__BINARY_LOG_LOSS_HPP
2 #define STAN__AGRAD__REV__FUNCTIONS__BINARY_LOG_LOSS_HPP
14 class binary_log_loss_1_vari :
public op_v_vari {
16 binary_log_loss_1_vari(vari* avi) :
17 op_v_vari(-std::
log(avi->val_),avi) {
20 avi_->adj_ -= adj_ / avi_->val_;
24 class binary_log_loss_0_vari :
public op_v_vari {
26 binary_log_loss_0_vari(vari* avi) :
27 op_v_vari(-stan::math::
log1p(-avi->val_),avi) {
30 avi_->adj_ += adj_ / (1.0 - avi_->val_);
71 return var(
new binary_log_loss_0_vari(y_hat.
vi_));
73 return var(
new binary_log_loss_1_vari(y_hat.
vi_));
vari * vi_
Pointer to the implementation of this variable.
Independent (input) and dependent (output) variables for gradients.
fvar< T > binary_log_loss(const int y, const fvar< T > &y_hat)
fvar< T > log(const fvar< T > &x)
fvar< T > log1p(const fvar< T > &x)