资源简介
机器学习实战——KNN算法代码+数据
代码片段和文件信息
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
__author__=‘Kevin Liao‘
#监督学习算法————k-临近算法的特点
#优点:精度高、对异常值不敏感、无数据输入假定
#缺点:计算复杂度高、空间复杂度高,耗时、有时所需样本量大,无法给出任何数据的基础结构信息
#适用数据范围:数值型和标称型
from numpy import *
import operator
def createDataSet():
group = array([[1.01.1][1.01.0][00][00.1]])
labels=[‘A‘‘A‘‘B‘‘B‘]
return grouplabels
#————————约会网址预测
def classify0(inXdataSetlabelsk):
dataSetSize=dataSet.shape[0]
#以下三行计算距离
diffMat=tile(inX (dataSetSize1))-dataSet
sqDiffMat=diffMat**2
sqDistances=sqDiffMat.sum(axis=1)
distances=sqDistances**0.5
sortedDistIndicies=distances.argsort()
#选择距离最小的k个点
classCount={}
for i in range(k):
votellabel=labels[sortedDistIndicies[i]]
classCount[votellabe
评论
共有 条评论