查詢

fann_set_callback()函式—用法及示例

「 設定FANN神經網路的回撥函式 」


函式名: fann_set_callback()

適用版本: FANN >= 2.3.0

函式用法:

fann_set_callback(resource $ann, callable $callback): bool

該函式用於設定FANN神經網路的回撥函式。回撥函式在每個訓練週期結束時被呼叫,可以用於記錄或顯示訓練過程中的統計資訊。

引數:

  1. $ann: FANN神經網路資源。
  2. $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。

補充糾錯
熱門PHP函式
分享連結