问题:
手写数字识别是一个多分类问题,有10个分类,每个手写数字图像的类别是0-9中的一个数。使用sklearn来训练一个简单的全连接神经网络,对数据集DBRHD进行识别
学习内容:
DBRHD数据集介绍:1、已经归一化为手写数字为中心的32*32规格的图片。2、去掉了图片颜色等复杂因素,将手写体数字图片转化为训练数据为大小32*32的文本矩阵。3、空白区于使用0代表,字迹区域使用1表示。
神经网络参数设置:设置1层隐藏层,该隐藏层含100个神经元。初始学习率为0.0001,迭代2000次。使用logistic激活函数和adam优化方法。
MLP:多层感知机识别
注:文末附有本文数据集文件,分享给大家一起学习
import numpy as np
from os import listdir #用于访问本地文件
from sklearn.neural_network import MLPClassifier
import time
start = time.perf_counter()
## 定义img2vector函数,将加载的32*32的图片矩阵展开成一列向