2024 年 PHP 日本大会

fann_train_on_file

(PECL fann >= 1.0.0)

fann_train_on_file在一段时间内训练从文件中读取的整个数据集

描述

fann_train_on_file(
    资源 $ann,
    字符串 $filename,
    整数 $max_epochs,
    整数 $epochs_between_reports,
    浮点数 $desired_error
): 布尔值

在一段时间内训练从文件中读取的整个数据集。

此训练使用由 fann_set_training_algorithm() 选择的训练算法以及为这些训练算法设置的参数。

参数

ann

神经网络 资源

filename

包含训练数据的文件

max_epochs

训练应持续的最大轮数

epochs_between_reports

调用用户函数之间的轮数。值为零表示不调用用户函数。

desired_error

所需的 fann_get_MSE()fann_get_bit_fail(),取决于由 fann_set_train_stop_function() 选择的停止函数

返回值

成功时返回 true,否则返回 false

参见

添加注释

用户贡献的注释 1 条注释

1
geekgirljoy at gmail dot com
6 年前
训练文件 (xor.data)
4 2 1
-1 -1
-1
-1 1
1
1 -1
1
1 1
-1

<?php
$num_input
= 2;
$num_output = 1;
$num_layers = 3;
$num_neurons_hidden = 3;
$desired_error = 0.001;
$max_epochs = 500000;
$epochs_between_reports = 1000;
$training_data = dirname(__FILE__) . "/xor.data"; // 训练数据文件
$ann_save_file = dirname(__FILE__) . "/xor_float.net"; // 训练数据文件

// 使用创建 ANN 对象
$ann = fann_create_standard($num_layers, $num_input, $num_neurons_hidden, $num_output);

if (
$ann) {

// 配置 ANN 激活函数
fann_set_activation_function_hidden($ann, FANN_SIGMOID_SYMMETRIC);
fann_set_activation_function_output($ann, FANN_SIGMOID_SYMMETRIC);

// 尝试使用 fann_train_on_file() 进行训练
if (fann_train_on_file($ann, $training_data, $max_epochs, $epochs_between_reports, $desired_error)){
echo
'xor 训练完成。' . PHP_EOL);
}

// 尝试保存
if (fann_save($ann, $ann_save_file)){
echo
'xor 保存完成。' . PHP_EOL);
}

// 销毁 $ann 对象
fann_destroy($ann);
}
?>
To Top