Signatur
Beschreibung
fann_get_quickprop_decay liefert den aktuell eingestellten Decay-Faktor (Zerfallsrate) für den Quickprop-Trainingsalgorithmus eines FANN-Netzwerks (Fast Artificial Neural Network). Der Decay-Faktor ist ein kleiner negativer Wert, der dazu dient, die Gewichte im Netz leicht zu bestrafen und so ein unbegrenztes Anwachsen der Verbindungsgewichte zu verhindern.
Quickprop ist ein schneller Backpropagation-Algorithmus, der im Gegensatz zum Standard-Gradientenabstieg Informationen über die zweite Ableitung der Fehlerfunktion nutzt. Der Decay-Wert wirkt als Regularisierungsterm: Je größer der Betrag dieses (negativen) Wertes, desto stärker werden große Gewichte bestraft und desto kleiner bleiben die erlernten Gewichte insgesamt.
Der Standardwert beträgt typischerweise -0.0001. Um den Wert zu verändern, wird fann_set_quickprop_decay verwendet. Diese Funktion ist Teil der FANN-PHP-Erweiterung und setzt eine installierte fann-Bibliothek voraus.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $ann Pflicht | resource | Eine gültige FANN-Netzwerk-Ressource, die zuvor mit fann_create_standard oder einer ähnlichen Funktion erstellt wurde. |
Rückgabewert
false zurückgegeben.Beispiele
Aktuellen Quickprop-Decay-Faktor auslesen
<?php
// Neuronales Netz mit 2 Eingaben, 1 versteckter Schicht (3 Neuronen) und 1 Ausgabe erstellen
$ann = fann_create_standard(3, 2, 3, 1);
if ($ann) {
// Quickprop-Trainingsalgorithmus setzen
fann_set_training_algorithm($ann, FANN_TRAIN_QUICKPROP);
// Aktuellen Decay-Faktor auslesen
$decay = fann_get_quickprop_decay($ann);
echo "Quickprop Decay-Faktor: " . $decay . PHP_EOL;
fann_destroy($ann);
} else {
echo "Fehler beim Erstellen des neuronalen Netzes." . PHP_EOL;
}
?>
Decay-Faktor auslesen und anpassen
<?php
$ann = fann_create_standard(3, 2, 4, 1);
if ($ann) {
fann_set_training_algorithm($ann, FANN_TRAIN_QUICKPROP);
// Vorherigen Wert sichern
$oldDecay = fann_get_quickprop_decay($ann);
echo "Alter Decay-Faktor: " . $oldDecay . PHP_EOL;
// Neuen, stärkeren Decay-Faktor setzen
fann_set_quickprop_decay($ann, -0.0005);
// Neuen Wert prüfen
$newDecay = fann_get_quickprop_decay($ann);
echo "Neuer Decay-Faktor: " . $newDecay . PHP_EOL;
fann_destroy($ann);
}
?>
// Wichtig · Fallstricke
Hinweis: Diese Funktion ist nur verfügbar, wenn die PHP-FANN-Erweiterung installiert und aktiviert ist. Der Decay-Faktor wird nur beim Quickprop-Algorithmus (FANN_TRAIN_QUICKPROP) berücksichtigt; bei anderen Trainingsalgorithmen wie FANN_TRAIN_RPROP oder FANN_TRAIN_BACKPROP hat dieser Wert keinen Einfluss.
Der Decay-Wert sollte stets negativ sein. Ein Wert von 0.0 deaktiviert den Decay-Effekt, während zu große negative Werte dazu führen können, dass das Netz schlechter konvergiert, da die Gewichte zu stark bestraft werden.