函式名: fann_set_callback()
適用版本: FANN >= 2.3.0
函式用法:
fann_set_callback(resource $ann, callable $callback): bool
該函式用於設定FANN神經網路的回撥函式。回撥函式在每個訓練週期結束時被呼叫,可以用於記錄或顯示訓練過程中的統計資訊。
引數:
- $ann: FANN神經網路資源。
- $callback: 回撥函式,可以是一個可呼叫的函式或方法。
返回值: 如果成功設定回撥函式,則返回 true;否則返回 false。
示例:
<?php
// 建立FANN神經網路
$ann = fann_create_standard(3, 2, 3, 1);
// 設定回撥函式
function callback($ann, $train, $max_epochs, $epochs_between_reports, $desired_error, $user_data) {
// 獲取訓練狀態資訊
$mse = fann_get_MSE($ann);
$bit_fail = fann_get_bit_fail($ann);
// 輸出訓練狀態資訊
echo "Epochs: $train / $max_epochs, MSE: $mse, Bit fail: $bit_fail" . PHP_EOL;
return true; // 返回 true 繼續訓練,返回 false 停止訓練
}
fann_set_callback($ann, 'callback');
// 訓練FANN神經網路
fann_train_on_file($ann, 'training_data.txt', 3000, 100, 0.001);
// 銷燬FANN神經網路
fann_destroy($ann);
?>
在上面的示例中,我們建立了一個 FANN 神經網路,然後設定了回撥函式 callback(),該函式在每個訓練週期結束時被呼叫。回撥函式中顯示了訓練狀態資訊,例如當前訓練週期數、均方誤差(MSE)和錯誤位數(Bit fail)。訓練完成後,我們銷燬了 FANN 神經網路資源。
注意: 使用該函式需要確保你的 PHP 版本是 FANN >= 2.3.0。
熱門工具排行榜