Tensorflow - создайте линейную регрессию и распечатайте потерю Train и Test после некоторого количества циклов - PullRequest
0 голосов
/ 30 сентября 2019

Я пытаюсь изучить тензор потока и нашел этот урок https://www.geeksforgeeks.org/linear-regression-using-tensorflow/ по линейной регрессии.

Я хочу создать линейную регрессию в соответствии с уроком с циклом for, который выводит текущую потерюданные поезда и теста каждые 50 циклов.

Мой код в настоящее время выглядит следующим образом:

import tensorflow as tf, numpy as np

learning_rate = 0.01

g = tf.Graph()
with g.as_default():

  data = np.load('somedata.npy')

  l = int(data.shape[0] * 0.8)
  train = data[:l]
  test = data[l:]
  trainx = train[:, :-1]
  trainy = train[:, -1]
  testx = test[:, :-1]
  testy = test[:, -1]

  x = tf.placeholder(tf.float32)
  y = tf.placeholder(tf.float32)

  w = tf.get_variable("w", [102, 12], initializer=tf.truncated_normal_initializer(stddev=0.5))
  b = tf.get_variable("b", [12,1], initializer=tf.truncated_normal_initializer(stddev=0.5))

  prediction = tf.reduce_sum(tf.add(tf.multiply(w, x), b))  
  loss = tf.math.square(tf.math.subtract(prediction, y), 2)

  optimizer = tf.train.GradientDescentOptimizer(learning_rate)
  minimize_op = optimizer.minimize(loss, var_list=variables)

  with tf.Session() as sess:

    sess.run(tf.global_variables_initializer())

    for i in range(1, 10001, 1):
      for (_x, _y) in zip(x, y):
        sess.run(optimizer, feed_dict = {X: _x, Y: _y})
      if i + 1 % 100 == 0:
        # calculate loss of train
        print("Loop number: ", i, ":", " Loss Training: ", loss, end='')
        # calculate loss of test
        print("Loss Test: ", loss)

У меня есть следующие вопросы:

1. Как вы можете использовать данные из trainx, trainy, testx, testy, которые я получил из файла?

2. Нужно ли помещать деталь с прогнозом и потерями в цикл for или создать для них функцию?

3. Как рассчитать и распечатать потери?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...