cuốn sách gpt4 ai đã làm

python - 什么时候应该使用 tf.train.BytesList、tf.train.FloatList 和 tf.train.Int64List 将数据存储在 tf.train.Feature 中?

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 04:17:10 27 4
mua khóa gpt4 Nike

TensorFlow cung cấp 3 định dạng lưu trữ dữ liệu khác nhau tf.train.Feature .Họ là:

tf.train.BytesList
tf.train.FloatList
tf.train.Int64List

Tôi thường ở đó tf.train.Int64List Chọn giữa/tf.train.FloatListtf.train.BytesList .

Tôi đã thấy một số ví dụ trực tuyến chuyển đổi số nguyên/số float thành byte và sau đó lưu trữ chúng trong tf.train.BytesList ở giữa. .Điều này có thích hợp hơn việc sử dụng một trong các định dạng khác không? Nếu vậy thì tại sao TensorFlow lại cung cấp tf.train.Int64Listtf.train.FloatListLà một định dạng tùy chọn, bạn có thể chuyển đổi chúng thành byte và sử dụng tf.train.BytesList ?

Cảm ơn.

câu trả lời hay nhất

Bởi vì danh sách byte yêu cầu nhiều bộ nhớ hơn. Nó được thiết kế để lưu trữ dữ liệu chuỗi hoặc ví dụ như một mảng gọn gàng được chuyển đổi thành một chuỗi byte đơn. Hãy xem xét ví dụ:

def int64_feature(giá trị):
nếu loại (giá trị) != danh sách:
giá trị = [giá trị]
trả về tf.train.Feature(int64_list=tf.train.Int64List(value=value))

def float_feature(value):
nếu loại (giá trị) != danh sách:
giá trị = [giá trị]
trả về tf.train.Feature(float_list=tf.train.FloatList(value=value))

def byte_feature(value):
trả về tf.train.Feature(bytes_list=tf.train.BytesList(value=[value]))

nhà văn = tf.python_io.TFRecordWriter('file.tfrecords')
byte = np.array(1.1).tostring()
int = 1
phao=1,1
example = tf.train.Example(features=tf.train.Features(feature={'1': float_feature(float)}))
writer.write(example.SerializeToString())
nhà văn.close()

cho str_rec trong tf.python_io.tf_record_iterator('file.tfrecords'):
ví dụ = tf.train.Example()
example.ParseFromString(str_rec)
str = (example.features.feature['1'].float_list.value[0])
in(getsizeof(str))

cho dtype float Nó sẽ xuất ra 24 byte, đây là mức tối thiểu. Tuy nhiên, bạn không thể int 传递给 tf.train.FloatList. trong trường hợp này,int dtype sẽ chiếm 28 byte, trong khi byte chưa được mã hóa là 41 (trong ứng dụng np.fromstring trước) và thậm chí nhiều hơn sau đó.

Giới thiệu về python - Khi nào tôi nên sử dụng tf.train.BytesList, tf.train.FloatList và tf.train.Int64List để lưu trữ dữ liệu trong tf.train.Feature? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/55201347/

27 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress