1.python中datetime模块
**
2. numpy.random.seed()用于设置随机数种子 Numpy.random.RandomState()可取带.seed()
**
**
3.TensorFlow.session()
**
Tensorflow定义完图结构,并不会直接计算,需要利用session才能激活。一般直接利用第一种session机制就足够了。
方法一:
Sess=tensorflow.Session()
Result=sess.run(product)
Print(result)
Sess.close()
方法二:
Wtih tensorflow.session() as sess:
Result2=sess.run(product)
Print(result2)
**
4.Tensorflow.placeholder()
**
又一存储数据的利器.placeholder(数据类型,结构)
**
5.np.argmax()
**
tf.argmax就是返回最大的那个数值所在的下标。
Axis=0:最大范围,所以的数组进行比较,只是比较这些数相同的位置
Axis=1:范围缩小,只会比较每个数组内数的大小,几个数组产生几个数的结果
这是里面都是数组长度一致的情况,如果不一致,axis最大值为最小的数组长度-1,超过则报错。 当不一致的时候,axis=0的比较也就变成了每个数组的和的比较。
**
6.tf.truncated_normal
**
tf.truncated_normal(shape, mean, stddev) :
- shape表示生成张量的维度
- mean是均值
- stddev是标准差。
这个函数产生正太分布,均值和标准差自己设定。
一般的正太分布的产生随机数据比起来,这个函数产生的随机数与均值的差距不会超过两倍的标准差,但是一般的别的函数是可能的。
**
7.tf.nn.conv2d()
**
tf.nn.conv2d(input,filter,strides,padding,use_cudnn_on_gpu=None,name=None)
- Input需要做卷积的输入图像,是一个Tensor,具有[batch, in_height, in_width, in_channels]这样的shape
- Filter 相当于CNN中的卷积核,它要求是一个Tensor,具有[filter_height, filter_width,in_channels,out_channels]这样的shape,具体含义是[卷积核的高度,卷积核的宽度,图像通道数,卷积核个数],三维in_channels就是参数input的第四维。
- Strides 卷积时在图像每一维的步长
- Padding string类型,只能是“SAME”“VALID”,决定不同卷积方式,‘SAME’时,表示卷积核可以停留在图像边缘,卷积核特征提取后的图像size与卷积之前size一样
- Use_cudnn_on_gpu bool类型,是否使用cudnn加速
- 结果返回Tensor,一般称为feature map
**
8.tf.nn.max_pool实现池化操作
**
tf.nn.max_pool(value,ksize,stridea,padding,name=None)
-
Value:需要池化的输入,一般池化层在卷积层后面,所以输入通常是feature map,[batch, height, width,channels]这样的shape
-
Ksize:池化窗口的大小,四维向量,一般是[1, height, width, 1],因为我们不想在batch和channels上做池化,所以这两个维度设为了1
-
Strides:和卷积类似,窗口在每一维度上滑动的步长,一般[1, stride,stride, 1]
-
Padding:卷积类似
9.tf.argmax()
tf.argmax(input, axis=None, name=None, dimension=None)
- Input:输入tensor
- Axis:0表示安列,1表示按行
- Name:名称
- Dimension:和axis功能一样,默认axis取值优先
**
10.tf.reshape()
**
tf.reshape(tensor, shape, name=None) 数据重定形状函数
- Tensor:输入数据
- Shape:目标形状
- Name:名称