才疏学浅,如果您发现错误,肯请指正。
1、数据:
1.1、静态图:[input,label]
1.2、动态图:[input],[label]
2、网络:
2.1、静态图
2.1.1、定义张量:定义单个输入数据和标签的数据结构。
2.1.2、定义网络:调用不同的“paddle.fluid.layers.具体层”,设置损失函数、优化函数组成网络,各层输出输入对应关系、参数由系统自动计算。
2.2、动态图
2.2.1、以自定义类形式定义网络:定义继承fluid.dygraph.Layer的自定义类,一、在类的初始化过程中按需要调用的顺序调用“paddle.fluid.dygraph.nn.具体层”定义自定义类的具体层,需要自动更新参数的层,层名前带“self.”定义成自定义类的层。层间的输出输入数据关系需要手工计算。二、定义前向传播,按初始化中定义的层的顺序执行各层。需要注意调整数据结构。
3、训练
3.1、静态图
paddle.fluid.Executor执行网络,run参数说明:feed为一批次数据[input,label],fetch_list为要返回的数据。
2.2、动态图
设置损失函数、按批输入数据[input],[label](需要使用fluid.dygraph.to_variable将数据转为Variable 类型的对象),计算损失,反射传播参数,优化参数进行运算。
印刷数字识别-静态图版:https://aistudio.baidu.com/aistudio/projectdetail/732514
印刷数字识别-动态图版:https://aistudio.baidu.com/aistudio/projectdetail/733688
数据集:https://aistudio.baidu.com/aistudio/datasetdetail/49817
才疏学浅,如果您发现错误,肯请指正。
我是觉得一顿操作猛如虎,不能太纠结细节。别人的代码就像千层饼,没想着一次吃完~~
无论不懂的还是错的,和别的项目交叉验证更有效率
以深度学习理论学习深度学习。
它们都比较专一。paddle使用API容易混淆。
动态像pytorch
静态像tf
不知道这样的形容恰不恰当
看别人的代码才是学习的第一步呀!hhh
打卡学习
打卡学西