欢迎访问 PaddlePaddle 的 GitHub 仓库。
PaddlePaddle(PArallel Distributed Deep LEarning,并行分布式深度学习)是一个易于使用、高效、灵活且可扩展的深度学习平台。它最初由百度的科学家和工程师开发,旨在将深度学习应用于百度的众多产品。
我们的愿景是通过 PaddlePaddle 让每个人都能使用深度学习。请参阅我们的版本发布公告以了解 PaddlePaddle 的最新功能。
灵活性
PaddlePaddle 支持广泛的神经网络架构和优化算法。可以轻松配置复杂的模型,例如带有注意力机制的神经机器翻译模型或复杂的内存连接模型。
高效性
为了充分发挥异构计算资源的潜力,PaddlePaddle 在计算、内存、架构和通信等多个层面进行了优化。以下是一些例子:
- 通过 SSE/AVX 指令集、BLAS 库(如 MKL、OpenBLAS、cuBLAS)或定制的 CPU/GPU 内核优化数学运算。
- 通过 MKL-DNN 库优化 CNN 网络。
- 高度优化的循环神经网络,能够处理可变长度序列而无需填充。
- 针对高维稀疏数据模型,优化了本地和分布式训练。
可扩展性
使用 PaddlePaddle,可以轻松利用多 CPU/GPU 和多台机器来加速训练。PaddlePaddle 通过优化的通信,能够实现高吞吐量和卓越性能。
与产品紧密结合
此外,PaddlePaddle 的设计也易于部署。在百度,PaddlePaddle 已被部署到拥有海量用户的产品和服务中,包括广告点击率(CTR)预测、大规模图像分类、光学字符识别(OCR)、搜索排序、计算机病毒检测、推荐系统等。它在百度的产品中得到了广泛应用,并产生了显著影响。我们希望您也能探索 PaddlePaddle 的能力,为您产品带来积极影响。
建议在查看从源码构建指南之前,先查阅Docker 安装指南。
您可以从这本可以在 Jupyter Notebook 中运行的在线交互式书籍开始。
您可以在 MPI 集群上运行分布式训练任务。
您也可以在 Kubernetes 集群上运行分布式训练任务。
我们的新 API 使程序更加简洁。
我们感谢您的贡献!
欢迎您通过 GitHub Issues 提交问题和报告错误。
PaddlePaddle 基于 Apache-2.0 许可证 提供。