函式名: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
。最後可以使用該物件進行神經網路訓練。