2.1 Vectors and their role in machine learning2.1.1 The geometric view of vectors and its significance in machine learning2.2 PyTorch code for vector manipulations2.2.1 PyTorch code for the introduction to vectors2.3 Matrices and their role in machine learning2.3.1 Matrix representation of digital images2.4 Python code: Introducing matrices, tensors, and images via PyTorch2.5 Basic vector and matrix operations in machine learning2.5.1 Matrix and vector transpose2.5.2 Dot product of two vectors and its role in machine learning2.5.3 Matrix multiplication and machine learning2.5.4 Length of a vector (L2 norm): Model error2.5.5 Geometric intuitions for vector length2.5.6 Geometric intuitions for the dot product: Feature similarity2.6 Orthogonality of vectors and its physical significance2.7 Python code: Basic vector and matrix operations via PyTorch2.7.1 PyTorch code for a matrix transpose2.7.2 PyTorch code for a dot product2.7.3 PyTorch code for matrix vector multiplication2.7.4 PyTorch code for matrix-matrix multiplication2.7.5 PyTorch code for the transpose of a matrix product2.8 Multidimensional line and plane equations and machine learning2.8.1 Multidimensional line equation2.8.2 Multidimensional planes and their role in machine learning2.9 Linear combinations, vector spans, basis vectors, and collinearity preservation2.9.1 Linear dependence2.9.2 Span of a set of vectors2.9.3 Vector spaces, basis vectors, and closure2.10 Linear transforms: Geometric and algebraic interpretations2.10.1 Generic multidimensional definition of linear transforms2.10.2 All matrix-vector multiplications are linear transforms2.11 Multidimensional arrays, multilinear transforms, and tensors2.11.1 Array view: Multidimensional arrays of numbers2.12 Linear systems and matrix inverse2.12.1 Linear systems with zero or near-zero determinants,and ill-conditioned systems2.12.2 PyTorch code for inverse, determinant, and singularity testing of matrices2.12.3 Over- and under-determined linear systems in machine learning2.12.4 Moore Penrose pseudo-inverse of a matrix2.12.5 Pseudo-inverse of a matrix: A beautiful geometric intuition2.12.6 PyTorch code to solve overdetermined systems2.13 Eigenvalues and eigenvectors: Swiss Army knives of machine learning2.13.1 Eigenvectors and linear independence2.13.2 Symmetric matrices and orthogonal eigenvectors2.13.3 PyTorch code to compute eigenvectors and eigenvalues2.14 Orthogonal (rotation) matrices and their eigenvalues and eigenvectors2.14.1 Rotation matrices2.14.2 Orthogonality of rotation matrices2.14.3 PyTorch code for orthogonality of rotation matrices2.14.4 Eigenvalues and eigenvectors of a rotation matrix:Finding the axis of rotation2.14.5 PyTorch code for eigenvalues and vectors of rotation matrices2.15 Matrix diagonalization2.15.1 PyTorch code for matrix diagonalization2.15.2 Solving linear systems without inversion via diagonalization2.15.3 PyTorch code for solving linear systems via diagonalization2.15.4 Matrix powers using diagonalization2.16 Spectral decomposition of a symmetric matrix2.16.1 PyTorch code for the spectral decomposition of a matrix2.17 An application relevant to machine learning: Finding the axes of a hyperellipse2.17.1 PyTorch code for hyperellipsesSummary