函式名:fann_train()
適用版本:FANN >= 2.0.0
用法:fann_train(resource $ann, array $input, array $desired_output) : bool
函式說明:fann_train() 函式用於訓練一個已經建立好的神經網路。
引數:
- $ann:已建立的神經網路資源。
- $input:輸入資料的陣列,每個元素代表一個樣本的輸入。
- $desired_output:期望的輸出資料的陣列,每個元素代表一個樣本的期望輸出。
返回值:訓練是否成功的布林值,成功返回 true,失敗返回 false。
示例:
// 建立一個具有 3 個輸入節點和 1 個輸出節點的神經網路
$ann = fann_create_standard(3, 3, 1);
// 設定訓練演演演算法為 RPROP
fann_set_training_algorithm($ann, FANN_TRAIN_RPROP);
// 建立輸入資料和期望輸出資料的陣列
$input = array(array(0, 0), array(0, 1), array(1, 0), array(1, 1));
$desired_output = array(array(0), array(1), array(1), array(0));
// 訓練神經網路
if (fann_train($ann, $input, $desired_output)) {
echo "神經網路訓練成功!";
} else {
echo "神經網路訓練失敗!";
}
// 銷燬神經網路資源
fann_destroy($ann);
上述示例中,我們建立了一個具有 3 個輸入節點和 1 個輸出節點的神經網路。然後,使用 fann_set_training_algorithm() 函式設定訓練演演演算法為 RPROP。接下來,建立輸入資料和期望輸出資料的陣列。最後,呼叫 fann_train() 函式訓練神經網路,並根據返回值判斷訓練是否成功。如果訓練成功,輸出"神經網路訓練成功!",否則輸出"神經網路訓練失敗!"。最後,使用 fann_destroy() 函式銷燬神經網路資源。