函数名称:fann_descale_train()
适用版本:PHP 5, PHP 7
函数说明:该函数用于根据之前使用fann_scale_train()函数对训练数据进行缩放后的结果,对神经网络的输出进行反缩放。反缩放可以用于将神经网络的输出转换为原始数据的形式。
语法:bool fann_descale_train(resource $ann, array $train_data)
参数: $ann:训练好的神经网络资源(由fann_create_from_file()或fann_create()等函数返回)。 $train_data:数组形式的训练数据,其中每个元素必须是等于神经网络的输出数量的子数组。如果数组中的元素数量大于1,则按照前面的数据顺序进行反缩放,如果不足则只对第一个输出进行反缩放。
返回值:如果反缩放成功,则返回true;否则返回false。
示例:
$data = array(
array(0.1, 0.2, 0.3), // 第一个输出为0.1,第二个输出为0.2,第三个输出为0.3
array(0.9, 0.8, 0.7) // 第一个输出为0.9,第二个输出为0.8,第三个输出为0.7
);
$ann = fann_create_from_file("trained_network.fann");
if ($ann) {
if (fann_descale_train($ann, $data)) {
echo "反缩放成功!";
print_r($data);
} else {
echo "反缩放失败!";
}
fann_destroy($ann);
} else {
echo "无法加载神经网络!";
}
上述示例中,我们首先创建了一个包含两个样本的训练数据数组$data。然后使用fann_create_from_file()函数加载一个事先训练好的神经网络。接着使用fann_descale_train()函数对训练数据进行反缩放操作。最后,打印反缩放后的数据结果。如果反缩放成功,则输出"反缩放成功!",并打印反缩放后的数据;否则输出"反缩放失败!"。最后,使用fann_destroy()函数销毁神经网络资源。
注意:在使用该函数之前,必须先使用fann_set_output_scaling_params()函数设置神经网络的输出反缩放参数。