0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TFRecorder已开源

Tensorflowers 来源:TensorFlow 作者:TensorFlow 2020-09-23 09:12 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在训练计算机视觉机器学习模型时,数据加载是一种常见的性能瓶颈,可能导致 GPU 或 TPU 资源在等待数据加载到模型时得不到充分利用。以高效 TensorFlow Record (TFRecord)格式存储数据集是解决这些问题的好方法,只不过,创建 TFRecords 往往需要大量的复杂代码。

TensorFlow Record
https://tensorflow.google.cn/tutorials/load_data/tfrecord

我们上周开源了 TensorFlow Recorder 项目(也就是 TFRecorder),如此一来,数据科学家、数据工程师AI/ML 工程师只需几行代码即可创建基于图像的 TFRecords。使用 TFRecords 对于创建高效 TensorFlow ML 流水线非常重要,而过去的创建方法非常繁琐。在 TFRecorder 之前,要大规模创建 TFRecords,必须编写一个数据流水线来解析结构化数据,从存储中加载图像并将结果序列化为 TFRecord 格式。TFRecorder 允许您直接从 Pandas dataframe 或 CSV 写入 TFRecords,无需编写任何复杂的代码。

TensorFlow Recorder
https://github.com/google/tensorflow-recorder

以下是 TFRecoder 的示例,但我们先谈谈 TFRecords 的一些特定优势。

TFRecords 如何提供帮助

TFRecord 文件格式可以将数据存储在文件集中,每个文件都包含序列化为二进制记录的 Protocol Buffers 序列,可以非常高效地读取,有助于减少上述数据加载瓶颈。

Protocol Buffers
https://developers.google.com/protocol-buffers/

在使用 TFRecord 格式的同时实现预提取和并行交错,可以进一步提高数据加载性能。当模型在当前步骤上执行训练时,使用 prefetch 可以提前获取下一个训练步骤的数据,从而缩短每个模型训练步骤的时间,Parallel interleave 允许您读取多个 TFRecords 分片(TFRecord 文件的一部分),并对这些交错的数据流进行预处理。这能够减少读取训练批次所需的延迟,特别适用于从网络读取数据。

预提取和并行交错
https://tensorflow.google.cn/guide/data_performance

使用 TensorFlow Recorder

使用 TFRecorder 只需几行代码即可创建 TFRecord。工作原理如下。

import pandas as pd import tfrecorder df = pd.read_csv(...) df.tensorflow.to_tfrecord(output_dir="gs://my/bucket")

TFRecorder 目前预期数据与 Google AutoML Vision 格式相同。

AutoML Vision
https://cloud.google.com/vision/automl/docs/prepare

这种格式与 Pandas dataframe 或 CSV 格式类似:

split image_uri label
TRAIN gs://my/bucket/image1.jpg cat

其中:

split 可以取值 TRAIN、VALIDATION 和 TEST

image_uri 指定图像文件的本地或 Google Cloud Storage 位置。

label 可以是将被整数化的基于文本的标签,也可以是一个整数

将来,我们希望进一步扩展 TensorFlow Recorder,支持所有格式的数据。

这个示例虽然能够将上千个图像顺利转换成 TFRecords,但扩展到百万计的图像可能就难以处理。为了扩展到庞大的数据集,TensorFlow Recorder 提供了与 Google Cloud Dataflow 的连接,后者是一款无服务器 Apache Beam 流水线运行器。扩展到 DataFlow 仅需要多一点配置。

Google Cloud Dataflow
https://cloud.google.com/dataflow
Apache Beam
https://beam.apache.org/

