TensorFlow笔记-初识
TensorFlow的安装
CPU版本:
只支持程序在CPU上计算/运算,默认运行就是CPU上运行 卸载: pip uninstall tensorflow pip uninstall tensorflow-tensorboard 安装: pip install tensorflow GPU版本:
支持GPU、CPU上的计算/运算,默认运行在GPU上,但是可以明确指定在CPU上运行(因为GPU的运行速度比CPU要快,所以会仅可能的将程序运行在GPU上) 卸载: pip uninstall tensorflow-gpu tensorflow-tensorboard 安装: pip install tensorflow-gpu==1.4.0 备注:必须安装CUDA和cuDNN; 必须要求机器有NVIDIA显卡
TensorFlow介绍
深度学习,如深度神经网络、卷积神经网络和递归神经网络已被应用计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。(分类)
1、真正的可移植性
引入各种计算设备的支持包括CPU/GPU/TPU,以及能够很好地运行在移动端,
如安卓设备、ios、树莓派等等
2、多语言支持
Tensorflow 有一个合理的c++使用界面,也有一个易用的python使用界面来构建和
执行你的graphs,你可以直接写python/c++程序。
3、高度的灵活性与效率
TensorFlow是一个采用数据流图(data flow graphs),用于数值计算的开源软件库
能够灵活进行组装图,执行图。随着开发的进展,Tensorflow的效率不算在提高
4、支持TensorFlow由谷歌提供支持,谷歌投入了大量精力开发
TensorFlow,它希望 TensorFlow 成为机器学习研究人员和开发人员的通用语言
TensorFlow的组件
图(Graph):图描述了计算的过程,TensorFlow使用图来表示计算任务。张量(Tensor):TensorFlow使用tensor表示数据。每个Tensor是一个类型化的多维数组。
操作(op):图中的节点被称为op(opearation的缩写),一个op获得/输入0个或多个Tensor,执行计算,产生0个或多个Tensor。会话(Session):图必须在称之为“会话”的上下文中执行。会话将图的op分发到诸如CPU或GPU之类的设备上执行。变量(Variable):运行过程中可以被改变,用于维护状态。
流程图如下:
-
数据依赖
-
控制依赖
实线边表示数据依赖,代表数据,即张量。任意维度的数据统称为张量。在机器学习算法中,张量在数据流图中从前往后流动一遍就完成一次前向传播,而残差从后向前流动一遍就完成一次反向传播。
虚线边表示控制依赖,可以用于控制操作的运行,这被用来确保happens- before关系,这类边上没有数据流过,但源节点必须在目的节点开始执行前完成。
import tensorflow as tf import os # 防止警告 os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' # 实现一个加法 a = tf.constant(5.0) b = tf.constant(6.0) sum1 = tf.add(a,b) with tf.Session() as sess: print(sess.run(sum1))