资源简介
机器学习实战(源码和数据样本)
代码片段和文件信息
‘‘‘
Created on Sep 16 2010
kNN: k Nearest Neighbors
Input: inX: vector to compare to existing dataset (1xN)
dataSet: size m data set of known vectors (NxM)
labels: data set labels (1xM vector)
k: number of neighbors to use for comparison (should be an odd number)
Output: the most popular class label
@author: pbharrin
‘‘‘
from numpy import *
import operator
from os import listdir
def classify0(inX dataSet labels k):
dataSetSize = dataSet.shape[0]
diffMat = tile(inX (dataSetSize1)) - dataSet
sqDiffMat = diffMat**2
sqDistances = sqDiffMat.sum(axis=1)
distances = sqDistances**0.5
sortedDistIndicies = distances.argsort()
classCount={}
for i in range(k):
voteIlabel = labels[sortedDistIndicies[i]]
classCount[voteIlabel] = classCount.get(voteIlabel0) + 1
sortedClassCount = sorted(classCount.iteritems() key=operator.itemgetter(1) reverse=True)
return sortedClassCount[0][0]
def createDataSet():
group = array([[1.01.1][1.01.0][00][00.1]])
labels = [‘A‘‘A‘‘B‘‘B‘]
return group labels
def file2matrix(filename):
fr = open(filename)
numberOfLines = len(fr.readlines()) #get the number of lines in the file
returnMat = zeros((numberOfLines3)) #prepare matrix to return
classLabelVector = [] #prepare labels return
fr = open(filename)
index = 0
for line in fr.readlines():
line = line.strip()
listFromLine = line.split(‘\t‘)
returnMat[index:] = listFromLine[0:3]
classLabelVector.append(int(listFromLine[-1]))
index += 1
return returnMatclassLabelVector
def autoNorm(dataSet):
minVals = dataSet.min(0)
maxVals = dataSet.max(0)
ranges = maxVals - minVals
normDataSet = zeros(shape(dataSet))
m = dataSet.shape[0]
normDataSet = dataSet - tile(minVals (m1))
normDataSet = normDataSet/tile(ranges (m1)) #element wise divide
return normDataSet ranges minVals
def datingClassTest():
hoRatio = 0.50 #hold out 10%
datingDataMatdatingLabels = file2matrix(‘datingTestSet2.txt‘) #load data setfrom file
normMat ranges minVals = autoNorm(datingDataMat)
m = normMat.shape[0]
numTestVecs = int(m*hoRatio)
errorCount = 0.0
for i in range(numTestVecs):
classifierResult = classify0(normMat[i:]normMat[numTestVecs:m:]datingLabels[numTestVecs:m]3)
print “the classifier came back with: %d the real answer is: %d“ % (classifierResult datingLabels[i])
if (classifierResult != datingLabels[i]): errorCount += 1.0
print “the total error rate is: %f“ % (errorCount/float(numTestVecs))
print errorCount
def img2vector(filename):
returnVect = zeros((11024))
fr = open(filename)
for i in range(32):
lineStr = fr.readline()
for j in range(32):
returnVect[032*i+j] = int(li
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2012-03-01 15:44 machinelearninginaction\.git\
文件 31 2012-03-01 15:44 machinelearninginaction\.git\COMMIT_EDITMSG
文件 341 2011-05-04 15:31 machinelearninginaction\.git\config
文件 73 2011-05-04 15:27 machinelearninginaction\.git\desc
文件 23 2011-05-04 15:27 machinelearninginaction\.git\HEAD
目录 0 2011-05-04 15:27 machinelearninginaction\.git\hooks\
文件 452 2011-05-04 15:27 machinelearninginaction\.git\hooks\applypatch-msg.sample
文件 896 2011-05-04 15:27 machinelearninginaction\.git\hooks\commit-msg.sample
文件 160 2011-05-04 15:27 machinelearninginaction\.git\hooks\post-commit.sample
文件 552 2011-05-04 15:27 machinelearninginaction\.git\hooks\post-receive.sample
文件 189 2011-05-04 15:27 machinelearninginaction\.git\hooks\post-update.sample
文件 398 2011-05-04 15:27 machinelearninginaction\.git\hooks\pre-applypatch.sample
文件 1578 2011-05-04 15:27 machinelearninginaction\.git\hooks\pre-commit.sample
文件 1239 2011-05-04 15:27 machinelearninginaction\.git\hooks\prepare-commit-msg.sample
文件 4951 2011-05-04 15:27 machinelearninginaction\.git\hooks\pre-reba
文件 3611 2011-05-04 15:27 machinelearninginaction\.git\hooks\update.sample
文件 9112 2012-03-01 15:44 machinelearninginaction\.git\index
目录 0 2011-05-04 15:27 machinelearninginaction\.git\info\
文件 240 2011-05-04 15:27 machinelearninginaction\.git\info\exclude
目录 0 2011-05-04 15:30 machinelearninginaction\.git\logs\
文件 7468 2012-03-01 15:44 machinelearninginaction\.git\logs\HEAD
目录 0 2011-05-04 15:31 machinelearninginaction\.git\logs\refs\
目录 0 2011-05-04 15:30 machinelearninginaction\.git\logs\refs\heads\
文件 7468 2012-03-01 15:44 machinelearninginaction\.git\logs\refs\heads\master
目录 0 2011-05-04 15:31 machinelearninginaction\.git\logs\refs\remotes\
目录 0 2011-05-04 15:31 machinelearninginaction\.git\logs\refs\remotes\origin\
文件 6480 2012-03-01 15:44 machinelearninginaction\.git\logs\refs\remotes\origin\master
目录 0 2012-03-01 15:44 machinelearninginaction\.git\ob
目录 0 2011-12-19 17:28 machinelearninginaction\.git\ob
文件 933 2011-12-19 17:28 machinelearninginaction\.git\ob
目录 0 2011-12-19 17:28 machinelearninginaction\.git\ob
............此处省略619个文件信息
- 上一篇:OpenCV2.4x中文参考手册
- 下一篇:FTDI转usb串口驱动安装教程
相关资源
- Deep Learning Book (深度学习)中文版高
- 矩阵分析与应用 第二版 张贤达著 高
- 机器学习_周志华.pdf
- 《机器学习与模式识别(prml)》PPT课
- 大数据智能:互联网时代的机器学习
- 图解机器学习
- 机器学习合集
- 分布式机器学习-刘铁岩
- 机器学习数字字母训练集
- 机器学习课件周志华.rar
- 百面机器学习算法工程师带你去面试
- 深度学习方法及应用 完整目录版
- 西瓜书 知识框图.zip
- 山东大学机器学习期末复习资料.zip
- 机器学习面试1000题
- 周志华机器学习.zip
- Web安全之机器学习入门pdf
- 斯坦福大学机器学习课程个人笔记完
- 统计学在计算机科学领域的应用
- 统计自然语言处理(第二版)宗成庆
- TensorFlow机器学习项目实战.epub
- 山东大学机器学习实验
- Machine Learning in Action机器学习实战 中
- Artificial Intelligence:A Modern Approach人工
- 斯坦福大学吴恩达机器学习课程 完整
- 《终极算法:机器学习和人工智能如
- 机器学习车牌检测正负样本图片库
- 模式分类第二版Richard O.Duda
- 数据挖掘与机器学习——WEKA应用技术
- 机器学习.算法原理与编程实践[郑捷
评论
共有 条评论