Как считать в одном горячем тензоре - PullRequest
0 голосов
/ 06 февраля 2019

Я знаю, что могу преобразовать Тензор в горячий, используя эту команду:

one_hot_labels = tf.one_hot(labels,depth=3)

Теперь я хочу посчитать, сколько из класса 0, класса 1 и класса2 есть в one_hot_labels.Какой самый простой способ подсчитать это?

Пример:

Ввод:

one_hot_labels = [[1,0,0],[1,0,0],[0,0,1]]
one_hot_labels.count([1,0,0]) # something like this command

Выход:

2

1 Ответ

0 голосов
/ 06 февраля 2019

Что-то вроде этого должно работать для вас:

one_hot_labels = np.array([[1,0,0],[1,0,0],[0,0,1]])
count_label = tf.reduce_sum(one_hot_labels, axis=0)
sess = tf.Session()
sess.run(count_label)
# array([2, 0, 1])

Теперь, например, вы можете просто сделать:

count_label = tf.reduce_sum(one_hot_labels, axis=0)[0]
# 2
...