From d410c970e699a2a7ac257ef7b08f9d0a6de76fdf Mon Sep 17 00:00:00 2001 From: lisyarus Date: Fri, 21 Jan 2022 12:11:38 +0300 Subject: [PATCH] Add an utility function to compute l2 loss in ml --- libs/ml/include/psemek/ml/neural_net/loss.hpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 libs/ml/include/psemek/ml/neural_net/loss.hpp diff --git a/libs/ml/include/psemek/ml/neural_net/loss.hpp b/libs/ml/include/psemek/ml/neural_net/loss.hpp new file mode 100644 index 00000000..31f242dd --- /dev/null +++ b/libs/ml/include/psemek/ml/neural_net/loss.hpp @@ -0,0 +1,19 @@ +#pragma once + +#include + +#include + +namespace psemek::ml +{ + + template + T l2_loss(std::vector const & x1, std::vector const & x2) + { + T value = T{0}; + for (std::size_t i = 0; i < x1.size(); ++i) + value += geom::sqr(x1[i] - x2[i]) / T{2}; + return value; + } + +}