Releases: MilesCranmer/PySR
Releases · MilesCranmer/PySR
v2.0.0a1
This is an alpha release of v2.0.0. There will still be changes before the release of v2.0.0, likely including new hyperparameter defaults.
What's Changed
Major changes
Multiple features (update backend to 2.0) (#999)
This PR updates the backend to SymbolicRegression.jl 2.0.0-alpha.8 and exposes several major new features:
- N-ary operators: Support for operators with arbitrary arity (not just unary/binary)
- Added 3-arity operators:
fma(fused multiply-add),clamp, etc. - This can be used via a new
operatorsparameter dictionary:operators={1: ["sin"], 2: ["+", "*"], 3: ["clamp"]}
- Added 3-arity operators:
- Equation guesses: Pass initial equation guesses to guide the search using the
guessesparameter tofit- For example:
guesses=["sin(x0 * 2.1 - 0.5)", "x0 * 3.0 + x2"]provides two guesses - Control injection rate with
fraction_replaced_guesses
- For example:
- Advanced autodiff backends: Experimental support for Mooncake.jl and Enzyme.jl
- Enzyme.jl support via
autodiff_backend="Enzyme"(fragile/experimental) - Mooncake.jl (experimental - currently disabled pending upstream fix)
- Enzyme.jl support via
- Feature node mutation: New mutation operator that directly modifies which features are used
- Control mutation weight with
weight_mutate_feature
- Control mutation weight with
- Worker management:
worker_imports: specify Julia packages to import on workersworker_timeout: control timeout for worker processes
Automatic batching for big data (#1045)
Other changes
- docs: add vector expression example by @MilesCranmer in #1041
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #1008
- chore(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in #1009
- ci: update Dockerfile image by @MilesCranmer in #1022
- test: update docker versions by @MilesCranmer in #1023
- chore(deps): bump actions/setup-python from 5 to 6 by @dependabot[bot] in #1027
- deps: update min python to 3.9 by @MilesCranmer in #1052
- deps: bump juliacall requirement by @dependabot[bot] in #1035
- chore(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in #1049
- chore(deps): bump github/codeql-action from 3 to 4 by @dependabot[bot] in #1050
- chore(deps): bump actions/setup-python from 5 to 6 by @dependabot[bot] in #1051
- chore(deps): update beartype requirement from <0.22,>=0.19 to >=0.19,<0.23 by @dependabot[bot] in #1047
- chore: update pyjuliacall requirement in environment.yml by @MilesCranmer in #1054
Full Changelog: v1.5.9...v2.0.0a1
v1.5.9
What's Changed
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci[bot] in #853
- Fix type error in feature selection code by @MilesCranmer in #952
- chore(deps): update juliacall requirement from <0.9.26,>=0.9.24 to >=0.9.24,<0.9.27 by @dependabot[bot] in #980
Full Changelog: v1.5.8...v1.5.9
v1.5.8
What's Changed
- fix: compat with python 3.8 by removing beartype by @MilesCranmer in #935
- ci: update workflows to test 3.13 by @MilesCranmer in #929
- style: fix newline in warning by @MilesCranmer in #931
- ci: switch to codecov by @MilesCranmer in #932
- deps: fix local conda env versions by @MilesCranmer in #933
Full Changelog: v1.5.7...v1.5.8
v1.5.7
What's Changed
- Enable negative losses by @MilesCranmer in #928
- Recommend TemplateExpressionSpec over ParametricExpressionSpec @MilesCranmer in #920
- Fix multi-output template expressions by @MilesCranmer in #921
- build: switch to hatchling by @MilesCranmer in #888
- chore(deps): bump juliacall from 0.9.24 to 0.9.25 by @dependabot in #925
- fix: turn off double warning for ParametricExpressionSpec by @MilesCranmer in #930
Full Changelog: v1.5.6...v1.5.7
v1.5.6
What's Changed
- Added paper contribution and image by @manuel-morales-a in #824
- fix: pickling of inv by @MilesCranmer in #910
- Automated update to backend: v1.10.0 by @github-actions in #890
New Contributors
- @manuel-morales-a made their first contribution in #824
Full Changelog: v1.5.5...v1.5.6
v1.5.5
What's Changed
- fix: typing extensions dependency by @MilesCranmer in #885
Full Changelog: v1.5.4...v1.5.5
v1.5.4
v1.5.3
What's Changed
- fix: change sympy mappings ordering by @romanovzky in #868
New Contributors
- @romanovzky made their first contribution in #868
Full Changelog: v1.5.2...v1.5.3
v1.5.2
v1.5.1
What's Changed
- fix: comparison operator parsing by @MilesCranmer in #845
Full Changelog: v1.5.0...v1.5.1