What is a matrix?
A matrix is data that is lined up in rows and columns.
# queue 14 twenty five 3 6
The above is a 3-by-2 matrix.
Column priority matrix and row priority matrix
When you programmatically represent a matrix, you have the data as an array. The method of expressing a matrix that arranges data in the column direction is called a column-priority matrix, and the method of expressing a matrix that arranges data in the row direction is called a row-priority matrix.
#Column-first matrix representation
my $mat_column_major = {
rows_length => 3,
columns_length => 2,
values => [1, 2, 3, 4, 5, 6],
};;
# Row-first matrix representation
my $mat_row_major = {
rows_length => 3,
columns_length => 2,
values => [1, 4, 2, 5, 3, 6],
};;
An introduction to deep learning uses column-first matrix representations. This is to make it easier to call the BLAS library for matrix calculations later when using C or cuda / GPU to speed up matrix calculations.
Perl AI Deep Learning Tutorial