automatic commit
[folded-ctf.git] / loss_machine.cc
index c596de6..63a65cc 100644 (file)
@@ -40,47 +40,6 @@ void LossMachine::get_loss_derivatives(SampleSet *samples,
     }
     break;
 
-  case LOSS_EV_REGULARIZED:
-    {
-      scalar_t sum_pos = 0, sum_sq_pos = 0, nb_pos = 0, m_pos, v_pos;
-      scalar_t sum_neg = 0, sum_sq_neg = 0, nb_neg = 0, m_neg, v_neg;
-
-      for(int n = 0; n < samples->nb_samples(); n++) {
-        if(samples->label(n) > 0) {
-          sum_pos += responses[n];
-          sum_sq_pos += sq(responses[n]);
-          nb_pos += 1.0;
-        }
-        else if(samples->label(n) < 0) {
-          sum_neg += responses[n];
-          sum_sq_neg += sq(responses[n]);
-          nb_neg += 1.0;
-        }
-      }
-
-      m_pos = sum_pos / nb_pos;
-      v_pos = sum_sq_pos/(nb_pos - 1) - sq(sum_pos)/(nb_pos * (nb_pos - 1));
-
-      scalar_t loss_pos = nb_pos * exp(v_pos/2 - m_pos);
-
-      m_neg = sum_neg / nb_neg;
-      v_neg = sum_sq_neg/(nb_neg - 1) - sq(sum_neg)/(nb_neg * (nb_neg - 1));
-
-      scalar_t loss_neg = nb_neg * exp(v_neg/2 + m_neg);
-
-      for(int n = 0; n < samples->nb_samples(); n++) {
-        if(samples->label(n) > 0) {
-          derivatives[n] =
-            ( - 1/nb_pos + (responses[n] - m_pos)/(nb_pos - 1)) * loss_pos;
-        } else if(samples->label(n) < 0) {
-          derivatives[n] =
-            (   1/nb_neg + (responses[n] - m_neg)/(nb_neg - 1)) * loss_neg;
-        }
-      }
-    }
-
-    break;
-
   case LOSS_HINGE:
     {
       for(int n = 0; n < samples->nb_samples(); n++) {