Как использовать пользовательский набор данных в тензорном потоке?

Я недавно начал изучать тензорный поток. Я пытаюсь ввести свой собственный код Python в качестве обучающих данных. Я сгенерировал случайные экспоненциальные сигналы и хочу, чтобы сеть извлекла из этого уроки. Это код, который я использую для генерации сигнала.

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()

Как я могу использовать этот график в качестве входного вектора в тензорном потоке?


person zerogravty    schedule 16.05.2016    source источник


Ответы (1)


Вы должны использовать функцию tf.placeholder (см. документ):

# 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,))

Затем вы можете использовать x_node и y_node в своем коде тензорного потока (например, использовать x_node в качестве входных данных нейронной сети и попытаться предсказать y_node).
Затем при использовании sess.run() вы должны передать входные данные x и y с помощью feed_dict аргумент:

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