91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4KB
    文件類型: .py
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2021-06-16
  • 語言: Python
  • 標簽: MNIST分類??KNN算法??

資源簡介

python文件,使用pycharm即可運行。文本標注了詳細的代碼。

資源截圖

代碼片段和文件信息

#?加載mnist數(shù)據(jù)
import?tensorflow?as?tf
import?numpy?as?np
import?random
from?tensorflow.examples.tutorials.mnist?import?input_data
mnist=input_data.read_data_sets(‘MNIST_data‘one_hot=True)
#?設置屬性
trainNum=60000??#?訓練圖片總數(shù)
testNum=10000???#?測試圖片總數(shù)
trainSize=50000???#?訓練時候用到的圖片數(shù)量
testSize=5??????#?測試時候用到的圖片數(shù)量
k=4?????????????#?距離最小的K個圖片
#?生成不重復的隨機數(shù)trainIndex:(500)testIndex:(5)
trainIndex=np.random.choice(55000trainSizereplace=False)
testIndex=np.random.choice(testNumtestSizereplace=False)
print(trainIndex.shapetestIndex.shape)
#?生成訓練數(shù)據(jù)
trainData=mnist.train.images[trainIndex]
trainLabel=mnist.train.labels[trainIndex]
#?生成測試數(shù)據(jù)
testData=mnist.test.images[testIndex]
testLabel=mnist.test.labels[testIndex]
print(‘trainData.shape=‘trainData.shape)
print(‘trainLabel.shape=‘trainLabel.shape)
print(‘testData.shape=‘testData.shape)
print(‘testLabel.shape=‘testLabel.shape)
print(‘testLabel=‘testLabel)

#?設置訓練數(shù)據(jù)的變量
trainDataInput=tf.placeholder(shape=[None784]dtype=tf.float32)
trainLabelInput=tf.placeholder(shape=[None10]dtype=tf.float32)
testDataInput=tf.placeholder(shape=[None784]dtype=tf.float32)
testLabelInput=tf.placeholder(shape=[None10]dtype=tf.float32)
#?使用曼哈頓距離來計算KNN距離
f1=tf.expand_dims(testDataInput1)??????#?用expand_dim()來增加維度將原來的testDataInput擴展成三維的f1:(?1784)
f2=tf.subtract(trainDataInputf1)???????#?subtract()執(zhí)行相減操作,即?trainDataInput-testDataInput?最終得到一個三維數(shù)據(jù)
f3=tf.reduce_sum(tf.abs(f2)reduction_indices=2)????#?tf.abs()求數(shù)據(jù)絕對值tf.reduce_sum()完成數(shù)據(jù)累加,把數(shù)據(jù)放到f3中
#?執(zhí)行
with?tf.Session()?as?sess:
????p1=sess.run(f1feed_dict={testDataInput:testData[0:testSize]})??#?取testData中的前testSize個樣本來代替輸入的測試數(shù)據(jù)
????print(p1)
????print(‘p1=‘p1.shape)
????p2=sess.run(f2feed_dict={trainD

評論

共有 條評論