如何修复Brain.js中的NaN训练错误?

我的神经网络出现了问题,我非常需要你的帮助。

当网络在训练时,它会给我这样的输出:

iterations: 10, training error: NaNiterations: 20, training error: NaN

依此类推…

到目前为止,我尝试过以下方法:

  • 仅使用输出为0或1的数据进行训练
  • 对数据进行归一化处理
  • 对输入进行扁平化处理

这是我的训练数据

这是我的代码

const Brain = require('brain.js'),fs = require('fs'),config = {    logPeriod: 10,    log: true,    iterations: 100};let trainingData = JSON.parse(fs.readFileSync('./data/trainingData.normalized.json', 'utf8'));const net = new Brain.NeuralNetwork({    hiddenLayers: [72, 72]});net.train(trainingData, config);console.log(net.run(trainingData[0].input));

任何帮助都将不胜感激!


回答:

这个回答已被编辑。

看起来你使用了嵌套数组。你的输入是72个数组,每个数组又包含72个数组。我不确定你之前是如何扁平化你的输入的,但使用你的训练数据和代码,我通过以下方式获得了0.18139151128039302的训练错误:

for (let datum of trainingData) {     datum.input = datum.input.flat()}const train = net.train(trainingData, config);

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注