预定义常量

下列常量由此扩展定义,且仅在此扩展编译入 PHP 或在运行时动态载入时可用。

训练算法
FANN_TRAIN_INCREMENTAL ( integer)
标准反向传播算法,每次训练匹配后权重都会更新。这意味着在每个单历元中权重会被更新很多次。因为这个原因,很多问题使用这个算法将会训练的非常快,然而其他更高级的问题的训练效果不是很好。
FANN_TRAIN_BATCH ( integer)
标准反向传播算法,计算均方差误差后权重值将会更新。 这意味着每个单历元只会更新一次。因为这个原因,很多问题使用这个算法会训练的很慢。但是计算出的均方差误差比增量训练的效果更好,使用这个算法某些问题将会得到更好的解决方案。
FANN_TRAIN_RPROP ( integer)
一个更高级的批训练算法,对于很多问题该算法还会获得很好的结果。RPROP 训练算法是自适应的,因此不需要使用 learning_rate. 其他一些参数用来设置 RPROP 算法工作的方式,只推荐给那些知道 RPROP 算法如何工作的人来设置。RPROP 训练算法是被 Riedmiller 和 BraunSome 在1993年提出来的,实际上此处使用的是由 Igel 和 Husken 在2000年提出来的 iRPROP 训练算法,它是标准 RPROP 训练算法的一个变种。
FANN_TRAIN_QUICKPROP ( integer)
一个更高级的批训练算法,对于很多问题该算法还会获得很好的结果。quickprop 训练算法使用 learning_rate 参数和其他更高级的参数, 但是只有当用户真正明白 quickprop 训练算法如何工作的时候才建议修改这些高级参数。 quickprop 训练算法是被 Fahlman 在1988年描述的。
FANN_TRAIN_SARPROP ( integer)
更高级的训练算法,只在2.2版本中可用。
Activation functions
FANN_LINEAR ( integer)
线性激励函数。
FANN_THRESHOLD ( integer)
阈值激励函数。
FANN_THRESHOLD_SYMMETRIC ( integer)
阈值激励函数。
FANN_SIGMOID ( integer)
Sigmoid激励函数。
FANN_SIGMOID_STEPWISE ( integer)
逐步线性逼近 Sigmoid 激励函数。
FANN_SIGMOID_SYMMETRIC ( integer)
对称 Sigmoid 激励函数, 又名:tanh.
FANN_SIGMOID_SYMMETRIC_STEPWISE ( integer)
逐步线性逼近对称 Sigmoid 激励函数。
FANN_GAUSSIAN ( integer)
Gaussian (高斯) 激励函数。
FANN_GAUSSIAN_SYMMETRIC ( integer)
对称 gaussian (高斯)激励函数。
FANN_GAUSSIAN_STEPWISE ( integer)
逐步 gaussian (高斯)激励函数。
FANN_ELLIOT ( integer)
快速(类sigmoid)激励函数,由 David Elliott 定义的。
FANN_ELLIOT_SYMMETRIC ( integer)
快速(类对称sigmoid)激励函数,由 David Elliott定义的。
FANN_LINEAR_PIECE ( integer)
有界线性激励函数。
FANN_LINEAR_PIECE_SYMMETRIC ( integer)
有界线性激励函数。
FANN_SIN_SYMMETRIC ( integer)
周期sin(正弦)激励函数。
FANN_COS_SYMMETRIC ( integer)
周期cos(余弦)激励函数。
FANN_SIN ( integer)
周期sin(正弦)激励函数。
FANN_COS ( integer)
周期cos(余弦)激励函数。
Error function used during training
FANN_ERRORFUNC_LINEAR ( integer)
标准线性误差函数。
FANN_ERRORFUNC_TANH ( integer)
Tanh 误差函数, 通常更好但是要求更低的学习率。该误差函数当有目标输出时将会和期望值有很大的不同,然而没有目标输出时只有很小不同。此激励函数在层叠训练和增量训练。
Stop criteria used during training
FANN_STOPFUNC_MSE ( integer)
停止准则是均方误差(MSE)值。
FANN_STOPFUNC_BIT ( integer)
停止准则是失败时的比特位数。比特位数意味着输出神经元的个数超过了失败时的比特位数 (参考 fann_get_bit_fail_limit, fann_set_bit_fail_limit). 位数在所有的训练数据中都会被计数,所以这个数组将会比训练数据的数量更高。
fann_get_network_type() 是用来定义网络类型
FANN_NETTYPE_LAYER ( integer)
每一层只能连接下一层。
FANN_NETTYPE_SHORTCUT ( integer)
每一层与所有以下层有连接。
Errors
FANN_E_NO_ERROR ( integer)
无误差。
FANN_E_CANT_OPEN_CONFIG_R ( integer)
无法打开读取配置文件。
FANN_E_CANT_OPEN_CONFIG_W ( integer)
无法打开写入配置文件。
FANN_E_WRONG_CONFIG_VERSION ( integer)
配置文件的错误版本。
FANN_E_CANT_READ_CONFIG ( integer)
从配置文件读取信息的错误。
FANN_E_CANT_READ_NEURON ( integer)
从配置文件读取神经元信息的错误。
FANN_E_CANT_READ_CONNECTIONS ( integer)
从配置文件读取连接的错误。
FANN_E_WRONG_NUM_CONNECTIONS ( integer)
连接数和期望的值不相等。
FANN_E_CANT_OPEN_TD_W ( integer)
无法打开训练数据文件写入内容。
FANN_E_CANT_OPEN_TD_R ( integer)
无法打开训练数据文件读取内容。
FANN_E_CANT_READ_TD ( integer)
从文件读取训练数据错误。
FANN_E_CANT_ALLOCATE_MEM ( integer)
无法分配内存。
FANN_E_CANT_TRAIN_ACTIVATION ( integer)
无法使用已选的激励函数训练。
FANN_E_CANT_USE_ACTIVATION ( integer)
无法使用已选的激励函数。
FANN_E_TRAIN_DATA_MISMATCH ( integer)
两个 fann_train_data 结构体之间存在不可调和的差异。
FANN_E_CANT_USE_TRAIN_ALG ( integer)
不能使用已选的训练算法。
FANN_E_TRAIN_DATA_SUBSET ( integer)
尝试获取不在训练集内的子集。
FANN_E_INDEX_OUT_OF_BOUND ( integer)
索引超出了界限。
FANN_E_SCALE_NOT_PRESENT ( integer)
标定参数不存在。
FANN_E_INPUT_NO_MATCH ( integer)
在人工神经网络和数据中的输入神经元个数不匹配。
FANN_E_OUTPUT_NO_MATCH ( integer)
在人工神经网络和数据中的输出神经元个数不匹配。

关注编程学问公众号