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 for RC Cars

Suiron Machine Learning for RC Cars Prediction visualization (green = actual, blue = prediction) Click the video below to see it in action! Dependenci

Kendrick Tan 706 Jan 02, 2023
Traingenerator 🧙 A web app to generate template code for machine learning ✨

Traingenerator 🧙 A web app to generate template code for machine learning ✨ 🎉 Traingenerator is now live! 🎉

Johannes Rieke 1.2k Jan 07, 2023
ML Optimizers from scratch using JAX

Toy implementations of some popular ML optimizers using Python/JAX

Shreyansh Singh 38 Jul 29, 2022
ML-powered Loan-Marketer Customer Filtering Engine

In Loan-Marketing business employees are required to call the user's to buy loans of several fields and in several magnitudes. If employees are calling everybody in the network it is also very length

Sagnik Roy 13 Jul 02, 2022
Combines MLflow with a database (PostgreSQL) and a reverse proxy (NGINX) into a multi-container Docker application

Combines MLflow with a database (PostgreSQL) and a reverse proxy (NGINX) into a multi-container Docker application (with docker-compose).

Philip May 2 Dec 03, 2021
TensorFlow implementation of an arbitrary order Factorization Machine

This is a TensorFlow implementation of an arbitrary order (=2) Factorization Machine based on paper Factorization Machines with libFM. It supports: d

Mikhail Trofimov 785 Dec 21, 2022
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
PySpark ML Bank Churn Prediction

PySpark-Bank-Churn Surname: corresponds to the record (row) number and has no effect on the output. CreditScore: contains random values and has no eff

kemalgunay 2 Nov 11, 2021
A model to predict steering torque fully end-to-end

torque_model The torque model is a spiritual successor to op-smart-torque, which was a project to train a neural network to control a car's steering f

Shane Smiskol 4 Jun 03, 2022
2021 Machine Learning Security Evasion Competition

2021 Machine Learning Security Evasion Competition This repository contains code samples for the 2021 Machine Learning Security Evasion Competition. P

Fabrício Ceschin 8 May 01, 2022
DistML is a Ray extension library to support large-scale distributed ML training on heterogeneous multi-node multi-GPU clusters

DistML is a Ray extension library to support large-scale distributed ML training on heterogeneous multi-node multi-GPU clusters

27 Aug 19, 2022
A Python toolkit for rule-based/unsupervised anomaly detection in time series

Anomaly Detection Toolkit (ADTK) Anomaly Detection Toolkit (ADTK) is a Python package for unsupervised / rule-based time series anomaly detection. As

Arundo Analytics 888 Dec 30, 2022
Neighbourhood Retrieval (Nearest Neighbours) with Distance Correlation.

Neighbourhood Retrieval with Distance Correlation Assign Pseudo class labels to datapoints in the latent space. NNDC is a slim wrapper around FAISS. N

The Learning Machines 1 Jan 16, 2022
Mars is a tensor-based unified framework for large-scale data computation which scales numpy, pandas, scikit-learn and Python functions.

Mars is a tensor-based unified framework for large-scale data computation which scales numpy, pandas, scikit-learn and many other libraries. Documenta

2.5k Jan 07, 2023
neurodsp is a collection of approaches for applying digital signal processing to neural time series

neurodsp is a collection of approaches for applying digital signal processing to neural time series, including algorithms that have been proposed for the analysis of neural time series. It also inclu

NeuroDSP 224 Dec 02, 2022
[HELP REQUESTED] Generalized Additive Models in Python

pyGAM Generalized Additive Models in Python. Documentation Official pyGAM Documentation: Read the Docs Building interpretable models with Generalized

daniel servén 747 Jan 05, 2023
Simple, fast, and parallelized symbolic regression in Python/Julia via regularized evolution and simulated annealing

Parallelized symbolic regression built on Julia, and interfaced by Python. Uses regularized evolution, simulated annealing, and gradient-free optimization.

Miles Cranmer 924 Jan 03, 2023
This repository contains full machine learning pipeline of the Zillow Houses competition on Kaggle platform.

Zillow-Houses This repository contains full machine learning pipeline of the Zillow Houses competition on Kaggle platform. Pipeline is consists of 10

2 Jan 09, 2022
fastFM: A Library for Factorization Machines

Citing fastFM The library fastFM is an academic project. The time and resources spent developing fastFM are therefore justified by the number of citat

1k Dec 24, 2022
MaD GUI is a basis for graphical annotation and computational analysis of time series data.

MaD GUI Machine Learning and Data Analytics Graphical User Interface MaD GUI is a basis for graphical annotation and computational analysis of time se

Machine Learning and Data Analytics Lab FAU 10 Dec 19, 2022