经典的数字识别问题,调用Knn, randforest, svm&pca这3种方法。
主要利用的是sklearn库,pandas库, numpy库
1.knn是是看了别人的博客,然后自己动手重复了一下,后来发现这种方法的提取数据太冗长了,后续会贴出更精炼的code
from numpy import * import operator import csv def loadTrainData(): l = [] with open('train.csv') as file: lines = csv.reader(file) for line in lines: l.append(line) l.remove(l[0]) l = array(l) label = l[:,0] data = l[:,1:] return nomalizing(toInt(data)),toInt(label) #label 1*42000 data 42000*784 #return data label def toInt(array): array = mat(array) m,n = shape(array) newArray = zeros((m,n)) for i in xrange(m): for j in xrange(n): newArray[i,j] = int(array[i,j]) return newArray def nomalizing(arr

该博客介绍了在Kaggle digits Recognizer问题中,使用KNN、随机森林(RF)和SVM结合PCA进行数字识别的方法。作者通过sklearn、pandas和numpy库实现,指出KNN的数据提取过程冗长,RF在1分钟内达到96%的准确率,而SVM结合PCA进行了特征降维。
最低0.47元/天 解锁文章
948

被折叠的 条评论
为什么被折叠?



