Symbolic regression
Project description
HROCH
High-Performance python symbolic regression library based on parallel late acceptance hill-climbing
- Zero hyperparameter tunning.
- Accurate results in seconds or minutes, in contrast to slow GP-based methods.
- Small models size.
- Support mathematic equations and fuzzy logic operators.
- Support 32 and 64 bit floating point arithmetic.
- Work with unprotected version of math operators (log, sqrt, division)
- Speedup search by using feature importances computed from bbox model
- CLI
Supported instructions | |
---|---|
math | add, sub, mul, div, inv, minv, sq2, pow, exp, log, sqrt, cbrt, aq |
goniometric | sin, cos, tan, asin, acos, atan, sinh, cosh, tanh |
other | nop, max, min, abs, floor, ceil, lt, gt, lte, gte |
fuzzy | f_and, f_or, f_xor, f_impl, f_not, f_nand, f_nor, f_nxor, f_nimpl |
Dependencies
- AVX2 instructions set(all modern CPU support this)
- numpy
Installation
pip install HROCH
Usage
from HROCH import PHCRegressor
reg = PHCRegressor(num_threads=8, time_limit=60.0, problem='math', precision='f64')
reg.fit(X_train, y_train)
yp = reg.predict(X_test)
Changelog
v1.2
- Features probability as input parameter
- Custom instructions set
- Parallel hilclimbing parameters
v1.1
- Improved late acceptance hillclimbing
v1.0
- First release
SRBench
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
HROCH-1.2.1.tar.gz
(1.5 MB
view hashes)
Built Distribution
HROCH-1.2.1-py3-none-any.whl
(1.5 MB
view hashes)