tf.io.decode_json_example
Преобразование JSON-кодированных записей примеров в двоичные строки протокола буфера.
tf.io.decode_json_example(
json_examples, name=None
)
Примечание: Это не операция общего назначения для разбора JSON.
Этот оператор преобразует сериализованные в JSON tf.train.Example (возможно, созданные с помощью json_format.MessageToJson, в соответствии со стандартным отображением JSON) в двоично-сериализованные tf.train.Example (эквивалентные Example.SerializeToString()), подходящие для преобразования в тензоры с помощью tf.io.parse_example.
Вот пример протокола tf.train.Example:
example = tf.train.Example(
features=tf.train.Features(
feature={
"a": tf.train.Feature(
int64_list=tf.train.Int64List(
value=[1, 1, 3]))}))Вот его преобразование в JSON:
from google.protobuf import json_format
example_json = json_format.MessageToJson(example)
print(example_json)
{
"features": {
"feature": {
"a": {
"int64List": {
"value": [
"1",
"1",
"3"
]
}
}
}
}
}Этот оператор преобразует указанную выше строку JSON в двоичный протокол:
example_binary = tf.io.decode_json_example(example_json) example_binary.numpy() b'\n\x0f\n\r\n\x01a\x12\x08\x1a\x06\x08\x01\x08\x01\x08\x03'
Оператор работает со строковыми тензорами произвольной формы:
tf.io.decode_json_example([
[example_json, example_json],
[example_json, example_json]]).shape.as_list()
[2, 2]Полученная двоичная строка эквивалентна Example.SerializeToString() и может быть преобразована в тензоры с помощью tf.io.parse_example и связанных функций:
tf.io.parse_example(
serialized=[example_binary.numpy(),
example.SerializeToString()],
features = {'a': tf.io.FixedLenFeature(shape=[3], dtype=tf.int64)})
{'a': <tf.Tensor: shape=(2, 3), dtype=int64, numpy=
array([[1, 1, 3],
[1, 1, 3]])>}| Аргументы | |
|---|---|
json_examples | Строковый тензор, содержащий сериализованные в JSON tf.Example протоколы. |
name | Имя для операции. |
| Возвращаемые значения | |
|---|---|
Строковый тензор, содержащий двоично-сериализованные tf.Example протоколы. |
| Исключения | |
|---|---|
tf.errors.InvalidArgumentError: Если JSON нельзя преобразовать в tf.Example |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/io/decode_json_example