Signatur
Beschreibung
fann_get_layer_array liest die Schichtstruktur eines FANN-Netzwerks aus und gibt die Neuronenanzahl jeder Schicht als numerisches Array zurück. Der erste Eintrag entspricht der Eingabeschicht, der letzte der Ausgabeschicht, alle dazwischenliegenden Einträge stellen verdeckte Schichten (Hidden Layers) dar.
Die Funktion ist nützlich, wenn man ein bestehendes Netzwerk analysieren oder dokumentieren möchte, ohne die ursprünglichen Architekturparameter zu kennen – beispielsweise nach dem Laden eines Netzwerks aus einer Datei mit fann_create_from_file.
Beachte, dass der zurückgegebene Wert den Bias-Neuronen nicht mitzählt – er zeigt nur die eigentlichen funktionalen Neuronen pro Schicht an.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $ann Pflicht | resource | Eine gültige FANN-Netzwerk-Ressource, wie sie von Funktionen wie fann_create_standard oder fann_create_from_file zurückgegeben wird. |
Rückgabewert
false zurück, wenn die Ressource ungültig ist.Beispiele
Schichtstruktur eines neu erstellten Netzwerks ausgeben
<?php
// Erstellt ein Netzwerk mit 3 Eingaben, einer Hidden Layer mit 5 Neuronen und 1 Ausgabe
$ann = fann_create_standard(3, 3, 5, 1);
if ($ann) {
$layers = fann_get_layer_array($ann);
echo "Anzahl der Schichten: " . count($layers) . PHP_EOL;
foreach ($layers as $index => $neuronCount) {
echo "Schicht $index: $neuronCount Neuronen" . PHP_EOL;
}
fann_destroy($ann);
}
Netzwerkstruktur nach dem Laden aus einer Datei prüfen
<?php
// Netzwerk aus einer gespeicherten Datei laden
$ann = fann_create_from_file('mein_netz.net');
if ($ann) {
$layers = fann_get_layer_array($ann);
echo "Eingabeschicht: " . $layers[0] . " Neuronen" . PHP_EOL;
echo "Ausgabeschicht: " . end($layers) . " Neuronen" . PHP_EOL;
echo "Vollständige Struktur: " . implode(' -> ', $layers) . PHP_EOL;
fann_destroy($ann);
} else {
echo "Fehler beim Laden des Netzwerks." . PHP_EOL;
}
// Wichtig · Fallstricke
Diese Funktion setzt voraus, dass die PHP-Erweiterung FANN (Fast Artificial Neural Network) installiert und aktiviert ist. Sie ist nicht Bestandteil der PHP-Standardinstallation und muss separat über PECL oder als Systempakete bereitgestellt werden.
Die Biasneuronen werden im zurückgegebenen Array nicht mitgezählt. Wenn die Gesamtneuronenzahl (inklusive Bias) benötigt wird, kann fann_get_total_neurons verwendet werden.