DL之DNN:利用DNN算法对mnist手写数字图片识别数据集(sklearn自带,1797*64)训练、预测(95%)

DL之DNN:利用DNN算法对mnist手写数字图片识别数据集(sklearn自带,1797*64)训练、预测(95%)

 

 

目录

数据集展示

输出结果

设计代码


 

 

数据集展示

先查看sklearn自带digits手写数据集(1797*64)
DL之DNN:利用DNN算法对mnist手写数字图片识别数据集(sklearn自带,1797*64)训练、预测(95%)_第1张图片DL之DNN:利用DNN算法对mnist手写数字图片识别数据集(sklearn自带,1797*64)训练、预测(95%)_第2张图片

输出结果

DL之DNN:利用DNN算法对mnist手写数字图片识别数据集(sklearn自带,1797*64)训练、预测(95%)_第3张图片

 

设计代码

import numpy as np
from sklearn.datasets import load_digits 
from sklearn.metrics import confusion_matrix, classification_report 
from sklearn.preprocessing import LabelBinarizer 
from NeuralNetwork import NeuralNetwork
from sklearn.cross_validation import train_test_split 
digits = load_digits() 
X = digits.data  
y = digits.target
X -= X.min() 
X /= X.max()
nn = NeuralNetwork([64, 100, 10], 'logistic')  

X_train, X_test, y_train, y_test = train_test_split(X, y)  
labels_train = LabelBinarizer().fit_transform(y_train)
labels_test = LabelBinarizer().fit_transform(y_test)
print ("start fitting")
nn.fit(X_train, labels_train, epochs=3000) 
predictions = [] 
for i in range(X_test.shape[0]): 
    o = nn.predict(X_test[i])           
    predictions.append(np.argmax(o))    
print (confusion_matrix(y_test, predictions) )      
print (classification_report(y_test, predictions) )

 

相关文章
DL之NN:调用神经网络sklearn、NeuralNetwor.py实现识别手写的10个数字(数据集为1797个样本)

你可能感兴趣的:(DL)