91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

tensorflow如何實現KNN識別MNIST

發布時間:2021-08-07 09:19:55 來源:億速云 閱讀:148 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關tensorflow如何實現KNN識別MNIST,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

KNN算法算是最簡單的機器學習算法之一了,這個算法最大的特點是沒有訓練過程,是一種懶惰學習,這種結構也可以在tensorflow實現。

KNN的最核心就是距離度量方式,官方例程給出的是L1范數的例子,我這里改成了L2范數,也就是我們常說的歐幾里得距離度量,另外,雖然是叫KNN,意思是選取k個最接近的元素來投票產生分類,但是這里只是用了最近的那個數據的標簽作為預測值了。

__author__ = 'freedom' 
import tensorflow as tf 
import numpy as np 
 
def loadMNIST(): 
 from tensorflow.examples.tutorials.mnist import input_data 
 mnist = input_data.read_data_sets('MNIST_data',one_hot=True) 
 return mnist 
def KNN(mnist): 
 train_x,train_y = mnist.train.next_batch(5000) 
 test_x,test_y = mnist.train.next_batch(200) 
 
 xtr = tf.placeholder(tf.float32,[None,784]) 
 xte = tf.placeholder(tf.float32,[784]) 
 distance = tf.sqrt(tf.reduce_sum(tf.pow(tf.add(xtr,tf.neg(xte)),2),reduction_indices=1)) 
 
 pred = tf.argmin(distance,0) 
 
 init = tf.initialize_all_variables() 
 
 sess = tf.Session() 
 sess.run(init) 
 
 right = 0 
 for i in range(200): 
  ansIndex = sess.run(pred,{xtr:train_x,xte:test_x[i,:]}) 
  print 'prediction is ',np.argmax(train_y[ansIndex]) 
  print 'true value is ',np.argmax(test_y[i]) 
  if np.argmax(test_y[i]) == np.argmax(train_y[ansIndex]): 
   right += 1.0 
 accracy = right/200.0 
 print accracy 
 
if __name__ == "__main__": 
 mnist = loadMNIST() 
 KNN(mnist)

關于“tensorflow如何實現KNN識別MNIST”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新蔡县| 湘潭市| 雷州市| 伊吾县| 城步| 翼城县| 霍邱县| 平度市| 岱山县| 山丹县| 德阳市| 四会市| 临颍县| 正定县| 平山县| 连城县| 麻江县| 启东市| 延津县| 娱乐| 卓资县| 广安市| 南投市| 阿拉善盟| 罗源县| 讷河市| 牡丹江市| 辉县市| 湖北省| 镇江市| 巩义市| 揭东县| 台东市| 若羌县| 台南县| 临泽县| 新干县| 历史| 垫江县| 庄浪县| 汨罗市|