Start · Sprachen · PHP · Referenz · fann_get_cascade_output_stagnation_epochs

fann_get_cascade_output_stagnation_epochs

Funktion

Gibt die Anzahl der Cascade-Output-Stagnation-Epochen zurück, nach denen das Training als stagnierende gilt.

seit PHP 5.2.0 Kategorie: misc

Signatur

fann_get_cascade_output_stagnation_epochs(resource $ann): int

Beschreibung

fann_get_cascade_output_stagnation_epochs liefert die Anzahl der Epochen, die beim Cascade-Korrelations-Training abgewartet werden, bevor das Ausgabe-Training als stagnierend eingestuft wird. Stagnation bedeutet, dass der Fehler sich über eine bestimmte Anzahl von Epochen nicht mehr ausreichend verbessert hat.

Dieser Wert ist Teil des Cascade-Korrelations-Algorithmus (FANN Cascade), der schrittweise neue verdeckte Neuronen zum Netz hinzufügt. Wenn das Ausgabe-Training über die definierte Anzahl von Epochen hinweg keinen ausreichenden Fortschritt zeigt (gemessen am fann_get_cascade_output_change_fraction-Wert), wird das Training der Ausgabe-Verbindungen abgebrochen.

Der Standardwert liegt typischerweise bei 12 Epochen. Dieser Wert kann mit fann_set_cascade_output_stagnation_epochs angepasst werden. Ein größerer Wert bedeutet, dass das Training länger auf Verbesserungen wartet, bevor es als stagnierend gilt; ein kleinerer Wert führt zu schnellerem, aber potenziell weniger genauem Training.

Diese Funktion ist nur verfügbar, wenn die FANN-Extension (Fast Artificial Neural Network Library) in PHP eingebunden ist.

Parameter

Name Typ Default Beschreibung
$ann Pflicht resource Eine gültige FANN-Netzwerk-Ressource, die zuvor mit Funktionen wie fann_create_standard erzeugt wurde.

Rückgabewert

Typ
int
Beschreibung
Gibt die aktuelle Anzahl der Cascade-Output-Stagnation-Epochen als ganzzahligen Wert zurück, oder false bei einem Fehler (z. B. wenn ann keine gültige Netzwerk-Ressource ist).

Beispiele

Aktuellen Wert der Output-Stagnation-Epochen abfragen

<?php
// Erstelle ein einfaches neuronales Netz
$ann = fann_create_standard(3, 2, 3, 1);

if ($ann) {
    // Aktuellen Wert der Cascade-Output-Stagnation-Epochen abfragen
    $stagnation_epochs = fann_get_cascade_output_stagnation_epochs($ann);
    echo "Aktuelle Cascade-Output-Stagnation-Epochen: " . $stagnation_epochs . PHP_EOL;

    fann_destroy($ann);
} else {
    echo "Fehler beim Erstellen des neuronalen Netzes." . PHP_EOL;
}
?>
Aktuelle Cascade-Output-Stagnation-Epochen: 12

Stagnation-Epochen anpassen und überprüfen

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

if ($ann) {
    // Standardwert auslesen
    $default = fann_get_cascade_output_stagnation_epochs($ann);
    echo "Standardwert: " . $default . PHP_EOL;

    // Wert auf 20 Epochen erhöhen
    fann_set_cascade_output_stagnation_epochs($ann, 20);

    // Neuen Wert überprüfen
    $new_value = fann_get_cascade_output_stagnation_epochs($ann);
    echo "Neuer Wert: " . $new_value . PHP_EOL;

    fann_destroy($ann);
}
?>
Standardwert: 12 Neuer Wert: 20

// Wichtig · Fallstricke

Diese Funktion gehört zur FANN-Extension für PHP, die standardmäßig nicht in PHP enthalten ist und separat installiert werden muss. Ab PHP 7.x ist die offizielle FANN-Extension möglicherweise nicht mehr aktiv gepflegt; für neuere PHP-Versionen sollte die Verfügbarkeit geprüft werden.

Der Wert der Stagnation-Epochen arbeitet eng mit fann_get_cascade_output_change_fraction zusammen: Nur wenn sich der Fehler innerhalb der definierten Anzahl von Epochen um weniger als die Change-Fraction verbessert, gilt das Training tatsächlich als stagnierend.