Tensorflow 速查表

这篇博客详述了TensorFlow的各个关键部分,包括Tensor、Operation、Optimizer、Graph的构建和执行、Layers以及Tensorboard的使用。介绍了变量、基本运算、损失函数、优化器、卷积层、池化层、模型评估、GPU使用等概念,并强调了Tensorboard在可视化学习中的作用。
摘要由CSDN通过智能技术生成

目录

Part I: Tensor

1 Variable:

2. 变量初始化

3. 保存变量

4. 恢复变量

Part II: Operation

1. 基本运算

2. 激活函数

3. 损失函数

4. 模型评估

Part III: Optimizer

Part IV: Graph

1. 构建图

2. 在一个会话中启动图

3. Fetch

4. Feed

Part V: Layers

1. 卷积层

2. 池化层

3. 密集连接层

4. dropout

5. 输出层

Part VI: Tensorboard 可视化学习

Part VI: GPU Usage


 

TensorFlow 是一个编程系统, 使用图来表示计算任务. 图中的节点被称之为 op (operation 的缩写). 一个 op获得 0 个或多个 Tensor , 执行计算, 产生 0 个或多个 Tensor . 每个 Tensor 是一个类型化的多维数组. 例如, 你可以将一小组图像集表示为一个四维浮点数数组, 这四个维度分别是 [batch, height, width, channels].

一个 TensorFlow 图描述了计算的过程. 为了进行计算, 图必须在 会话 里被启动. 会话 将图的 op 分发到诸如 CPU 或 GPU 之类的 设备 上, 同时提供执行 op 的方法. 这些方法执行后, 将产生的 tensor 返回. 在 Python 语言中, 返回的 tensor 是 numpy ndarray 对象; 在 C 和 C++ 语言中, 返回的 tensor 是 tensorflow::Tensor 实例.

Part I: Tensor

1 Variable:

# Create two variables.
X = tf.placeholder(tf.float32,shape=(None, n_inputs),name ="X")
y = tf.placeholder(tf.int64,shape=(None),name="y")

weights = tf.Variable(tf.random_normal([784, 200], stddev=0.35),
name="weights")
# use truncted_normal
weights = tf.Variable(tf.truncated_normal([IMAGE_PIXELS, hidden1_units], stddev=1.0 / math.sqrt(float(IMAGE_PIXELS))),name='weights')

biases = tf.Variable(tf.zeros([200]), name="biases")

2. 变量初始化

# Add an op to initialize the variables.
init_op = tf.initialize_all_variables()

# Later, when launching the model
with tf.Session() as sess:
    # Run the init operation.
    sess.run(init_op)
    ...
    # Use the mod

由另一个变量初始化

# Create a variable with a random value.
weights = tf.Variable(tf.random_normal([784, 200], stddev=0.35),
name="weights")
# Create another variable with the same value as 'weights'.
w2 = tf.Variable(weights.initialized_value(), name="w2")
# Create another variable with twice the value of 'weights'
w_twice = tf.Variable(weights.initialized_value() * 0.2, name="w_twice")

3. 保存变量

# Create some variables.
v1 = tf.Variable(..., name="v1")
v2 = tf.Variable(..., name="v2")
...
# Add an op to initialize the variables.
init_op = tf.initialize_all_variables()
# Add ops to save and restore all the variables.
saver = tf.train.Saver()
# Later, launch the model, initialize the variables, do some work, save the
# variables to disk.
with tf.Session() as sess:
    sess.run(init_op)
    # Do some work with the model.
    ..
    # Save the variables to disk.
    save_path = saver.save(sess, "/tmp/model.ckpt")
    print "Model saved in file: ", save_path

4. 恢复变量

# Create some variables.
v1 = tf.Variable(..., name="v1")
v2 = tf.Variable(..., name="v2")
...
# Add ops to save and restore all the variables.
saver = tf.train.Saver()
# Later, launch the model, use the saver to restore variables from disk, and
# do some work with the model.
with tf.Session() as sess:
    # Restore variables from disk.
    saver.restore(sess, "/tmp/model.ckpt")
    print "Model restored."
    # Do some work with the model
    ...

 

Part II: Operation

1. 基本运算

y = tf.matmul(x,W)

 

2. 激活函数

softmax: 

y = tf.nn.softmax(tf.matmul(x,W) + b)

xentropy = tf.nn.sparse_softmax_cross_entropy_with_logits(labels=y,logits=logits)<

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: TensorFlow是一个开源的人工智能框架,由Google Brain团队开发,用于构建和训练神经网络。它支持多种编程语言,包括Python、C++和Java等。TensorFlow具有高度的灵活性和可扩展性,可以应用于各种不同的领域,如图像识别、自然语言处理和语音识别等。 ### 回答2: TensorFlow是一个开源的深度学习框架,由Google开发并维护。它能够以图的形式表示计算任务,并能够自动推断多个不同操作之间的依赖关系,从而有效地进行分布式计算。 TensorFlow具有以下几个核心特点: 1. 强大的计算能力:TensorFlow支持在各种硬件设备上进行高效的计算,包括CPU、GPU和TPU。 2. 灵活的编程模型:TensorFlow提供了强大的Python和C++编程接口,开发者可以根据需要自定义各种操作和模型,并能够方便地在不同平台上部署和运行。 3. 丰富的算法库:TensorFlow内置了大量的深度学习和机器学习算法,包括卷积神经网络、循环神经网络、变分自编码器等,极大地方便了开发者进行模型搭建和训练。 4. 分布式训练支持:TensorFlow支持将计算任务分布到不同的设备和服务器上进行并行计算,从而加速模型训练和推理的速度。 5. 可视化工具:TensorFlow提供了强大的可视化工具,能够帮助开发者更好地理解和调试计算图,并能够直观地展示训练结果。 总的来说,TensorFlow是一个功能强大、灵活可扩展且易于使用的深度学习框架,被广泛应用于各个领域,如图像识别、自然语言处理和数据挖掘等。无论是学术研究还是工业应用,TensorFlow都提供了丰富的功能和工具,帮助开发者快速构建和训练各种复杂的深度学习模型。 ### 回答3: TensorFlow(以下简称TF)是一个开源的机器学习框架,由Google Brain团队开发并于2015年发布。它提供了强大的工具和库,用于构建和训练各种机器学习模型。 使用TF可以处理各种机器学习任务,如图像识别、语音识别、自然语言处理等。它的主要优势在于其灵活性和高效性。TF使用图结构来表示计算流程,可以并行计算,充分利用多核CPU和GPU的性能,从而加快训练速度。 TF为用户提供了一个高级API,即Keras,使得构建和训练模型变得更加简单和易用。Keras提供了丰富的内置函数和工具,供用户快速搭建各种深度学习模型,如卷积神经网络、循环神经网络等。此外,TF还可以与其他常用的机器学习库和工具进行集成,如numpy、pandas等,为用户提供更多选择和灵活性。 TF还拥有一个庞大的社区和生态系统,用户可以从中获取丰富的资源和支持。在官方文档和论坛上,用户可以找到各种教程、示例代码和解决方案,帮助他们解决实际问题。此外,TF还定期发布更新和版本,修复bug并增加新功能,以满足用户的需求。 总之,TF是一个功能强大、高效且易用的机器学习框架,用户可以利用它构建和训练各种机器学习模型。无论是初学者还是专业人士,都可以通过TF轻松实现他们的机器学习目标。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值