Start · Sprachen · PHP · Referenz · fann_get_bit_fail_limit

fann_get_bit_fail_limit

Funktion

Gibt den Bit-Fail-Grenzwert zurück, der während des Trainings eines neuronalen Netzes verwendet wird.

Kategorie: misc

Signatur

fann_get_bit_fail_limit(resource $ann): float

Beschreibung

fann_get_bit_fail_limit liefert den aktuell gesetzten Schwellenwert (Grenzwert) für den sogenannten Bit-Fail eines trainierten neuronalen Netzes. Als Bit-Fail wird ein Ausgabeneuron bezeichnet, dessen tatsächlicher Ausgabewert um mehr als diesen Grenzwert vom gewünschten Ausgabewert abweicht.

Der Bit-Fail-Zähler gibt an, wie viele Ausgabeneuronen über alle Trainingsbeispiele hinweg diesen Grenzwert überschreiten. Er ist ein nützliches Maß, um den Trainingsfortschritt zu überwachen – insbesondere wenn ein binäres Klassifikationsproblem gelöst werden soll, bei dem die Ausgaben möglichst nahe an 0 oder 1 liegen sollen.

Der Standardwert für den Bit-Fail-Grenzwert beträgt in FANN typischerweise 0.35. Mit fann_set_bit_fail_limit kann dieser Wert geändert werden. Zusammen mit fann_get_bit_fail lässt sich der aktuelle Fehlerstand beim Training ablesen.

Diese Funktion ist Teil der FANN-Erweiterung (Fast Artificial Neural Network) für PHP und erfordert, dass die entsprechende Erweiterung installiert und aktiviert ist.

Parameter

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

Rückgabewert

Typ
float
Beschreibung
Gibt den aktuellen Bit-Fail-Grenzwert als Gleitkommazahl zurück. Im Fehlerfall (z. B. ungültige Ressource) wird false zurückgegeben.

Beispiele

Bit-Fail-Grenzwert eines neuronalen Netzes auslesen

<?php
// Neuronales Netz erstellen: 2 Eingaben, 1 verdeckte Schicht mit 3 Neuronen, 1 Ausgabe
$ann = fann_create_standard(3, 2, 3, 1);

if ($ann) {
    $bitFailLimit = fann_get_bit_fail_limit($ann);
    echo "Aktueller Bit-Fail-Grenzwert: " . $bitFailLimit . PHP_EOL;

    fann_destroy($ann);
} else {
    echo "Fehler beim Erstellen des neuronalen Netzes." . PHP_EOL;
}
?>
Aktueller Bit-Fail-Grenzwert: 0.35

Bit-Fail-Grenzwert setzen und anschließend auslesen

<?php
// Neuronales Netz aus einer Datei laden
$ann = fann_create_from_file('mein_netz.net');

if ($ann) {
    // Neuen Grenzwert setzen
    fann_set_bit_fail_limit($ann, 0.5);

    // Gesetzten Grenzwert zur Kontrolle auslesen
    $limit = fann_get_bit_fail_limit($ann);
    echo "Bit-Fail-Grenzwert nach Änderung: " . $limit . PHP_EOL;

    fann_destroy($ann);
} else {
    echo "Netz konnte nicht geladen werden." . PHP_EOL;
}
?>
Bit-Fail-Grenzwert nach Änderung: 0.5

// Wichtig · Fallstricke

Die FANN-Erweiterung ist ab PHP 7.0 nicht mehr standardmäßig gebündelt und muss separat installiert werden (z. B. über PECL: pecl install fann). In modernen PHP-Versionen (8.x) sollte die Kompatibilität der Erweiterung vorab geprüft werden.

Der Bit-Fail-Grenzwert hat nur Einfluss auf den Bit-Fail-Zähler und nicht direkt auf den mittleren quadratischen Fehler (MSE). Für eine präzise Auswertung des Trainingsfortschritts empfiehlt es sich, beide Metriken gemeinsam zu beobachten.