TensorFlow会话简介
TensorFlow Session是一个会话对象,它封装了执行操作对象和评估数据对象的环境。TensorFlow需要一个会话来执行一个操作并检索其计算值。一个会话可能拥有几个资源,例如,tf.QueueBase、tf.Variable、tf.ReaderBase。重要的是,当这些资源的工作完成后,它们就不再需要了。对于关闭打开的会话,你可以在会话上调用tf.Session.close方法,或者你可以将会话作为一个上下文管理器。
什么是TensorFlow?
- TensorFlow是一个用于深度学习的开源库。
- 它是由谷歌大脑团队开发的,于2015年11月发布。
- TensorFlow主要用于分类、感知、理解、发现、预测和创造。
- TensorFlow由Tensor + Flow两个词组成,意思是数据+流量。
什么是张量?
张量被定义为一个n维数组。
- **0-d张量:**标量(数字)
- 1-d张量:向量
- 二维张量:矩阵
TensorFlow中的图和会话
TensorFlow图形执行将计算的定义与它们的执行分开。
- **第一阶段:**组装一个图。
- **第二阶段:**它使用一个会话来执行图中的操作。
TensorFlow有一些好处,如:。
- 节省计算。它只运行产生你需要执行的输入值的子图。
- 它把大的计算分解成小的计算,差分片,以方便自动差分。
- 促进分布式计算,它将工作分布在各种CPU、图形、TPU和其他处理单元上。
- 许多机器学习的模型被可视化为TensorFlow图。
TensorFlow计算图
- 占位符。占位符被定义为变量,用来代替给定的输入,以反馈到TensorFlow图中。
- 变量。模型是将被增强的变量,以使模型以更好的方式工作。
- **模型。**模型是一个计算输出的数学函数,它是基于占位符值和模型变量。
- **损失测量:**它是优化模型的变量的先驱者。
- 优化方法。它更新了调整模型变量的方法。
- **会话。**它是一个运行时间,工作节点被执行,张量被估计。
TensorFlow会话和它的实现
TensorFlow会话是一个指针,指向在你的大图片或在那个大结构中只有圆形的部分的结构。
它是一个Python库,所以我们需要做的第一件事就是把它导入到我们的Python环境中,如。
代码。
#Import TensorFlow Library: import tensorflow as tf
这一行将打印出你电脑上安装的TensorFlow的版本。
代码。
#Print TensorFlow version: print(‘TensorFlow Version: ‘ + tf.VERSION)
TensorFlow会话的例子
下面给出的是提到的例子。
在这里,我们要计算两个矩阵并使用匹配乘法。我们将使用该矩阵的常量值1,所以它是一个一行两列的二维矩阵。如果你知道Python中的NumPy,你就会知道这个矩阵的用途是什么。现在定义矩阵2,有2行和1列。
如果我们使用矩阵乘法运算来计算度量衡,它的计算方法很简单,在数学中,3乘以2加上另一个3乘以2意味着结果应该是12。所以这个矩阵乘法的乘积是计算矩阵1乘以矩阵2。如果你曾经使用过Python中的NumPy库,那么你就已经知道它与np.dots类似。因此,使用会话的方法1就像定义了一个tf和result的会话,因为有两个会话可以对那个点或那个部分进行取舍,因为在这个例子中,我们没有任何变量来定义它。所以我们不需要运行初始的所有变量操作。我们只是直接运行这个产品。
在方法2中,它使用了Python的 "with "并运行其他的代码行。在这个方法中,我们只是打开这个会话评估,并将这个会话存储在会话的变量中。这样,我们要计算结果2,选择运行产品的会话并打印结果。在这里,我们不必关闭这个会话,因为一旦我们运行这个会话,那么在这个会话被关闭之后。
用两种方法进行矩阵乘法的代码。
代码。
import tensorflow as tf matrix1 = tf.constant([[3, 3]]) matrix2 = tf.constant([[2], [2]]) product = tf.matmul(matrix1, matrix2) #np.dot(m1, m2) #method 1 sess = tf.session() result = sess.run(product) print(result) sess.close() #method 2 with tf.Session() as sess: result2 = sess.run(product) print(result2)
输出。
这将是上面提到的两种方法在代码中的输出。
为什么是TensorFlow?
下面显示了为什么是TensorFlow。
1.随处运行
- 使用TensorFlow的第一点是它可以到处运行。
- 如它在桌面和移动设备上运行,如Linux,macOS,iOS,Android,Raspberry Pi和Windows。
2.灵活性
- Python API提供了创建所有类型计算的灵活性(包括我们能想到的任何神经网络架构)。
- 包括许多ML操作的高效的C++实现。
3.大型社区
- TensorFlow是GitHub平台上最受欢迎的开源项目之一。
- 越来越多的社区为改进它做出贡献。
4.谷歌产品
它也被用于谷歌的许多大规模和令人敬畏的服务中,例如。
- 谷歌云语音
- 谷歌照片
- 谷歌搜索
5.使用TensorFlow的大公司
- 谷歌
- 开放式人工智能
- 深度思维
- 优步
- eBay
- 滴答网
- 一批初创企业
6.使用TensorFlow的很酷的项目
- **项目1:**图像分类
- **项目2:**物体检测
- **项目3:**语音识别
- **项目4:**深度学习驱动的爵士乐生成
- **项目5:**在黑白照片和视频中重置颜色
- **项目6:**从名画中转移风格
总结
软件工程师和科学家们利用机器学习做了很多了不起的事情,其中一些包括与医疗保健部门有关的应用,根据用户兴趣推荐电影、音乐和广告的引擎,以及社会媒体的情感挖掘,等等。随着机器学习、深度学习和人工智能的这些改进,看起来令人难以置信,TensorFlow是帮助实现这些类型目标的工具之一。
推荐文章
这是一个关于TensorFlow会议的指南。在这里,我们讨论了介绍、图和会话、计算图的实现和例子。
The postTensorFlow Sessionappeared first onEDUCBA.