目录

符号回归Symbolic Regression

misaraty 更新 | 2024-12-17
前言
介绍常见的符号回归symbolic regression程序;其采用遗传算法genetic algorithm搜索函数解析式,可用于数据分析。

常用软件

Eureqa

  • GUI操作,直观。

  • 商业化之后,虽科研用途免费,但只能在线操作。

gplearn

  • gplearn

  • Github Stars看,Star增速不如PySR,且2022年5月3日之后不再更新。

./2024-11-15_093840.jpg
Github Star趋势

PySR

          对于Windows:

          运行Julia(v1.9.4)

1
2
3
4
using Pkg; Pkg.add("PyCall")
ENV["PYTHON"]="C:/Users/lenovo/anaconda3/python.exe"
Pkg.build("PyCall")
using PyCall

          重新安装Pysr

1
pip install pysr
警告
若切换Julia版本之后不重新安装pysr,则会报dll缺失的错误。

          最后运行脚本。


          对于Linux:

          先安装Pysr

1
pip install pysr

          再安装PythonCallSymbolicRegression

1
2
3
4
5
using Pkg
Pkg.add("PythonCall")
Pkg.instantiate()

Pkg.add("SymbolicRegression")

          然后直接运行脚本。

警告
root账号和本地账号下面需要分别安装库,因为调用的是账号下面的.julia
注意
其实,在Windows环境下,先安装Julia,然后在Python中运行pip install pysr即可,会自动调用Julia并安装相关库。
  • SRBench显示,PySR性能不错。

  • 依赖SymbolicRegression.jl

./Synthetic_Track_Rankings.jpg
Synthetic Track Rankings

QLattice/Feyn

1
pip install feyn

DEAP

1
pip install deap

      geppy

1
pip install geppy

uDSR/Deep Symbolic Optimization

1
2
git clone https://github.com/dso-org/deep-symbolic-optimization
pip install -e ./dso[all]

PhySO

1
2
git clone https://github.com/WassimTenachi/PhySO
pip install -e .

SISSO

Mathematica

Matlab

Julia

C++

Go

Python

性能对比