机器学习看了有一阵子了,一些常用的算法已经有些了解。应该拿个项目/比赛练习一下,看看机器学习到底是如何应用的。Kaggle是个非常不错的机器学习和数据挖掘的比赛网站,网站提供数据,可以拿来练习算法。下面是101里面的第一道题,Digit Recognizer。用Python实现的。应用了KNN,SVM和RF算法。今天先贴上代码,过几天把相应的算法原理也写上,方便深入理解。这段代码是参照别的大神写的代码,进行了一定的修改和优化。数据源可以从如下网址获取:https://www.kaggle.com/c/digit-recognizer/data
import numpy as np
import operator
import csv
import scipy
from sklearn.neighbors import KNeighborsClassifier
from sklearn.svm import SVC
from sklearn.ensemble import RandomForestClassifier
def read_data(file, header = True, test = False, rows = 0):
csv_reader = csv.reader(open(file, 'r'), delimiter = ',')
data = []
labels