Skip to main content

MLVTK PyPI - Python Version PyPI

A loss surface visualization tool

Png

Simple DNN trained on MNIST data set, using Adamax optimizer


Gif

Simple DNN trained on MNIST, using SGD optimizer


Gif

Simple DNN trained on MNIST, using Adam optimizer


Gif

Simple DNN trained on MNIST, using SGD optimizer

Why?

  • :shipit: Simple: A single line addition is all that is needed.
  • ❓ Informative: Gain insight into what your model is seeing.
  • 📓 Educational: See how your hyper parameters and architecture impact your models perception.

Quick Start

Requires version
python >= 3.6.1
tensorflow >= 2.3.1, < 2.4.2
plotly >=4.9.0

Install locally (Also works in google Colab!):

pip install mlvtk

Optionally for use with jupyter notebook/lab:

Notebook

pip install "notebook>=5.3" "ipywidgets==7.5"

Lab

pip install jupyterlab "ipywidgets==7.5"

# Basic JupyterLab renderer support
jupyter labextension install jupyterlab-plotly@4.10.0

# OPTIONAL: Jupyter widgets extension for FigureWidget support
jupyter labextension install @jupyter-widgets/jupyterlab-manager plotlywidget@4.10.0

Basic Example

from mlvtk.base import Vmodel
import tensorflow as tf
import numpy as np

# NN with 1 hidden layer
inputs = tf.keras.layers.Input(shape=(None,100))
dense_1 = tf.keras.layers.Dense(50, activation='relu')(inputs)
outputs = tf.keras.layers.Dense(10, activation='softmax')(dense_1)
_model = tf.keras.Model(inputs, outputs)

# Wrap with Vmodel
model = Vmodel(_model)
model.compile(optimizer=tf.keras.optimizers.SGD(),
loss=tf.keras.losses.CategoricalCrossentropy(), metrics=['accuracy'])

# All tf.keras.(Model/Sequential/Functional) methods/properties are accessible
# from Vmodel

model.summary()
model.get_config()
model.get_weights()
model.layers

# Create random example data
x = np.random.rand(3, 10, 100)
y = np.random.randint(9, size=(3, 10, 10))
xval = np.random.rand(1, 10, 100)
yval = np.random.randint(9, size=(1,10,10))

# Only difference, model.fit requires validation_data (tf.data.Dataset, or
# other container
history = model.fit(x, y, validation_data=(xval, yval), epochs=10, verbose=0)

# Calling model.surface_plot() returns a plotly.graph_objs.Figure
# model.surface_plot() will attempt to display the figure inline

fig = model.surface_plot()

# fig can save an interactive plot to an html file,
fig.write_html("surface_plot.html")

# or display the plot in jupyter notebook/lab or other compatible tool.
fig.show()

Metadata

Release files for mlvtk 1.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mlvtk 1.0.3
File Size Uploaded Provenance Actions
mlvtk-1.0.3.tar.gz 13.5 kB Without provenance Details for mlvtk-1.0.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mlvtk 1.0.3
File Interpreter ABI Platform Actions
mlvtk-1.0.3-py3-none-any.whl Python 3 none any Details for mlvtk-1.0.3-py3-none-any.whl

Total release size: 27.6 kB

Release files / mlvtk-1.0.3.tar.gz

Download URL mlvtk-1.0.3.tar.gz
Size 13.5 kB
Tags Source
SHA-256 checksum
How to use checksums
d4bc51c15ba23f6e442cfb22a7b7dda92b6629ab870a308012cbe46b346f7155
BLAKE2b-256 checksum
How to use checksums
76651ff5bf340f4041e424e10a4b4cf946e17fdf2657c46a6f13bc7c8352e93c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.2 CPython/3.8.6 Linux/5.11.6-artix1-1

Release files / mlvtk-1.0.3-py3-none-any.whl

Download URL mlvtk-1.0.3-py3-none-any.whl
Size 14.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d181c91666994172cd3fce149b8bcb1cce7a330b6ffb3778feeb69b548c91ba3
BLAKE2b-256 checksum
How to use checksums
a7df114ff83effd0e88ba6f113f46ba71ce5ed64adb900e878a4a7e16a226a80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.2 CPython/3.8.6 Linux/5.11.6-artix1-1

Security for mlvtk 1.0.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page