函式名:fann_train_on_file()
適用版本:FANN >= 2.1.0
用法:fann_train_on_file(resource $ann, string $filename, int $max_epochs, int $epochs_between_reports, float $desired_error) : bool
說明:fann_train_on_file() 函式用於使用指定的神經網路資源($ann)從檔案中訓練神經網路模型。該函式將根據給定的訓練資料檔案($filename)進行訓練,並在達到最大輪數($max_epochs)或期望誤差($desired_error)時停止訓練。在訓練過程中,每經過 $epochs_between_reports 輪訓練,將列印出一次當前訓練的報告。
引數:
- $ann:神經網路資源(由 fann_create_standard() 或 fann_create_from_file() 建立)
- $filename:訓練資料檔案的路徑
- $max_epochs:最大訓練輪數
- $epochs_between_reports:列印訓練報告的輪數間隔
- $desired_error:期望的誤差值
返回值:成功時返回 true,失敗時返回 false。
示例:
<?php
// 建立神經網路
$ann = fann_create_standard(3, 2, 3, 1);
// 從檔案中訓練神經網路
if (fann_train_on_file($ann, "training.data", 1000, 10, 0.001)) {
echo "神經網路訓練成功!";
} else {
echo "神經網路訓練失敗!";
}
// 釋放神經網路資源
fann_destroy($ann);
?>
以上示例中,我們首先使用 fann_create_standard() 函式建立了一個具有 3 層(輸入層、隱藏層和輸出層)的神經網路。然後,我們呼叫 fann_train_on_file() 函式來從名為 "training.data" 的訓練資料檔案中訓練神經網路,最大輪數為 1000,每經過 10 輪訓練列印一次訓練報告,期望誤差為 0.001。最後,根據返回值判斷訓練是否成功,並釋放神經網路資源。