阅读TensorFlow的代码框架:https://github.com/tensorflow/tensorflow
2015.12.1的情况如上所示:
- google 目录下主要是Protobuf 的包,也是google的开源工具之一,用于序列化,各种schema格式化,支持多语言(c++、python)之间的转换。
- TensorFlow目录: 主目录,后面分析的重点。
- ThirdParty目录:第三方的库所在目录,目前包括eigen3(特征运算的库,包括SVD、LU分解等)、gpus目录(支持cuda)
- Tools目录:只有一行”build:cuda --crosstool_top=//third_party/gpus/crosstool“, 构建cuda支持。
TensorFlow主目录如下:
可以首先简单的看看
- cc目录有一个train的样例
- core是c++编写的主要目录。
- example目录下有andord系统的一个示例, 以及一个图像标注的例子(用的是一个老头的照片)
- g3doc顾名思义,是针对c++、python的版本的代码文档,可以点进去看看。
- models放的是一些通用的模型,里面有google开源的word2vec源码(embedding目录)、图像处理的mxnet、以及rnn(recureent 神经网络)
- opensource_only 这个只是个申明目录, 呵呵,你懂的。
- python 目录下 是python的实现,故名思议应该和cc目录对应,然而并没有,实际上是和”core“目录对应的python实现。
- stream_executor目录,流处理,看里面还有dnn之类,具体详细待定。
- tensorboard app、web支持,以及脚本支持。
- tools 一些工具杂项,pip。
后面主要分析的目录包括:core、models、 python、 stream_executor.