Обновить

Интересная библиотека символьной регрессии PhySO. Оптимизатор берет на вход набор данных из многомерных аргументов X и одномерных значений функции Y в предположении, что это некие физические измерения. Пользователь добавляет информацию о единицах измерения компонент аргумента и целевого значения функции в виде наборов степеней [L, T, M] для каждой. Например, [ 1, -2, 0 ] соответствует ускорению, м/с^2. Также можно добавить свободных констант с указанием их физических размерностей в том же виде.

Еще можно ограничить набор базовых функций, используемых в поиске функции регрессии - арифметические, тригонометрию, показательную и логарифм, гиперболические итд.

После запуска оптимизатора с pytorch под капотом он пытается за указанное число подходов-эпох по данным подобрать символьную функцию регрессии, используя всю предоставленную информацию. После каждой эпохи показывает текущую подобранную символьную функцию и лучшую за все пройденные эпохи. Лучшую - в смысле наибольшего коэффициента регрессии R.

Пример в доках - здесь.

Это просто красиво. Разработчики хвалятся наилучшими показателями в бенчмарке подобных библиотек - особенно на высоких уровнях специально добавленного шума, до 10% от значений. Тренировали модель на большом количестве физических функций с экспериментальными данными, в том числе и на т.н. коллекции Фейнмана.

Следующий шаг в будущем для таких инструментов, наверное, будет добавление многомерности и в функцию. То есть сейчас R_n -> R_1, а будет еще R_n  ->  R_m

Теги:
+3
Комментарии0

Публикации