Предварительная тренировка мозга js модель

Мой вопрос


Я только начал изучать brain js и разработал модель, которая дает вам категорию на основе input text.

Я хочу спросить, что каждый раз запуск модели зависит от iterations чем больше количество iterations тем больше это займет времени, но это улучшает accuracy модели.

Есть ли способ, которым я могу pre-trained мою модель, чтобы она не позволяла пользователю ждать вывода.

Пример мне действительно поможет.

Мой код


// JSON file data //

[
  {
    "text": "my unit test failed",
    "category": "software"
  },
  {
    "text": "my driver is working",
    "category": "hardware"
  }
]

const brain = require('brain.js');
const data = require('./data.json');                 //data receiving from json//

const network = new brain.recurrent.LSTM();

const trainingData = data.map(item => ({
  input: item.text,
  output: item.category
}));

network.train(trainingData, {
  log: (error) => console.info(error),
  iterations: 1000
});

console.info(network.run('buy me a driver'));         // output is Hardware //

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
7
0
2 970
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Вы можете разделить сценарий на два. В одном мы обучаем сеть с данными, а затем сохраняем их в файл JSON, используя функцию network.toJSON().

Во втором мы загружаем состояние сети из файла JSON с помощью функции network.fromJSON(), а затем запускаем ее для наших данных.

поезд-network.js

const brain = require('brain.js');
const data = require('./data.json');    
const fs = require("fs");

const network = new brain.recurrent.LSTM();

const trainingData = data.map(item => ({
  input: item.text,
  output: item.category
}));

network.train(trainingData, {
  log: (error) => console.info(error),
  iterations: 1000
});

// Save network state to JSON file.
const networkState = network.toJSON();
fs.writeFileSync("network_state.json",  JSON.stringify(networkState), "utf-8");

загрузка-network.js

const brain = require('brain.js');
const fs = require("fs");

let network = new brain.recurrent.LSTM();

// Load the trained network data from JSON file.
const networkState = JSON.parse(fs.readFileSync("network_state.json", "utf-8"));
network.fromJSON(networkState);

console.info(network.run('buy me a driver')); 

Чтобы устранить ошибку Argument of type 'Buffer' is not assignable to parameter of type 'string' в JSON.parse(), используйте readFileSync().toString()

DBencz 05.01.2023 07:58

Вы также можете сохранить nn в функцию с помощью net.toFunction() и использовать ее в другом месте, как описано здесь

Другие вопросы по теме