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
A concept I came up which ditches the idea of "layers" in a neural network.

Dynet A concept I came up which ditches the idea of "layers" in a neural network. Install Copy Dynet.py to your project. Run the example Install matpl

Anik Patel 4 Dec 05, 2021
Metric learning algorithms in Python

metric-learn: Metric Learning in Python metric-learn contains efficient Python implementations of several popular supervised and weakly-supervised met

1.3k Dec 28, 2022
A simple python program which predicts the success of a movie based on it's type, actor, actress and director

Movie-Success-Prediction A simple python program which predicts the success of a movie based on it's type, actor, actress and director. The program us

Mahalinga Prasad R N 1 Dec 17, 2021
AutoX是一个高效的自动化机器学习工具,它主要针对于表格类型的数据挖掘竞赛。 它的特点包括: 效果出色、简单易用、通用、自动化、灵活。

English | 简体中文 AutoX是什么? AutoX一个高效的自动化机器学习工具,它主要针对于表格类型的数据挖掘竞赛。 它的特点包括: 效果出色: AutoX在多个kaggle数据集上,效果显著优于其他解决方案(见效果对比)。 简单易用: AutoX的接口和sklearn类似,方便上手使用。

4Paradigm 431 Dec 28, 2022
Arquivos do curso online sobre a estatística voltada para ciência de dados e aprendizado de máquina.

Estatistica para Ciência de Dados e Machine Learning Arquivos do curso online sobre a estatística voltada para ciência de dados e aprendizado de máqui

Renan Barbosa 1 Jan 10, 2022
Apache Spark & Python (pySpark) tutorials for Big Data Analysis and Machine Learning as IPython / Jupyter notebooks

Spark Python Notebooks This is a collection of IPython notebook/Jupyter notebooks intended to train the reader on different Apache Spark concepts, fro

Jose A Dianes 1.5k Jan 02, 2023
Stacked Generalization (Ensemble Learning)

Stacking (stacked generalization) Overview ikki407/stacking - Simple and useful stacking library, written in Python. User can use models of scikit-lea

Ikki Tanaka 192 Dec 23, 2022
Coursera Machine Learning - Python code

Coursera Machine Learning This repository contains python implementations of certain exercises from the course by Andrew Ng. For a number of assignmen

Jordi Warmenhoven 859 Dec 10, 2022
Machine Learning Model to predict the payment date of an invoice when it gets created in the system.

Payment-Date-Prediction Machine Learning Model to predict the payment date of an invoice when it gets created in the system.

15 Sep 09, 2022
A simple application that calculates the probability distribution of a normal distribution

probability-density-function General info An application that calculates the probability density and cumulative distribution of a normal distribution

1 Oct 25, 2022
Crunchdao - Python API for the Crunchdao machine learning tournament

Python API for the Crunchdao machine learning tournament Interact with the Crunc

3 Jan 19, 2022
Machine-care - A simple python script to take care of simple maintenance tasks

Machine care An simple python script to take care of simple maintenance tasks fo

2 Jul 10, 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
DeepSpeed is a deep learning optimization library that makes distributed training easy, efficient, and effective.

DeepSpeed is a deep learning optimization library that makes distributed training easy, efficient, and effective. 10x Larger Models 10x Faster Trainin

Microsoft 8.4k Dec 30, 2022
Retrieve annotated intron sequences and classify them as minor (U12-type) or major (U2-type)

(intron I nterrogator and C lassifier) intronIC is a program that can be used to classify intron sequences as minor (U12-type) or major (U2-type), usi

Graham Larue 4 Jul 26, 2022
Real-time stream processing for python

Streamz Streamz helps you build pipelines to manage continuous streams of data. It is simple to use in simple cases, but also supports complex pipelin

Python Streamz 1.1k Dec 28, 2022
My project contrasts K-Nearest Neighbors and Random Forrest Regressors on Real World data

kNN-vs-RFR My project contrasts K-Nearest Neighbors and Random Forrest Regressors on Real World data In many areas, rental bikes have been launched to

1 Oct 28, 2021
Distributed Tensorflow, Keras and PyTorch on Apache Spark/Flink & Ray

A unified Data Analytics and AI platform for distributed TensorFlow, Keras and PyTorch on Apache Spark/Flink & Ray What is Analytics Zoo? Analytics Zo

2.5k Dec 28, 2022
High performance Python GLMs with all the features!

High performance Python GLMs with all the features!

QuantCo 200 Dec 14, 2022
Machine Learning from Scratch

Machine Learning from Scratch Author: Shengxuan Wang From: Oregon State University Content: Building Machine Learning model from Scratch, without usin

ShawnWang 0 Jul 05, 2022