python在应用中用到的一些函数

tf.InteractiveSession() 新建一个会话,并设置成默认会话
tf.random_uniform((fan_in,fan_out),
                         minval = low, maxval = high,
                         dtype = tf.float32)

生成fan_in*fan_out的,最大值为high最小值为low的,数据格式为float32的满足均匀分布的张量数据

tf.placeholder(tf.float32, [None,784],name)

返回数据类型为float32的,none*784的,名称为name的张量,其中none表示行不定,name参数可不要

tf.variable,定义参数,例如biases = tf.Variable(tf.zeros([200]), name="biases"),可同时对矩阵tf.zeros[200]进行定义和命名

tf.nn. 包含大量神经网络组件,例如tf.nn.softmax函数,用来实现对输出值进行标准化等操作

tf.matmul 矩阵乘法函数

tf.reduce_mean 求均值

tf.reduce_sum 求和

train_step=tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy)  这是一个封装好的优化器,相当于用户只用设置学习步长(学习率)以及loss function,选择好优化算法之后,优化器将会自动对网络模型进行训练,但是还需要执行他的run方法才能启动训练。

tf.global_variables_initializer().run()    其中,tf.global_variables_initializer()为全局参数初始化器,执行它的run方法即可初始化全局参数

tf.equal 返回bool值,判断两个数是否相等

tf.argmax 返回最大值的相关参数,等同于matlab里的max函数,不仅返回最大值,还可以返回最大值对应的索引(如行列等等)

def function-name(parameters):

    expression

定义函数

np.random.normal(loc, scale, size)给出均值为loc,标准差为scale,大小为size的高斯随机数,其中loc默认为0,scale默认为1,这样的话给出的高斯随机数(场)也就是正态分布,size默认为none,也就是只输出一个数。

tf.truncated_normal(shape, mean=0,stddev,dtype,seed,name)从截断的正态分布中输出随机值,生成的值服从具有制定平均值和标准差的正态分布,但是如果生成的值大于平均值2个标准差则丢弃重新选择。何为截断的正态分布?在正态分布的曲线中,横轴区间(μ-σ,μ+σ)内的面积为68.268949%,横轴区间(μ-2σ,μ+2σ)内的面积为95.449974%,横轴区间(μ-3σ,μ+3σ)内的面积为99.730020%。X落在(μ-3σ,μ+3σ)以外的概率小于千分之三,在实际问题中常认为相应的时间是不会发生的,基本上可以把区间(μ-3σ,μ+3σ)看作是随机变量X实际可能的取值空间,这称之为正态分布的3σ原则。

在tf.truncated_normal中如果x的取值在区间(μ-2σ,μ+2σ)之外则重新进行选择,所以称之为截断的正态分布

猜你喜欢

转载自blog.csdn.net/shnu_pfh/article/details/81184387
今日推荐