df.tensorflow.to_tfrecord( output_dir="gs://my/bucket", runner="DataFlowRunner", project="my-project", region="us-central1)

未来计划

我们希望您愿意尝试 TensorFlow Recorder。您可以从 GitHub 获取,或者直接 pip 安装 tfrecorder。

TensorFlow Recorder 刚刚面世,我们非常期待您的反馈、建议和 Pull Requests。

原文标题:创建 TFRecords 的救星 — TensorFlow Recorder 现已开源!

文章出处:【微信公众号:TensorFlow】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • gpu
    gpu
    +关注

    关注

    28

    文章

    5114

    浏览量

    134527
  • DPU
    DPU
    +关注

    关注

    0

    文章

    408

    浏览量

    26280
  • 计算机视觉
    +关注

    关注

    9

    文章

    1715

    浏览量

    47483
  • Record
    +关注

    关注

    0

    文章

    4

    浏览量

    6836

原文标题:创建 TFRecords 的救星 — TensorFlow Recorder 现已开源!

文章出处:【微信号:tensorflowers,微信公众号:Tensorflowers】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NVIDIA 收购开源工作负载管理提供商 SchedMD

    供 Slurm 这一厂商中立的开源软件,支持其在各种硬件和软件环境中广泛可用,并得到 HPC 和 AI 社区的支持。 NVIDIA 与 SchedMD 合作
    的头像 发表于 12-16 18:24 957次阅读

    开源鸿蒙项目达成开源孵化目标顺利毕业

    11月21日,2025开放原子开发者大会在北京隆重启幕。作为本次大会的重磅环节和核心焦点之一,在大会开幕式上,开源鸿蒙项目达成开源孵化目标、顺利毕业,这是项目开源共建五年来最具意义的成果之一。
    的头像 发表于 11-25 17:36 942次阅读

    开源鸿蒙和开源欧拉成为开放原子开源基金会首批毕业项目

    11月21日,在2025开放原子开发者大会开幕式上,开放原子开源基金会宣布旗下开源鸿蒙(OpenHarmony)与开源欧拉(openEuler)成为首批毕业项目。
    的头像 发表于 11-25 17:22 623次阅读

    开源鸿蒙6.0 Release版本重磅发布

    近日,在长沙国际会议中心举办的开源鸿蒙技术大会2025上,开放原子开源鸿蒙(即OpenAtom OpenHarmony,简称“开源鸿蒙”)项目群正式发布开源鸿蒙6.0 Release版
    的头像 发表于 10-10 16:49 2252次阅读

    开源主板全系列横评!上官网查看更多参数!

    开源
    广州灵眸科技有限公司
    发布于 :2025年08月29日 11:50:04

    共谱开源华章 | 匠芯创荣获“开源生态战略合作伙伴”奖

    由嘉立创集团主办的第三届开源硬件星火会在深圳福田四季酒店举行。大会旨在搭建开源硬件领域交流合作的高水准平台,汇聚产、学、研各界嘉宾,围绕开源硬件设计、国产EDA、国产芯片等热点议题深入探讨。匠芯创
    的头像 发表于 08-07 15:37 1125次阅读
    共谱<b class='flag-5'>开源</b>华章 | 匠芯创荣获“<b class='flag-5'>开源</b>生态战略合作伙伴”奖

    2025开放原子开源生态大会前瞻

    、降低成本、吸引人才、构建差异化竞争优势的关键要素。从数据处理、模型训练到工具应用,开源技术的身影无处不在,其影响力深深嵌入现代AI技术栈的各个层面。
    的头像 发表于 07-21 17:47 903次阅读

    华为正式开源盘古7B稠密和72B混合专家模型

    关键举措,推动大模型技术的研究与创新发展,加速推进人工智能在千行百业的应用与价值创造。 盘古Pro MoE 72B模型权重、基础推理代码,正式上线开源平台。 基于昇腾的超大规模MoE模型推理代码,正式上线
    的头像 发表于 06-30 11:19 1140次阅读

    开源智联·具身同行:机智云推出基于豆包的 OpenEmbodied AI技术、产品及开源方案

    6月11日机智云携手火山引擎、扣子发起,联合CSDN、GitCode、广和通、奕斯伟、爱湾学院举办的“开源智联·具身同行”字节豆包AIoT开源生态沙龙圆满成功,正式推出基于豆包
    的头像 发表于 06-13 19:19 744次阅读
    <b class='flag-5'>开源</b>智联·具身同行:机智云推出基于豆包的 OpenEmbodied AI技术、产品及<b class='flag-5'>开源</b>方案

    开源鸿蒙应用技术组件共建计划启动

    通过兼容性测评,覆盖金融、交通、教育、医疗、航天等多个行业领域,已成为发展速度最快的开源操作系统之一。截至目前,开源鸿蒙累计发布 8 个大版本,共建共享15个技术域的1115款开源
    的头像 发表于 06-05 14:33 851次阅读

    开源安全领航者!华为云 CodeArts Governance 构建更安全的软件开发生命周期

    成分分析专业版开启公测。 随着开源软件广泛应用,颠覆性技术不断涌现,如何在软件开发全流程中保障开源安全,成为企业面对的重要挑战。 根据研究数据显示,全球超过 99%的商业软件含有开源
    的头像 发表于 02-12 16:50 3130次阅读
    <b class='flag-5'>开源</b>安全领航者!华为云 CodeArts Governance 构建更安全的软件开发生命周期

    黄鹤开源社区正式发布

    近日,在2024开放原子开发者大会暨首届开源技术学术大会开幕式上,基于开放原子开源基金会旗下AtomGit开源协作平台搭建的黄鹤开源社区正式发布,标志着武汉市
    的头像 发表于 12-23 11:33 1010次阅读

    开源鸿蒙应用案例重磅发布

    开源赋能千行百业,有效推动产业创新升级。随着开放原子开源基金会的开源鸿蒙(OpenHarmony)5.0 Release版本正式发布,项目生态逐步走向成熟,众多开源应用案例应运而生。近
    的头像 发表于 12-23 11:32 1912次阅读