При попытке декодировать пример TFRecord появляется следующая ошибка:
InvalidArgumentError: Name:, Feature: релевантность (тип данных: float) требуется, но не может быть найден.[Op: ParseExample]
Для декодирования примера я использую tf.io.parse_example
следующим образом
example_features = tf.compat.v1.io.parse_example(
tf.reshape(serialized_list, [-1]), peritem_feature_spec)
, где serialized_list
выглядит как
[ <example_object>, ...
b'\n\xcc\x01\n\x15\n\trelevance\x12\x08\x12\x06\n\x04\x9a\xe9`D\n\xb2
\x01\n\x13encoded_clust_index\x12\x9a\00\ <more...>]
и peritem_feature_spec
выглядит как
peritem_feature_spec = {
'relevance':tf.FixedLenFeature([], tf.float32),
'encoded_clust_index':tf.VarLenFeature(tf.float32)
}
Я очень озадачен, почему не удается найти функцию «релевантность».Я думаю, что я закодировал и создал мои объекты TFRecord правильно.Я неправильно создаю feature_spec?Мне кажется, tf.VarLenFeature
- это неправильный тип объекта, который я могу использовать, но я не могу понять, что правильно.
Использование tensorflow_ranking.python.data.parse_from_example_in_example
способно правильно декодировать TFRecord в его функции, но я не знаю, почему tf.io.parse_example
терпит неудачу