2016-10-01 53 views
2

我是新来的张量流我正在努力学习如何在CSV containin两个特点,一个标签中读取数据,并卡住了,出现以下错误如何读取csv文件,并将其应用于张量流

I here by attach the csv file

df=pd.read_csv("intro_to_ann.csv") 

X=tf.placeholder("float",[None,2]) 
y_=tf.placeholder("float",2) 


W = tf.Variable(tf.zeros([2,2])) 
print(W) 
b = tf.Variable(tf.zeros([2])) 
print(b) 
y= tf.sigmoid(tf.matmul(X, W) + b)#predicted value 


error = tf.square(y - y_) 
optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(error) 

init = tf.initialize_all_variables() 

errors = [] 
with tf.Session() as sess: 
sess.run(init) 
X_data, Y_data = np.array(df.ix[:,0:2]), np.array(df.ix[:,2]) 
for epoch in range(training_epochs): 
    for (x_d,y_d) in zip(X_data,Y_data): 
     print(x_d) 
     print(y_d) 
     sess.run(optimizer, feed_dict={X:x_d,y_:y_d}) 

我得到这个错误

ValueError异常:用于张量 'Placeholder_33:0' 不能喂形状的值(2),其具有形状 '(2,2)'

回答

1

ÿ你在代码中重新定义了y。为占位符和数据变量选择不同的名称。它应该可以工作。

+0

感谢您的帮助,我改变了上面的源代码,并得到了形状错误。你可以看看它,并帮助我在定义输入和输出大小时出错的地方。 ' –

+0

您再次对不同的节点使用相同的名称:y = tf.placeholder(“float”,2)和y = tf.sigmoid(tf.matmul(X,W)+ b)#预测值。这不是一个正确的方法。为他们选择不同的名字。 –

+0

你能指导我在哪里我使用相同的名称,我需要在代码中完全改变! –

相关问题