TensorFlow - 数学基础

在TensorFlow中创建基本应用程序之前,了解TensorFlow所需的数学概念非常重要.数学被认为是任何机器学习算法的核心.在数学核心概念的帮助下,定义了特定机器学习算法的解决方案.

Vector

一组数字,其中是连续的还是离散的,被定义为向量.机器学习算法处理固定长度向量以便更好地生成输出.

机器学习算法处理多维数据,因此向量起着至关重要的作用.

Vector

矢量模型的图形表示如下所示 :

矢量模型

标量

标量可以定义为一维向量.标量是那些仅包括大小而没有方向的标量.对于标量,我们只关注幅度.

标量的例子包括儿童的体重和身高参数.

矩阵

Matrix可以定义为多维数组,以行和列的格式排列.矩阵的大小由行长度和列长度定义.下图显示任何指定矩阵的表示.

Multi Dimensional Arrays

考虑如上所述的具有"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 \\\\ t&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 的.得到的矩阵是 :

C m * q

$$ 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} $$

向量点积的例子在下面提到 :

$$Example: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$$