当前位置:   article > 正文

从零开始的TensorFlow入门指南:构建第一个模型并可视化训练过程_tensorflow零基础入门

tensorflow零基础入门

当谈到深度学习框架时,TensorFlow是最流行的之一。它是一个由Google开发的开源框架,被广泛应用于图像识别、语音识别、自然语言处理和强化学习等领域。本篇文章将介绍TensorFlow的基本概念和入门步骤,帮助初学者快速掌握TensorFlow。

 

一、TensorFlow基础概念

TensorFlow是一个用于构建和训练机器学习模型的框架。它主要包括以下几个核心概念:

  1. 张量(Tensor):张量是TensorFlow中的基本数据类型,可以看作是一个n维数组。例如,标量是一个零维张量,向量是一维张量,矩阵是二维张量。在TensorFlow中,所有的数据都是以张量的形式存储和处理。

  2. 图(Graph):图是TensorFlow中描述计算的方式。一个图由一系列的操作(Operation)和张量组成。每个操作都有零个或多个输入张量和一个输出张量。

  3. 会话(Session):会话是TensorFlow中执行计算的环境。通过会话,可以运行图中的操作,并获取输出张量的值。

  4. 变量(Variable):变量是TensorFlow中的一种特殊的张量类型,可以在计算过程中保持不变。例如,在训练神经网络时,权重和偏差通常被定义为变量。

  5. 损失函数(Loss Function):损失函数是用来评估模型预测值与真实值之间的差异。在训练模型时,目标是最小化损失函数。

二、TensorFlow入门步骤

  1. 安装TensorFlow

首先,你需要安装TensorFlow。可以通过以下命令在终端中安装TensorFlow:

pip install tensorflow

2.构建图

  1. import tensorflow as tf
  2. # 定义常量
  3. a = tf.constant(2)
  4. b = tf.constant(3)
  5. # 定义操作
  6. add = tf.add(a, b)
  7. # 创建会话
  8. sess = tf.Session()
  9. # 运行操作
  10. print(sess.run(add))
  11. # 关闭会话
  12. sess.close()

在TensorFlow中,所有的计算都是在图中进行的。你可以使用Python API来构建图。以下是一个简单的例子

3.使用变量

在训练神经网络时,需要使用变量来存储权重和偏差。以下是一个简单的例子:

  1. import tensorflow as tf
  2. # 定义变量
  3. w = tf.Variable(0.0)
  4. b = tf.Variable(

0.0)

定义输入张量

x = tf.placeholder(tf.float32)

定义模型

y = w * x + b

定义损失函数

loss = tf.reduce_mean(tf.square(y - 5))

定义优化器

optimizer = tf.train.GradientDescentOptimizer(0.01)

定义训练操作

train_op = optimizer.minimize(loss)

创建会话

sess = tf.Session()

初始化变量

sess.run(tf.global_variables_initializer())

训练模型

for i in range(100): _, l = sess.run([train_op, loss], feed_dict={x: [1, 2, 3, 4]}) print("Step %d, Loss: %f" % (i, l))

获取权重和偏差的值

w_value, b_value = sess.run([w, b]) print("w: %f, b: %f" % (w_value, b_value))

关闭会话

sess.close()

  1. 以上代码定义了两个变量w和b,并定义了一个输入张量x。然后,定义了模型y和损失函数loss。使用梯度下降优化器优化损失函数,并定义训练操作train_op。在训练过程中,迭代100次,并输出每次迭代的损失值。最后,获取权重和偏差的值,并输出。
  2. 4. 使用TensorBoard可视化训练过程
  3. TensorBoard是TensorFlow提供的一个可视化工具,可以用于可视化模型结构、训练过程和其他统计信息。可以使用以下代码将训练过程可视化:
  4. ```python
  5. import tensorflow as tf
  6. # 定义变量
  7. w = tf.Variable(0.0)
  8. b = tf.Variable(0.0)
  9. # 定义输入张量和真实值
  10. x = tf.placeholder(tf.float32)
  11. y_true = tf.placeholder(tf.float32)
  12. # 定义模型和损失函数
  13. y_pred = w * x + b
  14. loss = tf.reduce_mean(tf.square(y_true - y_pred))
  15. # 定义优化器和训练操作
  16. optimizer = tf.train.GradientDescentOptimizer(0.01)
  17. train_op = optimizer.minimize(loss)
  18. # 创建会话
  19. sess = tf.Session()
  20. # 初始化变量
  21. sess.run(tf.global_variables_initializer())
  22. # 创建SummaryWriter,用于将数据写入TensorBoard
  23. writer = tf.summary.FileWriter("./logs", sess.graph)
  24. # 训练模型
  25. for i in range(100):
  26. _, l = sess.run([train_op, loss], feed_dict={x: [1, 2, 3, 4], y_true: [5, 9, 13, 17]})
  27. print("Step %d, Loss: %f" % (i, l))
  28. # 关闭会话
  29. sess.close()

在终端中执行以下命令启动TensorBoard:

tensorboard --logdir=./logs

总结

TensorFlow是一个强大的深度学习框架,本篇文章介绍了TensorFlow

关注v❤公众H:【Ai技术星球  暗号123】 领TensorFlow相关z料+小编整理了500G人工智能学习z源

工智能学习必读的电子数据深度学习神经网络+CV计算机视觉学习资料一份,内含:两大Pytorch、TensorFlow实战框架视频、图像识别、OpenCV、计算机视觉、深度学习与神经网络等视频、代码、PPT以及深度学习书籍等

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/394036
推荐阅读
相关标签
  

闽ICP备14008679号