函数名: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()函数将输出结果还原成原始的未缩放的值,并将其输出到屏幕上。最后,我们销毁了神经网络资源。