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. 结果矩阵是 -
    100 平方米
    $$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(transpose)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$$