首页 > 解决方案 > fann_set_bit_fail_limit() 未能实际设置位失败限制,迫使我手动编辑 ANN 文件

问题描述

struct fann *ann;
ann = fann_create_standard(3, 600, 1200, 30);
fann_set_activation_function_hidden(ann, FANN_SIGMOID);
fann_set_activation_function_output(ann, FANN_SIGMOID);
fann_set_bit_fail_limit(ann, 0.002);
fann_save(ann, "ann.net");

每当我从文件中加载这个神经网络并读取fann_get_bit_fail_limit()时,返回的值是默认的 0.35 而不是我尝试设置的 0.002。我必须手动编辑 ANN 文件才能使其生效。

我正在使用doublefann.h. 难道我做错了什么?

标签: c++fann

解决方案


我是不是做错了什么?

根据文档 - FANN 培训 > 参数 >fann_get_bit_fail_limit(已添加重点):

fann_stopfunc_enum设置为的训练期间使用位失败限制FANN_STOPFUNC_BIT

例子 :

fann_set_train_stop_function(ann, FANN_STOPFUNC_BIT);
fann_set_bit_fail_limit(ann, 0.002);
fann_save(ann, "ann.net");

以防万一:

我正在使用doublefann.h.

链接-ldoublefann而不是-lfann.


推荐阅读