【深度学习基础|知识概述】基础数学和理论知识中的线性知识:矩阵与向量运算、特征值与特征向量、张量,附代码。
【深度学习基础|知识概述】基础数学和理论知识中的线性知识:矩阵与向量运算、特征值与特征向量、张量,附代码。
文章目录
前言
在深度学习中,基础数学知识,特别是线性代数,起到了至关重要的作用。线性代数为我们提供了处理数据、计算梯度、优化模型的理论基础。常见的数学概念包括矩阵与向量运算、特征值与特征向量、张量等。下面将详细论述这些基本概念,并提供相应的代码示例和公式来加深理解。
1. 矩阵与向量运算
1.1 向量(Vector)
向量是一个一维数组,通常用来表示数据的特征(如图像的像素值、文本的词向量等)。在深度学习中,向量广泛用于表示单一数据点的输入、权重以及网络中各层的激活值。
- 向量加法:两个向量按元素相加。
- 向量与标量相乘:向量的每个元素与标量相乘。
1.2 矩阵(Matrix)
矩阵是一个二维数组,广泛用于表示输入数据、层间权重、转换操作等。矩阵的运算包括加法、乘法、转置等,尤其是矩阵乘法在神经网络中的前向传播和反向传播中尤为重要。
-
矩阵加法:两个矩阵按元素相加,要求形状相同。
-
矩阵乘法:两个矩阵的乘法遵循矩阵的内积规则,前一个矩阵的列数要等于后一个矩阵的行数。
-
矩阵与向量乘法:矩阵与向量的乘法,也就是将矩阵的每一行与向量做内积操作,常见于神经网络的前向传播中。
- 代码示例:矩阵与向量乘法(使用NumPy)
import numpy as np
# 定义矩阵 A 和向量 v
A = np.array([[1, 2], [3, 4]])
v = np.array