Я пытаюсь запустить нейронную сеть в TensforFlow. Набор данных представляет собой просто длину и ширину цветочного лепестка, и результат может быть либо 1/0 в зависимости от типа:
x = [[3,1.5],
[2,1],
[4,1.5],
[3,1],
[3.5,0.5],
[2,0.5],
[5.5,1],
[1,1]]
y = [1,
0,
1,
0,
1,
0,
1,
0]
Пока мой код выглядит примерно так:
определить переменные
x_1 = tf.placeholder(tf.float32, shape=[8,2])
y_1 = tf.placeholder(tf.float32, shape=[8])
w_1 = tf.placeholder(tf.float32, shape=[2,8])
b_1 = tf.placeholder(tf.float32, shape=[8,])
sess = tf.Session()
sess.run(tf.global_variables_initializer())
y_ = tf.matmul(x_1,w_1) + b
sigmoid = tf.nn.sigmoid(y_)
train_step = tf.train.GradientDescentOptimizer(0.5).minimize(sigmoid)
for _ in range(50000):
Мой вопрос заключается в том, как мне организовать цикл «так», чтобы он сразу брал весь набор данных и сравнивал его с фактическим выводом? Набор данных mnist для tenorflow использует кросс-энтропию softmax, благодаря которой вы можете указать фактический и прогнозируемый выход в параметрах функции. Однако в этом простом наборе данных, как бы я повторил то же самое в оставшемся цикле for, чтобы код захватил все данные, сделал прогноз и сравнил его с фактическим выводом? Также, пожалуйста, укажите, есть ли проблемы с формой моих переменных, спасибо.