重磅|百度PaddlePaddle发布最新API 从三大方面优化了性能
Posted 全球人工智能
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重磅|百度PaddlePaddle发布最新API 从三大方面优化了性能相关的知识,希望对你有一定的参考价值。
文章参考:Research.baidu 翻译:张妮娜
PaddlePaddle发布新API
3月9日百度PaddlePaddle宣布,新API Alpha版本以及新书《Deep Learning with PaddlePaddle》正式推出,这本书包含一些示例程序的内容。
PaddlePaddle的新API,大量减少了程序需要的代码量。如下面的示例所示:
旧API(左侧)和新API(右侧)中的卷积网络程序的效率对比效果图
新版本的API主要做了三大方面的优化改进:
1.一个新概念模型
新研究需要一种灵活的方式来描述创新性深度学习算法。例如,GAN模型包含两个网络,网络层共享一些参数。此外,在训练期间,我们需要修正一些参数,同时更新一些其他参数。使用我们的旧API,用户只能访问低级别的API,这些API通常是未经记录的,因此具有一定的灵活性。使用新API,说明性的GAN示例只需要几行代码。
2.更高级别的API
PaddlePaddle是为支持分布式训练而创建的。旧API公开了许多细节,用户在编写分布式程序之前需要了解这些细节。虽然PaddlePaddle可以运行在C ++代码中预定义的列车循环,但它阻止PaddlePaddle程序在Jupyter Notebook内部运行,这是记录工作的理想解决方案。在新的API中,我们提供更高级别的API,如`train`、test`和`infer`。例如,列车API可以运行本地训练作业,并且将能够在Kubernetes集群上运行分布式作业。
3.组合式数据块
工业AI应用中的数据加载并非一件微不足道的小事,通常是需要大量的源代码的。我们的新API提供reader、reader-creator和reader-decorator这三种模式的组合式概念,从而使数据操作的重新利用成为可能。例如,我们可以定义一个reader-creator`impressions()`,它从几行Python代码中读取Kafka的搜索引擎印象日志流。我们还可以定义另一个reader,`click()`,用于读取点击流。然后,我们可以使用预定义的reader-decorators模式完成缓冲和洗牌。我们甚至可以撰写或加入数据流:
如果我们想要含有5000个实例的小子集进行快速实验,可以使用:paddle.reader.firstn(r,5000)。在包装paddle.datasets时,百度提供了预定义reader,下载公共数据集并从本地缓存读取,详情见下面GitHub资源:
GitHub资源库:https://github.com/PaddlePaddle/Paddle/tree/develop/python/paddle/v2/dataset
以上是关于重磅|百度PaddlePaddle发布最新API 从三大方面优化了性能的主要内容,如果未能解决你的问题,请参考以下文章
重磅|百度宣布PaddlePaddle和Kubernetes 兼容:开发者可便捷做大规模深度学习训练
首个完整支持中文文档的深度学习框架——百度PaddlePaddle API文档简介
百度发布 PaddlePaddle 新 API;微软更新 Linux 平台虚拟机 DSVM 等 | 开发者头条
百度深度学习开源框架PaddlePaddle发布新版API,简化深度学习编程