如何测试我训练有素的Tensor Flow模型

时间:2016-06-29 21:33:27

标签: python machine-learning tensorflow linear-regression deep-learning

我目前有一个回归模型,试图根据其他25个值预测一个值。

以下是我目前提供的代码

import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
rng = np.random
learning_rate  = 0.11
training_epochs = 1000
display_step = 50
X = np.random.randint(5,size=(100,25)).astype('float32')
y_data = np.random.randint(5,size=(100,1)).astype('float32')
m = 100
epochs = 100
W = tf.Variable(tf.zeros([25,1]))
b = tf.Variable(tf.zeros([1]))
y = tf.add( tf.matmul(X,W), b)
loss = tf.reduce_sum(tf.square(y - y_data)) / (2 * m)
loss = tf.Print(loss, [loss], "loss: ")
optimizer = tf.train.GradientDescentOptimizer(.01)

train = optimizer.minimize(loss)

init = tf.initialize_all_variables()

sess = tf.Session()
sess.run(init)

for i in range(epochs):
  sess.run(train)


sess.close()

我知道现在这些变量都是随机的,所以准确度不会很好,但我只是想知道如何制作测试集并找到预测的准确性。

1 个答案:

答案 0 :(得分:0)

通常,您将训练集分为两部分:大约2/3用于训练,1/3用于测试(意见因比例而异)。用第一套训练你的模型。检查训练准确性(通过模型运行训练集以查看它的正确数量)。

现在,通过模型运行余数(测试集)并检查预测与结果的匹配程度。 “找到准确性”取决于你所做的预测类型:分类与得分,二元与不相交与连续等等。