PaddlePaddle
简单介绍
PArallel Distributed Deep Learning (并行分布式深度学习) PaddlePaddle 是百度自主研发的性能优先、灵活易用的深度学习平台,是一个已经解决和将要解决一些实际问题的平台。已为百度内部多项产品提供深度学习算法支持,在深度学习框架方面,覆盖了搜索、图像识别、语音语义识别理解、情感分析、机器翻译、用户画像推荐等多领域的业务和技术, 如外卖的预估出餐时间、预判网盘故障时间点、精准推荐用户所需信息、海量图像识别分类、字符识别(OCR)、病毒和垃圾信息检测、机器翻译和自动驾驶等领域。
官网
所用语言以及适合模型
C/C++ /cuda / python CNN/RNN/LSTM
适用系统:linux osx
支持模式
支持CPU/GPU的单机和分布式模式。同时支持海量数据训练、数百台机器并行运算
优缺点
具有高质量的GPU代码;非常好的RNN设计;可以实现CPU并行运算
(1)灵活
PaddlePaddle支持大量的神经网络架构和优化算法,支持任意复杂RNNs结构,高效处理batch,无需数据填充。简单书写配置文件即可实现复杂模型,比如拥有注意力(Attention)机制、外围记忆层(External Memory)或者用于神经机器翻译模型的深度时序快进网络。
(2)高效
为了利用异构计算资源的能力,PaddlePaddle中的每一级都会进行优化,其中包括计算、内存、架构和通信。以下是几个例子:
Ø 使用SSE/AVX内联函数、BLAS数据库(例如MKL、ATLAS、cuBLAS)和定制化的CPU/GPUKernal来优化数学运算。
Ø 高度优化RNNs网络,在没有Padding的情况下,也能处理不同长度的序列。
Ø 优化的本地和分布式训练,同时支持高纬稀疏模型。
(3)可扩展
有了PaddlePaddle,使用多个CPU和GPU以及机器来加速训练可以变得很轻松。 PaddlePaddle能通过优化通信,获得高吞吐量和性能。
(4&#