写点什么

LinkedIn 开源 Avro2TF: TensorFlow 的开源特性转换引擎

  • 2019-04-29
  • 本文字数:1688 字

    阅读完需:约 6 分钟

LinkedIn开源Avro2TF: TensorFlow的开源特性转换引擎

2019 年 4 月 4 日,我们宣布开源一个新的项目Avro2TF。该项目提供了一种可伸缩的基于spark的机制,可以有效地将数据转换为供TensorFlow使用的格式。使用这种技术,开发人员可以更专注于构建模型而不是转换数据,从而提高生产率。

LinkedIn 的深度学习数据管道

在 LinkedIn,深度学习已成功应用于多个与推荐和搜索相关的人工智能系统。我们从这个项目中学到的重要经验之一是深深地感受到提供良好的深度学习平台的重要性,这有助于我们的建模工程师变得更加高效和多产。Avro2TF 是为了降低数据处理复杂性和提高高级建模速度这个目标做出的努力。除了推进深度学习技术,LinkedIn 多年来一直在分享很多领域关于机器学习(ML)方面的创新(例如,推荐系统、可伸缩的机器学习系统等)。因为效率和准确性至上,所以我们有许多不同的 ML 方法来处理每天产生的大量的数据。


为了有效地支持深度学习和推进机器学习民主化的愿景(通过Pro-ML这样的项目),我们必须首先解决数据处理步骤的问题。我们的 ML 算法(例如 LinkedIn 的大规模个性化引擎Photon-ML)使用的大部分数据集都是 Avro 格式的。Avro 数据集中的每个记录本质上都是一个稀疏向量,并且可以被大多数现代分类器轻松使用。然而,领先的深度学习库 TensorFlow 无法直接使用 Avro 这种格式。主要的阻碍因素是稀疏向量的格式与 TensorFlow 所期望的格式不同。我们相信这不是 LinkedIn 独有的问题。许多公司拥有大量类似稀疏向量格式的 ML 数据,而 Tensor(张量)格式对许多公司来说仍然相对较新。


LinkedIn 的数据通常很大,格式也与传统的深度学习库不同。这就带来了重大的挑战,因为许多管道都包含混合的数据处理逻辑和建模逻辑。它影响了构建新的深度学习模型的灵活性。根据用户对 LinkedIn ML 垂直团队的反馈,我们需要一个可伸缩的解决方案,专注于可伸缩的数据转换。更具体地说,我们需要一个将 LinkedIn 数据类型(例如稀疏向量、密集向量等)转换为深度学习格式(即张量)的机制。



Avro2TF 弥补了这一差距,为 ML 工程师提供了一个不错的解决方案,让他们可以专注于不同的深度学习算法。它为建模者提供了一个简单的配置,以便从现有的训练数据中获取张量。张量数据本身不是自包含的。为了加载到 TensorFlow,张量数据需要携带元数据。为了弥补这一差距,Avro2TF 还提供分布式元数据收集工作。在 LinkedIn 内部,Avro2TF 是一个名为 TensorFlowIn 的系统的组成部分,该系统可以帮助用户轻松地将数据输入到 TensorFlow 建模过程中。



TensorFlowIn 是一个与TonY、TensorFlow 和 Spark 兼容的深度学习训练库。它包含端到端训练相关的实用程序和框架。上面的图给出了 TensorFlowIn 的高级概览。由于大规模的数据处理是一个重要的步骤,这不仅对许多 LinkedIn 应用程序至关重要,而且对更大的人工智能社区也很有用,所以我们在收到积极的内部反馈后决定开放这个引擎的源代码。

Avro2TF 项目细节

下面简要介绍 Avro2TF 的一些实现特性。


  • 输入数据要求:我们支持 Spark 可以读取的所有数据格式,包括 LinkedIn、Avro 和 ORC 中最流行的格式。对于分类或稀疏特性,我们要求它们以 NTV (name-term-value)格式表示。

  • 输出张量支持的数据类型:在 Avro2TF 中,输出张量支持的数据类型(dtype)为:int、long、float、double、string、boolean 和 bytes。我们还提供了一个特殊的数据类型 sparseVector 来表示分类/稀疏特性。一个 sparseVector 的张量类型有两个字段:索引和值。

  • Avro2TF 配置:在顶层,配置文件包含关于张量的信息,这些张量将提供给深度学习训练框架使用。对于每个指定的张量,它包含两种信息:

  • 输入特征信息,判断应该使用哪些现有特征来构造张量。

  • 输出张量信息,包括期望输出张量的名称、类型和形状。


Avro2TF 数据管道:它处理特征提取、特征转换(在 LinkedIn,这仅在 Pro-ML 不涉及的有限用例中)、张量元数据和特征映射生成、将字符串转换为数值索引和张量序列化。

Avro2TF 现在是开源的

