Skip to content

Latest commit

 

History

History
113 lines (68 loc) · 4.13 KB

Tutorial.md

File metadata and controls

113 lines (68 loc) · 4.13 KB

Tutorial : Minotor Basics

This page explains the basics of monitoring your project using Minotor, once the installation is completed in the same environment as your project.

Important: for now, Minotor is only accepting data that are Numpy arrays or Pandas DataFrame.

Commands

$ minotor ➡️ starts the Minotor interface

$ minotor iris-example ➡️ fills the Minotor interface with sample data from the iris dataset

$ minotor clean ➡️ cleans both training and prediction data

$ minotor clean-training ➡️ cleans training data

$ minotor clean-prediction ➡️ cleans prediction data

Import your training data

First of all, you need to import your training data to be able to compare it to the prediction data afterwards. It will enable Minotor to compute some relevant statistics.

Using the Python decorator

Use the related decorator on your training pipeline.

from minotor.decorators.feature_monitoring import monitor_training_features

@monitor_training_features
def train(data):
    # Do stuff with your data and train your model

Using the interface

When no data has been imported, you will find on the dashboard a button which will let you do so.

Don't forget that for now, Minotor is only accepting data that are Numpy arrays or Pandas DataFrame, so you must pickle one of those two types.

If you can't see the button, you probably have some data already imported. To get rid of it, use the minotor clean command mentionned here.

Track your prediction data

Use the decorator on your inference function to track continuously your inference data and monitor the differences with your training data.

from minotor.decorators.feature_monitoring import monitor_prediction_features

@monitor_prediction_features
def predict(data):
    # Do stuff with your data and predict through your model

⚠️ In order to compare those data, the training data and the prediction data you are importing in Minotor must have the same preprocessing, if any ⚠️

Inspect your data

Quick feature analysis and projection

Layout

In the table at the top, you can select one ore several feature.

  • when one feature is selected, you can see the distribution graphs of both the training and prediction data, a scatter plot with the value of this feature by order of appearance of the inputs, but also a table with the statistics related to this feature.
  • when several values are selected, the graph you see is the projection of all the features selected on two axis, using the T-SNE algorithm, for both the training and prediction data.

How to interpret this ?

With those visual representations, it is fairly easy! The more the blue dots (or curve) are separated from the grey dots (or curve), the more your data is drifted / drifting.

Input selection

On the projection graph, you can select the dots which seems suspicious to you, in order to analyze them more precisely.

Input analysis

Now that you have selected some inputs, they are displayed below in a dataframe.

Note: once again, if you don't see all the columns, do not panic. Just click on the searchable dropdown and toggle the columns you want or don't want to see.

Then, you have 3 options:

  • click on a column, and you will find the feature analysis your familiar with (the same than the one above)
  • click on a cell and you will find the feature analysis corresponding to this cell, with the value of the related input highlighted. This way you can see at a glance if this input has a normal value or not.
  • click on a row (a.k.a, an input) and all the distribution graphs of its features will be displayed, with its value highlighted for each feature.

Questions ?

Something is missing ? Please let us know at contact@datarmada.com