【深度学习】 第二章TensorFlow入门
用的tensorflow版本为2.0的所有有些代码有所改动
1. TensorFlow介绍
在生活中如google图像搜索、谷歌翻译等都使用了tensorflow
2. 计算图session Tensor
实现下面的代码,核心过程如下:
import tensorflow as tf
a=tf.constant(32) #创建常量
b=tf.constant(10) #创建常量
c=tf.add(a,b)
print(a)
print(b)
print(c)
可以看出来tensorflow只是将上面定义的tensor作为节点保存,没有具体的值,要想显示具体的值,需要开启session
- 开启session
tf.compat.v1.disable_eager_execution() #因为安装的是高版本的,要想session能用必须先写这个
sess= tf.compat.v1.Session()
- 关闭session
sess.close()
注意如果tensorflow如果是2.0版本下面无法运行的
import tensorflow as tf
sess=tf.Session()
print(sess.run(a))
print(sess.run([a,b]))
print(sess.run([a,b,c]))
将session产生的结果保存在一个变量中,下面的py便是一个正常的数值
#将上面产生的结果保存在一个变量中
py_a=sess.run(a)
print(type(py_a))
py_r=sess.run([a,b,c])
print(type(py_r))
print(py_r[0],py_r[1],py_r[2])
tensor可以由各种各样的类型,如字符串、布尔值、列表、浮点型等转换
3. OP 矩阵 随机化 Variable
3.1 OP
op:tensorflow具有很多基本操作,这些操作定义为op
方法 | 返回值类型 | 参数 | 说明 |
---|---|---|---|
算数运算符 | |||
.add() | Tensor | x, y, name=N | 加法(若x,y都为tensor, 数据类型需一致, 以下所有x,y都如此) |
.subtract() | Tensor | 同add | 减法 |
.multiply() | Tensor | 同add | 元素级乘法 |
.scalar_mul() | Tensor | scalar, x | 标量*tensor |
.div() | Tensor | 同add | 除法(结果dtype同x,y) |
.divide() | Tensor | 同add | 同Python除法 int8, int16 --> float32 int32, int64 --> float64 |
.truediv() | Tensor | 同add | 同上 |
.floordiv() | Tensor | 同add | 结果向下取整, 但结果dtype与输入保持一致 |
.realdi |