用法如下代码中所示:
import tensorflow as tf
import numpy as np
a_data = 0.834
b_data = [17]
c_data = np.array([[0 , 1 , 2] , [3 , 4 , 5]])
c = c_data.astype(np.uint8)
c_raw = c.tostring()
# 下面的代码看起来有点像html代码;
# tf.train.Example主要用在将数据处理成二进制方面,一般是为了提升IO效率和方便管理数据;
# tf.train.Feature有三个属性为tf.train.bytes_list tf.train.float_list tf.train.int64_list,
# 只需要根据tf.train.FloatList,tf.train.Int64List和tf.train.BytesList来设置就可以了;
# tf.train.Features是tf.train.Feature的复数形式,tf.train.Features的一个属性是feature,如下代码中所示,
# 这个属性一般是传入一个字典,字典的key是字符串(feature名),值是tf.train.Feature对象。
example = tf.train.Example(
features = tf.train.Features(
feature = {
'a' : tf.train.Feature(
float_list = tf.train.FloatList(value = [a_data]) # 方括号表示输入为list,一般tf.train.FloatList被用来处理浮点数
),
'b' : tf.train.Feature(
int64_list = tf.train.Int64List(value = b_data) # B_data本身就是列表,一般tf.train.Int64List被用来处理整数
),
'c' : tf.train.Feature(
bytes_list = tf.train.BytesList(value = [c_raw]) # c_raw被转化成byte形式,一般tf.train.BytesList被用来处理其他类型的数据
)
}
)
)
网友评论