3.6手写数字识别项目

今天的内容为手写数字识别项目

1. 数据准备:

   - 使用`torchvision.datasets`加载MNIST数据集。

   - 通过`transforms.Compose`对数据进行预处理,包括转换为张量和归一化。

   - 使用`DataLoader`创建训练和测试数据集的生成器。

 

2. 可视化源数据:

   - 使用`matplotlib`库可视化测试集中的部分图像,并显示其对应的真实标签。

 

3. 构建模型:

   - 定义一个包含两个隐藏层的神经网络模型,使用`nn.Sequential`将各层组合在一起。

   - 使用ReLU激活函数和Softmax输出层。

   - 实例化模型,并定义损失函数(交叉熵损失)和优化器(随机梯度下降)。

 

4. 训练模型:

   - 设置训练循环,包括前向传播、损失计算、反向传播和参数更新。

   - 在每个epoch后计算训练集和测试集的损失和准确率。

   - 使用`SummaryWriter`记录训练过程中的损失值。

 

5. 训练结果可视化:

   - 绘制训练损失随epoch变化的曲线图,展示训练过程中的损失变化。

 

6. 模型评估

   - 在测试集上评估模型的性能,计算测试损失和准确率。

   - 输出每个epoch的训练和测试结果,包括损失和准确率。

你可能感兴趣的:(pytorch,神经网络,人工智能,机器学习,深度学习)