{"id":28254,"library":"sppam","title":"sppam","description":"A Python library for AUC maximization via a saddle point problem classifier. Current version: 0.1.10, early development stage with occasional releases.","status":"active","version":"0.1.10","language":"python","source_language":"en","source_url":"https://github.com/hrolfrc/sppam","tags":["machine-learning","auc-maximization","imbalanced-learning","classifier"],"install":[{"cmd":"pip install sppam","lang":"bash","label":"PyPI install"}],"dependencies":[{"reason":"Required for array operations and matrix computations.","package":"numpy","optional":false},{"reason":"Used for optimization routines and linear algebra.","package":"scipy","optional":false},{"reason":"Provides train-test split utilities and metric functions.","package":"scikit-learn","optional":true}],"imports":[{"wrong":"from sppam import SPPAM","symbol":"SPPAM","correct":"import sppam"}],"quickstart":{"code":"from sppam import SPPAM\nfrom sklearn.datasets import make_classification\nfrom sklearn.model_selection import train_test_split\n\nX, y = make_classification(n_samples=200, weights=[0.9, 0.1], random_state=42)\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)\n\nclf = SPPAM()\nclf.fit(X_train, y_train)\nscore = clf.score(X_test, y_test)\nprint(f'AUC: {score:.3f}')","lang":"python","description":"Train an SPPAM classifier on imbalanced synthetic data and evaluate AUC."},"warnings":[{"fix":"Ensure target is binary and properly encoded: y = (y == 1).astype(int) or use LabelEncoder.","message":"The SPPAM classifier expects binary labels in {0,1} or {-1,1}. Using continuous or multi-class labels will lead to errors or incorrect results.","severity":"gotcha","affected_versions":"all"},{"fix":"Explicitly set parameters if migrating from earlier versions. Check release notes for defaults.","message":"Version 0.1.0 changed the default hyperparameters (lambda_reg, learning_rate) from previous alpha releases. Older code relying on defaults may behave differently.","severity":"breaking","affected_versions":"<0.1.0 to 0.1.0+"},{"fix":"Shuffle data before calling fit: X, y = shuffle(X, y, random_state=0).","message":"The fit() method does not shuffle the data automatically. If data is ordered, performance may degrade. Manual shuffling is recommended.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'0.1.10':16 'auc':6,27 'auc-maxim':26 'classifi':13,32 'current':14 'develop':18 'earli':17 'imbalanc':30 'imbalanced-learn':29 'learn':25,31 'librari':4 'machin':24 'machine-learn':23 'maxim':7,28 'occasion':21 'point':11 'problem':12 'python':3 'releas':22 'saddl':10 'sppam':1 'stage':19 'version':15 'via':8","created_at":"2026-05-09T05:54:32.357052+00:00","updated_at":"2026-05-09T05:54:32.357052+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\n  File \"/tmp/tmppjm09396/venv/lib/python3.12/site-packages/sppam/__init__.py\", line 2, in <module>\n    from sppam.sppam import SPPAM\n  File \"/tmp/tmppjm09396/venv/lib/python3.12/site-packages/sppam/sppam.py\", line 21, in <modu"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/hrolfrc/sppam","docs":null,"changelog":null,"pypi":"https://pypi.org/project/sppam/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["ai-ml","data"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"import_fail","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-07-10","install_tag":null}}