tensorflow/
-
tensorflow/
该目录下存放着tensorflow的核心代码
-
contrib/
该目录下存放有其他项目贡献者添加的相关贡献代码。由于tensorflow受关注程度较高,目前该目录正急剧膨胀。
-
core/
后台C++实现部分。包含了主要的 C++代码 和 runtimes 。该目录为tensorflow的C++源码的核心。
-
common_runtime/
tensorflow 普通的 执行逻辑。
-
distributed_runtime/
tensorflow 与分布式相关的 执行逻辑。
-
framework/
包含主要的 抽象图计算 和 其他有用的library 。对tensorflow进行计算过程中的 通用组件 进行了定义和实现。
-
graph/
tensorflow 图相关操作 的逻辑。 由于tensorflow中的数据计算本质上是一个图状结构的计算流程,该过程中存在将图进行切分并且并行化执行的可能性。该目录下的代码逻辑即为对图数据进行结构化定义并进行拆分的相关内容。
-
kernels/
对tensorflow中各个 单步op 的具体实现。
-
lib/
一些 公用的 调用方法 。同 util /
-
ops/
对 kernel/ 下的op进行注册和对外声明。
-
platform/
包含 抽象出平台 和 其他 导入库(protobuf等) 的代码
-
protobuf/
tensorflow下各个 模块间 进行 数据传输 的 数据结构定义,通过proto进行配置实现。
-
public/
定义 Session
-
user_ops/
存放 自己编写 的 op
-
util/
一些 公用的 调用方法 。同 lib/
其他 文件夹/
其他 文档
-
-
examples/
一些示例(如ios、android系统的示例)
-
g3doc/
是针对c++、python的版本的代码文档
-
python/
前台Python接口。 该目录下存放了tensorflow使用python编写的相关代码,是和 core/ 对应的python实现目录。使用python封装了 ** 对 core/ 中实现的相关的机器学习算法 的调用 ** 。 同时利用了 python方便的编程特性 和 C++高效的执行效率 。
-
framework/
包含 图的python抽象 等,(还没深入验证过的: “ 其中很多被序列化为 proto 或被传递到 swigged session 调用 ” )
-
kernel_tests/
单元测试代码 和 示例代码
-
ops/
核心python接口
-
platform/
和上面C++部分的platform(core/platform/)差不多, 对python I/O、单元测试等做了轻量级的包装。
-
-
stream_executor/
流处理
-
tensorboard/
tensorflow独家模块。用于模型训练中 实时生成 图表,以监控 模型的训练程度
-
tools/
一些 工具杂项(如pip、git)
-
user_ops/
存放 自己编写 的 op
-
-
third_party/
-
tools/
-
util/
-
configure文档
该文件用于配置tensorflow的安装环境,运行该文件并完成tensorflow的安装环境配置后,输入相应bazel指令即可完成代码的编译工作(需要先安装bazel)
-
其他文档
Supplement:
很多博客中提到的 models/(位于根目录下,该目录下存放这多个使用python实现的模型实例),我并没有看到。估计是最新版的Tensorflow源码取消了这个文件夹。
Reference:
google讨论小组、Tensorflow快速入门3–代码结构及模型例子