查詢

fann_create_train_from_callback()函式—用法及示例

「 從使用者提供的回撥函式中建立一個訓練資料物件 」


函式名:fann_create_train_from_callback() 適用版本:PHP >= 7.2.0

函式描述: fann_create_train_from_callback() 函式用於從使用者提供的回撥函式中建立一個訓練資料物件。該函式主要用於在訓練神經網路時,生成訓練資料。

語法:

resource fann_create_train_from_callback(int $num_data, int $num_input, int $num_output, callable $callback)

引數:

  • $num_data:訓練資料的數量。
  • $num_input:輸入層的神經元數量。
  • $num_output:輸出層的神經元數量。
  • $callback:使用者定義的回撥函式,用於生成每個訓練樣本的輸入和輸出。

返回值: 如果成功,返回一個訓練資料物件 resource ,否則返回 false。

示例:

// 回撥函式,用於生成訓練資料
function training_callback($num_data, $num_input, $num_output) {
    $data = array();

    for ($i = 0; $i < $num_data; $i++) {
        // 生成隨機的輸入和輸出資料
        $input = array();
        $output = array();

        for ($j = 0; $j < $num_input; $j++) {
            $input[] = rand(0, 1); // 隨機生成0或1作為輸入
        }

        for ($j = 0; $j < $num_output; $j++) {
            $output[] = rand(0, 1); // 隨機生成0或1作為輸出
        }

        $data[] = array($input, $output); // 將輸入和輸出放入訓練資料陣列
    }

    return $data;
}

// 建立訓練資料物件
$num_data = 100;
$num_input = 3;
$num_output = 2;
$training_data = fann_create_train_from_callback($num_data, $num_input, $num_output, 'training_callback');
if ($training_data === false) {
    die("Failed to create training data");
}

// 使用訓練資料物件進行神經網路訓練
// ...

在上面的示例中,我們定義了一個回撥函式 training_callback() 來生成隨機的訓練資料。然後使用 fann_create_train_from_callback() 函式來建立一個訓練資料物件 $training_data。最後可以使用該物件進行神經網路訓練。

補充糾錯
上一個函式: fann_create_train()函式
下一個函式: fann_descale_input()函式
熱門PHP函式
分享連結