Какие алгоритмы ML могут использоваться для оптимизации или поиска максимума?
Машинное обучение не мой профиль, поэтому немного встрял на таком вопросе. В общем на многих библиотеках обычно есть функция train, которая принимает исходные данные и результат. Дальше эта функция пытается подобрать веса так, чтобы нейронная сеть выдавала нужный результат на соответствующих данных. Таким образом выполняется задача классификации. Окей, с этим я разобрался.
Но что, если у меня нет сета с ожидаемыми результатами? А есть некая функция, которая дает оценку (лучше-хуже или плохо-хорошо, в целом не важно) и мне нужно настроить веса нейронной сети так, чтобы оценка была как можно выше? Пусть будет как пример - прохождение платформера. У меня есть простая функция, дающая оценку на основе как быстро и как далеко персонаж добрался до нужной точки.
Я вроде как понимаю что тут нужен какой нибудь генетический алгоритм, который будет мутировать веса нейронной сети. А конкретных библиотек что-то не могу нагуглить. Поэтому хотелось бы название конкретных либ, которые реализуют данный подход. Ну или хотя бы ключевые слова, по которым можно эту тему гуглить.
neataptic показался тем что нужно, но начал копаться, а там так же нужен результирующий сет. Либо я просто не нашел как передать тут что-то типо фитнес функции.
Но что, если у меня нет сета с ожидаемыми результатами? А есть некая функция, которая дает оценку (лучше-хуже или плохо-хорошо, в целом не важно) и мне нужно настроить веса нейронной сети так, чтобы оценка была как можно выше?