Я построил искусственную нейронную сеть в Python, используя функцию оптимизации scipy.optimize.minimize (Conjugate Gradient).
Я реализовал проверку градиента, дважды проверил все и т.д., и я уверен, что он работает правильно.
Я запускал его несколько раз, и он достигает «Оптимизация успешно завершена», однако, когда я увеличиваю количество скрытых слоев, стоимость гипотезы увеличивается (все остальное остается неизменным) после ее успешного завершения.
Интуитивно кажется, что при увеличении количества скрытых слоев стоимость должна уменьшиться, поскольку она способна генерировать более сложную гипотезу, которая может лучше соответствовать данным, однако, похоже, это не так.
Мне было бы интересно понять, что здесь происходит, или я неправильно внедрил нейронную сеть?