深度学习基础之《TensorFlow框架(14)—TFRecords》

embedded/2024/9/24 6:23:04/

一、什么是TFRecords文件

1、TFRecords其实是一种二进制文件,虽然它不如其他格式好理解,但是它能更好的利用内存,更方便复制和移动,并且不需要单独的标签文件

2、使用步骤
(1)获取数据
(2)将数据填入到Example协议内存块(protocol buffer)
(3)将协议内存块序列化为字符串,并且通过tf.io.TFRecordWriter写入到TFRecords文件

3、文件格式*.tfrecords

二、Example结构解析

1、Example

features {feature {key: "image"value {bytes_list {value: "\377\374\375\372\356\351\365\31\350\356\352\350"}}}feature {key: "lable"value {int64_list {value: 9}}}
}

特征值 - image - 3072字节
目标值 - label - 1个字节

说明:
(1)tf.train.Example
协议内存块(protocol buffer)(协议内存块包含了字段features)
(2)features
包含了feature字段
(3)feature
中包含要写入的数据、并指明数据类型

2、相关对象
tf.train.Example(features=None)
说明:
(1)写入tfrecords文件
(2)features:tf.train.Features类型的特征实例
(3)return:example格式协议块

tf.train.Features(feature=Nona)
说明:
(1)构建每个样本的信息键值对
(2)feature:字段数据,key为要保存的名字,value为tf.train.Feature实例
(3)return:Features实例

tf.train.Feature(options)
说明:
(1)options
    bytes_list=tf.train.BytesList(value=[Bytes])
    int64_list=tf.train.Int64List(value=[Value])
    float_list=tf.train.FloatList(value=[Value])
(2)支持存入的类型如下
    tf.train.BytesList(value=[Bytes])
    tf.train.Int64List(value=[Value])
    tf.train.FloatList(value=[Value])

3、一个样本的对象

example = tf.train.Example(features=tf.train.Features(feature={"image":tf.train.Feature(bytes_list=tf.train.BytesList(value=[image])"label":tf.train.Feature(int64_list=tf.train.Int64List(value=[label])))}))

三、CIFAR-10数据存入TFRecords文件

四、读取TFRecords文件API

五、读取CIFAR的TFRecords文件
 


http://www.ppmy.cn/embedded/19296.html

相关文章

C语言数据结构之栈

目录 1.栈的概念及结构2.栈的实现3.栈的代码实现4.相关例题 •͈ᴗ•͈ 个人主页:御翮 •͈ᴗ•͈ 个人专栏:C语言数据结构 •͈ᴗ•͈ 欢迎大家关注和订阅!!! 1.栈的概念及结构 栈:一种特殊的线性表,其只允许在固定的一端进行插…

JAVA信息传送代码之下载图片

JAVA信息传送代码之下载图片 package xin.week1.day3; import org.junit.Test;import java.io.*; import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socket; import java.net.UnknownHostException;/*首先开启客户端服务 * 客户端下载服务端侧的图…

webpack和vite

webpack 是一个模块打包工具,使得工程中的各种资源能够被打包成一个整体的bundle.js文件。Webpack具有很高的可配置性和灵活性,使得开发者可以使用各种插件和配置文件来优化它们的工作流程。Webpack适用于大型、复杂的项目,它可以处理多种不…

前端开发攻略---在Vue3中对ElementPlus中的dialog组件进行二次封装

1、演示 2、子组件 在component文件夹下面新建一个文件夹&#xff0c;我这里是myDialog&#xff0c;在 myDialog文件夹创建index.vue文件。 <template><el-dialogv-model"visible":title"title":width"width":fullscreen"fullscre…

Cocos Creator 声音管理模块SoundMgr详解

前言 Cocos Creator 是一款用于开发2D和3D游戏的跨平台游戏引擎&#xff0c;它提供了丰富的功能和工具&#xff0c;使开发者能够快速开发出高质量的游戏。在游戏开发中&#xff0c;声音是一个非常重要的元素&#xff0c;可以增强游戏的氛围和互动性。为了更好地管理游戏中的声…

Transformer实战 单词预测

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f366; 参考文章&#xff1a;TensorFlow入门实战&#xff5c;第3周&#xff1a;天气识别&#x1f356; 原作者&#xff1a;K同学啊|接辅导、项目定制 一、定义模型 from tempfile import Tempor…

【React】CSS 局部样式

书写 CSS 的时候&#xff0c;如果 CSS 文件名包含 module&#xff0c;那么说明该 CSS 是一个局部 CSS 样式文件&#xff0c;类似于 vue 中的 scoped。 .avatarContainer {width: 40px;height: 40px;border-radius: 50%;background: rgb(213, 226, 226); }import styles from ..…

J1.数学建模 Python机器学习介绍

1.基本操作 命令行&#xff1a;代码执行的地方脚本文件&#xff08;.m&#xff09;&#xff1a;敲代码的地方实时脚本文件&#xff08;.mlx&#xff09;&#xff1a;代码执行结果和代码放在一起&#xff0c;可以插入图片…类似小word运行节&#xff1a;实时脚本文件的功能&…