• 大小: 6KB
    文件类型: .py
    金币: 1
    下载: 0 次
    发布日期: 2021-01-02
  • 语言: Python
  • 标签: KNN  mnist  python  

资源简介

python版KNN识别mnist手写数据集

资源截图

代码片段和文件信息

from numpy import *
import operator
from os import listdir
import matplotlib
import matplotlib.pyplot as plt
import pdb

def classify0(inX dataSet labels k=3):
    #pdb.set_trace()
    dataSetSize = dataSet.shape[0]
    diffMat = tile(inX (dataSetSize1)) - dataSet
    sqDiffMat = diffMat**2
    sqDistances = sqDiffMat.sum(axis=1)
    distances = sqDistances**0.5
    sortedDistIndicies = distances.argsort() #ascend sorted
    #return the index of unsorted that is to choose the least 3 item    
    classCount={}          
    for i in range(k):
        voteIlabel = labels[sortedDistIndicies[i]]
        classCount[voteIlabel] = classCount.get(voteIlabel0) + 1# a dict with label as key and occurrence number as value
    sortedClassCount = sorted(classCount.iteritems() key=operator.ite

评论

共有 条评论