Я создаю инструмент для прогнозирования времени и стоимости программных проектов на основе прошлых данных.Для этого инструмент использует нейронную сеть, и результаты пока что многообещающие, но я думаю, что я могу сделать гораздо больше оптимизации, просто изменив свойства сети.Кажется, что нет никаких правил или даже многих лучших практик, когда дело доходит до этих настроек, поэтому, если кто-то с опытом может мне помочь, я был бы очень признателен.
Входные данные состоят из сериицелых чисел, которые могут подняться настолько высоко, насколько хочет пользователь, но большинство из них будет меньше 100 000, я бы подумал.Некоторым будет всего 1. Они представляют собой такие данные, как количество людей в проекте и стоимость проекта, а также сведения о сущностях базы данных и вариантах использования.
Всего 10 входов и 2 выхода (время и стоимость).Я использую Resilient Propagation для обучения сети.В настоящее время он имеет: 10 входных узлов, 1 скрытый слой с 5 узлами и 2 выходными узлами.Я тренируюсь, чтобы получить менее 5% ошибок.
Алгоритм должен работать на веб-сервере, поэтому я предпринял меры, чтобы прекратить обучение, когда похоже, что он никуда не денется.Это установлено на 10000 итераций обучения.
В настоящее время, когда я пытаюсь обучить его некоторым данным, которые немного различаются, но вполне в пределах того, что, как мы ожидаем, пользователи добавят в него, это займет многовремя тренироваться, снова и снова достигая предела в 10 000 итераций.
Я впервые использую нейронную сеть и не знаю, чего ожидать.Если бы вы могли дать мне несколько советов о том, какие настройки я должен использовать для сети и для предела итерации, я был бы очень признателен.
Спасибо!