astroautomata/PySR

High-Performance Symbolic Regression in Python and Julia

해결하는 문제

PySR는 데이터셋에 적합한 해석 가능한 해석식을 찾는 문제를 해결합니다. 일반적인 머신러닝 모델이 '블랙박스'처럼 작동하는 반면, PySR는 기호 회귀를 통해 특정 목적을 최적화하는 실제 수학적 식을 발견합니다.

작동 방식

PySR는 Julia로 작성된 고성능 검색 엔진(SymbolicRegression.jl)을 Python 인터페이스를 통해 접근합니다. 수십만 번의 변이와 평가를 수행하여 기호 표현을 탐색합니다. 또한 '기호 증류(Symbolic Distillation)'에도 사용할 수 있어, 복잡한 신경망을 더 단순한 해석식으로 변환하여 네트워크의 동작을 해석 가능하게 만듭니다.

대상 사용자

저차원 데이터셋을 다루거나 딥 뉴럴넷의 해석을 원하는 연구자 및 데이터 과학자에게 적합합니다. 예측값뿐만 아니라 명시적인 수학 공식이 필요한 경우에 최적입니다.

주요 특징

  • 고성능: 멀티스레드 Julia 백엔드를 통해 속도와 설정 유연성이 뛰어납니다.
  • 유연한 연산자: 특정 복잡도 제약 조건을 가진 사용자 정의 이항 및 단항 연산자를 지원합니다.
  • 상호 운용성: 학습된 식을 SymPy, JAX, PyTorch 등 다양한 형식으로 내보낼 수 있습니다.
  • scikit-learn 스타일: Python 워크플로우에 쉽게 통합할 수 있는 익숙한 PySRRegressor 인터페이스를 제공합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트