Signatur
Beschreibung
fann_get_learning_rate() liest die aktuell eingestellte Lernrate (learning rate) eines mit der FANN-Erweiterung (Fast Artificial Neural Network Library) erstellten neuronalen Netzes aus. Die Lernrate steuert, wie stark die Gewichte des Netzes bei jedem Trainingsschritt angepasst werden.
Eine hohe Lernrate kann das Training beschleunigen, führt jedoch häufig zu Instabilität oder Divergenz. Eine niedrige Lernrate sorgt für stabileres, aber langsameres Lernen. Mit fann_get_learning_rate() lässt sich der aktuelle Wert vor oder nach dem Training prüfen, um sicherzustellen, dass er korrekt gesetzt wurde – etwa nach Verwendung von fann_set_learning_rate().
Die Funktion ist Teil der PHP-FANN-Erweiterung und erfordert, dass diese korrekt installiert und aktiviert ist. Das Netz-Handle $ann muss zuvor mit einer Funktion wie fann_create_standard() oder fann_create_from_file() erzeugt worden sein.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $ann Pflicht | resource | Eine gültige FANN-Netz-Ressource, die mit einer fann_create_*()-Funktion erstellt wurde. |
Rückgabewert
false zurückgegeben.Beispiele
Lernrate eines neuen Netzes auslesen
<?php
// Netz erstellen: 2 Eingabe-Neuronen, 1 versteckte Schicht mit 3 Neuronen, 1 Ausgabe-Neuron
$ann = fann_create_standard(3, 2, 3, 1);
if ($ann) {
$lernrate = fann_get_learning_rate($ann);
echo "Aktuelle Lernrate: " . $lernrate . PHP_EOL;
fann_destroy($ann);
} else {
echo "Fehler beim Erstellen des Netzes." . PHP_EOL;
}
?>
Lernrate setzen und anschließend prüfen
<?php
$ann = fann_create_standard(3, 2, 4, 1);
if ($ann) {
// Lernrate auf einen benutzerdefinierten Wert setzen
fann_set_learning_rate($ann, 0.3);
// Sicherstellen, dass der Wert korrekt gesetzt wurde
$lernrate = fann_get_learning_rate($ann);
if (abs($lernrate - 0.3) < 0.0001) {
echo "Lernrate erfolgreich auf 0.3 gesetzt." . PHP_EOL;
} else {
echo "Unerwartete Lernrate: " . $lernrate . PHP_EOL;
}
fann_destroy($ann);
}
?>
// Wichtig · Fallstricke
Die Standard-Lernrate bei neu erstellten FANN-Netzen beträgt 0.7. Dieser Wert eignet sich für viele einfache Aufgaben, sollte jedoch je nach Problemstellung und verwendetem Trainingsalgorithmus angepasst werden.
Die FANN-Erweiterung für PHP ist nicht standardmäßig enthalten und muss separat über PECL installiert werden (pecl install fann). Ohne diese Erweiterung steht fann_get_learning_rate() nicht zur Verfügung.