一、TensorFlow的基本用法学习报告
TensorFlow是一种较为完善的深度学习框架,支持所有流行编程语言开发,如:Python、C++等。此外,TensorTlow可在多种平台上工作,允许将模型部署到工业生产中,并易于使用。
在TensorFlow 2.x的基本用法中,介绍两种风格的代码,一种使用低阶API进行代码编写,一种使用高阶API进行代码编写,在网上的一些资料中,有时也会出现两种风格混合的代码编写方式。整体上,我们推荐使用TensorFlow中的高阶API-tf.keras进行代码编写·,但也需要读懂低阶API的代码。
1、TensorFlow中低阶API的使用
(1)TensorFlow常量使用:
import tensorflow as tf
#声明标量
t_1 = tf.constant(2)
t_2 = tf.constant(2)
#相加
t_add = tf.add(t_1,t_2)
#一个形如一行三列的常量向量
t_3 = tf.constant([4,3,2])
#定义一个形状为[M,M]的全0张量和全1张量
zeros = tf.zeros(shape=[3,3])
ones = tf.ones(shanpe=[3,3])
(2)TensorFlow变量:
在TensorFlow中,模型的权值和偏置常常定义为变量。变量在创建的时候,需要设定其某初始化方法:可以直接赋值,也可以使用初始化函数。
import tensorflow as tf
#直接赋值
bias1 = tf.Variable(2)
#通过initial_value显示的赋值初始化
bias = tf.Variable(initial_value=3.)
(3)张量属性:
TensorFlow程序使用tensor数据结构来代表所有的数据,计算图中,操作间传递的数据都是tensor。我们可以把张量看作是一个n维的数组或列表。在TensorFlow 2.x中,张量的形状、类型和数值可以通过shape、dtype、numpy()方法获得。
import tensorflow as tf
a = tf.constant([[1.0,2.0],[3.0,4.0]])
print(a.shape)
print(a.dtpye)
print(a.numpy())
(4)Tensor运算:
import tensorflow as tf
#0维张量相加
print(tf.ass(1,2))
#1维张量相加
print(tf.add([1,2],[3,4])
#矩阵相乘
print(tf.matmul([[1,2,3]],[[4],[5],[6]]))
#计算5的平方
print(tf.sqare(5))
#计算2的3次方
print(tf.pow(2,3))
#操作符重载
print(tf.square(2)+tf.square(3))
#计算数值的和
print(tf.reduce_sum([1,2,3]))
#计算均值
print(tf.reduce_mean([1,2,3]))
2、TensorFlow中高阶API的使用
(1)tf.keras构建模型
有“序贯式”和“函数式”两种方式构建
1)序贯式:
#序贯式方式一
model = tf.keras.Sequential
#创建一个全连接层,神经元个数为2