modifica formula multilayer mettendo i pesi di pout nel calcolo del gradiente e cambiando il segno del calcolo dell'errore
This commit is contained in:
@@ -48,8 +48,8 @@ double randomico() {
|
||||
}
|
||||
|
||||
double randomico_positivo() {
|
||||
// Genero numeri nell'intervallo [0,1]
|
||||
return ((double)(rand() % 101 * 0.01));
|
||||
// Genero numeri nell'intervallo [-1,3]
|
||||
return ((double)rand() / RAND_MAX) * 10.0f - 1.0f;
|
||||
}
|
||||
|
||||
double funzione_sigmoide(Percettrone p, double x1, double x2) {
|
||||
@@ -61,9 +61,9 @@ double funzione_sigmoide(Percettrone p, double x1, double x2) {
|
||||
}
|
||||
|
||||
void correggi_pesi(Percettrone *p, double grad_w1, double grad_w2, double grad_bias) {
|
||||
(*p).bias = (*p).bias - (grad_bias * (*p).lre);
|
||||
(*p).w1 = (*p).w1 - (grad_w1 * (*p).lre);
|
||||
(*p).w2 = (*p).w2 - (grad_w2 * (*p).lre);
|
||||
(*p).bias = (*p).bias + (grad_bias * (*p).lre);
|
||||
(*p).w1 = (*p).w1 + (grad_w1 * (*p).lre);
|
||||
(*p).w2 = (*p).w2 + (grad_w2 * (*p).lre);
|
||||
}
|
||||
|
||||
void stampa_layer_uno(Percettrone p, double y, int x1, int x2, double errore)
|
||||
|
||||
Reference in New Issue
Block a user