Reputation: 89
I also encounter the same problem Training TensorFlow for Predicting a Column in a csv file which is:
AttributeError Traceback (most recent call last) in () 1 for i in range(1000): ----> 2 batch_xs, batch_ys = data.train.next_batch(100) 3 sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})
AttributeError: 'numpy.ndarray' object has no attribute 'train'
How do you able to solve it?
from __future__ import print_function
import matplotlib.pyplot as plt
import numpy as np
import matplotlib
# Import MNIST data
#from tensorflow.examples.tutorials.mnist import input_data
#mnistt = input_data.read_data_sets("/tttmp/data/", one_hot=True)
from numpy import genfromtxt
import csv
import tensorflow as tf
%matplotlib inline
# Read data...
x_input = genfromtxt('Data_Coffee.csv',delimiter=',')
y_input = genfromtxt('Class_Coffee.csv',delimiter=',')
data=genfromtxt('Data_Coffee.csv',delimiter=',')
matSize = np.shape(data)
# Parameters
learning_rate = 0.001
training_epochs = 15
batch_size = 100
display_step = 1
# tf Graph input
x = tf.placeholder(tf.float32, [None, matSize[0]])
y = tf.placeholder(tf.float32, [None, matSize[1]])
#x= genfromtxt('Data_Coffee.csv',delimiter=',')
#y= genfromtxt('Class_Coffee.csv',delimiter=',')
# Initializing the variables
init = tf.global_variables_initializer()
# Launch the graph
with tf.Session() as sess:
sess.run(init)
# Training cycle
for epoch in range(training_epochs):
avg_cost = 0.
total_batch = int(x.train.num_examples/batch_size)
# Loop over all batches
for i in range(total_batch):
batch_x, batch_y = data.train.next_batch(batch_size)
# Run optimization op (backprop) and cost op (to get loss value)
_, c = sess.run([optimizer, cost], feed_dict={x: batch_x, y: batch_y})
# Compute average loss
avg_cost += c / total_batch
# Display logs per epoch step
if epoch % display_step == 0:
print("Epoch:", '%04d' % (epoch+1), "cost=", \
"{:.9f}".format(avg_cost))
print("Optimization Finished!")
Upvotes: 0
Views: 1819
Reputation: 11
I think you are copying this pattern from MNIST example: data.train.next_batch
In MNIST example the data is read as an object of a class that has train variable, whereas you are only reading the data as a NumPy array.
Upvotes: 1