资源简介
打开网站链接http://archive.ics.uci.edu/ml/,点击链接 view all data sets,打开所有数据页面,点击Instances,按照研究实例由多到少排序,选择任务为Classification的数据集,最后我们小组选择了“Letter Recognition Data Set”字母识别数据集。
二、数据分析
字母识别数据集每个对象有16个特征,共包括20000个数据对象,每个特征的取值都为整数,于1991年1月1日提供,主要用来进行数据分类试验。分类的目标是识别由黑白像素组成矩形的图像,代表26英文字母哪个字母。这些图像基于20种不同字体,并经过随机变形生成的20000个模拟实例。每个实例转化成16个原始数字特征,其中10000用于训练,另外10000个用于字母预测。因为每个样本都有明确的类标识,所以这个一个监督学习过程。
代码片段和文件信息
from numpy import *
import string
#parse files function every data is a integer
def loadDataSet(filename):
numFeat = len(open(filename).readline().split(‘‘))
dataMat = []
labelMat=[]
fr = open(filename)
for line in fr.readlines():
lineArr= []
curLine = line.strip(‘\n‘).split(‘‘)
for i in range(1 numFeat):
lineArr.append(int(curLine[i]))
dataMat.append(lineArr)
labelMat.append(curLine[0])
fr.close()
return dataMat labelMat
‘‘‘‘‘
purpose: data classify by compare to threshold
‘‘‘
def stumpClassify(dataMatrix dimen threshVal threshIneq):
retArray = ones((shape(dataMatrix)[0]1))
if threshIneq == ‘lt‘:
retArray[dataMatrix[:dimen] else:
retArray[dataMatrix[:dimen] return retArray
‘‘‘‘‘
purpose: single level decision tree create function(weak classify device)
input: dataArr: dataSet classLabels:class label D:data weight
output: bestStump: single level decision tree having min error rate minError: min Error rate
bestClassEst: estimate class labels
‘‘‘
def buildStump(dataArrclassLabelsD):
dataMatrix = mat(dataArr); labelMat = mat(classLabels).T
mn = shape(dataMatrix)
numSteps = 10.0
# define a empty dictionary for store Dthe better single level tree info
bestStump = {}
bestClasEst = mat(zeros((m1)))
minError = inf #init error sum to +infinity
for i in range(n):#loop over all dimensions
rangeMin = dataMatrix[:i].min()
rangeMax = dataMatrix[:i].max()
stepSize = (rangeMax-rangeMin)/numSteps
for j in range(-1int(numSteps)+1):#loop over all range in current dimension
for inequal in [‘lt‘ ‘gt‘]: #go over less than and greater than
threshVal = (rangeMin + float(j) * stepSize)
predictedVals = stumpClassify(dataMatrixithreshValinequal)#call stump classify with i j lessThan
errArr = mat(ones((m1))) # create error array
errArr[predictedVals == labelMat] = 0
weightedError = D.T*errArr #calc total error multiplied by D
#print “split: dim %d thresh %.2f thresh ineqal: %s the weighted error is %.3f“ % (i threshVal inequal weightedError)
if weightedError < minError: #if current error is smaller than before then save it into the beststump dictionary
minError = weightedError
bestClasEst = predictedVals.copy()
bestStump[‘dim‘] = i
bestStump[‘thresh‘] = threshVal
bestStump[‘ineq‘] = inequal
return bestStumpminErrorbestClasEst
‘‘‘‘‘
purpose:whole AdaBoost algorithm
input parameter:
dataArr:data set
classLabels:class labels
numIt:die dai number (only one parameter needed user to specified)
output parameter:
weakClassArr:seve
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 356180 2016-11-24 20:38 traindata.txt
文件 7150 2016-11-26 22:02 TreeAdaBoost.py
文件 36042 2017-03-18 09:31 文档.docx
文件 356383 2016-11-24 20:39 testdata.txt
----------- --------- ---------- ----- ----
755755 4
相关资源
- python Django 学生会管理系统.zip
- OpenCV3计算机视觉_Python语言实现 _刘波
- 自动化测试实战基于Python语言(虫师
- 灰帽python (Gray Hat Python) 中文版
- python3中文识别词库模型
- OpenCV3计算机视觉Python语言实现源代码
- 微博情感分析_python代码
- opencv_python‑3.4.3‑cp37‑cp37m‑win_amd
- 吴恩达机器学习编程作业python3版本
- Python Unix和Linux系统管理指南
- opencv_python-3.4.2-cp37-cp37m-win_amd64.whl
- Michael Nielsen 的《Neural Networks and Deep
- Python Data Science Handbook(英文pdf带目录
- python3实现RSA(非调用RSA库
- 《Python深度学习》2018中文版pdf+英文版
- Deep Learning With Python_中文版+英文版+代
- Deep Learning With Python_中文版+英文版+代
- 《NumPy攻略:Python科学计算与数据分析
- 《利用Python进行数据分析·第2版》中
- 《Python深度学习》2018文字版pdf(非扫
- python3.6.1 32位
- 一款Python自制的斗地主小游戏
- PyQt5 5.3.2 gpl Py3.4 Qt5.3.1 x32.exe
- python数据可视化编程实战英文第二版
- Fundamentals of Python Data Structures
- python2.7+pyqt4超级文本工具开发代码经
- OPENCV入门书籍:opencv3机器视觉Python语
- Python深度学习.pdf
- 零起点Python大数据与量化交易高清书
- python mac包
评论
共有 条评论