美文网首页我爱编程
tensorflow原理总结

tensorflow原理总结

作者: 活体检测业余爱好 | 来源:发表于2017-07-18 20:36 被阅读236次

TensorFlow 支持 C, C++, Python 编程语言,只是python的辅助函数更全。

1、由python或者C等其他语言构建图(图描述计算过程),图由各种操作(OP)组成,注意这边的操作不一定是做数据做怎样的加减乘除,比如input1 = tf.constant(3.0),则其中的constant()也是一种操作。操作的输入和输出都可以是零个或者几个tensor。

2、图由session启动,绘画将各种的OP分配到CPU或者GPU上面运行。执行之后,在 Python 语言中, 返回的 tensor 是numpyndarray对象; 在 C 和 C++ 语言中, 返回的 tensor 是tensorflow::Tensor实例.

3、构件图的第一步是构建源OP,源 op 不需要任何输入, 例如常量 (Constant). 源 op 的输出被传递给其它 op 做运算.

4、TensorFlow Python 库有一个默认图 (default graph), op 构造器可以为其增加节点. 这个默认图对许多程序来说已经足够用了.

注意:一般你不需要显式指定使用 CPU 还是 GPU, TensorFlow 能自动检测. 如果检测到 GPU, TensorFlow会尽可能地利用找到的第一个 GPU 来执行操作. 如果机器上有超过一个可用的 GPU, 除第一个外的其它 GPU 默认是不参与计算的. 为了让 TensorFlow 使用这些 GPU, 你必须将 op 明确指派给它们执行.with...Device语句用来指派特定的 CPU 或 GPU执行操作:

5、交互式使用:可以使用InteractiveSession代替Session类, 使用Tensor.eval()Operation.run()方法代替Session.run()

6、fetch:取回操作的输出内容tensor,用sess.run(),eg. result = sess.run([mul, intermed])

7、Feed,提供 feed 数据作为run()调用的参数.feed 只在调用它的方法内有效, 方法结束, feed 就会消失. 最常见的用例是将某些特殊的操作指定为 "feed" 操作,标记的方法是使用 tf.placeholder() 为这些操作创建占位符.:

1、使用图 (graph) 来表示计算任务。
2、在被称之为会话 (Session)的上下文 (context) 中执行图.
3、使用 tensor 表示数据。
4、通过变量 (Variable)维护状态.
5、使用 feed 和 fetch 可以为任意的操作(arbitrary operation) 赋值或者从其中获取数据.

相关文章

网友评论

    本文标题:tensorflow原理总结

    本文链接:https://www.haomeiwen.com/subject/xcohkxtx.html