Как получить соответствующие горячие метки из весовой матрицы? - PullRequest
0 голосов
/ 30 августа 2018

Я запускаю тренировочный цикл для набора точек данных, скажем, 1,2,3 и 4. В каждой точке я запускаю тренировочный цикл для 20000 тренировочных шагов. Для каждой точки данных я получаю другую матрицу W (полностью подключена).

`W_fc = weight_variable([input_dim, 2])
logits = tf.matmul(pool_2D, W_fc)`

Моя цель состоит в том, чтобы построить график между набором точек данных на оси x и W-матрицей на оси y, но это требует некоторого преобразования. Учитывая одну точку данных и соответствующая ей W-матрица. Я должен умножить весовую матрицу на один горячий вектор, который был назначен в точке данных 1. В каждой отдельной точке данных каждая W-матрица имеет размерность (40,2), а один горячий вектор должен иметь размерность (2 1) для умножения матриц. Итак, как я могу получить один горячий вектор, соответствующий определенной точке данных?

    `for hc in h_array:
        sess.run(tf.initialize_all_variables())
        data_sets = input_rfhm.read_data_sets("Input", str(hc), one_hot=True)

        for i in range(FLAGS.training_step):
            batch = data_sets.train.next_batch(FLAGS.batch_size)
            optimizer.run(feed_dict = {x: batch[0], y_: batch[1]})

            if(i%100 ==0):
                train_accuracy = accuracy.eval(feed_dict= {x: batch[0], y_: batch[1]})
                test_accuracy = accuracy.eval(feed_dict= {x: data_sets.test.MC_Samples, y_: data_sets.test.labels})
            loss_value = loss.eval(feed_dict= {x: batch[0], y_: batch[1]})`
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...