A Lucid Framework for Transparent and Interpretable Machine Learning Models.

Overview

https://raw.githubusercontent.com/lucidmode/lucidmode/main/images/lucidmode_logo.png



Documentation Status Version License Version Visits

Currently a Beta-Version


lucidmode is an open-source, low-code and lightweight Python framework for transparent and interpretable machine learning models. It has built in machine learning methods optimized for visual interpretation of some of the most relevant calculations.

Documentation

Installation

  • With package manager (coming soon)

Install by using pip package manager:

pip install lucidmode
  • Cloning repository

Clone entire github project

[email protected]:lucidmode/lucidmode.git

and then install dependencies

pip install -r requirements.txt

Models

Artificial Neural Network

Feedforward Multilayer perceptron with backpropagation.

  • fit: Fit model to data
  • predict: Prediction according to model

Initialization, Activations, Cost functions, regularization, optimization

  • Weights Initialization: With 4 types of criterias (zeros, xavier, common, he)
  • Activation Functions: sigmoid, tanh, ReLU
  • Cost Functions: Sum of Squared Error, Binary Cross-Entropy, Multi-Class Cross-Entropy
  • Regularization: L1, L2, ElasticNet for weights in cost function and in gradient updating
  • Optimization: Weights optimization with Gradient Descent (GD, SGD, Batch) with learning rate
  • Execution: Callback (metric threshold), History (Cost and metrics)
  • Hyperparameter Optimization: Random Grid Search with Memory

Complementary

  • Metrics: Accuracy, Confusion Matrix (Binary and Multiclass), Confusion Tensor (Multiclass OvR)
  • Visualizations: Cost evolution
  • Public Datasets: MNIST, Fashion MNIST
  • Special Datasets: OHLCV + Symbolic Features of Cryptocurrencies (ETH, BTC)

Important Links

Author/Principal Maintainer

Francisco Munnoz (IFFranciscoME) Is an associate professor of financial engineering and financial machine learning ITESO (Western Institute of Technology and Higher Education)

License

GNU General Public License v3.0

Permissions of this strong copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights.

Contact: For more information in reggards of this repo, please contact [email protected]

You might also like...
Implementations of Machine Learning models, Regularizers, Optimizers and different Cost functions.

Linear Models Implementations of LinearRegression, LassoRegression and RidgeRegression with appropriate Regularizers and Optimizers. Linear Regression

Tangram makes it easy for programmers to train, deploy, and monitor machine learning models.
Tangram makes it easy for programmers to train, deploy, and monitor machine learning models.

Tangram Website | Discord Tangram makes it easy for programmers to train, deploy, and monitor machine learning models. Run tangram train to train a mo

SageMaker Python SDK is an open source library for training and deploying machine learning models on Amazon SageMaker.
SageMaker Python SDK is an open source library for training and deploying machine learning models on Amazon SageMaker.

SageMaker Python SDK SageMaker Python SDK is an open source library for training and deploying machine learning models on Amazon SageMaker. With the S

Model Validation Toolkit is a collection of tools to assist with validating machine learning models prior to deploying them to production and monitoring them after deployment to production.

Model Validation Toolkit is a collection of tools to assist with validating machine learning models prior to deploying them to production and monitoring them after deployment to production.

easyNeuron is a simple way to create powerful machine learning models, analyze  data and research cutting-edge AI.
easyNeuron is a simple way to create powerful machine learning models, analyze data and research cutting-edge AI.

easyNeuron is a simple way to create powerful machine learning models, analyze data and research cutting-edge AI.

A fast, distributed, high performance gradient boosting (GBT, GBDT, GBRT, GBM or MART) framework based on decision tree algorithms, used for ranking, classification and many other machine learning tasks.

Light Gradient Boosting Machine LightGBM is a gradient boosting framework that uses tree based learning algorithms. It is designed to be distributed a

Automated modeling and machine learning framework FEDOT
Automated modeling and machine learning framework FEDOT

This repository contains FEDOT - an open-source framework for automated modeling and machine learning (AutoML). It can build custom modeling pipelines for different real-world processes in an automated way using an evolutionary approach. FEDOT supports classification (binary and multiclass), regression, clustering, and time series prediction tasks.

machine learning model deployment project of Iris classification model in a minimal UI using flask web framework and deployed it in Azure cloud using Azure app service
machine learning model deployment project of Iris classification model in a minimal UI using flask web framework and deployed it in Azure cloud using Azure app service

