Skip to main content

A python package to simplify data modeling.

Project description

SimpleLearn

A python package to simplify and automate data science workflows such as data modelling.

Installation

$ pip install simple-learn

Primer

This package is based off Google AutoML and hopes to allow people with limited machine learning knowledge to train high performance models for their specific use cases. Similar to AutoML, SimpleLearn aims to create an automatic process of model algorithm selection, hyper parameter tuning, iterative modelling, and model assessment. Under the hood, SimpleLearn is using a greedy algorithm to select/assess the model algorithm while leveraging a grid search to tune model hyperparameters. The metrics for assessing the model can all be configured via input parameters. Keep in mind this package does NOT automate the entire process of data science and assumes you are handling tasks such as data preparation and feature engineering. A strong model algorithm cannot apologize for bad data.

Usage

The following are examples of how to use some of the classes in SimpleLearn.

SimpleClassifier

>>> from sklearn.datasets import load_iris
>>> from simple_learn.classifiers import SimpleClassifier
>>>
>>> iris = load_iris()
>>> clf = SimpleClassifier()
>>> clf.fit(iris.data, iris.target)
>>> clf
{
    "Type": "KNeighborsClassifier",
    "Training Duration": "0.0006814002990722656s",
    "GridSearch Duration": "0.17136621475219727s",
    "Parameters": {
        "metric": "euclidean",
        "n_neighbors": 4,
        "weights": "uniform"
    },
    "Metrics": {
        "Training Accuracy": 0.9866666666666667,
        "Jaccard Score": 0.9245283018867925,
        "F1 Score": 0.96
    }
}

SimpleClassifierList

>>> from sklearn.datasets import load_iris
>>> from simple_learn.classifiers import SimpleClassifierList
>>>
>>> iris = load_iris()
>>> clf_list = SimpleClassifierList()
>>> clf_list.fit(iris.data, iris.target)
>>> clf_list
{
    "Type": "KNeighborsClassifier",
    "Rank": 1,
    "Training Duration": "0.0005269050598144531s",
    "GridSearch Duration": "0.17510604858398438s",
    "Parameters": {
        "metric": "euclidean",
        "n_neighbors": 4,
        "weights": "uniform"
    },
    "Metrics": {
        "Training Accuracy": 0.9866666666666667,
        "Jaccard Score": 0.9245283018867925,
        "F1 Score": 0.96
    },
    "Index": 0
}
{
    "Type": "DecisionTreeClassifier",
    "Rank": 2,
    "Training Duration": "0.0004031658172607422s",
    "GridSearch Duration": "0.06979990005493164s",
    "Parameters": {
        "criterion": "gini",
        "max_depth": 3
    },
    "Metrics": {
        "Training Accuracy": 0.9733333333333333,
        "Jaccard Score": 0.9486989764459243,
        "F1 Score": 0.9733226623982927
    },
    "Index": 1
}
{
    "Type": "ExtraTreeClassifier",
    "Rank": 3,
    "Training Duration": "0.00039696693420410156s",
    "GridSearch Duration": "0.11928296089172363s",
    "Parameters": {
        "criterion": "gini",
        "max_depth": 4,
        "splitter": "best"
    },
    "Metrics": {
        "Training Accuracy": 0.9666666666666667,
        "Jaccard Score": 0.9611613876319759,
        "F1 Score": 0.97999799979998
    },
    "Index": 2
}
...
>>> clf = clf_list.pop(index=2) # default index is 0
>>> clf
{
    "Type": "ExtraTreeClassifier",
    "Training Duration": "0.00039696693420410156s",
    "GridSearch Duration": "0.11928296089172363s",
    "Parameters": {
        "criterion": "gini",
        "max_depth": 4,
        "splitter": "best"
    },
    "Metrics": {
        "Training Accuracy": 0.9666666666666667,
        "Jaccard Score": 0.9611613876319759,
        "F1 Score": 0.97999799979998
    }
}

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

simple_learn-0.1.0.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

simple_learn-0.1.0-py3-none-any.whl (17.7 kB view details)

Uploaded Python 3

File details

Details for the file simple_learn-0.1.0.tar.gz.

File metadata

  • Download URL: simple_learn-0.1.0.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/51.1.1 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.6

File hashes

Hashes for simple_learn-0.1.0.tar.gz
Algorithm Hash digest
SHA256 48d950dd4f58f84b9951fdc34fe85e7727419e6dc592f9393e340c9e145f1ad9
MD5 5c16f7e7d5f11a919b7accabf7ddd143
BLAKE2b-256 5917e58c9bea7647cd67e8c6c9da1f9058fd6fda174fa15d8a1f6b3ad1b903a1

See more details on using hashes here.

File details

Details for the file simple_learn-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: simple_learn-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 17.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/51.1.1 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.6

File hashes

Hashes for simple_learn-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4bd7806d0c07fc72ee5221f531b048d2629a87ec668d47d06a4259f3236fc29c
MD5 2e630895cefdd7e920d7509a44156b77
BLAKE2b-256 dd6b18f0152dd9711c5b1c9d2a9d9c4956a5d016d843e1e4bd4c716bb3966f58

See more details on using hashes here.

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