From 1351182fee4b646f2d80074a117a174915318195 Mon Sep 17 00:00:00 2001 From: FuexFollets Date: Sat, 10 Feb 2024 16:45:08 -0500 Subject: [PATCH] Fixed negative cases for neural network diff creation --- src/lexocraft/neural_network/neural_network_diff.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/lexocraft/neural_network/neural_network_diff.cpp b/src/lexocraft/neural_network/neural_network_diff.cpp index 9de205d..f255fe3 100644 --- a/src/lexocraft/neural_network/neural_network_diff.cpp +++ b/src/lexocraft/neural_network/neural_network_diff.cpp @@ -1,14 +1,17 @@ +#include +#include + #include +#include + #include -#include namespace lc { // Give each random float values between -1 and 1. NeuralNetwork::NeuralNetworkDiff::NeuralNetworkDiff( const std::vector& layer_sizes) : - weight_diffs(layer_sizes.size() - 1), - bias_diffs(layer_sizes.size() - 1), layer_sizes(layer_sizes) { - + weight_diffs(std::max(std::size_t {0}, layer_sizes.size() - 1)), + bias_diffs(std::max(std::size_t {0}, layer_sizes.size() - 1)), layer_sizes {layer_sizes} { for (std::size_t index {0}; index < layer_sizes.size() - 1; index++) { weight_diffs [index] = Eigen::MatrixXf::Random(layer_sizes [index + 1], layer_sizes [index]);