This is a machine learning model deployment project of Iris classification model in a minimal UI using flask web framework and deployed it in Azure cloud using Azure app service. We initially made this project as a requirement for an internship at Indian Servers. We are now making it open to contribution.

QuickAI is a Python library that makes it extremely easy to experiment with state-of-the-art Machine Learning models.
QuickAI is a Python library that makes it extremely easy to experiment with state-of-the-art Machine Learning models.

QuickAI is a Python library that makes it extremely easy to experiment with state-of-the-art Machine Learning models.

Releases(v0.4-beta1.0)
  • v0.4-beta1.0(Apr 29, 2021)

    Metrics

    • Calculation of several metrics for classification sensitivity (TPR), specificity (TNR), accuracy (acc), likelihood ratio (positive), likelihood ratio (negative), confusion matrix (binary and multiclass) confusion tensor (binary for every class in multi-class)

    Sequential Class

    • Move the cost_f and cost_r parameters to be specified from the formation method, leave the class instantiation with just the model architecture

    • Move the init_weights method to be specified from the formation method

    Execution

    • Create formation method in the Sequential Class, with the following parameters init, cost, metrics, optimizer

    • Store selected metrics in Train and Validation History

    Visualizations

    • Select metrics for verbose output
    Source code(tar.gz)
    Source code(zip)
  • v0.3-beta1.0(Apr 27, 2021)

    Regularization:

    • On weights and biases, location: gradients

      • L1, L2 and ElasticNet
    • On weights and biases, location: cost function

      • L1, L2 and ElasticNet

    Numerical Stability:

    • in functions.py, in cost, added a 1e-25 value to A, to avoid a divide by zero and invalid multiply cases in computations of np.log(A)

    Data Handling:

    • train and validation cost

    Visualization:

    • print: verbose of cost evolution

    Documentation:

    • Improve README
    Source code(tar.gz)
    Source code(zip)
  • v0.2-beta1.0(Apr 27, 2021)

    Files:

    • complete data set: MNIST
    • complete data set: 'fashion-MNIST'

    Tests passed:

    • fashion MNIST
    • previous release tests

    Topology

    • single hidden layer (tested)
    • 1 - 2 hidden layers (tested)
    • different activation functions among hidden layer

    Activation functions:

    • For hidden -> Sigmoid, Tanh, ReLU (tested and not working)
    • For output -> Softmax

    Cost Functions:

    • 'binary-logloss' (Binary-class Cross-Entropy)
    • 'multi-logloss' (Multi-class Cross-Entropy)

    Metrics:

    • Confusion matrix (Multi-class)
    • Accuracy (Multi-class)
    Source code(tar.gz)
    Source code(zip)
  • v0.1-beta1.0(Apr 26, 2021)

    First release!

    Tests passed:

    • Random XOR data classification

    Sequential model:

    • hidden_l: Number of neurons per hidden layer (list of int, with a length of l_hidden)
    • hidden_a: Activation of hidden layers (list of str, with length l_hidden)
    • output_n: Number of neurons in the output layer (1)
    • output_a: Activation of output layer (str)

    Layer transformations:

    • linear

    Activation functions:

    • For hidden -> Sigmoid, Tanh
    • For output -> Sigmoid (Binary)

    Weights Initialization:

    • Xavier normal, Xavier uniform, common uniform, according to [1]

    Training Schemes:

    • Gradient Descent

    Cost Functions:

    • Sum of Squared Error (SSE) or Residual Sum of Squares (RSS)

    Metrics:

    • Accuracy (Binary)
    Source code(tar.gz)
    Source code(zip)
    LucidNet_v0.1-beta1.0.zip(111.97 MB)
Owner
lucidmode
A lucid framework for interpretable machine learning models
lucidmode
machine learning model deployment project of Iris classification model in a minimal UI using flask web framework and deployed it in Azure cloud using Azure app service

This is a machine learning model deployment project of Iris classification model in a minimal UI using flask web framework and deployed it in Azure cloud using Azure app service. We initially made th

Krishna Priyatham Potluri 73 Dec 01, 2022
Forecasting prices using Facebook/Meta's Prophet model

CryptoForecasting using Machine and Deep learning (Part 1) CryptoForecasting using Machine Learning The main aspect of predicting the stock-related da

1 Nov 27, 2021
scikit-learn is a python module for machine learning built on top of numpy / scipy

