We code an algorithm to implement matrix-column-vector multiplication via dot products.
00:00 -Introduction
00:07 -Definition of matrix-column-vector multiplication via dot products
01:35 -Understand the problem using pen and paper analysis
02:22 -Compare formal mathematics to crafty computer science
02:37 -The anatomy of the dot product between column vectors
03:10 -The anatomy of the dot product between row vectors
03:32 -Algorithm development can depart from formal mathematics
03:48 -The four options for dimensions of input to dot product
04:06 -Option 1 (formal math): dot product between column vectors
04:23 -Option 2 (crafty CS): column vector dot with a row vector
04:57 -Option 3 (crafty CS): row vector dot with a column vector
05:12 -Mathematics is not the same thing as computer science
05:32 -Option 4 (formal math): dot product between row vectors
05:43 -Dot product function processes vectors with same number of entries
06:02 -For loops are great tools to implement summations
06:32 -Initialize for our dot product algorithm
07:28 -Draft algorithm: matrix-column-vector multiplication via dot products
07:52 -Prepare for coding
08:09 -BLAS Level 2 Sandbox
08:36 -Best practice: write good code and reuse your work
09:19 -Algorithm 1: matrix-column vector multiplication via dot products BLAS Level 2
10:37 -Visualize Algorithm 1 and the flow of data
12:44 -Algorithm 2: matrix-column-vector multiplication via dot products BLAS Level 1
14:18 -Visualize Algorithm 2 and the flow of data
16:19 -You’re setting a foundation for learning to optimize code
16:39 -Challenge 1: Write algorithms for row-vector-matrix multiplication
17:00 -Conclusion