Простое прогнозирование числовых последовательностей с использованием Encog Machine Learning Framework

Я новичок в программировании на Java, и мне нужно было найти какой-то инструмент для прогнозирования временных рядов в Java. Я не нашел ничего лучше, чем среда с открытым исходным кодом Encog. Сейчас мне довольно сложно понять некоторые примеры (например, PredictSunspot.java) из github.

Я был бы очень благодарен, если бы кто-нибудь мог объяснить, как сделать простое предсказание: входные числа серии 1,2,3,4,5 и, таким образом, прогнозируемый результат будет 6. Я все еще просматриваю документы, чтобы найти нужные мне классы. Однако с вашей помощью я думаю, что это будет быстрее.

1 ответ

Решение

Возьмите существующий PredictSunspot.java. Там вы найдете массив двойных солнечных пятен. Измените это на числа от 1 до 6 или лучше, скажем, от 1 до 100.
Вы также увидите WindowSize = 30, это количество точек данных, которые сеть будет рассматривать в любое время, вы можете уменьшить это значение до 5 или 10. Это соответствует количеству входных нейронов.
В этом примере вы можете считать год не более чем счетчиком, он не используется для обучения сети.
В качестве другого простого примера вы можете попробовать обучить синусоидальной волне.

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