训练 brain.js 多次?
Training brain.js multiple times?
如何在第一次训练后用 brain.js 制作的神经网络训练新信息(只有新信息,而不是所有新信息,因为它会消耗太多性能)?
它有点粗糙,但您可以使用此结构实现它:
如果我们加入 2 个训练数据集,旧数据集和新数据集,然后用 keepNetworkIntact: true
重新训练,那么我们的神经网络将比从头开始重新训练快得多。
let net = new brain.NeuralNetwork();
// pre-training
net.train([
{input: [0, 0], output: [0]},
{input: [1, 1], output: [0]}
]);
// resume training with new data set
net.train([
{input: [0, 0], output: [0]}, // old training data set
{input: [1, 1], output: [0]}
].concat([
{input: [0, 1], output: [1]}, // joining new training data set
{input: [1, 0], output: [1]},
],
{keepNetworkIntact:true}
);
我知道 Brain.JS 即将推出一项名为 resumeableTraining
的功能,我不确定是否已实施。它值得检查文档。
祝您脑洞大开!!!
如何在第一次训练后用 brain.js 制作的神经网络训练新信息(只有新信息,而不是所有新信息,因为它会消耗太多性能)?
它有点粗糙,但您可以使用此结构实现它:
如果我们加入 2 个训练数据集,旧数据集和新数据集,然后用 keepNetworkIntact: true
重新训练,那么我们的神经网络将比从头开始重新训练快得多。
let net = new brain.NeuralNetwork();
// pre-training
net.train([
{input: [0, 0], output: [0]},
{input: [1, 1], output: [0]}
]);
// resume training with new data set
net.train([
{input: [0, 0], output: [0]}, // old training data set
{input: [1, 1], output: [0]}
].concat([
{input: [0, 1], output: [1]}, // joining new training data set
{input: [1, 0], output: [1]},
],
{keepNetworkIntact:true}
);
我知道 Brain.JS 即将推出一项名为 resumeableTraining
的功能,我不确定是否已实施。它值得检查文档。
祝您脑洞大开!!!