TensorFlow - математические основы
Перед созданием базового приложения в TensorFlow важно понимать математические концепции, необходимые для TensorFlow. Математика считается сердцем любого алгоритма машинного обучения. Именно с помощью основных концепций математики определяется решение для конкретного алгоритма машинного обучения.
Вектор
Массив чисел, который может быть непрерывным или дискретным, определяется как вектор. Алгоритмы машинного обучения работают с векторами фиксированной длины для лучшего вывода.
Алгоритмы машинного обучения работают с многомерными данными, поэтому векторы играют решающую роль.
Графическое представление векторной модели показано ниже -
Скалярный
Скаляр можно определить как одномерный вектор. Скаляры - это те, которые включают только величину, но не направление. В случае скаляров нас интересует только величина.
Примеры скаляров включают параметры веса и роста детей.
Матрица
Матрицу можно определить как многомерные массивы, которые расположены в формате строк и столбцов. Размер матрицы определяется длиной строки и длиной столбца. На следующем рисунке показано представление любой указанной матрицы.
Рассмотрим матрицу с «m» строками и «n» столбцами, как упомянуто выше, представление матрицы будет указано как «матрица m * n», которая также определяет длину матрицы.
Математические вычисления
В этом разделе мы узнаем о различных математических вычислениях в TensorFlow.
Добавление матриц
Добавление двух или более матриц возможно, если матрицы имеют одинаковую размерность. Добавление подразумевает добавление каждого элемента в соответствии с данной позицией.
Рассмотрим следующий пример, чтобы понять, как работает сложение матриц -
$$ Пример: A = \ begin {bmatrix} 1 & 2 \\ 3 & 4 \ end {bmatrix} B = \ begin {bmatrix} 5 & 6 \\ 7 & 8 \ end {bmatrix} \: then \: A + B = \ begin {bmatrix} 1 + 5 & 2 + 6 \\ 3 + 7 & 4 + 8 \ end {bmatrix} = \ begin {bmatrix} 6 & 8 \\ 10 & 12 \ end {bmatrix} $$
Вычитание матриц
Вычитание матриц действует аналогично сложению двух матриц. Пользователь может вычесть две матрицы, если размеры равны.
$$ Пример: A- \ begin {bmatrix} 1 & 2 \\ 3 & 4 \ end {bmatrix} B- \ begin {bmatrix} 5 & 6 \\ 7 & 8 \ end {bmatrix} \: then \: AB - \ begin {bmatrix} 1-5 и 2-6 \\ 3-7 & 4-8 \ end {bmatrix} - \ begin {bmatrix} -4 & -4 \\ - 4 & -4 \ end {bmatrix} $$
Умножение матриц
Чтобы две матрицы A m * n и B p * q были умножаемыми, n должно быть равно p. Результирующая матрица -
С м * д
$$ A = \ begin {bmatrix} 1 & 2 \\ 3 & 4 \ end {bmatrix} B = \ begin {bmatrix} 5 & 6 \\ 7 & 8 \ end {bmatrix} $$
$$ c_ {11} = \ begin {bmatrix} 1 & 2 \ end {bmatrix} \ begin {bmatrix} 5 \\ 7 \ end {bmatrix} = 1 \ times5 + 2 \ times7 = 19 \: c_ {12} = \ begin {bmatrix} 1 & 2 \ end {bmatrix} \ begin {bmatrix} 6 \\ 8 \ end {bmatrix} = 1 \ times6 + 2 \ times8 = 22 $$
$$ c_ {21} = \ begin {bmatrix} 3 & 4 \ end {bmatrix} \ begin {bmatrix} 5 \\ 7 \ end {bmatrix} = 3 \ times5 + 4 \ times7 = 43 \: c_ {22} = \ begin {bmatrix} 3 & 4 \ end {bmatrix} \ begin {bmatrix} 6 \\ 8 \ end {bmatrix} = 3 \ times6 + 4 \ times8 = 50 $$
$$ C = \ begin {bmatrix} c_ {11} & c_ {12} \\ c_ {21} & c_ {22} \ end {bmatrix} = \ begin {bmatrix} 19 & 22 \\ 43 & 50 \ end {bmatrix} $$
Транспонировать матрицу
Транспонирование матрицы A, m * n обычно представляется как AT (транспонирование) n * m и получается путем транспонирования векторов-столбцов как векторов-строк.
$$ Пример: A = \ begin {bmatrix} 1 & 2 \\ 3 & 4 \ end {bmatrix} \: then \: A ^ {T} \ begin {bmatrix} 1 & 3 \\ 2 & 4 \ end { bmatrix} $$
Точечное произведение векторов
Любой вектор размерности n можно представить в виде матрицы v = R ^ n * 1.
$$ v_ {1} = \ begin {bmatrix} v_ {11} \\ v_ {12} \\\ cdot \\\ cdot \\\ cdot \\ v_ {1n} \ end {bmatrix} v_ {2} = \ begin {bmatrix} v_ {21} \\ v_ {22} \\\ cdot \\\ cdot \\\ cdot \\ v_ {2n} \ end {bmatrix} $$
Скалярное произведение двух векторов представляет собой сумму произведения соответствующих компонентов - компонентов одного измерения и может быть выражено как
$$ v_ {1} \ cdot v_ {2} = v_1 ^ Tv_ {2} = v_2 ^ Tv_ {1} = v_ {11} v_ {21} + v_ {12} v_ {22} + \ cdot \ cdot + v_ {1n} v_ {2n} = \ displaystyle \ sum \ limits_ {k = 1} ^ n v_ {1k} v_ {2k} $$
Пример скалярного произведения векторов упомянут ниже -
$$ Пример: v_ {1} = \ begin {bmatrix} 1 \\ 2 \\ 3 \ end {bmatrix} v_ {2} = \ begin {bmatrix} 3 \\ 5 \\ - 1 \ end {bmatrix} v_ {1} \ cdot v_ {2} = v_1 ^ Tv_ {2} = 1 \ times3 + 2 \ times5-3 \ times1 = 10 $$