About scikit-learn is a python module for machine learning built on top of numpy / scipy. The purpose of the scikit-learn-tutorial subproject is to le

Gael Varoquaux 122 Dec 12, 2022
PyPOTS - A Python Toolbox for Data Mining on Partially-Observed Time Series

A python toolbox/library for data mining on partially-observed time series, supporting tasks of forecasting/imputation/classification/clustering on incomplete multivariate time series with missing va

Wenjie Du 179 Dec 31, 2022
Data Efficient Decision Making

Data Efficient Decision Making

Microsoft 197 Jan 06, 2023
Regularization and Feature Selection in Least Squares Temporal Difference Learning

Regularization and Feature Selection in Least Squares Temporal Difference Learning Description This is Python implementations of Least Angle Regressio

Mina Parham 0 Jan 18, 2022
Python module for data science and machine learning users.

dsnk-distributions package dsnk distribution is a Python module for data science and machine learning that was created with the goal of reducing calcu

Emmanuel ASIFIWE 1 Nov 23, 2021
A python library for Bayesian time series modeling

PyDLM Welcome to pydlm, a flexible time series modeling library for python. This library is based on the Bayesian dynamic linear model (Harrison and W

Sam 438 Dec 17, 2022
UpliftML: A Python Package for Scalable Uplift Modeling

UpliftML is a Python package for scalable unconstrained and constrained uplift modeling from experimental data. To accommodate working with big data, the package uses PySpark and H2O models as base l

Booking.com 254 Dec 31, 2022
A repository to work on Machine Learning course. Select an algorithm to classify writer's gender, of Hebrew texts.

MachineLearning A repository to work on Machine Learning course. Select an algorithm to classify writer's gender, of Hebrew texts. Tested algorithms:

Haim Adrian 1 Feb 01, 2022
Fit interpretable models. Explain blackbox machine learning.

InterpretML - Alpha Release In the beginning machines learned in darkness, and data scientists struggled in the void to explain them. Let there be lig

InterpretML 5.2k Jan 09, 2023
Laporan Proyek Machine Learning - Azhar Rizki Zulma

Laporan Proyek Machine Learning - Azhar Rizki Zulma Project Overview Domain proyek yang dipilih dalam proyek machine learning ini adalah mengenai hibu

Azhar Rizki Zulma 6 Mar 12, 2022
A Python package for time series classification

pyts: a Python package for time series classification pyts is a Python package for time series classification. It aims to make time series classificat

Johann Faouzi 1.4k Jan 01, 2023
This repository contains the code to predict house price using Linear Regression Method

House-Price-Prediction-Using-Linear-Regression The dataset I used for this personal project is from Kaggle uploaded by aariyan panchal. Link of Datase

0 Jan 28, 2022
Send rockets to Mars with artificial intelligence(Genetic algorithm) in python.

Send Rockets To Mars With AI Send rockets to Mars with artificial intelligence(Genetic algorithm) in python. Tools Python 3 EasyDraw How to Play Insta

Mohammad Dori 3 Jul 15, 2022
A statistical library designed to fill the void in Python's time series analysis capabilities, including the equivalent of R's auto.arima function.

pmdarima Pmdarima (originally pyramid-arima, for the anagram of 'py' + 'arima') is a statistical library designed to fill the void in Python's time se

alkaline-ml 1.3k Dec 22, 2022
A Powerful Serverless Analysis Toolkit That Takes Trial And Error Out of Machine Learning Projects

KXY: A Seemless API to 10x The Productivity of Machine Learning Engineers Documentation https://www.kxy.ai/reference/ Installation From PyPi: pip inst

KXY Technologies, Inc. 35 Jan 02, 2023
SageMaker Python SDK is an open source library for training and deploying machine learning models on Amazon SageMaker.

SageMaker Python SDK SageMaker Python SDK is an open source library for training and deploying machine learning models on Amazon SageMaker. With the S

Amazon Web Services 1.8k Jan 01, 2023
Tangram makes it easy for programmers to train, deploy, and monitor machine learning models.

Tangram Website | Discord Tangram makes it easy for programmers to train, deploy, and monitor machine learning models. Run tangram train to train a mo

Tangram 1.4k Jan 05, 2023
Pydantic based mock data generation

This library offers powerful mock data generation capabilities for pydantic based models. It can also be used with other libraries that use pydantic as a foundation, for example SQLModel, Beanie and

Na'aman Hirschfeld 396 Dec 28, 2022