zerogravty
zerogravty

Reputation: 433

How to use custom dataset in tensorflow?

I have started learning tensorflow recently. I am trying to input my custom python code as training data. I have generated random exponential signals and want the network to learn from that. This is the code I am using for generating signal-

import matplotlib.pyplot as plt
import random
import numpy as np

lorange= 1
hirange= 10
amplitude= random.uniform(-10,10)
t= 10
random.seed()
tau=random.uniform(lorange,hirange)
x=np.arange(t)

plt.xlabel('t=time")
plt.ylabel('x(t)')
plt.plot(x, amplitude*np.exp(-x/tau))
plt.show()

How can I use this graph as input vector in tensorflow?

Upvotes: 0

Views: 1302

Answers (1)

Olivier Moindrot
Olivier Moindrot

Reputation: 28218

You have to use tf.placeholder function (see the doc):

# Your input data
x = np.arange(t)
y = amplitude*np.exp(-x/tau)

# Create a corresponding tensorflow node
x_node = tf.placeholder(tf.float32, shape=(t,))
y_node = tf.placeholder(tf.float32, shape=(t,))

You can then use x_node and y_node in your tensorflow code (for instance use x_node as the input of a neural network and try to predict y_node).
Then when using sess.run() you have to feed the input data x and y with a feed_dict argument:

with tf.Session() as sess: 
    sess.run([...], feed_dict={x_node: x, y_node: y})

Upvotes: 2

Related Questions