Skip to main content

End-to-End Machine Learning Workflow Library

Project description

ThinkML

ThinkML is a comprehensive machine learning library built on top of scikit-learn, providing advanced validation, feature engineering, and model selection capabilities with robust edge case handling.

IMPORTANT: This library is exclusively available from the author's GitHub account. It is not and will not be available on PyPI or any other package repository. The only official source is: https://github.com/ArpanChaudhary/ThinkML

Features

1. Advanced Validation Methods

  • Nested Cross-Validation with enhanced error handling
  • Time Series Validation with gap support
  • Stratified Group Validation
  • Bootstrap Validation with stratification

2. Feature Engineering

  • Automated feature creation
  • Intelligent feature selection
  • Support for various feature types:
    • Polynomial features
    • Interaction features
    • Domain-specific features

3. Robust Preprocessing

  • Advanced scaling with edge case handling
  • Support for:
    • Empty datasets
    • Single row datasets
    • Missing data
    • Extreme values
    • Highly correlated features

4. Performance

  • Efficient handling of large datasets (1M+ rows)
  • Memory-optimized validation methods
  • Parallel processing support
  • Chunked data processing

Installation

ThinkML is exclusively available from the author's GitHub repository. It is not available on PyPI or any other package repository. Here are the only official installation methods:

Method 1 (Recommended)

pip install git+https://github.com/ArpanChaudhary/ThinkML.git

Method 2

# Clone the repository
git clone https://github.com/ArpanChaudhary/ThinkML.git

# Change to the project directory
cd ThinkML

# Install the package
pip install -e .

Method 3

# Download the ZIP file from https://github.com/ArpanChaudhary/ThinkML
# Extract the ZIP file
# Navigate to the extracted directory
cd ThinkML

# Install the package
pip install -e .

Note: Any other installation method or source is not official and may contain unauthorized modifications. Always install from the official GitHub repository: https://github.com/ArpanChaudhary/ThinkML

Dependencies

Before installing ThinkML, ensure you have the following dependencies:

  • Python 3.6+
  • scikit-learn >= 0.24.0
  • numpy >= 1.19.0
  • pandas >= 1.2.0

You can install these dependencies automatically during ThinkML installation, or manually:

pip install scikit-learn>=0.24.0 numpy>=1.19.0 pandas>=1.2.0

Quick Start

from thinkml.validation import NestedCrossValidator
from thinkml.feature_engineering import create_features
from sklearn.ensemble import RandomForestClassifier

# Initialize validator
validator = NestedCrossValidator(
    estimator=RandomForestClassifier(),
    param_grid={'n_estimators': [100, 200]},
    inner_cv=3,
    outer_cv=5
)

# Create features and validate
X_new = create_features(X)
results = validator.fit_predict(X_new, y)

print(f"Mean Score: {results['mean_score']:.3f} ± {results['std_score']:.3f}")

Documentation

For detailed documentation, visit our documentation site:

Requirements

  • Python 3.6+
  • scikit-learn >= 0.24.0
  • numpy >= 1.19.0
  • pandas >= 1.2.0

Contributing

We welcome contributions! Please see our Contributing Guide for details.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Citation

If you use ThinkML in your research, please cite:

@software{thinkml2025,
  title = {ThinkML: Advanced Validation and Feature Engineering for Machine Learning},
  author = {Chaudhary, Arpan},
  year = {2025},
  version = {1.0},
  url = {https://github.com/ArpanChaudhary/ThinkML}
}

Acknowledgments

  • Thanks to all contributors who have helped shape ThinkML
  • Inspired by various open-source machine learning libraries
  • Special thanks to the Python data science community

Contact

Arpan Chaudhary - @ArpanChaudhary

Project Link: https://github.com/ArpanChaudhary/ThinkML

Support

If you encounter any issues or have questions, please:

  1. Check the documentation
  2. Search existing issues
  3. Create a new issue if needed

Roadmap

  • Enhanced deep learning support
  • Automated hyperparameter tuning
  • Distributed computing support
  • Model deployment tools
  • Web API interface
  • GUI for interactive model building

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

thinkml-1.0.1.tar.gz (185.0 kB view details)

Uploaded Source

Built Distribution

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

thinkml-1.0.1-py3-none-any.whl (199.6 kB view details)

Uploaded Python 3

File details

Details for the file thinkml-1.0.1.tar.gz.

File metadata

  • Download URL: thinkml-1.0.1.tar.gz
  • Upload date:
  • Size: 185.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for thinkml-1.0.1.tar.gz
Algorithm Hash digest
SHA256 329bc32e6b5481fc5f68e2b3daa4f8b4eb912148dadde68f9c9eeb9a444e1a74
MD5 0cb9d16be5aaba948969e1ad55c21b35
BLAKE2b-256 8247ba313d29022ade8678b9b5347afbeda15880437df92963bd7508e8019f20

See more details on using hashes here.

File details

Details for the file thinkml-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: thinkml-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 199.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for thinkml-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b37e4c107c92e3607e42091b60a56c57cda2408253a5495993514718555fd904
MD5 2db31979bab263ed77c96aed488e817e
BLAKE2b-256 37c814ee35684fcba7da1d65551c07174c25b429ebf6ccfb3ca10f9209ad9630

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