TFRRecordでのFixedLenFeature、VarLenFeature、FixedLenSequenceFeatureの説明
3885 ワード
各入力サンプルの各カラムのデータを解析するには、解析辞書を定義する必要があります.tensorflowは、FixedLenFeature、VarLenFeature、FixedLenSequenceFeatureの3つの方法を提供し、それぞれ定長特徴、変長特徴、定長シーケンス特徴を解析する.まず、FixedLenFeature()関数には、(1)shape:データを入力するshapeの3つのパラメータがあります.(2)dtype:入力したデータ型.(3)default_value:この機能がサンプルに欠けている場合は、この値を使用します.dtypeと指定shapeと互換性がある必要があります.
注意点:
付録:dataset FixedLenFeature使用小坑
注意点:
tf.FixedLenFeature(shape=[], dtype=tf.int64) # tensor (bs, )
tf.FixedLenFeature(shape=[k], dtype=tf.int64) # tensor (bs,k )
# , , label
features = tf.parse_single_example(serialized_example,
features={
'label': tf.FixedLenFeature([381], tf.int64)
})
#
def _parse_record(example_proto):
features = {
"label": tf.FixedLenFeature([], tf.float32),
"feat_ids": tf.FixedLenFeature([fixed_onehot_len], tf.int64), # , onehot
"feat_vals": tf.FixedLenFeature([fixed_onehot_len], tf.float32), # , onehot
"mul_feat_ids": tf.VarLenFeature(tf.int64),
"mul_feat_vals": tf.VarLenFeature(tf.float32)
}
parsed_features = tf.parse_single_example(example_proto, features=features)
return parsed_features
付録:dataset FixedLenFeature使用小坑