diff --git a/neuralNetworkTests.c b/neuralNetworkTests.c index 2d151f5..589c3ae 100644 --- a/neuralNetworkTests.c +++ b/neuralNetworkTests.c @@ -9,22 +9,22 @@ static void prepareNeuralNetworkFile(const char *path, const NeuralNetwork nn) { - FILE *file = fopen(path, "wb"); - if (!file) return; + FILE *file = fopen(path, "wb"); //File wird zum schreiben binär geöffnet + if (!file) return; //falls fopen nicht geht -> fail // 1) Header-Tag WORTGENAU (OHNE Nullterminator) schreiben - fwrite(FILE_HEADER_STRING, sizeof(char), strlen(FILE_HEADER_STRING), file); - + fwrite(FILE_HEADER_STRING, sizeof(char), strlen(FILE_HEADER_STRING), file); //header wird in Datei geschrieben + //load module erkennt ob die datei ein gültiges Neural-Network ist // 2) Layer-Daten im Format, das loadModel() erwartet - for (unsigned int i = 0; i < nn.numberOfLayers; ++i) + for (unsigned int i = 0; i < nn.numberOfLayers; ++i) //Neuronales Netz Layer für Layer speichern { const Layer *lay = &nn.layers[i]; - int inputDim = (int)lay->weights.cols; // cols == inputDimension + int inputDim = (int)lay->weights.cols; // cols == inputDimension liest die dimensionen der gewichtsmatrix aus int outputDim = (int)lay->weights.rows; // rows == outputDimension if (i == 0) { - // Erstes Paar: input und output schreiben + // Erstes Paar: input und output schreiben (für Layer 0) fwrite(&inputDim, sizeof(int), 1, file); fwrite(&outputDim, sizeof(int), 1, file); } else {