brain.js 从 json 导入 LSTM 网络时出现问题
brain.js problem with importing LSTM network from json
我做了一个 brain.js LSTM 网络,预测加法。然后我使用 net.toJSON()
将它保存到 .json 文件
但是,它似乎不起作用。 traindata.json
已成功创建,没有错误。但是,我得到一个错误:
/home/runner/AngryBlaringTelevision/node_modules/brain.js/dist/brain.js:18102
var matrix = new Matrix(json.rows, json.columns);
^
TypeError: Cannot read property 'rows' of undefined
at Function.fromJSON (/home/runner/AngryBlaringTelevision/node_modules/brain.js/dist/brain.js:18102:36)
at LSTM.fromJSON (/home/runner/AngryBlaringTelevision/node_modules/brain.js/dist/brain.js:20142:26)
at /home/runner/AngryBlaringTelevision/index.js:9:7
at FSReqCallback.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:63:3)
我的代码:
const brain = require('brain.js');
const fs = require('fs');
const LSTM = brain.recurrent.LSTM;
const net = new LSTM();
fs.readFile('traindata.json', function(err, data) {
if (err) throw err;
net.fromJSON(data);
console.log("file loaded");
});
此外,这是我在 pastebin 上的 traindata.json
文件的 link:
https://pastebin.com/tBZyxq1R
我不知道如何解决这个错误。 brain.js.
好像是个错误
导入文件后我也试过net.run()
,但还是不行。
我认为可能发生的事情是您传递给 BrainJS 的实际上不是 JSON。
在你的代码中,你有这个:
fs.readFile('traindata.json', function(err, data) {
if (err) throw err;
net.fromJSON(data);
console.log("file loaded");
});
当我尝试 运行 您的代码时,我看到了与您看到的相同的错误。
使用 JSON.parse()
似乎可以解决问题。
换句话说,当我将net.fromJSON(data);
更改为net.fromJSON(JSON.parse(data));
时,错误消失了。
我做了一个 brain.js LSTM 网络,预测加法。然后我使用 net.toJSON()
将它保存到 .json 文件
但是,它似乎不起作用。 traindata.json
已成功创建,没有错误。但是,我得到一个错误:
/home/runner/AngryBlaringTelevision/node_modules/brain.js/dist/brain.js:18102
var matrix = new Matrix(json.rows, json.columns);
^
TypeError: Cannot read property 'rows' of undefined
at Function.fromJSON (/home/runner/AngryBlaringTelevision/node_modules/brain.js/dist/brain.js:18102:36)
at LSTM.fromJSON (/home/runner/AngryBlaringTelevision/node_modules/brain.js/dist/brain.js:20142:26)
at /home/runner/AngryBlaringTelevision/index.js:9:7
at FSReqCallback.readFileAfterClose [as oncomplete] (internal/fs/read_file_context.js:63:3)
我的代码:
const brain = require('brain.js');
const fs = require('fs');
const LSTM = brain.recurrent.LSTM;
const net = new LSTM();
fs.readFile('traindata.json', function(err, data) {
if (err) throw err;
net.fromJSON(data);
console.log("file loaded");
});
此外,这是我在 pastebin 上的 traindata.json
文件的 link:
https://pastebin.com/tBZyxq1R
我不知道如何解决这个错误。 brain.js.
导入文件后我也试过net.run()
,但还是不行。
我认为可能发生的事情是您传递给 BrainJS 的实际上不是 JSON。
在你的代码中,你有这个:
fs.readFile('traindata.json', function(err, data) {
if (err) throw err;
net.fromJSON(data);
console.log("file loaded");
});
当我尝试 运行 您的代码时,我看到了与您看到的相同的错误。
使用 JSON.parse()
似乎可以解决问题。
换句话说,当我将net.fromJSON(data);
更改为net.fromJSON(JSON.parse(data));
时,错误消失了。