项目简介
本项目借助深度学习技术,利用PyTorch框架构建手写数字识别系统,主要对MNIST数据集中的手写数字进行识别。项目涵盖模型的训练、评估、推理过程,还实现了相关工具,支持多种神经网络层的自定义实现,像卷积层、线性层、ReLU激活函数等。
项目的主要特性和功能
- 模型训练:能从MNIST数据集加载训练数据完成模型训练,并保存训练后的模型参数。
- 模型评估:可计算模型的准确率、精确率、召回率和F1分数,生成混淆矩阵以直观展示评估结果。
- 模型推理:能对新数据进行推理并输出预测结果。
- 自定义神经网络层:实现了卷积层、线性层、ReLU激活函数等多种神经网络层的自定义。
- 其他模型支持:除深度学习模型外,还支持SVM和决策树等传统机器学习模型。
安装使用步骤
1. 环境准备
确保已安装Python 3.x,并安装以下依赖库:
bash
pip install torch torchvision numpy pandas matplotlib
2. 下载项目源码
3. 配置文件设置
在项目根目录下找到config.yml
文件,依据自身环境设置数据路径、模型保存路径等参数。
4. 模型训练
运行train.py
文件进行模型训练:
bash
python train.py
5. 模型评估
训练完成后,运行evaluate.py
文件进行模型评估:
bash
python evaluate.py
6. 模型推理
使用experiment.py
文件进行模型推理,设置train
参数为False
:
bash
python experiment.py --train False
7. 其他模型测试
若要测试其他模型(如SVM或决策树),可运行相应的脚本文件:
bash
python other_models/SVM.py
python other_models/DecisionTree.py
通过以上步骤,可顺利使用本项目开展手写数字的识别任务。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】