导读 在深度学习中,`nn.Linear` 是 PyTorch 中一个非常基础且重要的模块,用于构建全连接层(Fully Connected Layer)。它实现了简单的线...
在深度学习中,`nn.Linear` 是 PyTorch 中一个非常基础且重要的模块,用于构建全连接层(Fully Connected Layer)。它实现了简单的线性变换:y = xA^T + b,其中 A 是权重矩阵,b 是偏置向量。简单来说,`nn.Linear` 就是将输入数据通过一个线性函数映射到新的空间维度。
首先,在使用 `nn.Linear` 时,你需要定义它的输入和输出特征维度。例如:
```python
linear_layer = nn.Linear(in_features=10, out_features=5)
```
这表示输入数据有 10 个特征,而输出会有 5 个特征。一旦定义好,你可以直接将数据传入这个层,比如:
```python
output = linear_layer(input_data)
```
背后的原理其实很简单:它会自动初始化权重和偏置,并通过反向传播更新参数以优化模型性能。记住,`nn.Linear` 并不会改变数据形状,只是改变其特征数量!
掌握 `nn.Linear` 是入门深度学习的第一步,也是构建复杂网络的基础。💪
PyTorch 深度学习 机器学习