gpt4 book ai didi

c++ - ANN 培训进度使用 FANN 重置每个新培训类(class)

转载 作者:行者123 更新时间:2023-11-28 04:29:04 24 4
gpt4 key购买 nike

我有一个标准的神经网络,我已经训练了一段时间,但直到完善为止。培训类(class)完成后,我将网络保存在磁盘上。

一段时间后,我想从它离开的地方恢复训练网络。问题是,似乎每次我开始新的训练类(class)时,权重和偏差似乎都被完全重置,这意味着我要从头开始重新训练网络:

上一节课:

enter image description here

新 session :

enter image description here

这是我的训练函数的摘录:

void trainNet(fann *net) {
const unsigned int
max_epochs = 1000,
epochs_between_reports = 10;
const float desired_error = 0.01f;
net -> learning_momentum = 0.1f;
fann_train_on_file(net, "sessions.data", max_epochs, epochs_between_reports, desired_error);
fann_save(net, "network.net");
fann_destroy(net);
}

我错过了什么?这对我来说似乎很直观,你可以在多个 session 的跨度内训练一个网络。我错了吗?是图书馆的限制吗?

训练数据在 session 之间保持不变。这也不限于这个特定的网络——任何格式的网络似乎都会引发同样的问题。

最佳答案

What am I missing?

根据 Documentation - FANN Training > Training Data Manipulation > fann_set_training_algorithm :

Set the training algorithm.

示例:

fann_set_training_algorithm(net, FANN_TRAIN_INCREMENTAL)

关于c++ - ANN 培训进度使用 FANN 重置每个新培训类(class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53447054/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com