jacobian

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 10f02ed24559e9f9f766c32f59798a4a42d3c90f
parent 44a9c19580266d50103ebda35a796008a3d888a0
Author: David Freifeld <freifeld.david@gmail.com>
Date:   Mon,  7 Sep 2020 16:02:49 -0700

Fixed basic RNN runtime errors

Diffstat:
Msrc/rnn.cpp | 13++-----------
1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/src/rnn.cpp b/src/rnn.cpp @@ -76,26 +76,17 @@ void RNN::initialize() void RNN::feedforward() { - printf("Enter\n"); for (int i = 0; i < length-1; i++) { - printf("Enter len loop\n"); + *layers[i].contents = ((*layers[i].s) * (*layers[i].rec_weights)); for (int j = 0; j < layers[i].contents->rows(); j++) { - printf("Enter loop\n"); if (strcmp(layers[i].activation_str, "linear") == 0) break; for (int k = 0; k < layers[i].contents->cols(); k++) { - printf("Enter inside\n"); (*layers[i].dZ)(j,k) = layers[i].activation_deriv((*layers[i].contents)(j,k)); - printf("dZ updated.\n"); (*layers[i].contents)(j,k) = layers[i].activation((*layers[i].contents)(j,k)); - printf("activated layer\n"); } } - std::cout << ((*layers[i].s) * (*layers[i].rec_weights)) << "\n\n"; - std::cout << ((*layers[i].contents) * (*layers[i].weights)); - *layers[i+1].contents = ((*layers[i].s) * (*layers[i].rec_weights)) + ((*layers[i].contents) * (*layers[i].weights)); - printf("Next layer updated\n"); + *layers[i+1].contents = ((*layers[i].contents) * (*layers[i].weights)); *layers[i+1].contents += *layers[i+1].bias; - printf("Next layer's bias updated\n"); } for (int j = 0; j < layers[length-1].contents->rows(); j++) { if (strcmp(layers[length-1].activation_str, "linear") == 0) break;