Spaces:
Sleeping
Sleeping
Improve writing style of README
Browse files
README.md
CHANGED
|
@@ -22,13 +22,21 @@ https://github.com/MilesCranmer/PySR/assets/7593028/c8511a49-b408-488f-8f18-b174
|
|
| 22 |
If you find PySR useful, please cite the paper [arXiv:2305.01582](https://arxiv.org/abs/2305.01582).
|
| 23 |
If you've finished a project with PySR, please submit a PR to showcase your work on the [research showcase page](https://astroautomata.com/PySR/papers)!
|
| 24 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25 |
<div align="center">
|
| 26 |
|
| 27 |
### Contributors β¨
|
| 28 |
|
| 29 |
</div>
|
| 30 |
|
| 31 |
-
We are eager to welcome new contributors
|
| 32 |
If you have an idea for a new feature, don't hesitate to share it on the [issues](https://github.com/MilesCranmer/PySR/issues) or [discussions](https://github.com/MilesCranmer/PySR/discussions) page.
|
| 33 |
|
| 34 |
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
|
|
@@ -94,33 +102,26 @@ If you have an idea for a new feature, don't hesitate to share it on the [issues
|
|
| 94 |
|
| 95 |
</div>
|
| 96 |
|
| 97 |
-
|
|
|
|
|
|
|
|
|
|
| 98 |
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
|
|
|
|
|
|
|
|
|
| 102 |
|
| 103 |
-
|
| 104 |
-
extend these approaches to higher-dimensional
|
| 105 |
-
spaces by using
|
| 106 |
[2006.11287](https://arxiv.org/abs/2006.11287), where we apply
|
| 107 |
it to N-body problems. Here, one essentially uses
|
| 108 |
symbolic regression to convert a neural net
|
| 109 |
to an analytic equation. Thus, these tools simultaneously present
|
| 110 |
-
an explicit and powerful way to interpret deep
|
| 111 |
-
|
| 112 |
-
*Backstory:*
|
| 113 |
-
|
| 114 |
-
Previously, we have used
|
| 115 |
-
[eureqa](https://www.creativemachineslab.com/eureqa.html),
|
| 116 |
-
which is a very efficient and user-friendly tool. However,
|
| 117 |
-
eureqa is GUI-only, doesn't allow for user-defined
|
| 118 |
-
operators, has no distributed capabilities,
|
| 119 |
-
and has become proprietary (and recently been merged into an online
|
| 120 |
-
service). Thus, the goal
|
| 121 |
-
of this package is to have an open-source symbolic regression tool
|
| 122 |
-
as efficient as eureqa, while also exposing a configurable
|
| 123 |
-
python interface.
|
| 124 |
|
| 125 |
## Installation
|
| 126 |
|
|
@@ -186,7 +187,7 @@ If none of these folders contain your Julia binary, then you need to add Julia's
|
|
| 186 |
|
| 187 |
**Running PySR on macOS with an M1 processor:** you should use the pip version, and make sure to get the Julia binary for ARM/M-series processors.
|
| 188 |
|
| 189 |
-
##
|
| 190 |
|
| 191 |
You might wish to try the interactive tutorial [here](https://colab.research.google.com/github/MilesCranmer/PySR/blob/master/examples/pysr_demo.ipynb), which uses the notebook in `examples/pysr_demo.ipynb`.
|
| 192 |
|
|
@@ -370,7 +371,7 @@ model = PySRRegressor(
|
|
| 370 |
)
|
| 371 |
```
|
| 372 |
|
| 373 |
-
|
| 374 |
|
| 375 |
You can also test out PySR in Docker, without
|
| 376 |
installing it locally, by running the following command in
|
|
|
|
| 22 |
If you find PySR useful, please cite the paper [arXiv:2305.01582](https://arxiv.org/abs/2305.01582).
|
| 23 |
If you've finished a project with PySR, please submit a PR to showcase your work on the [research showcase page](https://astroautomata.com/PySR/papers)!
|
| 24 |
|
| 25 |
+
**Contents**:
|
| 26 |
+
|
| 27 |
+
- [Contributors](#contributors-)
|
| 28 |
+
- [Why PySR?](#why-pysr)
|
| 29 |
+
- [Installation](#installation)
|
| 30 |
+
- [Quickstart](#quickstart)
|
| 31 |
+
- [β Documentation](https://astroautomata.com/PySR)
|
| 32 |
+
|
| 33 |
<div align="center">
|
| 34 |
|
| 35 |
### Contributors β¨
|
| 36 |
|
| 37 |
</div>
|
| 38 |
|
| 39 |
+
We are eager to welcome new contributors! Check out our contributors [guide](https://github.com/MilesCranmer/PySR/blob/master/CONTRIBUTORS.md) for tips π.
|
| 40 |
If you have an idea for a new feature, don't hesitate to share it on the [issues](https://github.com/MilesCranmer/PySR/issues) or [discussions](https://github.com/MilesCranmer/PySR/discussions) page.
|
| 41 |
|
| 42 |
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
|
|
|
|
| 102 |
|
| 103 |
</div>
|
| 104 |
|
| 105 |
+
## Why PySR?
|
| 106 |
+
|
| 107 |
+
PySR is an open-source tool for *Symbolic Regression*: a machine learning
|
| 108 |
+
task where the goal is to find an interpretable symbolic expression that optimizes some objective.
|
| 109 |
|
| 110 |
+
Over a period of several years, PySR has been engineered from the ground up
|
| 111 |
+
to be (1) as high-performance as possible,
|
| 112 |
+
(2) as configurable as possible, and (3) easy to use.
|
| 113 |
+
PySR is developed alongside the Julia library [SymbolicRegression.jl](https://github.com/MilesCranmer/SymbolicRegression.jl),
|
| 114 |
+
which forms the powerful search engine of PySR.
|
| 115 |
+
The details of these algorithms are described in the [PySR paper](https://arxiv.org/abs/2305.01582).
|
| 116 |
|
| 117 |
+
Symbolic regression works best on low-dimensional datasets, but
|
| 118 |
+
one can also extend these approaches to higher-dimensional
|
| 119 |
+
spaces by using "*Symbolic Distillation*" of Neural Networks, as explained in
|
| 120 |
[2006.11287](https://arxiv.org/abs/2006.11287), where we apply
|
| 121 |
it to N-body problems. Here, one essentially uses
|
| 122 |
symbolic regression to convert a neural net
|
| 123 |
to an analytic equation. Thus, these tools simultaneously present
|
| 124 |
+
an explicit and powerful way to interpret deep neural networks.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 125 |
|
| 126 |
## Installation
|
| 127 |
|
|
|
|
| 187 |
|
| 188 |
**Running PySR on macOS with an M1 processor:** you should use the pip version, and make sure to get the Julia binary for ARM/M-series processors.
|
| 189 |
|
| 190 |
+
## Quickstart
|
| 191 |
|
| 192 |
You might wish to try the interactive tutorial [here](https://colab.research.google.com/github/MilesCranmer/PySR/blob/master/examples/pysr_demo.ipynb), which uses the notebook in `examples/pysr_demo.ipynb`.
|
| 193 |
|
|
|
|
| 371 |
)
|
| 372 |
```
|
| 373 |
|
| 374 |
+
### Docker
|
| 375 |
|
| 376 |
You can also test out PySR in Docker, without
|
| 377 |
installing it locally, by running the following command in
|