零基础菜鸟的Python+TensorFlow之旅(一)——初识Tensor & Flow

开篇的话

Hello~ 如果你点开了这篇文章,你一定是一个内心深处对机器学习有着深深好奇并且又极其渴望亲自动手摆弄一番的重度IT玩家。TensorFlow是Google开发的一个机器学习的框架,是目前GitHub上深度学习领域最受欢迎的工具,他使用起来非常非常非常方便,并且有Google强大的资源库作为后备支撑,如果你是人工智能行业的从业者,或者想要在人工智能领域开拓自己事业的程序猿,亦或是新科技的爱好者,花点时间学习下TensorFlow,保证你学不了吃亏,学不了上当!
由于TensorFlow中的一些设计理念比较先进,所以很多同学会在一些知识的理解上产生困扰,本人作为一名从教师转行的程序猿,深知各位同学在这条道路上的难言之痛,于是决定开设此教程,为大家提供最简单最直接最粗暴的讲解,帮助各位同学以最轻松最愉快最爽朗的方式学会TensorFlow这个必备大杀器!

什么是Tensor?

Tensor,翻译成中文就是“张量”的意思,至于“张量”这两个字连在一起,可能很多同学都会一脸茫然,没关系,姑且不用放在心上,就好像当初第一次听说“数组”或者“指针”的时候,也不知道是个什么东东,暂且先知道Tensor(英文)=张量(中文)就好了。
在开始的时候,我们可以姑且把Tensor当成是“数组”,但实际上Tensor并不等同于数组,后面随着对TensorFlow的逐渐学习深入,很快你就能明白Tensor到底是个什么东西啦!说到这里,我们就暂且认为Tensor是一个功能更高级更先进更强大的“数组”即可。下面我们通过实际代码来简单看一下Tensor到底是个什么东西:

import tensorflow as tf  # 导入TensorFlow的包

tensor_a = tf.constant([[1, 2, 3], [4, 5, 6]])  # 这里定义了一个Tensor
print("tensor_a : ", tensor_a)  # 看一下Tensor到底是个啥?

以上代码块十分简单,第1行,首先导入TensorFlow的包,并给他起个别名“tf”,这是为了在后面的代码中使用起来更方便(想想每次使用TensorFlow的时候只输入“tf”两个字母可比输入“tensorflow”方便太多了),至于为什么要用tf,很简单的啦,就是Tensor和Flow的首字母t和f了。
接下来,第3行中,tensor_a = tf.constant([[1, 2, 3], [4, 5, 6]])定义了一个Tensor,其名字为tensor_atf.constant表示tensor_a 定义的是一个constant类型的Tensor(张量)。Tensor的详解将会在下一期专门进行介绍。
第4行的代码,我们来亲眼看一下Tensor到底是什么。运行上述代码之后,print出来的结果是:

tensor_a :  Tensor("Const:0", shape=(2, 3), dtype=int32)

我们可以看到,一个Tensor包含3个属性:名字、形状和数据类型。Tensor是TensorFlow中最基本的数据结构,TensorFlow的相关运行都是以Tensor为基础来开展的。
这里写图片描述
可以看出,一个Tensor中,包含了该Tensor的名字,该Tensor的形状,以及该Tensor运行的数据的数据类型。Tensor中的shape记录的是“数组”的形状(一个2 x 3的矩阵),而非具体的数据。

什么是Flow?TensorFlow又是什么?

Flow,中文就是“流”的意思,TensorFlow中的Flow就跟数据流、信息流中的“流”是同一个意思,TensorFlow的意思也就是“张量流”,跟数据流和信息流等概念类似,数据流指的是数据的序列或者数据的流程,TensorFlow指的也就是Tensor的序列或者说是Tensor的流程。
我们都知道在机器学习中,数据的处理要经过一系列的流程,进而得到最终的处理结果,TensorFlow这个看起来很帅气的名字的意思也就是这个流程,看起来很生动形象,又不缺乏高大上的感觉。

(在后续的文章中,将会继续用轻松愉快的方式,为大家讲解TensorFlow这一人工智能必备利器,帮助大家在IT界行走江湖!如有问题,欢迎在下方留言,一起交流学习!^_^)

猜你喜欢

转载自blog.csdn.net/weixin_42632109/article/details/80956133