(←) предыдущая запись ; следующая запись (→)

Вот скажем, есть такая популярная архитектура нейросетей, автоэнкодер. Грубо говоря, нейросеть пытается сжать пространство признаков, описывающих систему, до какого-то небольшого набора параметров, из которого можно было бы восстановить исходное описание. Так вот, если взять автоэнкодер, выявит ли он интегралы движения и сколько-нибудь разумные координаты в фазовом пространстве?

Ну, например, простейшая система: возьмём маятник, в котором заданы координаты и скорости x,y, vx,vy. Несколько раз его с разной скоростью запустим и запишем четвёрки чисел, описывающих положение системы в пространстве состояний. Затем возьмём автоэнкодер и попробуем сжать четыре числа до двух. Законы физики позволяют это сделать, ведь координаты x и y связаны за счёт фиксированной длины маятника. А скорости связаны с координатами так как общая энергия системы сохраняется. Итого из четырёх параметров и двух уравнений остаётся только два параметра.
Но это мы знаем исходя из наших представлений о мире. Модель же машинного обучения глупая и не знает таких закономерностей, но может их уловить. Беда в том, что она скорее всего выберет какие-то идиотские параметры для описания системы. Тогда встаёт вопрос: как нужно задать функцию потерь модели, чтобы параметры, выявляемые автоэнкодером оказались энергией и углом отклонения (или хотя бы угловой скоростью)?
Это, кстати, простая задача для изучения: можно нагенерировать точек на траектории и визуализировать график параметров, выданных автоэнкодером, в зависимости от времени.