DL之NN/Average_Darkness/SVM:手写数字图片识别(本地数据集50000训练集+数据集加4倍)比较3种算法Average_Darkness、SVM、NN各自的准确率

简介: DL之NN/Average_Darkness/SVM:手写数字图片识别(本地数据集50000训练集+数据集加4倍)比较3种算法Average_Darkness、SVM、NN各自的准确率

目录


数据集下载以及展示


代码实现


设计思路及代码


1、图片灰度平均值识别分类


2、SVM算法


3、神经网络


4、总结



数据集下载以及展示

image.png

     在上图中右侧显示了一张数字1的图片,而右侧显示了这个图片所对应的像素矩阵,MNIST数据集提供了4个下载文件。

     对手写数据集50000张图片实现阿拉伯数字0~9识别,并且对结果进行分析准确率。从这个页面获得的手写数字的MNIST数据库具有60000个示例,包括50000张图片训练集和10000张图片测试集。它是从NIST获得的更大集合的子集。数字已被规格化,并以固定大小的图像为中心。

    手写数字识别也是比较常见的例子了,这个数据集包含有60000张用于训练的手写数字的图片,10000张用于测试的图片,所有图片的尺寸都已经被标准化了,并且,尺寸为2828.每个像素值0~1区间内的值,其中0代表白色,1代表黑色,区间内的值表示灰色。为了简化,每张图片已经被转换成一个 1728的一维数组,表示784个特征(28'28)。

手写数字数据集下载:http://yann.lecun.com/exdb/mnist/


代码实现


#查看手写数字图片数据集的大小等参数

import mnist_loader

import network

training_data, validation_data, test_data = mnist_loader.load_data_wrapper()   #调用mnist_loader文件的load_data_wrapper函数,加载data/mnist.pkl.gz数据集

print("training_data")  

print(type(training_data))

print(list(training_data))        #list

print(len(training_data))         #长度

print(training_data[0][0].shape)  #x的维度784

print(training_data[0][1].shape)  #y的维度10



设计思路及代码

1、图片灰度平均值识别分类


首先,利用图片本身的属性,图片的灰度平均值进行识别分类,我运行出来的准确率是22%左右

利用图片的灰度平均值来进行分类实现手写图片识别(数据集50000张图片)——Jason niu

image.png


2、SVM算法


其次,利用SVM算法,我运行出来的准确率是93%左右,具体代码请点击

SVM:利用SVM算法实现手写图片识别(数据集50000张图片)—Jason niu


3、神经网络


最后,利用深度学习之神经网络,我运行出来的准确率是94%左右,具体代码请点击

NN:利用深度学习之神经网络实现手写数字识别(数据集50000张图片)—Jason niu

image.png



1、神经网络进行手写数字图片识别原理


image.png


损失函数

image.png




4、总结


最后,我们发现神经网络和SVM的算法学习质量非常高,而传统的灰度平均值算法则差强人意!


相关文章

DL之NN:利用调用自定义神经网络network.py文件(调用mnist_loader.py文件的load_data_wrapper函数,加载mnist.pkl.gz数据集)实现手写图片识别,准确率94%

Average_Darkness/SVM:手写数字识别(数据集50000张图片训练集)比较Average_Darkness、SVM各自的准确率

相关文章
|
1月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于MSER和HOG特征提取的SVM交通标志检测和识别算法matlab仿真
### 算法简介 1. **算法运行效果图预览**:展示算法效果,完整程序运行后无水印。 2. **算法运行软件版本**:Matlab 2017b。 3. **部分核心程序**:完整版代码包含中文注释及操作步骤视频。 4. **算法理论概述**: - **MSER**:用于检测显著区域,提取图像中稳定区域,适用于光照变化下的交通标志检测。 - **HOG特征提取**:通过计算图像小区域的梯度直方图捕捉局部纹理信息,用于物体检测。 - **SVM**:寻找最大化间隔的超平面以分类样本。 整个算法流程图见下图。
|
2月前
|
机器学习/深度学习 存储 人工智能
文本情感识别分析系统Python+SVM分类算法+机器学习人工智能+计算机毕业设计
使用Python作为开发语言,基于文本数据集(一个积极的xls文本格式和一个消极的xls文本格式文件),使用Word2vec对文本进行处理。通过支持向量机SVM算法训练情绪分类模型。实现对文本消极情感和文本积极情感的识别。并基于Django框架开发网页平台实现对用户的可视化操作和数据存储。
49 0
文本情感识别分析系统Python+SVM分类算法+机器学习人工智能+计算机毕业设计
|
2月前
|
机器学习/深度学习 算法 数据挖掘
R语言中的支持向量机(SVM)与K最近邻(KNN)算法实现与应用
【9月更文挑战第2天】无论是支持向量机还是K最近邻算法,都是机器学习中非常重要的分类算法。它们在R语言中的实现相对简单,但各有其优缺点和适用场景。在实际应用中,应根据数据的特性、任务的需求以及计算资源的限制来选择合适的算法。通过不断地实践和探索,我们可以更好地掌握这些算法并应用到实际的数据分析和机器学习任务中。
|
3月前
|
数据采集 机器学习/深度学习 算法
【python】python客户信息审计风险决策树算法分类预测(源码+数据集+论文)【独一无二】
【python】python客户信息审计风险决策树算法分类预测(源码+数据集+论文)【独一无二】
|
3月前
|
机器学习/深度学习 运维 算法
深入探索机器学习中的支持向量机(SVM)算法:原理、应用与Python代码示例全面解析
【8月更文挑战第6天】在机器学习领域,支持向量机(SVM)犹如璀璨明珠。它是一种强大的监督学习算法,在分类、回归及异常检测中表现出色。SVM通过在高维空间寻找最大间隔超平面来分隔不同类别的数据,提升模型泛化能力。为处理非线性问题,引入了核函数将数据映射到高维空间。SVM在文本分类、图像识别等多个领域有广泛应用,展现出高度灵活性和适应性。
151 2
|
3月前
|
机器学习/深度学习 算法
【机器学习】解释对偶的概念及SVM中的对偶算法?(面试回答)
解释了对偶的概念,指出对偶性在优化问题中的重要性,尤其是在强对偶性成立时可以提供主问题的最优下界,并且详细阐述了支持向量机(SVM)中对偶算法的应用,包括如何将原始的最大间隔优化问题转换为对偶问题来求解。
86 2
|
4月前
|
机器学习/深度学习 数据采集 算法
Python实现支持向量机SVM回归模型(SVR算法)项目实战
Python实现支持向量机SVM回归模型(SVR算法)项目实战
307 4
|
3月前
|
机器学习/深度学习 数据采集 算法
基于SVm和随机森林算法模型的中国黄金价格预测分析与研究
本文通过运用支持向量机(SVM)、决策树和随机森林算法,结合历史黄金价格数据和特征工程,建立了中国黄金价格的预测模型,并通过模型训练、评估及可视化分析,为黄金市场投资者和分析师提供了基于机器学习算法的预测方法和决策支持。
115 0
|
4月前
|
机器学习/深度学习 数据采集 监控
算法金 | DL 骚操作扫盲,神经网络设计与选择、参数初始化与优化、学习率调整与正则化、Loss Function、Bad Gradient
**神经网络与AI学习概览** - 探讨神经网络设计,包括MLP、RNN、CNN,激活函数如ReLU,以及隐藏层设计,强调网络结构与任务匹配。 - 参数初始化与优化涉及Xavier/He初始化,权重和偏置初始化,优化算法如SGD、Adam,针对不同场景选择。 - 学习率调整与正则化,如动态学习率、L1/L2正则化、早停法和Dropout,以改善训练和泛化。
44 0
算法金 | DL 骚操作扫盲,神经网络设计与选择、参数初始化与优化、学习率调整与正则化、Loss Function、Bad Gradient
|
4月前
|
机器学习/深度学习 数据采集 自然语言处理
Python实现支持向量机SVM分类模型(SVC算法)并应用网格搜索算法调优项目实战
Python实现支持向量机SVM分类模型(SVC算法)并应用网格搜索算法调优项目实战
177 0