本文记录基于PyCharm的Python工作环境配置,最终实现的效果是本地修改,远程调试,运行环境可迁移。
本文记录基于PyCharm的Python工作环境配置,最终实现的效果是本地修改,远程调试,运行环境可迁移。
本篇是keras源码笔记系列的第三篇。在前两篇中,我们分析了keras对Tensor和Layer等概念的处理,并说明了它们是如何作用别弄个构成有向无环图的。本篇着眼于多层网络模型层面的抽象,即与用户距离最近的接口,源代码文件是/keras/engine/training.py和/keras/model.py,要观察的类是Model和Sequential。
本篇继续讨论keras的源码结构。
第一篇源码笔记中我们观察了Layer, Tensor和Node是如何耦合在一起的,而本篇的重点是观察多层网络构成的有向无环图(DAG)。主要涉及的文件为keras/engine/topology.py, 要观察的类是Container。
Keras架构的主要逻辑实现在/keras/engine/topology.py中,主要有两个基类Node()和Layer(),一个重要函数Input()。具体地,
Layer()是一个计算层的抽象,完成网络中对Tensor的计算过程;Node()描述两个层之间连接关系的抽象,配合Layer()构建DAG;Input()实例化一个特殊的Layer(InputLayer),将backend(TensorFlow或Theano)建立的Tensor对象转化为Keras Tensor对象。Update your browser to view this website correctly. Update my browser now