在 LinkedIn 成功使用 Avro2TF 之后,我们已经将该技术作为开源软件发布。你可以在这里找到 Avro2TF 的官方 GitHub 页面。


我们还发布了 Avro2TF 的官方教程,可以在项目wiki页面上找到。



2019-04-29 08:086616
用户头像

发布了 124 篇内容, 共 47.7 次阅读, 收获喜欢 177 次。

关注

评论 1 条评论

发布
用户头像
开源,让全世界的工程师抛弃文化等因素,去协作完成一个项目。
2019-08-02 10:42
回复
没有更多了
发现更多内容

CAD背景怎么改成黑色?

在路上

cad cad看图 cad软件 CAD看图王

NextVault 发布去中心化收藏品金融白皮书:用双代币模型重构 Web3 拍卖与电商生态

TechubNews

一套稳定抓取竞品页面的Python代码方案!原来这么简单!

kookeey代理严选

Python 动态代理 代理IP 爬虫实战

浅谈国企数字化转型

优秀

数字化转型 国企数字化转型

如何在网络带宽和设备性能有限的环境下实现流畅直播,减少卡顿、提升清晰度。

腾讯云音视频

实时音视频

「高盛」最新人形机器人研报:人形机器人商业化瓶颈和主流公司梳理(附报告)

机器人头条

机器人 大模型 人形机器人 具身智能

掘金社区 MCP 上线、Claude 4与Gemini 2.5正面交锋、AI编程助手能力再进化—掘金 AI 编程社区周刊

Captain

CAD图纸中的文字看不到,这是什么原因?

在路上

cad

InterDigital新研究:沉浸式内容将使无线网络面临极限,推动视频与6G创新的发展

财见

一招解决SeaTunnel Excel中无法将数字类型转换成字符串类型的问题 | 附源码打包

白鲸开源

大数据 Excel 数据同步 数据集成 Apache SeaTunnel

开源鸿蒙开发者大会2025成功召开,启动开源鸿蒙应用技术组件共建

极客天地

重磅!SpringBoot4发布,11项重大变更全解析!

王磊

混合应用开发新范式:2025跨端生态与企业效能跃迁双擎驱动

xuyinyin

4月报 | SeaTunnel支持TDengine的多表Sink功能

白鲸开源

tdengine 开源社区 数据同步 Apache SeaTunnel

Apache DolphinScheduler存储系统详解| AI生成技术文档系列

白鲸开源

大数据 AI Apache DolphinScheduler AIGC 技术文档

基于RPA技术的ECRobot企业智能体解决方案,打通企业自动化业务流程的最后一公里

伊克罗德信息科技

iVX:图形化编程工程化实践及技术演进

代码制造者

CST sudio suite仿真案例:PCB热仿真1——元件热源

思茂信息

CST软件 CST Studio Suite 热仿真

【异常总结】SeaTunnel集群脑裂配置优化方法

白鲸开源

大数据 开源 分布式系统脑裂 数据集成 Apache SeaTunnel

征程 6X VDSP 调试方法

地平线开发者

自动驾驶 系统软件 地平线征程6

AI 又双叒叕胡说八道?揭秘 RAG:让大模型答题不再“靠演的”!

塞讯科技

可观测性 信息技术 LLM可观测

中昊芯英作为专精特新“小巨人”企业代表,受邀出席全省科技创新和产业创新深度融合推进制造业高质量发展大会

科技热闻

KubeEdge-Sedna v0.7.0 发布:联合推理引擎原生集成K8S HPA,系统稳定性全面升级

华为云原生团队

云计算 容器 云原生 kubeedge

实战分享:DolphinScheduler 中 Shell 任务环境变量最佳配置方式

白鲸开源

开源 Shell Apache DolphinScheduler 任务编排 工作流任务调度

4月报 | 将已派遣任务按工人组划分到不同等待队列提案落地

白鲸开源

大数据 开源 Apache DolphinScheduler 任务编排 工作流任务调度

MetaMask钱包已集成Solana 网络,以太坊用户也能参与DePIN生态

PowerVerse

以太坊 节点 钱包 Solana DePIN

“支付宝碰一下”成行业新宠,必胜客300+门店打造智慧餐饮新体验

科技热闻

域名解析怎么查询?有哪些域名解析查询方式?

国科云

【每天学点 Go 知识】Go 基础知识+基本数据类型快速入门

小曾同学.com

Go 变量 Go基本数据类型

我这没有几百块的小程序,饶了我吧!

程序员郭顺发

自然语言×数据集成新范式:SeaTunnel MCP深度解读 | 附视频讲解

白鲸开源

人工智能 数据集成 大模型 Apache SeaTunnel MCP

LinkedIn开源Avro2TF: TensorFlow的开源特性转换引擎_AI&大模型_Xuhong Zhang_InfoQ精选文章