Skip to main content

A classifier that endeavors to solve the saddle point problem for AUC maximization.

Project description

Travis ReadTheDocs

SPPAM - Saddle point problem for AUC maximization

An AUC optimizing binomial classifier.

Contact

Rolf Carlson hrolfrc@gmail.com

Install

Use pip to install sppam.

pip install sppam

Introduction

This is a python implementation of a classifier that endeavors to solve the saddle point problem for AUC maximization. [1]

SPPAM provides classification and prediction for two classes, the binomial case. Small to medium problems are supported. This is research code and a work in progress.

SPPAM is designed for use with scikit-learn pipelines and composite estimators.

Example

from sppam import SPPAM
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split

Make a classification problem

seed = 42
X, y = make_classification(
    n_samples=30,
    n_features=5,
    n_informative=2,
    n_redundant=2,
    n_classes=2,
    random_state=seed
)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=seed)

Train the classifier

cls = SPPAM().fit(X_train, y_train)

Get the score on unseen data

cls.score(X_test, y_test)
1.0

References

[1] Natole Jr, Michael & Ying, Yiming & Lyu, Siwei. (2019). Stochastic AUC Optimization Algorithms With Linear Convergence. Frontiers in Applied Mathematics and Statistics. 5. 10.3389/fams.2019.00030.

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

sppam-0.0.5.tar.gz (8.2 kB view hashes)

Uploaded Source

Built Distribution

sppam-0.0.5-py3-none-any.whl (7.6 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