Skip to main content

Data exploration tool for assessing optimal classification methods

Project description

Coverage Status example workflow

Polyssifier

Polyssifier runs a multitude of machine learning models on data. It reports scores, confusion matrices, predictions, and plots the scores ranked by classifier performance.

Installation

pip install polyssifier

How to use

For classification

from polyssifier import poly
# Load data
data = np.load("/path/to/data.npy")
label = np.load("/path/to/labels.npy")
# Run analysis
report = poly(data,label, n_folds=8)
# Plot results
report.plot_scores()
report.plot_features(ntop=10)

For Regression

from polyssifier import polyr
# Load data
data = np.load("/path/to/data.npy")
target = np.load("/path/to/target.npy")
# Run analysis
report = polyr(data, target, n_folds=8)
# Plot results
report.plot_scores()
report.plot_features(ntop=10)

Note for Windows

Windows and Linux multiprocessing are performed differently. To run polyssifier in Windows, an extra line of code must be added. The below example is for classification, but the same addition must also be made for regression.

from polyssifier import poly
# Load data
data = np.load("/path/to/data.npy")
label = np.load("/path/to/labels.npy")
# Run analysis
if name == '__main__':
 report = poly(data,label, n_folds=8)
 # Plot results
 report.plot_scores()
 report.plot_features(ntop=10)

In the terminal

poly data.npy label.npy --concurrency 10

Requirements

  • Sklearn
  • Numpy
  • Pandas

Features

  • Cross validated scores.
    • Report f1 score (scoring='f1') or ROC (scoring='auc') for classification
    • Report MSE or R^2 for regression
  • Feature ranking for compatible models (Logistic Regression, Linear SVM, Random Forest)
  • Parallel processing.
    • Control the number of threads with 'concurrency'.
    • We recommend setting concurrency to half the number of Cores in your system.
  • Saves trained models for future use in case of server malfunction.
    • Set project_name for identifying a experiment.
  • Activate feature selection step setting
    • feature_selection=True
  • Automatically scales your data with scale=True

Example: on sample/example.ipynb

It includes the following classifiers:

  • Multilayer Perceptron
  • Nearest Neighbors
  • Linear SVM
  • RBF SVM
  • Decision Tree
  • Random Forest
  • Logistic Regression
  • Naive Bayes
  • Voting Classifier

and the following regressors:

  • Linear Regression
  • Bayesian Ridge
  • PassiveAggressiveRegressor
  • GaussianProcessRegressor
  • Ridge
  • Lasso
  • Lars
  • LassoLars
  • OrthogonalMatchingPursuit
  • ElasticNet

You can exclude some of this models by providing a list of names as follows:

from polyssifier import poly

report = poly(data,label, n_folds=8,
              exclude=['Multilayer Perceptron'])

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

polyssifier-1.0.15.tar.gz (22.5 kB view hashes)

Uploaded Source

Built Distribution

polyssifier-1.0.15-py2.py3-none-any.whl (20.3 kB view hashes)

Uploaded Python 2 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