From 16d06ec0db241261d0d030722e440206ed8aad77 Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Mon, 29 Feb 2016 21:54:12 +0000
Subject: [PATCH] stuff

---
 src/blas.c |   23 ++++++++++++++++++++---
 1 files changed, 20 insertions(+), 3 deletions(-)

diff --git a/src/blas.c b/src/blas.c
index d7948bb..978f1ed 100644
--- a/src/blas.c
+++ b/src/blas.c
@@ -115,13 +115,30 @@
     for(i = 0; i < N; ++i) Y[i*INCY] = X[i*INCX];
 }
 
-void smooth_l1_cpu(int n, float *pred, float *truth, float *delta)
+void smooth_l1_cpu(int n, float *pred, float *truth, float *delta, float *error)
 {
     int i;
     for(i = 0; i < n; ++i){
         float diff = truth[i] - pred[i];
-        if(fabs(diff) > 1) delta[i] = diff;
-        else delta[i] = (diff > 0) ? 1 : -1;
+        float abs_val = fabs(diff);
+        if(abs_val < 1) {
+            error[i] = diff * diff;
+            delta[i] = diff;
+        }
+        else {
+            error[i] = 2*abs_val - 1;
+            delta[i] = (diff < 0) ? -1 : 1;
+        }
+    }
+}
+
+void l2_cpu(int n, float *pred, float *truth, float *delta, float *error)
+{
+    int i;
+    for(i = 0; i < n; ++i){
+        float diff = truth[i] - pred[i];
+        error[i] = diff * diff;
+        delta[i] = diff;
     }
 }
 

--
Gitblit v1.10.0