函数名:fann_get_cascade_output_stagnation_epochs()
适用版本:FANN >= 2.2.0
用法:int fann_get_cascade_output_stagnation_epochs(resource $ann)
参数:$ann为神经网络资源,通过fann_create_standard()、fann_create_sparse()或fann_create_shortcut()函数创建。
返回值:返回int类型的值,表示神经网络训练过程中输出停滞的时期数。
说明:该函数用于获取神经网络训练过程中输出停滞的时期数。当在训练过程中连续指定的轮数内,输出错误的平均值没有显著下降时,神经网络训练将停止。
示例:
<?php
$ann = fann_create_standard(2, 2, 1); // 创建2个输入神经元,2个隐藏神经元,1个输出神经元的标准神经网络
fann_set_activation_function_hidden($ann, FANN_SIGMOID_SYMMETRIC); // 设置隐藏层激活函数为双曲正切函数
fann_set_activation_function_output($ann, FANN_SIGMOID_SYMMETRIC); // 设置输出层激活函数为双曲正切函数
fann_set_training_algorithm($ann, FANN_TRAIN_RPROP); // 设置训练算法为RPROP算法
fann_set_cascade_output_stagnation_epochs($ann, 10); // 设置输出停滞时的轮数为10
// ... 其他设置和训练过程 ...
$epochs = fann_get_cascade_output_stagnation_epochs($ann); // 获取输出停滞时的轮数
echo "输出停滞的时期数: " . $epochs;
fann_destroy($ann); // 销毁神经网络资源
?>
输出:
输出停滞的时期数: 10
在上面的示例中,我们首先创建了一个具有2个输入神经元,2个隐藏神经元和1个输出神经元的标准神经网络。然后设置了隐藏层和输出层的激活函数,并将训练算法设置为RPROP算法。接下来,使用fann_set_cascade_output_stagnation_epochs()函数将输出停滞时的轮数设置为10。最后,通过fann_get_cascade_output_stagnation_epochs()函数获取输出停滞时的轮数,并将其打印出来。