Моя программа должна пройти этап обучения, который занимает около 15 минут. Результатом этого обучения является две модели, хранящиеся в двух общественных объектах, которые затем будут использоваться в других классах. Я ставлю этот шаг обучения в следующей методике:Сохранять значения несериализуемых объектов после Tomcat Reloaded
public void init()
Так, чтобы быть выполнены в начале сервера. Проблема в том, что каждый раз, когда сервер перезагружается, он повторно выполняет шаг обучения. Я должен подождать еще 15 минут, чтобы увидеть последствия небольшого изменения. Мне было интересно, есть ли способ сохранить ценность некоторых объектов во время работы программы и сервера. Вот мой код:
public static Model model1;
public static Model model2;
@Override
public void init()
{
model1= readModel(source1)
model2= readModel(source2)
}
PS. Я использую сервлеты с страницами JSP и Tomcat Server.
Возможно ли, чтобы эта сериализация модели на диск была готова? –
Пробовал, не работал. Сначала он показывает NotSerializableException .. тогда я реализовал интерфейс Serializable в классе модели. Но все равно такая же ошибка. Модель, которую я читаю весом более 5 ГБ, и серийный файл, который я получаю, составляет около 1 КБ. – M20
Вы используете стандартную существующую библиотеку для обучения этих моделей или это часть вашей письменной логики? Причина, по которой большинство библиотек машинного обучения имеет стандартный экспорт моделей для двоичной модели. Если это библиотека, такая как R или weka, возможно, вы можете использовать свои возможности экспорта, чтобы сбрасывать модель на диск. –