tensorflow实现KNN算法
KNN算法应该是机器学习中比较好理解的一种算法,它没有训练的过程,就是看样本点中与测试点距离(可以是欧式距离,也可以是曼哈顿距离等等)最近的K个点的分类。采用投票的方式,即K个点中最多的分类即是该测试点的分类。
tensorflow的代码如下。
这里我以MNIST数字识别作为样本,最后的测试准确率可以达到95%以上。
import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_data
import numpy as np
mnist = input_data.read_data_sets('MNIST_data', one_hot=False)
K = 100
train_set = mnist.train.images
train_labels = mnist.train.labels
test_set