Я только что заметил этот странный тензор:
Out[124]: <tf.Tensor: id=7672038, shape=(1,), dtype=uint8, numpy=array([1], dtype=uint8)>
Имеет dtype дважды. Обычно вы не можете этого получить. Например,
tf.convert_to_tensor(np.array([1]))
Out[126]: <tf.Tensor: id=7672042, shape=(1,), dtype=int32, numpy=array([1])>
Почему это так и в чем разница?
Я только что заметил это: последний может использоваться как индекс для тензора, но первый не может. Выдает эту ошибку:
TypeError: только целые числа, кусочки (:
), многоточие (...
), tf.newaxis
(None
) и скалярные тензоры tf.int32 / tf.int64 являются действительными индексами, получили 1
Это глупая ошибка, потому что она говорит "получил 1", а 1 - допустимый индекс! потому что это целое число для громкого крика! см. dtype выше.