Skip to main content

Soln-ML: Towards Self-Learning AutoML System.

Project description

license


Soln-ML: Towards Self-Improving AutoML System.

Soln-ML is an AutoML system, which is capable of improving its AutoML power by learning from past experience. It implements many basic components that enables automatic machine learning. Furthermore, this toolkit can be also used to nourish new AutoML algorithms. Soln-ML is developed by DAIM Lab at Peking University. The goal of Soln-ML is to make machine learning easier to apply both in industry and academia.

Currently, Soln-ML is compatible with: Python >= 3.5.


Guiding principles

  • User friendliness. Soln-ML needs few human assistance.

  • Easy extensibility. New ML algorithms are simple to add (as new classes and functions), and existing modules provide ample examples. To be able to easily create new modules allows for total expressiveness, making it suitable for advanced research.

  • Work with Python. No separate models configuration files in a declarative format. Models are described in Python code, which is compact, easier to debug, and allows for ease of extensibility.


Characteristics

  • Soln-ML supports AutoML on large datasets.

  • Soln-ML enables transfer-learning, meta-learning and reinforcement learning techniques to make AutoML with more intelligent behaviors.


Example

Here is a brief example that uses the package.

from solnml.estimators import Classifier
clf = Classifier(dataset_name='iris',
                 time_limit=150,
                 output_dir='logs/',
                 ensemble_method='stacking',
                 evaluation='holdout',
                 metric='acc')
clf.fit(train_data)
predictions = clf.predict(test_data)

For more details, please check examples.


Installation

Before installing Soln-ML, please install the necessary library swig.

Soln-ML requires SWIG (>= 3.0, <4.0) as a build dependency, and we suggest you to download & install swig=3.0.12.

Then, you can install Soln-ML itself. There are two ways to install Soln-ML:

Installation via pip

Soln-ML is available on PyPI. You can install it by tying:

pip install soln-ml

Manual installation from the github source

git clone https://github.com/thomas-young-2013/soln-ml.git && cd soln-ml
cat requirements.txt | xargs -n 1 -L 1 pip install
python setup.py install

Tips on Installing Swig

  • for Arch Linux User:

On Arch Linux (or any distribution with swig4 as default implementation), you need to confirm that the version of SWIG is in (>= 3.0, <4.0).

We suggest you to install swig=3.0.12..

./configure
make & make install
  • for MACOSX User:

Before installing SWIG, you need to install pcre:

cd $pcre_dir
./configure
make & make install

Then add library path of /usr/local/lib for pcre:

LD_LIBRARY_PATH=/usr/local/lib:/usr/lib
export LD_LIBRARY_PATH

Finally, install Swig:

cd $swig_dir
./configure
make & make install

Before installing python package pyrfr=0.8.0, download source code from pypi:

cd $pyrfr_dir
python setup.py install
  • for Windows User:

You need to download swigwin, and then install Soln-ML.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for soln-ml, version 1.0.2
Filename, size File type Python version Upload date Hashes
Filename, size soln_ml-1.0.2-py3.5.egg (6.9 MB) File type Egg Python version 3.5 Upload date Hashes View
Filename, size soln_ml-1.0.2-py3-none-any.whl (6.8 MB) File type Wheel Python version py3 Upload date Hashes View
Filename, size soln-ml-1.0.2.tar.gz (4.1 MB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page