Start · Sprachen · PHP · Referenz · fann_get_rprop_delta_zero

fann_get_rprop_delta_zero

Funktion

Gibt den anfänglichen Deltawert (Schrittweite) für den RPROP-Trainingsalgorithmus eines neuronalen Netzes zurück.

Kategorie: misc

Signatur

fann_get_rprop_delta_zero(resource $ann): float

Beschreibung

fann_get_rprop_delta_zero liest den initialen Delta-Wert aus einem FANN-Netz (Fast Artificial Neural Network) aus. Dieser Wert bestimmt, mit welcher Schrittweite das RPROP-Training (Resilient Backpropagation) zu Beginn jedes Trainingslaufs startet.

Beim RPROP-Algorithmus wird für jeden Gewichtsparameter ein individueller Schrittweitenwert geführt, der sich adaptiv vergrößert oder verkleinert. Der Startwert (delta zero) legt fest, wie groß dieser Wert zu Beginn ist – also bevor das Training erste Anpassungen vorgenommen hat. Ein zu großer oder zu kleiner Startwert kann das Konvergenzverhalten negativ beeinflussen.

Der Standardwert liegt bei 0.1. Dieser Wert kann mit fann_set_rprop_delta_zero geändert werden. Die Funktion ist ausschließlich relevant, wenn als Trainingsalgorithmus FANN_TRAIN_RPROP oder eine seiner Varianten verwendet wird.

Die FANN-Erweiterung muss installiert und aktiviert sein, damit diese Funktion verfügbar ist.

Parameter

Name Typ Default Beschreibung
$ann Pflicht resource Eine gültige FANN-Netz-Ressource, die zuvor mit fann_create_standard, fann_create_sparse oder einer ähnlichen Funktion erzeugt wurde.

Rückgabewert

Typ
float
Beschreibung
Gibt den aktuell eingestellten anfänglichen RPROP-Deltawert als float zurück. Im Fehlerfall (z. B. ungültige Ressource) wird false zurückgegeben.

Beispiele

Anfängliche RPROP-Schrittweite auslesen

<?php
// Einfaches feedforward-Netz mit 2 Eingaben, 3 versteckten Neuronen und 1 Ausgabe erstellen
$ann = fann_create_standard(3, 2, 3, 1);

if ($ann) {
    $deltaZero = fann_get_rprop_delta_zero($ann);
    echo "Anfängliche RPROP-Schrittweite (delta zero): " . $deltaZero . PHP_EOL;
    fann_destroy($ann);
} else {
    echo "Fehler beim Erstellen des neuronalen Netzes." . PHP_EOL;
}
?>
Anfängliche RPROP-Schrittweite (delta zero): 0.1

Delta-Zero-Wert anpassen und auslesen

<?php
$ann = fann_create_standard(3, 2, 4, 1);

if ($ann) {
    // Trainingsalgorithmus auf RPROP setzen
    fann_set_training_algorithm($ann, FANN_TRAIN_RPROP);

    // Anfänglichen Deltawert auf 0.05 setzen
    fann_set_rprop_delta_zero($ann, 0.05);

    // Gesetzten Wert zur Überprüfung auslesen
    $deltaZero = fann_get_rprop_delta_zero($ann);
    echo "Gesetzter delta zero: " . $deltaZero . PHP_EOL;

    fann_destroy($ann);
}
?>
Gesetzter delta zero: 0.05

// Wichtig · Fallstricke

Hinweis: Diese Funktion ist nur verfügbar, wenn die FANN-Erweiterung (php-fann) installiert ist. Sie ist nicht Teil der PHP-Standardinstallation. Der Parameter hat nur Auswirkung, wenn als Trainingsalgorithmus FANN_TRAIN_RPROP oder FANN_TRAIN_RPROP-Varianten eingesetzt werden. Bei anderen Algorithmen wie FANN_TRAIN_BACKPROP wird dieser Wert ignoriert.

Der zulässige Wertebereich liegt zwischen fann_get_rprop_delta_min und fann_get_rprop_delta_max. Ein Wert außerhalb dieses Bereichs kann zu unvorhersehbarem Trainingsverhalten führen.