官网:https://tensorflow.google.cn/versions
tf.Keras.Model类:https://blog.csdn.net/qq_30992103/article/details/101034085
tf.keras.layers.Dense(
units=10, # 输出的维度大小
activation=None, # 选择使用的(激活函数)
use_bias=True, # 是否使用(偏置项)
kernel_initializer=None, # 卷积核的初始化器
bias_initializer=tf.zeros_initializer(), # 偏置项的初始化器
kernel_regularizer=None, # 卷积核的正则化
activaty_regularizer=None, # 偏置项的正则化
kernel_constraint=None, # 对主权重矩阵进行约束
bias_constraint=None, # 对偏置向量进行约束
trainable=True, # 可以设置为不可训练,(冻结)网络层
name=None, # 层的名字
reuse=None # 是否重复使用参数
)
Batch normalization会使用当前批次数据的均值和标准差做归一化。
在调用tf.keras.layers.BatchNormalization 时,我们几乎不需要设定任何参数,只需要输入数据就好
tf.keras.layers.BatchNormalization(
axis=-1,
momentum=0.99,
epsilon=0.001,
center=True,
scale=True,
beta_initializer='zeros',
gamma_initializer='ones',
moving_mean_initializer='zeros',
moving_variance_initializer='ones',
beta_regularizer=None,
gamma_regularizer=None,
beta_constraint=None,
gamma_constraint=None,
**kwargs
)
https://tensorflow.google.cn/versions/r2.3/api_docs/python/tf/keras/layers/ReLU
不用设定任何参数
shape表示形状一维二维等,如[n,m]表示n行m列
tf.zeros(
shape,
dtype=tf.float32,
name=None
)
用于创建变量(Variable),变量是一个特殊的张量(),其可以是任意的形状和类型的张量。
tf.zeros(
shape,
dtype=tf.float32,
name=None
)
import tensorflow as tf
w = tf.Variable([6,8,6]) #创建变量w
print(w) #查看变量的shape,而不是值。
with tf.Session() as sess:
sess.run(w.initializer) #初始化变量
print(sess.run(w)) #查看变量的值
#运行结果:
<tf.Variable 'Variable:0' shape=(3,) dtype=int32_ref>
[6 8 6]
Keras有两种类型的模型,tf.keras.Sequential 和 函数式模型(Model)
最常见的模型是层的堆叠:tf.keras.Sequential,层的线性叠加。
https://blog.csdn.net/weixin_43939952/article/details/104037604
tf.zeros(
shape,
dtype=tf.float32,
name=None
)
将Dropout应用到输入
tf.keras.layers.Dropout(
rate,
noise_shape=None,
seed=None,
**kwargs
)
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
将矩阵 a 乘以矩阵 b,生成a * b
matmul(
a,
b,
transpose_a=False,
transpose_b=False,
adjoint_a=False,
adjoint_b=False,
a_is_sparse=False,
b_is_sparse=False,
name=None
)
按一定方式计算张量中元素之和
tf.reduce_sum(
input_tensor, # 待处理张量
axis=None, # 指定按哪个维度进行加和,默认将所有元素进行加和。axis=0表示跨行,axis=1表示跨列。三维数组拥有三个轴:axis=0,axis=1,axis=2。 四维数组拥有三个轴:axis=0,axis=1,axis=2,axis=3
keepdims=None, # 默认为False,表示不维持原来张量的维度,反之维持原张量维度
name=None # 定义该操作名字
)
将矩阵拼接
t1 = [[1, 2, 3], [4, 5, 6]]
t2 = [[7, 8, 9], [10, 11, 12]]
c0=tf.stack([t1, t2], 0)
c1=tf.stack([t1, t2], 1)
c2=tf.stack([t1, t2], 2)
with tf.Session() as sess:
print('c0')
print(sess.run(c0))
print('c1')
print(sess.run(c1))
print('c2')
print(sess.run(c2))
//结果如下:
c0
[[[ 1 2 3]
[ 4 5 6]]
[[ 7 8 9]
[10 11 12]]]
c1
[[[ 1 2 3]
[ 7 8 9]]
[[ 4 5 6]
[10 11 12]]]
c2
[[[ 1 7]
[ 2 8]
[ 3 9]]
[[ 4 10]
[ 5 11]
[ 6 12]]]