Minimalistic Python Machine Learning Toolkit.


Keywords
autoencoder, cnn, data-science, datasets, deep-learning, gan, gru, k-means-clustering, lstm, machine-learning, matplotlib, neural-networks, numpy, pca, perceptron, python, regression, rnn
License
MIT
Install
pip install ztlearn==1.1.5

Documentation

zeta-learn

zeta-learn is a minimalistic python machine learning library designed to deliver fast and easy model prototyping.

zeta-learn aims to provide an extensive understanding of machine learning through the use of straightforward algorithms and readily implemented examples making it a useful resource for researchers and students.

Dependencies

  • numpy >= 1.15.0
  • matplotlib >= 2.0.0

Features

  • Keras like Sequential API for building models.
  • Built on Numpy and Matplotlib.
  • Examples folder with readily implemented machine learning models.

Install

  • pip install ztlearn

Examples

Principal Component Analysis (PCA)

DIGITS Dataset - PCA

digits pca

MNIST Dataset - PCA

mnist pca

KMEANS

K-Means Clustering (4 Clusters)

k-means (4 clusters)

Convolutional Neural Network (CNN)

DIGITS Dataset Model Summary

DIGITS CNN

Input Shape: (1, 8, 8)
+---------------------+---------+--------------+
¦ LAYER TYPE          ¦  PARAMS ¦ OUTPUT SHAPE ¦
+---------------------+---------+--------------+
¦ Conv2D              ¦     320 ¦   (32, 8, 8) ¦
¦ Activation: RELU    ¦       0 ¦   (32, 8, 8) ¦
¦ Dropout             ¦       0 ¦   (32, 8, 8) ¦
¦ BatchNormalization  ¦   4,096 ¦   (32, 8, 8) ¦
¦ Conv2D              ¦  18,496 ¦   (64, 8, 8) ¦
¦ Activation: RELU    ¦       0 ¦   (64, 8, 8) ¦
¦ MaxPooling2D        ¦       0 ¦   (64, 7, 7) ¦
¦ Dropout             ¦       0 ¦   (64, 7, 7) ¦
¦ BatchNormalization  ¦   6,272 ¦   (64, 7, 7) ¦
¦ Flatten             ¦       0 ¦     (3,136,) ¦
¦ Dense               ¦ 803,072 ¦       (256,) ¦
¦ Activation: RELU    ¦       0 ¦       (256,) ¦
¦ Dropout             ¦       0 ¦       (256,) ¦
¦ BatchNormalization  ¦     512 ¦       (256,) ¦
¦ Dense               ¦   2,570 ¦        (10,) ¦
+---------------------+---------+--------------+

TOTAL PARAMETERS: 835,338

DIGITS Dataset Model Results

digits cnn results tiled

DIGITS Dataset Model Loss

digits model loss

DIGITS Dataset Model Accuracy

digits model accuracy

MNIST Dataset Model Summary

MNIST CNN

Input Shape: (1, 28, 28)
+---------------------+------------+--------------+
¦ LAYER TYPE          ¦     PARAMS ¦ OUTPUT SHAPE ¦
+---------------------+------------+--------------+
¦ Conv2D              ¦        320 ¦ (32, 28, 28) ¦
¦ Activation: RELU    ¦          0 ¦ (32, 28, 28) ¦
¦ Dropout             ¦          0 ¦ (32, 28, 28) ¦
¦ BatchNormalization  ¦     50,176 ¦ (32, 28, 28) ¦
¦ Conv2D              ¦     18,496 ¦ (64, 28, 28) ¦
¦ Activation: RELU    ¦          0 ¦ (64, 28, 28) ¦
¦ MaxPooling2D        ¦          0 ¦ (64, 27, 27) ¦
¦ Dropout             ¦          0 ¦ (64, 27, 27) ¦
¦ BatchNormalization  ¦     93,312 ¦ (64, 27, 27) ¦
¦ Flatten             ¦          0 ¦    (46,656,) ¦
¦ Dense               ¦ 11,944,192 ¦       (256,) ¦
¦ Activation: RELU    ¦          0 ¦       (256,) ¦
¦ Dropout             ¦          0 ¦       (256,) ¦
¦ BatchNormalization  ¦        512 ¦       (256,) ¦
¦ Dense               ¦      2,570 ¦        (10,) ¦
+---------------------+------------+--------------+

TOTAL PARAMETERS: 12,109,578

MNIST Dataset Model Results

mnist cnn results tiled

Regression

Linear Regression

linear regression

Polynomial Regression

polynomial regression

Elastic Regression

elastic regression