Virtual Meetup: Language engineering applied to matrix algebra debugging in Python

Hi Community,

I am happy to announce that this Thursday (the 29th of April), Terence Parr will hold a discussion about language engineering applied to matrix algebra debugging in Python.

Also, remember that in December, we changed the link to join the Meetup!

One of the biggest challenges, when writing code to implement deep learning networks, is getting all of the matrix and vector (tensor) dimensions to line up properly. It’s really easy to lose track of tensor dimensionality in complicated expressions involving multiple tensors and tensor operations. Python exceptions generated by the various libraries (Tensorflow, PyTorch, JAX, and Numpy) are often less than helpful. Worse, exceptions are generated only on a Python-line level, not subexpression. Instead of forcing programmers to manually injecting print statements prior to offending lines of code, TensorSensor uses language engineering to automatically clarify matrix-related exceptions by visualizing matrix dimensionality, and at the subexpression level.

Expository image link:
Accompanying article: Clarifying exceptions and visualizing tensor operations in deep learning code

Terence Parr is a professor of computer science and data science at the University of San Francisco where he continues to work on his ANTLR parser generator. Until January 2014, Terence was the graduate program director for computer science and was founding director of analytics (now data science). Before entering academia in 2003, he worked in the industry and co-founded Terence herded programmers and implemented the large jGuru developers’ website, during which time he developed and refined the StringTemplate engine. Terence has consulted for and held various technical positions at companies such as Google, Salesforce, Sun Microsystems, IBM, Lockheed Missiles and Space, NeXT, and Renault Automation. Terence holds a PhD in Computer Engineering from Purdue University.

And if you are thinking of proposing a talk, it is time to come forward. Just let me know by replying to this message.

How to connect

To avoid other security issues is now necessary to register for the meeting. The registration should be necessary just once and be valid for all the next meetings you will participate in. I understand it is a little extra effort, but it would avoid problems like the ones we encountered:

Registration for the Virtual Meetup

After registering, you will receive a confirmation email containing information about joining the meeting. It will also permit you to add it to your calendar.


It is hosted on Zoom at 6 PM GMT+1/CET (you can use this link to figure out which time is in your timezone: The Time Zone Converter).


P.S. We get a recurring question: “Are presentations recorded?”. The answer is not, and the reasons are explained here On recording Virtual Meetups - #7 by voelter

1 Like

Did we get the slides yet somewhere?

@david.bakin, you can get them from the tensor-sensor repository: GitHub - parrt/tensor-sensor: The goal of this library is to generate more helpful exception messages for numpy/pytorch matrix algebra expressions.

They are in the talks directory

1 Like

A direct link to the slides in PDF form is:

and the PowerPoint and pdf are here in the repository in this directory: