Skip to main content

Symbolic regression and classification

Project description

HROCH

High-Performance c++ symbolic regression library based on parallel local search

  • Zero hyperparameter tunning.
  • Accurate results in seconds or minutes, in contrast to slow GP-based methods.
  • Small models size.
  • Support for regression, classification and fuzzy math.
  • 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
Supported instructions
math add, sub, mul, div, pdiv, 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
  • sklearn
  • scipy

Installation

pip install HROCH

Usage

Symbolic_Regression_Demo.ipynb Colab

Documentation

from HROCH import SymbolicRegressor

reg = SymbolicRegressor(num_threads=8, time_limit=60.0, problem='math', precision='f64')
reg.fit(X_train, y_train)
yp = reg.predict(X_test)

Changelog

v1.4

  • sklearn compatibility
  • Classificators:
    • NonlinearLogisticRegressor for a binary classification
    • SymbolicClassifier for multiclass classification
    • FuzzyRegressor for a special binary classification

v1.3

  • Public c++ sources
  • Commanline interface changed to cpython
  • Support for classification score logloss and accuracy
  • Support for final transformations:
    • ordinal regression
    • logistic function
    • clipping
  • Acess to equations from all paralel hillclimbers
  • User defined constants

v1.2

  • Features probability as input parameter
  • Custom instructions set
  • Parallel hilclimbing parameters

v1.1

  • Improved late acceptance hillclimbing

v1.0

  • First release

SRBench

image

Project details


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.4.11.tar.gz (432.3 kB view hashes)

Uploaded Source

Built Distribution

HROCH-1.4.11-py3-none-any.whl (440.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page