Start · Sprachen · PHP · Referenz · fann_get_cascade_output_change_fraction

fann_get_cascade_output_change_fraction

Funktion

Gibt den Cascade-Output-Change-Fraction-Wert eines FANN-Netzes zurück, der steuert, wann das Cascade-Training den Output-Layer-Trainingsprozess abbricht.

Kategorie: misc

Signatur

fann_get_cascade_output_change_fraction(resource $ann): float

Beschreibung

fann_get_cascade_output_change_fraction ist Teil der FANN-Erweiterung (Fast Artificial Neural Network Library) für PHP und liefert den aktuell gesetzten Output-Change-Fraction-Wert eines neuronalen Netzes, das mit dem Cascade-Correlation-Algorithmus trainiert wird.

Der Output-Change-Fraction-Wert ist ein Schwellenwert (typischerweise ein kleiner Fließkommawert wie 0.01), der bestimmt, wann das Output-Training als abgeschlossen gilt. Konkret: Wenn der mittlere quadratische Fehler (MSE) sich innerhalb einer definierten Anzahl von Epochen (festgelegt durch fann_get_cascade_output_stagnation_epochs) um weniger als diesen Bruchteil verändert, wird das Output-Training beendet.

Dieser Wert ist besonders relevant beim Einsatz von Cascade-Correlation-Netzwerken, bei denen neue versteckte Neuronen schrittweise hinzugefügt werden. Ein zu hoher Wert führt zu frühzeitigem Abbruch und möglicherweise schlechtem Training; ein zu niedriger Wert verlängert das Training unnötig.

Zum Setzen dieses Wertes dient die Funktion fann_set_cascade_output_change_fraction.

Parameter

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

Rückgabewert

Typ
float
Beschreibung
Gibt den aktuellen Cascade-Output-Change-Fraction-Wert als Fließkommazahl zurück. Bei einem ungültigen ann-Handle gibt die Funktion false zurück.

Beispiele

Aktuellen Output-Change-Fraction-Wert auslesen

<?php
// FANN-Shortcut-Netzwerk erstellen (geeignet für Cascade-Training)
$ann = fann_create_shortcut(2, 3, 1);

if ($ann) {
    // Aktuellen Wert auslesen
    $fraction = fann_get_cascade_output_change_fraction($ann);
    echo "Cascade Output Change Fraction: " . $fraction . PHP_EOL;

    // Ressource freigeben
    fann_destroy($ann);
} else {
    echo "Fehler beim Erstellen des FANN-Netzwerks." . PHP_EOL;
}
?>
Cascade Output Change Fraction: 0.01

Wert lesen, anpassen und verifizieren

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

if ($ann) {
    $vorher = fann_get_cascade_output_change_fraction($ann);
    echo "Vorher: " . $vorher . PHP_EOL;

    // Neuen Wert setzen (z. B. weniger strikt)
    fann_set_cascade_output_change_fraction($ann, 0.05);

    $nachher = fann_get_cascade_output_change_fraction($ann);
    echo "Nachher: " . $nachher . PHP_EOL;

    fann_destroy($ann);
}
?>
Vorher: 0.01 Nachher: 0.05

// Wichtig · Fallstricke

Diese Funktion ist nur verfügbar, wenn die FANN-PHP-Erweiterung installiert und aktiviert ist (extension=fann in der php.ini). Die Erweiterung basiert auf der C-Bibliothek libfann und ist nicht standardmäßig in PHP enthalten.

Der Standardwert für den Output-Change-Fraction beträgt in der Regel 0.01. Der Wert wird immer in Kombination mit dem Stagnationsparameter (Epochenanzahl, einstellbar über fann_get_cascade_output_stagnation_epochs) interpretiert.