index_cn.rst 2.1 KB
Newer Older
C
Chen Long 已提交
1 2 3 4
###############
动态图转静态图
###############

5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
动态图有诸多优点,包括易用的接口,Python风格的编程体验,友好的debug交互机制等。在动态图模式下,代码是按照我们编写的顺序依次执行。这种机制更符合Python程序员的习
惯,可以很方便地将大脑中的想法快速地转化为实际代码,也更容易调试。但在性能方面,
Python执行开销较大,与C++有一定差距。因此在工业界的许多部署场景中(如大型推荐系统、移动端)都倾向于直接使用C++来提速。

相比动态图,静态图在部署方面更具有性能的优势。静态图程序在编译执行时,先搭建模型
的神经网络结构,然后再对神经网络执行计算操作。预先搭建好的神经网络可以脱离Python依赖,在C++端被重新解析执行,而且拥有整体网络结构也能进行一些网络结构的优化。

动态图代码更易编写和debug,但在部署性能上,静态图更具优势。因此我们新增了动态图转静态图的功能,支持用户依然使用动态图编写组网代码。PaddlePaddle会对用户代码进行
分析,自动转换为静态图网络结构,兼顾了动态图易用性和静态图部署性能两方面优势。

我们在以下链接介绍PaddlePaddle动态图转静态图的各个部分:

- `基本用法 <basic_usage_cn.html>`_ : 介绍了动态图转静态图的基本使用方法

- `内部架构原理 <program_translator_cn.html>`_ :介绍了动态图转静态图的架构原理
C
Chen Long 已提交
20 21 22

- `支持语法列表 <grammar_list_cn.html>`_ :介绍了动态图转静态图支持的语法以及罗列不支持的语法写法

23 24
- `InputSpec功能介绍 <input_spec_cn.html>`_ :介绍了动态图转静态图指定输入InputSpec的功能和用法

25
- `报错信息处理 <error_handling_cn.html>`_ :介绍了动态图转静态图的报错信息处理方法
26 27 28 29

- `调试方法 <debugging_cn.html>`_ :介绍了动态图转静态图支持的调试方法


C
Chen Long 已提交
30 31
..  toctree::
    :hidden:
32 33

    basic_usage_cn.rst    
C
Chen Long 已提交
34
    program_translator_cn.rst
A
Aurelius84 已提交
35
    grammar_list_cn.rst
36
    input_spec_cn.rst
37 38
    error_handling_cn.md
    debugging_cn.md
39