4

所以我有以下模型,我想測試一個想法。我對tf.nn.sigmoid_cross_entropy_with_logits()特別感興趣,因爲我的標籤不是互斥的。tf.nn.sigmoid_cross_entropy_with_logits公司關於文檔參數

import tensorflow as tf 

from tensorflow.examples.tutorials.mnist import input_data 
mnist = input_data.read_data_sets('MNIST_data', one_hot=True) 

x = tf.placeholder(tf.float32, shape=[None, 784]) 
y_ = tf.placeholder(tf.float32, shape=[None, 10]) 

w1 = tf.get_variable("w1", shape=[784, 512], initializer=tf.contrib.layers.xavier_initializer()) 
b1 = tf.Variable(tf.zeros([512], dtype=tf.float32)) 
w2 = tf.Variable(tf.zeros([512, 10], dtype=tf.float32)) 
b2 = tf.Variable(tf.zeros([10], dtype=tf.float32)) 

h = tf.nn.relu(tf.matmul(x, w1) + b1) 
y = tf.matmul(h, w2) + b2 

cross_entropy = tf.nn.sigmoid_cross_entropy_with_logits(labels=y_, logits=y) 
train_step = tf.train.AdamOptimizer().minimize(cross_entropy) 

with tf.Session() as sess: 

    sess.run(tf.initialize_all_variables()) 
    start = time.time() 

    for i in range(20000): 
     batch = mnist.train.next_batch(50) 
     train_step.run(feed_dict={x: batch[0], y_: batch[1]}) 

但是,我重複出現以下錯誤,這似乎與張量流文檔相矛盾。

Traceback (most recent call last): 
File "mnist_test.py", line 19, in <module> 
cross_entropy = tf.nn.sigmoid_cross_entropy_with_logits(labels=y_, logits=y) 
TypeError: sigmoid_cross_entropy_with_logits() got an unexpected keyword argument 'labels' 

請幫忙!!

回答

3

TensorFlow 1.0.0及更高版本中的關鍵字參數labelsonly exists。我猜你正在使用0.12或以下。使用pip freezeprint('TensorFlow version: {0}'.format(tf.__version__))進行檢查。


對以前版本的文檔可以在https://www.tensorflow.org/versions/

找到要搜索的先前版本的文檔中的一些信息,您可以使用:https://www.google.com/search?q=site:https://www.tensorflow.org/versions/r0.12+sigmoid_cross_entropy_with_logits()

+0

有人能提供一個鏈接到老的張量流程文件?我無法在他們的網站上找到它。 –

+0

@JoshuaHoward添加到答案 –