Skip to main content

A set of Regression Wrappers that combats bias in data for machine learning models through custom regularization techniques.

Project description

Bias Wrappers Logo

Bias Wrappers

Wrappers for standard multioutput machine learning regressors that apply regularization to training to produce better testing results, with a bias factor. Used mainly to combat bias on seemingly random/biased data. Default models are Linear Regression, however, you can input your own machine learning models with the model param.

BiasRegressorC1 uses a progressive regularization method to calculate a penalty to add to data, to prevent overfitting or underfitting due to noise via bias (explicit regularization).

BiasRegressorC2 uses another regression model to fit on incorrect predictions and correct answers, to identify patterns of overfitting or underfitting and arrive at a more correct answer (implicit regularization).

Fixes

0.5.1.3

Added the logo!

0.5.1.2

Small changes to the regressors to allow for continuity with the research paper!

0.5.1.1

Moved split_size parameter to the constructor to change it easier.

0.5.1

Redid a lot more of the C1 method to allow for more subtle changes in the right direction: it now closely matches the FakeWrapper but is a lil different. Also, removed features from the postModel of C2 to allow for more pure error learning. Also, renamed FakeWrapper to RandomWrapper.

0.5.0

Redid most of the C1 method to allow multi-output and specialized penalties through regularization. Also, created a "Fake Wrapper" that applies random penalties from 0 to 1 to test the C1 method fairly, proving the use of the specific penalties. Also, improved compatibility with native sklearn commands for metrics and model selection.

0.4.1

Small fixes regarding integration with some data, should work for all dimensions in the event of layered array for y_preds. Also, changed the dataset to use the default sklearn diabetes dataset instead of a Friedman problem, and rewrote some commands for clarity.

0.4.0

Made many fixes to original BiasRegressor, now BiasRegressorC1, and added a second one incorporating machine learning regularization through generated features.

0.3.1

Fixed Array/List Contradiction in regression, removed classifier for code compatibility, and removed a few print statements.

Removed classifier because the formula used only benefits regression problems.

Instructions

  1. Install the package with pip:
pip install biaswrappers
  1. Python Quickstart:
# Import one of the regressors from the package, regressor
from biaswrappers import regressor
from biaswrappers.baseline_tests import test_regression

# Initialize cregressor and...
# Specify a model class (or multiple, for C2) with a fit and predict method as a param.
my_regressor = regressor.BiasRegressorC1()

# Look at the baseline_tests module for easy tests
test_regression(model=my_regressor) # No return values, just prints results

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

biaswrappers-0.5.1.3.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

biaswrappers-0.5.1.3-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file biaswrappers-0.5.1.3.tar.gz.

File metadata

  • Download URL: biaswrappers-0.5.1.3.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for biaswrappers-0.5.1.3.tar.gz
Algorithm Hash digest
SHA256 9ad95957136145595c294747a6a7099916700b2e487b4ce386d86197338f77ad
MD5 b98d4173b4a6bcf9b899af274716ac7f
BLAKE2b-256 9a301ba7b74f7d9eaa7a2320a1cc2f311e68b357bb0ea0c7be2c76472e216176

See more details on using hashes here.

File details

Details for the file biaswrappers-0.5.1.3-py3-none-any.whl.

File metadata

  • Download URL: biaswrappers-0.5.1.3-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for biaswrappers-0.5.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 3be84702179ef3306c91d4eabcb3f9e0ab101568a0b6df39603800fa77cecf71
MD5 a144adffb50a1501cc345327b7952d24
BLAKE2b-256 beff2618a9eeca3c082b19ad079cbe8a752f1f7e1d926e7ab24d7bd77ff1b5cd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page