张量流量化模型

时间:2018-06-15 17:35:32

标签: python tensorflow neural-network deep-learning quantization

我是tensorflow的新手。我在张量流上训练了一个2层神经网络,我想用固定点类型量化权重和偏差。我遵循tensorflow的介绍

https://www.tensorflow.org/performance/quantization

但是我收到了一个错误:

  

FailedPreconditionError(参见上面的回溯):尝试使用   未初始化的值act_quant_1 / min [[节点:act_quant_1 / min / read =   IdentityT = DT_FLOAT,_class = [“loc:@ act_quant_1 / min”],   _device = “/作业:本地主机/复制:0 /任务:0 /设备:GPU:0”]]

那么,该程序的哪一部分应该改变?谢谢! 以下是我的代码的一部分:

sess = tf.Session()

xs=tf.placeholder(tf.float32,shape=(None,n_colum_data)) 
y_=tf.placeholder(tf.float32,shape=(None,n_classes)) 

w_1=tf.Variable(tf.random_normal([n_colum_data,n_hidden_1]),name='w_1') 
b_1=tf.Variable(tf.random_normal([1,n_hidden_1]),name='b_1') 

w=tf.Variable(tf.random_normal([n_hidden_1,n_classes]),name='w') 
b=tf.Variable(tf.random_normal([1,n_classes]),name='b') 

sample_size=4143
global_step=tf.Variable(0)

sess.run(tf.global_variables_initializer())
y_1=tf.nn.tanh(tf.matmul(xs,w_1) + b_1)

y = tf.nn.softmax(tf.matmul(y_1,w) + b,1) #prediction 
cross_entropy = -tf.reduce_sum(y_*tf.log(y))

tf.contrib.quantize.create_training_graph(input_graph=None)

learning_rate = tf.train.exponential_decay(0.009,global_step,decay_steps=sample_size/bat_size,decay_rate=0.75,staircase=True)  

train_step = tf.train.GradientDescentOptimizer(learning_rate).minimize(cross_entropy)
acc=[]
saver=tf.train.Saver()

0 个答案:

没有答案