Start · Sprachen · PHP · Referenz · fann_get_connection_rate

fann_get_connection_rate

Funktion

Gibt die Verbindungsrate zurück, die beim Erstellen eines FANN-Netzwerks verwendet wurde.

Kategorie: misc

Signatur

fann_get_connection_rate(resource $ann): float

Beschreibung

fann_get_connection_rate() liest die Verbindungsrate aus einem bestehenden FANN-Netzwerk (Fast Artificial Neural Network) aus. Die Verbindungsrate ist ein Wert zwischen 0.0 und 1.0, der beim Erstellen eines unvollständig verbundenen Netzwerks (Sparse Network) mit Funktionen wie fann_create_sparse() angegeben wurde.

Ein Wert von 1.0 bedeutet, dass alle Neuronen vollständig miteinander verbunden sind (wie bei einem mit fann_create_standard() erstellten Netzwerk). Niedrigere Werte erzeugen ein dünn besetztes Netz, bei dem nicht alle möglichen Verbindungen zwischen Neuronen existieren.

Diese Funktion ist nützlich, wenn man Metadaten eines gespeicherten oder geladenen Netzwerks inspizieren möchte, zum Beispiel um die Netzwerkarchitektur zu dokumentieren oder zu überprüfen, ob ein Netzwerk wie gewünscht erstellt wurde.

Die Funktion gehört zur FANN-Erweiterung für PHP, die separat installiert werden muss und die C-Bibliothek libfann nutzt.

Parameter

Name Typ Default Beschreibung
$ann Pflicht resource Eine gültige FANN-Netzwerk-Ressource, die zuvor mit einer der fann_create_*-Funktionen erstellt wurde.

Rückgabewert

Typ
float
Beschreibung
Gibt die Verbindungsrate als Gleitkommazahl zwischen 0.0 und 1.0 zurück. Bei einem vollständig verbundenen Netzwerk ist der Wert 1.0.

Beispiele

Verbindungsrate eines Sparse-Netzwerks abfragen

<?php
// Erstellt ein dünn besetztes Netzwerk mit 50 % Verbindungsrate
// Schichtaufbau: 2 Eingabe-, 4 verdeckte, 1 Ausgabe-Neuron
$ann = fann_create_sparse(0.5, 3, [2, 4, 1]);

if ($ann) {
    $rate = fann_get_connection_rate($ann);
    echo "Verbindungsrate: " . $rate . PHP_EOL;
    // Ausgabe: Verbindungsrate: 0.5
    fann_destroy($ann);
} else {
    echo "Netzwerk konnte nicht erstellt werden.";
}
?>
Verbindungsrate: 0.5

Verbindungsrate eines vollständig verbundenen Netzwerks prüfen

<?php
// fann_create_standard erstellt ein vollständig verbundenes Netzwerk
$ann = fann_create_standard(3, 2, 5, 1);

if ($ann) {
    $rate = fann_get_connection_rate($ann);
    if ($rate >= 1.0) {
        echo "Das Netzwerk ist vollständig verbunden (Rate: " . $rate . ")." . PHP_EOL;
    } else {
        echo "Das Netzwerk ist ein Sparse-Netz (Rate: " . $rate . ")." . PHP_EOL;
    }
    fann_destroy($ann);
}
?>
Das Netzwerk ist vollständig verbunden (Rate: 1).

// Wichtig · Fallstricke

Die FANN-Erweiterung ist nicht standardmäßig in PHP enthalten und muss über PECL (pecl install fann) installiert werden. Zusätzlich muss die C-Bibliothek libfann auf dem System vorhanden sein.

Wird eine ungültige Ressource übergeben, kann es zu einem PHP-Fehler oder einem unerwarteten Rückgabewert kommen. Es empfiehlt sich, die Ressource vor dem Aufruf zu prüfen.