HROCH


NameHROCH JSON
Version 1.4.12 PyPI version JSON
download
home_pagehttps://github.com/janoPig/HROCH/
SummarySymbolic regression and classification
upload_time2024-08-31 16:12:23
maintainerNone
docs_urlNone
authorJano
requires_pythonNone
licenseMIT
keywords scikit-learn symbolic-regression classification fuzzy-logic interpretable-ml machine-learning
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
# 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

```sh
pip install HROCH
```

## Usage

[Symbolic_Regression_Demo.ipynb](examples/Symbolic_Regression_Demo.ipynb)  [![Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/janoPig/HROCH/blob/main/examples/Symbolic_Regression_Demo.ipynb)

[Documentation](https://janopig.github.io/HROCH/HROCH.html)

```python
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
- Xi corelation used for filter unrelated features

### 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](https://github.com/janoPig/HROCH/assets/75015989/3fa087dc-8caf-4301-86d7-4e79a4e84402)


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/janoPig/HROCH/",
    "name": "HROCH",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "scikit-learn, symbolic-regression, classification, fuzzy-logic, interpretable-ml, machine-learning",
    "author": "Jano",
    "author_email": "hroch.regression@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/a0/84/d2b2983718f966a6420885c5e241032361010460cba865fcea0da2dc7164/hroch-1.4.12.tar.gz",
    "platform": null,
    "description": "\n# HROCH  \n\n**High-Performance c++ symbolic regression library based on parallel local search**\n\n- Zero hyperparameter tunning.\n- Accurate results in seconds or minutes, in contrast to slow GP-based methods.\n- Small models size.\n- Support for regression, classification and fuzzy math.\n- Support 32 and 64 bit floating point arithmetic.\n- Work with unprotected version of math operators (log, sqrt, division)\n- Speedup search by using feature importances computed from bbox model\n\n|**Supported instructions**||\n| ----------- | ----------- |\n|**math**|add, sub, mul, div, pdiv, inv, minv, sq2, pow, exp, log, sqrt, cbrt, aq|\n|**goniometric**|sin, cos, tan, asin, acos, atan, sinh, cosh, tanh|\n|**other**|nop, max, min, abs, floor, ceil, lt, gt, lte, gte|\n|**fuzzy**|f_and, f_or, f_xor, f_impl, f_not, f_nand, f_nor, f_nxor, f_nimpl|\n\n## Dependencies\n\n- AVX2 instructions set(all modern CPU support this)\n- numpy\n- sklearn\n- scipy\n\n## Installation\n\n```sh\npip install HROCH\n```\n\n## Usage\n\n[Symbolic_Regression_Demo.ipynb](examples/Symbolic_Regression_Demo.ipynb)  [![Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/janoPig/HROCH/blob/main/examples/Symbolic_Regression_Demo.ipynb)\n\n[Documentation](https://janopig.github.io/HROCH/HROCH.html)\n\n```python\nfrom HROCH import SymbolicRegressor\n\nreg = SymbolicRegressor(num_threads=8, time_limit=60.0, problem='math', precision='f64')\nreg.fit(X_train, y_train)\nyp = reg.predict(X_test)\n```\n\n## Changelog\n\n### v1.4\n\n- Sklearn compatibility\n- Classificators:\n  - NonlinearLogisticRegressor for a binary classification\n  - SymbolicClassifier for multiclass classification\n  - FuzzyRegressor for a special binary classification\n- Xi corelation used for filter unrelated features\n\n### v1.3\n\n- Public c++ sources\n- Commanline interface changed to cpython\n- Support for classification score logloss and accuracy\n- Support for final transformations:\n  - ordinal regression\n  - logistic function\n  - clipping\n- Acess to equations from all paralel hillclimbers\n- User defined constants\n\n### v1.2\n\n- Features probability as input parameter\n- Custom instructions set\n- Parallel hilclimbing parameters\n  \n### v1.1\n\n- Improved late acceptance hillclimbing\n\n### v1.0\n\n- First release\n\n## SRBench\n\n![image](https://github.com/janoPig/HROCH/assets/75015989/3fa087dc-8caf-4301-86d7-4e79a4e84402)\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Symbolic regression and classification",
    "version": "1.4.12",
    "project_urls": {
        "Documentation": "https://janopig.github.io/HROCH/HROCH.html",
        "Homepage": "https://github.com/janoPig/HROCH/",
        "Source": "https://github.com/janoPig/HROCH",
        "Tracker": "https://github.com/janoPig/HROCH/issues"
    },
    "split_keywords": [
        "scikit-learn",
        " symbolic-regression",
        " classification",
        " fuzzy-logic",
        " interpretable-ml",
        " machine-learning"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ba4b70d399b1cb6301a93a1892e563b392fb64f70b667cc4d7562187051395ca",
                "md5": "31015a070b4a52f9506dae1d36a0668a",
                "sha256": "f6d3fe40804908bc6535779c82a473e96944c4c0c6e1339bea344763b5f88f68"
            },
            "downloads": -1,
            "filename": "HROCH-1.4.12-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "31015a070b4a52f9506dae1d36a0668a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 454509,
            "upload_time": "2024-08-31T16:12:21",
            "upload_time_iso_8601": "2024-08-31T16:12:21.006291Z",
            "url": "https://files.pythonhosted.org/packages/ba/4b/70d399b1cb6301a93a1892e563b392fb64f70b667cc4d7562187051395ca/HROCH-1.4.12-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a084d2b2983718f966a6420885c5e241032361010460cba865fcea0da2dc7164",
                "md5": "87998b42689a275d6b9f941ef7f745ce",
                "sha256": "a7e934bdb4df9314df3328d15ae48552ee8ffc4aa7ec2006e6f7f49300c38f74"
            },
            "downloads": -1,
            "filename": "hroch-1.4.12.tar.gz",
            "has_sig": false,
            "md5_digest": "87998b42689a275d6b9f941ef7f745ce",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 445851,
            "upload_time": "2024-08-31T16:12:23",
            "upload_time_iso_8601": "2024-08-31T16:12:23.067203Z",
            "url": "https://files.pythonhosted.org/packages/a0/84/d2b2983718f966a6420885c5e241032361010460cba865fcea0da2dc7164/hroch-1.4.12.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-31 16:12:23",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "janoPig",
    "github_project": "HROCH",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "hroch"
}
        
Elapsed time: 0.28476s