函式名:fann_set_output_scaling_params()
適用版本:FANN >= 2.1.0
用法:fann_set_output_scaling_params(resource $ann, float $neural_net_output_min, float $neural_net_output_max)
說明:該函式用於設定神經網路輸出縮放引數。在訓練神經網路時,可以透過將輸出值縮放到指定的最小值和最大值範圍內,來提高訓練的效果。
引數:
- $ann:神經網路資源控制程式碼
- $neural_net_output_min:神經網路輸出的最小值
- $neural_net_output_max:神經網路輸出的最大值
返回值:無
示例:
$ann = fann_create_standard(3, 2, 3, 1); // 建立一個包含3個層次的標準神經網路
fann_set_output_scaling_params($ann, -1, 1); // 設定神經網路輸出的最小值為-1,最大值為1
$input = array(0.5, 0.3, 0.8);
$output = fann_run($ann, $input); // 執行神經網路
// 輸出縮放後的結果
$unscaled_output = fann_descale_output($ann, $output[0]);
echo "Unscaled output: " . $unscaled_output . "\n";
fann_destroy($ann); // 銷燬神經網路
在上述示例中,我們首先建立了一個包含3個層次的標準神經網路。然後使用fann_set_output_scaling_params()函式設定了神經網路輸出的最小值為-1,最大值為1。接下來,我們輸入一個包含3個元素的陣列,並透過fann_run()函式執行神經網路,得到輸出結果。最後,使用fann_descale_output()函式將輸出結果還原成原始的未縮放的值,並將其輸出到螢幕上。最後,我們銷燬了神經網路資源。