Высокопроизводительная символьная регрессия и поиск уравнений на Python и Julia.
Высокопроизводительные генетические алгоритмы для интерпретируемого машинного обучения на Python и Julia.
PySR — это open source инструмент для символьной регрессии, который выполняет поиск интерпретируемых математических выражений, соответствующих вашим данным. Он подходит для дата-сайентистов и исследователей, которым нужны объяснимые модели, а не непрозрачные прогнозы типа «черный ящик».
Инструмент использует эволюционные алгоритмы на базе высокопроизводительного поискового движка Julia для обнаружения явных аналитических уравнений. Он поддерживает синтаксис, совместимый с scikit-learn, пользовательские операторы, функции потерь, а также вывод формул в форматах SymPy, JAX или PyTorch.
Он подходит для дата-сайентистов, работающих с наборами данных низкой размерности или выполняющих символьную дистилляцию нейронных сетей. Он не подходит командам, которым нужны традиционные таблицы на основе градиентного бустинга или тем, кто не может управлять смешанными зависимостями среды выполнения Python и Julia.
Обучает модели с помощью привычного для разработчиков Python синтаксиса fit и predict.
Конвертирует обнаруженные уравнения напрямую в форматы SymPy, JAX или PyTorch.
Поддерживает пользовательские математические операторы и кастомные функции потерь, написанные на синтаксисе Julia.
Превращает обученные нейронные сети в аналитические уравнения для интерпретации моделей глубокого обучения.
Бесплатно по лицензии Apache-2.0. Единственные затраты — это локальная вычислительная мощность и время, необходимые для запуска эволюционного поиска.
870 открытых удалённых вакансий по обучению ИИ, обновлено 14 ноября 2026 г.; в большинстве оплата $20–$170 в час. Из них 2 — для носителей русского языка. Zekai публикует их бесплатно; отклик уходит на платформу работодателя.
PySR использует высокопроизводительную библиотеку Julia под названием SymbolicRegression.jl в качестве основного поискового движка для быстрого выполнения миллионов мутаций генетического алгоритма.
Вы можете вызвать model.jax() или model.pytorch() для обученной модели, чтобы получить дифференцируемые выражения, готовые для пайплайнов глубокого обучения.
Zekai первым в Google