项目简介
本项目是基于TensorFlow和Scikit-learn的手写数字识别系统,可识别MNIST数据集中的手写数字。项目实现了多种机器学习模型,如贝叶斯分类器、卷积神经网络(CNN)、逻辑回归和支持向量机(SVM),支持用户训练和测试模型,计算准确率并进行可视化分析。
项目的主要特性和功能
- 贝叶斯分类器:运用贝叶斯定理分类手写数字,支持训练与测试,可计算准确率,还能可视化预测错误的图像。
- 卷积神经网络(CNN):借助TensorFlow框架构建深度学习模型,包含两个卷积层和一个全连接层,支持训练与测试,可计算测试集准确率,使用TensorBoard可视化训练过程。
- 逻辑回归:用TensorFlow实现逻辑回归模型,支持训练与测试,能计算训练集和测试集的准确率,绘制训练损失和准确率曲线。
- 支持向量机(SVM):通过Scikit-learn实现SVM模型,支持训练与测试,可计算测试集准确率,可视化预测错误的图像。
- 数据读取:提供从MNIST数据集加载图像和标签数据的函数,支持二进制文件的解析处理。
- 精灵图像生成:从MNIST数据集生成精灵图像用于可视化,保存生成的图像和相关标签文件。
安装使用步骤
- 环境准备:确保安装Python 3.x,安装
numpy
、tensorflow
、scikit-learn
、matplotlib
这些Python库。 - 下载数据集:从MNIST官方网站或指定网盘链接下载MNIST数据集,将数据集文件放在项目目录下的指定路径。
- 运行训练脚本:按需选择训练脚本(如
bayers_train.py
、cnn_train.py
、logistic.py
、svm.py
),运行脚本进行模型训练,训练时会保存模型和日志文件。 - 运行测试脚本:选择测试脚本(如
bayers_test.py
、cnn_test.py
),运行脚本进行模型测试,计算准确率并可视化结果。 - 可视化分析:使用TensorBoard加载日志文件查看训练可视化结果,运行
sprite_image.py
生成精灵图像用于进一步分析。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】