TensorFlow简介
TensorFlow简介
TensorFlow是一个开放源代码软件库,用于进行高性能数值计算。借助其灵活的架构,用户可以轻松地将计算工作部署到多种平台(CPU、GPU、TPU)和设备(桌面设备、服务器集群、移动设备、边缘设备等)。TensorFlow 最初是由 Google Brain 团队(隶属于 Google 的 AI 部门)中的研究人员和工程师开发的,可为机器学习和深度学习提供强力支持,并且其灵活的数值计算核心广泛应用于许多其他科学领域。
TensorFlow使用
-
常量
a0 = tf.constant(0,name = ‘a0’)
a1 = tf.constant([2,5],name = ‘a1’)
a0是一个零维的常量,值为0,名字是a0,a1是一个一维的常量,值为[2,5],名字是a1。 -
变量
b0 = tf.Variable(0,name = ‘b0’)
b1 = tf.Variable([6,4,8],name = ‘b1’)
b0是一个零维的变量,值为0,名字是b0,b1是一个一维的常量,值为[6,4,8],名字是b1。 -
占位符
c = tf.placeholder(tf.int32,[None,2])
c是一个二维的占位符,tf.int32表示数据类型是int32类型的,前面的变量常量也可以在定义时就说明类型,其他常用的数据类型有:tf.float32,tf.float64等。[None,2]中的None表示不确定个数,2是表示确定有两列。 -
计算
d = tf.matmul(a0,b0),这个表示两个张量相乘,结果是d。此外,其他常用的计算式有:
操作 | 描述 |
---|---|
tf.add(x, y, name=None) | 求和 |
tf.sub(x, y, name=None) | 减法 |
tf.mul(x, y, name=None) | 乘法 |
tf.div(x, y, name=None) | 除法 |
tf.mod(x, y, name=None) | 取模 |
tf.abs(x, name=None) | 求绝对值 |
tf.neg(x, name=None) | 取负 (y = -x). |
tf.sign(x, name=None) | 返回符号 y = sign(x) = -1 if x < 0; 0 if x == 0; 1 if x > 0. |
tf.inv(x, name=None) | 取反 |
tf.square(x, name=None) | 计算平方 (y = x * x = x^2). |
tf.round(x, name=None) | 舍入最接近的整数 |
tf.sqrt(x, name=None) | 开根号 (y = \sqrt{x} = x^{1/2}). |
tf.pow(x, y, name=None) | 幂次方 |
tf.exp(x, name=None) | 计算e的次方 |
tf.log(x, name=None) | 计算log,一个输入计算e的ln,两输入以第二输入为底 |
tf.maximum(x, y, name=None) | 返回最大值 (x > y ? x : y) |
tf.minimum(x, y, name=None) | 返回最小值 (x < y ? x : y) |
tf.cos(x, name=None) | 三角函数cosine |
tf.sin(x, name=None) | 三角函数sine |
tf.tan(x, name=None) | 三角函数tan |
tf.atan(x, name=None) | 三角函数ctan |
- 会话
sess = tf.Session()
init = tf.global_variables_initializer()
sess.run(init)
启动会话后,要先初始化一下变量(如果没有定义变量,可以不需要此步骤),然后,再去训练模型。最后,可以通过sess.close()来关闭会话。