News

Introducing TensorWatch, a debugging and visualization tool

3 min read

Yesterday, the team at Microsoft introduced TensorWatch, an open source debugging and visualization tool designed for deep learning, data science, and reinforcement learning.

TensorWatch works in Jupyter Notebook and shows real-time visualization of machine learning training.It can also perform several key analysis tasks for models and data. It is flexible and extensible so that users can build their own custom visualizations, UIs, and dashboards. It can execute arbitrary queries against live ML training process and return a stream as a result of the query and view this stream by using a visualizer.

TensorWatch is under development and aims to provide a platform for debugging machine learning in an easy to use, extensible, and hackable package.

The official blog post reads, “We like to think of TensorWatch as the Swiss Army knife of debugging tools with many advanced capabilities researchers and engineers will find helpful in their work. We presented TensorWatch at the 2019 ACM SIGCHI Symposium on Engineering Interactive Computing Systems.”

Key features of TensorWatch

Easy customization and visualizations

TensorWatch uses Jupyter Notebook instead of prepackaged user interfaces that are often difficult to customize. It provides an interactive debugging of real-time training processes that either uses a composable UI in Jupyter Notebooks or live shareable dashboards in Jupyter Lab.

As TensorWatch is a Python library, users can now build their own custom UIs or can use TensorWatch in the vast Python data science ecosystem. It supports several standard visualization types, including histograms, bar charts, pie charts, and 3D variations.

Streams

As per the architecture of TensorWatch, data and other objects such as files, console, sockets, cloud storage, and even visualizations themselves are considered as streams. TensorWatch streams can listen to other streams that leads to the creation of custom data flow graphs. TensorWatch allows users to implement a variety of advanced scenarios.

The blog post reads, “For example, you can render many streams into the same visualization, or one stream can be rendered in many visualizations simultaneously, or a stream can be persisted in many files, or not persisted at all.”

Lazy logging mode

With TensorWatch, the team  introduced lazy logging mode which doesn’t require explicit logging of all the information beforehand. TensorWatch helps users to observe and track variables including large models or entire batches during the training.

It allows users to perform interactive queries that can run in the context of these variables and further returns the streams as a result.

The blog reads, “For example, you can write a lambda expression that computes mean weight gradients in each layer in the model at the completion of each batch and send the result as a stream of tensors that can be plotted as a bar chart.”

Users seem to be excited about this news as TensorWatch will help visualize streams of data in real time.

To know more about this news, check out Microsoft’s blog post.

Read Next

Docker and Microsoft collaborate over WSL 2, future of Docker Desktop for Windows is near

Microsoft finally makes Hyper-V Server 2019 available, after delay of more than six months

Microsoft quietly deleted 10 million faces from MS Celeb, the world’s largest facial recognition database

Amrata Joshi

Share
Published by
Amrata Joshi

Recent Posts

Top life hacks for prepping for your IT certification exam

I remember deciding to pursue my first IT certification, the CompTIA A+. I had signed…

3 years ago

Learn Transformers for Natural Language Processing with Denis Rothman

Key takeaways The transformer architecture has proved to be revolutionary in outperforming the classical RNN…

3 years ago

Learning Essential Linux Commands for Navigating the Shell Effectively

Once we learn how to deploy an Ubuntu server, how to manage users, and how…

3 years ago

Clean Coding in Python with Mariano Anaya

Key-takeaways:   Clean code isn’t just a nice thing to have or a luxury in software projects; it's a necessity. If we…

3 years ago

Exploring Forms in Angular – types, benefits and differences   

While developing a web application, or setting dynamic pages and meta tags we need to deal with…

3 years ago

Gain Practical Expertise with the Latest Edition of Software Architecture with C# 9 and .NET 5

Software architecture is one of the most discussed topics in the software industry today, and…

3 years ago