tf.io.SparseFeature
Настройка для разбора разреженной входной характеристики из Example.
tf.io.SparseFeature(
index_key, value_key, dtype, size, already_sorted=False
)
Обратите внимание, предпочтительнее использовать VarLenFeature (возможно, в сочетании с SequenceExample), чтобы разобрать SparseTensor вместо SparseFeature из-за простоты.
В точности имитируя SparseTensor, который будет получен при разборе Example с конфигурацией SparseFeature, SparseFeature содержит
value_key: Имя ключа дляFeatureвExample, чья обработаннаяTensorбудет результирующимSparseTensor.values.index_key: Список имён — по одному для каждой размерности результирующегоSparseTensor, чьяindices[i][dim], указывающая позициюi-го значения вdimизмерении, будет равнаi-му значению в Feature с именем ключаindex_key[dim]вExample.size: Список целых чисел для результирующегоSparseTensor.dense_shape.
Например, мы можем представить следующую 2D-SparseTensor
SparseTensor(indices=[[3, 1], [20, 0]],
values=[0.5, -1.0]
dense_shape=[100, 3])
с входным протоколом Example
features {
feature { key: "val" value { float_list { value: [ 0.5, -1.0 ] } } }
feature { key: "ix0" value { int64_list { value: [ 3, 20 ] } } }
feature { key: "ix1" value { int64_list { value: [ 1, 0 ] } } }
}
и конфигурацией SparseFeature с 2 index_key
SparseFeature(index_key=["ix0", "ix1"],
value_key="val",
dtype=tf.float32,
size=[100, 3])
| Поля | |
|---|---|
index_key | Одно строковое имя или список строковых имён признаков индекса. Для каждого ключа тип базового признака должен быть int64, и его длина всегда должна совпадать с длиной value_key признака. Для представления SparseTensor с dense_shape rank выше 1 должен использоваться список длиной rank. |
value_key | Имя признака значения. Тип базового признака должен быть dtype, и его длина всегда должна совпадать с длиной всех index_key признаков. |
dtype | Тип данных признака value_key. |
size | Целое число Python или список целых чисел, определяющий плотный размер. Должен быть списком только в том случае, если index_key является списком. В этом случае список должен быть равен длине index_key. Для каждого элемента i все значения в index_key[i] признаке должны быть в [0, size[i]). |
already_sorted | Булевое значение Python, указывающее, отсортированы ли значения в value_key по их позиции индекса. Если да, пропустить сортировку. По умолчанию ложь (необязательно). |
| Атрибуты | |
|---|---|
index_key | Псевдоним namedtuple для поля номер 0 |
value_key | Псевдоним namedtuple для поля номер 1 |
dtype | Псевдоним namedtuple для поля номер 2 |
size | Псевдоним namedtuple для поля номер 3 |
already_sorted | Псевдоним namedtuple для поля номер 4 |
© 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/SparseFeature