mirror of
https://github.com/augustin64/projet-tipe
synced 2025-02-02 19:39:39 +01:00
Add nn io documentation
This commit is contained in:
parent
55db9985a5
commit
defb14f6cd
28
doc/nn.md
Normal file
28
doc/nn.md
Normal file
@ -0,0 +1,28 @@
|
||||
# Réseau de neurones simple [lien](/src/mnist)
|
||||
|
||||
## Lecture/ Écriture du réseau de neurone:
|
||||
Le fichier est au format IDX (format binaire)
|
||||
Les informations sont stockées de la manière suivante:
|
||||
|
||||
### Header
|
||||
type | nom de la variable | commentaire
|
||||
:---:|:---:|:---:
|
||||
uint32_t|magic_number|Variable servant à vérifier que le fichier n'est pas corrompu, vaut 2023
|
||||
uint32_t|network->nb_layers|Nombre de couches du réseau
|
||||
uint32_t|network->layers[0]->nb_neurons|Nombre de neurones de la première couche
|
||||
uint32_t|network->layers[1]->nb_neurons|Nombre de neurones de la deuxième couche
|
||||
uint32_t|...|-
|
||||
uint32_t|network->layers[n-1]->nb_neurons|Nombre de neurones de la n-ième couche
|
||||
uint32_t|network->layers[1]->nb_neurons|Nombre de neurones de la deuxième couche
|
||||
|
||||
|
||||
### Corps
|
||||
Et ensuite, pour chaque couche, chaque neurone:
|
||||
type | nom de la variable | commentaire
|
||||
:---:|:---:|:---:
|
||||
float|activation|importance du neurone dans le réseau
|
||||
float|biais|biais du neurone
|
||||
float|weights[0]|poids vers le premier neurone de la couche suivante
|
||||
float|weights[1]|poids vers le deuxième neurone de la couche suivante
|
||||
float|...|-
|
||||
float|weights[n-1]|poids vers le dernier neurone de la couche suivante
|
@ -1,6 +1,7 @@
|
||||
#ifndef DEF_NEURON_H
|
||||
#define DEF_NEURON_H
|
||||
|
||||
// Neurone
|
||||
typedef struct Neuron {
|
||||
float* weights; // Liste de tous les poids des arêtes sortants du neurone
|
||||
float bias; // Caractérise le bias du neurone
|
||||
@ -12,12 +13,13 @@ typedef struct Neuron {
|
||||
float last_back_bias; // Dernier changement de back_bias
|
||||
} Neuron;
|
||||
|
||||
|
||||
// Couche du réseau de neurones
|
||||
typedef struct Layer {
|
||||
int nb_neurons; // Nombre de neurones dans la couche (longueur du tableau ci-dessous)
|
||||
Neuron** neurons; // Tableau des neurones dans la couche
|
||||
} Layer;
|
||||
|
||||
// Réseau de neurones
|
||||
typedef struct Network {
|
||||
int nb_layers; // Nombre de couches dans le réseau neuronal (longueur du tableau ci-dessous)
|
||||
Layer** layers; // Tableau des couches dans le réseau neuronal
|
||||
|
Loading…
Reference in New Issue
Block a user