Einstein summation, or einsum, is a powerful and flexible operation used for tensor manipulation. It allows you to perform summation over multiple dimensions concisely, making it a favourite among data scientists and machine learning practitioners.

image.png

Why Choose Einsum?

Einsum is available across major libraries like NumPy and PyTorch. Let’s explore its versatility using PyTorch, starting with some common use cases like matrix multiplication, summation, permutation, and more.

Syntax of Einsum

Einsum uses a simple notation to define operations:

For example, 'ik, kj -> ij' means:

Examples of Einsum Operations

Matrix Multiplication