MNIST验证图⽚识别的多种算法使⽤
MNIST数据集
MNIST是⼀个⼊门级的计算机视觉数据集,包含各种⾸次⼿写数字图⽚,包括60000个训练数据和10000个测试数据。每⼀个MNIST数
据项由两部分组成,⼀张图⽚和对应的标签。每张图⽚包含28*28个像素点。
1.使⽤逻辑回归算法识别验证码
# -*- coding:utf-8 -*-
import re
import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as pltimport
from sklearn. import CountVectorizer
del_selection import cross_val_score
import os
from sklearn.naive_bayes import GaussianNB
from sklearn import linear_model, datasets
import pickle
import gzip
#离线的MNIST数据集是gz格式的
def load_data():
with gzip.open("/Users/zhanglipeng/Desktop/Data/MNIST/") as fp:import pickle
training_data, valid_data, test_data = pickle.load(fp)#pickle.load()从file中读取⼀个字符串,并将它重构为原来的python对象。file:类⽂件对象,有read()和readl    return training_data, valid_data, test_data
#值得注意的是,MNIST已经将28*28的图⽚特征化成长度为784的⼀维向量
if __name__ == '__main__':
training_data, valid_data, test_data=load_data()
x1,y1=training_data
x2,y2=test_data
logreg = linear_model.LogisticRegression(C=1e5)
logreg.fit(x1, y1)
print cross_val_score(logreg, x2, y2, scoring="accuracy")

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。