深度学习分布式训练库 Petastorm

码农软件 · 软件分类 · 机器学习/深度学习 · 2019-08-05 13:41:46

软件介绍

Petastorm 是由 Uber ATG(Advanced Technologies Group) 开发的开源数据访问库。这个库可以直接基于数 TB Parquet 格式的数据集进行单机或分布式训练和深度学习模型评估。Petastorm 支持基于 Python 的机器学习框架,如 Tensorflow、Pytorch 和 PySpark,也可以直接用在 Python 代码中。

Petastorm 的特性

Petastorm 提供了各种特性来支持自动驾驶算法的训练,包括行过滤、数据分片、shuffle、对字段子集的访问,以及对时间序列数据(n-gram)的支持。

典型数据集的结构包括:

  • 在自动驾驶汽车测试运行期间收集的传感器数据的多个列,包括摄像头、激光定位器和雷达。

  • 手动生成的标签,作为行的字段进行存储。

行数据按照时间顺序排序,并按照汽车的测试运行进行分组,行组大小通常在 30 到 100 范围内。

Petastorm 架构

Petastorm 的设计目标包括:

  • 通过单数据模式定义进行数据的编码和解码。

  • 为 ML 框架和纯 Python 代码提供可用的高数据加载带宽。

  • 将 Apache Spark 作为分布式集群计算框架来生成数据集。

  • 与 Python、ML 平台无关的 Petastorm 核心组件的实现。

  • 呈现给 Tensorflow 和 PyTorch 框架的原生接口。

  • etl 包实现了生成数据集的功能。

  • Reader 是训练和计算代码使用的主要数据加载引擎。Reader 使用 Python 实现,不依赖任何 ML 框架(Tensorflow、Pytorch),并且可以通过 Python 代来实例化和使用。

  • 为 Tensorflow 和 PyTorch 提供适配器。

  • Unischema 可以被数据集生成和数据加载代码引用。


Petastorm 提供了支持数据集生成和读取的组件。Unischema 定义了可供两者使用的公共数据模式。

内容摘自AI前线

本文地址:https://codercto.com/soft/d/11699.html

算法Ⅰ~Ⅳ(C++实现):基础、数据结构、排序和搜索

算法Ⅰ~Ⅳ(C++实现):基础、数据结构、排序和搜索

Sedgewick / 高等教育出版社 / 2002-1 / 49.00元

本书通过C++实现方案以简洁、直接的方式对书中的算法和数据结构进行表述,并向学生提供在实际应用中验证这种方法的手段。   本书广泛地论述了与排序、搜索及相关应用有关的基本数据结构和算法。覆盖了数组、链表、串、树和其他基本数据结构,更多地强调抽象数据类型(ADT)、模块化程序设计、面向对象程序设计和C++类。本书包括排序、选择、优先队列ADT实现和符号表ADT(搜索)实现,配有帮助学生学习计算......一起来看看 《算法Ⅰ~Ⅳ(C++实现):基础、数据结构、排序和搜索》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具