Friday, January 03, 2025

x̄ - > Worked Example: Matrix Operations in Python

Mathematics of Transformers

Mathematics of Transformers

Worked Example: Matrix Operations in Python

We'll demonstrate matrix operations such as multiplication, addition, division, and subtraction using Python. For simplicity, we'll use the NumPy library, which is highly efficient for matrix operations.

Python Code

import numpy as np

# Define two matrices
matrix_a = np.array([[1, 2], [3, 4]])
matrix_b = np.array([[5, 6], [7, 8]])

# Matrix Addition
addition = matrix_a + matrix_b
print("Matrix Addition:\n", addition)

# Matrix Subtraction
subtraction = matrix_a - matrix_b
print("\nMatrix Subtraction:\n", subtraction)

# Matrix Multiplication (Element-wise)
element_wise_multiplication = matrix_a * matrix_b
print("\nElement-wise Multiplication:\n", element_wise_multiplication)

# Matrix Multiplication (Dot Product)
dot_product = np.dot(matrix_a, matrix_b)
print("\nMatrix Dot Product:\n", dot_product)

# Matrix Division (Element-wise)
division = matrix_a / matrix_b
print("\nElement-wise Division:\n", division)

Explanation of the Code

  1. Matrix Addition: Each element in matrix_a is added to the corresponding element in matrix_b.
  2. Matrix Subtraction: Similar to addition, but the elements are subtracted instead.
  3. Element-wise Multiplication: Corresponding elements of the two matrices are multiplied.
  4. Matrix Multiplication (Dot Product): Computes the dot product of the two matrices.
  5. Element-wise Division: Divides each element of matrix_a by the corresponding element in matrix_b.

Example Output

For the matrices:

\[ \text{matrix\_a} = \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix}, \quad \text{matrix\_b} = \begin{bmatrix} 5 & 6 \\ 7 & 8 \end{bmatrix} \]

The results are:

  • Addition:
    \[ \begin{bmatrix} 6 & 8 \\ 10 & 12 \end{bmatrix} \]
  • Subtraction:
    \[ \begin{bmatrix} -4 & -4 \\ -4 & -4 \end{bmatrix} \]
  • Element-wise Multiplication:
    \[ \begin{bmatrix} 5 & 12 \\ 21 & 32 \end{bmatrix} \]
  • Dot Product:
    \[ \begin{bmatrix} 19 & 22 \\ 43 & 50 \end{bmatrix} \]
  • Element-wise Division:
    \[ \begin{bmatrix} 0.2 & 0.333 \\ 0.429 & 0.5 \end{bmatrix} \]
This work is licensed under a Creative Commons Attribution 4.0 International License.

No comments:

Meet the Authors
Zacharia Maganga’s blog features multiple contributors with clear activity status.
Active ✔
πŸ§‘‍πŸ’»
Zacharia Maganga
Lead Author
Active ✔
πŸ‘©‍πŸ’»
Linda Bahati
Co‑Author
Active ✔
πŸ‘¨‍πŸ’»
Jefferson Mwangolo
Co‑Author
Inactive ✖
πŸ‘©‍πŸŽ“
Florence Wavinya
Guest Author
Inactive ✖
πŸ‘©‍πŸŽ“
Esther Njeri
Guest Author
Inactive ✖
πŸ‘©‍πŸŽ“
Clemence Mwangolo
Guest Author

Followers

Support This Blog
Tap Donate now here to donate or go to donate on top menu to scan QR and support this site.
Donate Now