图像识别实战(四)------动态图&模型训练
动态图
动态图对应的是命令式编程:
可以不用事先定义神经网络的结构,将神经网络的定义和执行同步进行
与之相反的便是静态图,静态图和声明式编程相关:
需要事先定义好神经网络的结构,然后再执行整个图结构。
对比
如果想要实现如下功能。
-
如果inp1各元素之和小于inp2各元素之和,那么执行inp1与 inp2各元素对应相加。
-
如果inp1各元素之和大于等于inp2各元素之和,那么执行inp1与 inp2各元素对应相减。
使用动态图进行训练
import paddle.fluid asfluid
import numpy as np
inp1 = np.random.rand(4, 3, 3)
inp2 = np.random.rand(4, 3, 3)
# dynamic graph
with fluid.dygraph.guard():
if np.sum(inp1) <np.sum(inp2):
x =fluid.layers