Start · Sprachen · PHP · Referenz · fann_get_cascade_max_cand_epochs

fann_get_cascade_max_cand_epochs

Funktion

Gibt die maximale Anzahl der Kandidaten-Epochen zurück, die während des Cascade-Correlation-Trainings für die Kandidaten-Neuronen verwendet wird.

seit PHP 5.2.0 Kategorie: misc

Signatur

fann_get_cascade_max_cand_epochs(resource $ann): int

Beschreibung

fann_get_cascade_max_cand_epochs() liest die maximale Anzahl an Epochen aus, die beim Cascade-Correlation-Algorithmus für das Training der Kandidaten-Neuronen zugelassen ist. Dieser Wert begrenzt, wie lange ein Kandidaten-Neuron trainiert werden darf, bevor das beste Kandidaten-Neuron in das Netzwerk aufgenommen wird.

Beim Cascade-Correlation-Training werden zunächst Kandidaten-Neuronen trainiert, die versuchen, den Korrelationswert mit dem Restfehler des Netzwerks zu maximieren. Die maximale Anzahl der Kandidaten-Epochen stellt dabei sicher, dass das Training nicht unbegrenzt weiterläuft, falls kein Kandidat ausreichend konvergiert.

Der zurückgegebene Wert kann mit fann_set_cascade_max_cand_epochs() verändert werden. Typischerweise liegt der Standardwert bei 150. Ein höherer Wert kann zu besser optimierten Kandidaten führen, erhöht jedoch die Trainingszeit entsprechend.

Diese Funktion ist nur verfügbar, wenn die FANN-Erweiterung (Fast Artificial Neural Network Library) in PHP installiert und aktiviert ist.

Parameter

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

Rückgabewert

Typ
int
Beschreibung
Gibt die maximale Anzahl der Kandidaten-Epochen als int zurück, oder false, wenn ein Fehler aufgetreten ist (z. B. ungültige Netzwerk-Ressource).

Beispiele

Maximale Kandidaten-Epochen auslesen

<?php
// Ein einfaches Cascade-Netzwerk erstellen
$ann = fann_create_shortcut(2, 2, 1);

if ($ann) {
    // Aktuellen Wert auslesen
    $maxCandEpochs = fann_get_cascade_max_cand_epochs($ann);
    echo "Maximale Kandidaten-Epochen: " . $maxCandEpochs . PHP_EOL;

    fann_destroy($ann);
} else {
    echo "Fehler beim Erstellen des Netzwerks." . PHP_EOL;
}
?>
Maximale Kandidaten-Epochen: 150

Maximale Kandidaten-Epochen anpassen und überprüfen

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

if ($ann) {
    // Wert vor der Änderung
    echo "Vor Änderung: " . fann_get_cascade_max_cand_epochs($ann) . PHP_EOL;

    // Neuen Wert setzen
    fann_set_cascade_max_cand_epochs($ann, 300);

    // Wert nach der Änderung
    echo "Nach Änderung: " . fann_get_cascade_max_cand_epochs($ann) . PHP_EOL;

    fann_destroy($ann);
} else {
    echo "Fehler beim Erstellen des Netzwerks." . PHP_EOL;
}
?>
Vor Änderung: 150 Nach Änderung: 300

// Wichtig · Fallstricke

Hinweis: Diese Funktion ist nur verfügbar, wenn die PHP-FANN-Erweiterung installiert ist. Sie kann über PECL installiert werden (pecl install fann). Ohne diese Erweiterung führt der Aufruf zu einem fatalen Fehler.

Ein sehr niedriger Wert für die maximale Anzahl der Kandidaten-Epochen kann dazu führen, dass Kandidaten-Neuronen nicht ausreichend trainiert werden, was die Qualität des Cascade-Correlation-Trainings beeinträchtigt. Ein zu hoher Wert hingegen verlängert die Trainingszeit unnötig.