1.
tqdm(list)方法可以傳入任意一種list,比如陣列
from tqdm import tqdm
for i in tqdm(range(1000)):
#do something
pass
2.
w1 = tf.variable(tf.truncated_normal([5,5,1,inflated[0]], mean = mu, stddev = sigma))
tf.variable() 方法定義乙個變數
tf.truncated_normal()方法 是正態分佈產生函式,mean為均值,stddev為殘差
w1 = tf.variable(tf.truncated_normal([5,5,1,inflated[0]], mean = mu, stddev = sigma))
3.
l2_pool = tf.nn.max_pool(l2_act, [1,2,2,1],[1,2,2,1],'valid', name = 'l2_pool')
l2_pool = tf.nn.max_pool(l2_act, [1,2,2,1],[1,2,2,1],'valid', name = 'l2_pool')
引數是四個,和卷積很類似:
第乙個引數value:需要池化的輸入,一般池化層接在卷積層後面,所以輸入通常是feature map,依然是[batch, height, width, channels]這樣的shape
第二個引數ksize:池化視窗的大小,取乙個四維向量,一般是[1, height, width, 1],因為我們不想在batch和channels
上做池化,所以這兩個維度設為了1
第三個引數strides:和卷積類似,視窗在每乙個維度上滑動的步長,一般也是[1, stride,stride
, 1]
第四個引數padding:和卷積類似,可以取'valid' 或者'same'
返回乙個tensor,型別不變,shape仍然是[batch, height, width, channels]
這種形式
4.tf.nn.dropout()是tensorflow裡面為了防止或減輕過擬合而使用的函式,它一般用在全連線層
dropout就是在不同的訓練過程中隨機扔掉一部分神經元。也就是讓某個神經元的啟用值以一定的概率p,讓其停止工作,這次訓練過程中不更新權值,也不參加神經網路的計算。但是它的權重得保留下來(只是暫時不更新而已),因為下次樣本輸入時它可能又得工作了
tf.nn.dropout函式說明
tf.nn.dropout(x,keep_prob,noise_shape=none,seed=none,name=none)
引數說明:
x:指輸入,輸入tensor
keep_prob: float型別,每個元素被保留下來的概率,設定神經元被選中的概率,在初始化時keep_prob是乙個佔位符, keep_prob = tf.placeholder(tf.float32) 。tensorflow在run時設定keep_prob具體的值,例如keep_prob: 0.5
noise_shape : 乙個1維的int32張量,代表了隨機產生「保留/丟棄」標誌的shape。
seed : 整形變數,隨機數種子。
name:指定該操作的名字
dropout必須設定概率keep_prob,並且keep_prob也是乙個佔位符,跟輸入是一樣的
keep_prob = tf.placeholder(tf.float32)
train的時候才是dropout起作用的時候,test的時候不應該讓dropout起作用
原文:
5.tf.reduce_mean函式的作用是求平均值。第乙個引數是乙個集合,可以是列表、二維陣列和多維陣列。第二個引數指定在哪個維度上面求平均值。預設對所有的元素求平均
6.tf.argmax就是返回最大的那個數值所在的下標。
7.tf.cast(x, dtype, name=none)
將x的資料格式轉化成dtype.例如,原來x的資料格式是bool,
那麼將其轉化成float以後,就能夠將其轉化成0和1的序列。反之也可以
8.tf.equal(a, b)是對比這兩個矩陣或者向量的相等的元素,如果是相等的那就返回true,反正返回false,返回的值的矩陣維度和a是一樣的
9.shuffle()
shuffle()方法將序列的所有元素隨機排序。
tensorflow常用函式
1.variable 主要在於一些可訓練變數 trainable variables 比如模型的權重 weights 或者偏執值 bias 1 宣告時,必須提供初始值 2 在真實訓練時,其值是會改變的,自然事先需要指定初始值 weights tf.variable tf.random normal ...
TensorFlow常用函式
使用tensorflow計算流程 1 prepare train data 2 define model and graph 3 choose optimizer 4 create a session to run import tensorflow as tf 1.tf.reduce mean i...
Tensorflow常用函式
w1 tf.variable tf.random normal 2,3 sttdev 1,seed 1 生成矩陣的均值為0,方差為2。使用seed 1指定隨機種子,可以保證每次執行得到的結果相同。sess.run w1.initializer 初始化w1 sess.run tf.initiable ...