Signatur
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
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 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);
}
?>
// 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.