久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

TensorFlow——tf.contrib.layers庫(kù)中的相關(guān)API

 印度阿三17 2019-06-09

在TensorFlow中封裝好了一個(gè)高級(jí)庫(kù),,tf.contrib.layers庫(kù)封裝了很多的函數(shù),,使用這個(gè)高級(jí)庫(kù)來(lái)開(kāi)發(fā)將會(huì)提高效率,卷積函數(shù)使用tf.contrib.layers.conv2d,,池化函數(shù)使用tf.contrib.layers.max_pool2d和tf.contrib.layers.avg_pool2d,,全連接函數(shù)使用 tf.contrib.layers.fully_connected,下面來(lái)看里面封裝好的函數(shù)接口:

以最復(fù)雜的卷積為例,,其他的幾個(gè)函數(shù)與之類似:

layers.conv2d(inputs,
              num_outputs,
              kernel_size,
              stride,
              padding='SAME',
              data_format=None,
              rate=1,
              activation_fn=tf.nn.relu,
              normalizer_fn=None,
              normalizer_params=None,
              weights_initializer=initializers.xavier_initializers(),
              weights_regularizer=None,
              reuse=None,
              variables_collections=None,
              outputs_collections=None,
              trainable=True,
              scope=None)

常用的參數(shù)說(shuō)明:

inputs:輸入的數(shù)據(jù)

num_outputs:設(shè)置輸出的channel數(shù)量,。這里不用在設(shè)置輸入的channel的數(shù)量了,該函數(shù)會(huì)自動(dòng)根據(jù)shape來(lái)判斷,。

kernel_size:卷積核大小,,不需要帶上batch和channel,只需要輸入尺寸即可,,[ 5, 5 ]就代表5x5大小的卷積核,,如果長(zhǎng)寬都一樣,可以直接寫(xiě)一個(gè)5就行了,。

stride:步長(zhǎng),,默認(rèn)的長(zhǎng)寬都是相等的步長(zhǎng),,卷積時(shí)一般都用1,默認(rèn)的值也是1,,如果長(zhǎng)寬都不同,,也可以用一個(gè)數(shù)組[ 1,2 ]來(lái)表示。

padding:設(shè)置填充的規(guī)則,。

activation_fn:輸出后的激活函數(shù),。

weights_initializer:權(quán)重的初始化方式,默認(rèn)使用的是?initializers.xavier_initializers(),,能夠使得所有層的梯度保持大體相同,,biases_initializer同理。

weights_regularizer:正則化項(xiàng),,可以加入正則函數(shù),。

trainable:是否可訓(xùn)練,如作為訓(xùn)練節(jié)點(diǎn),,必須設(shè)置為T(mén)rue,。

下面我們使用layers構(gòu)建一個(gè)網(wǎng)絡(luò)模型:

import tensorflow.contrib.layers as layers

x = tf.placeholder(dtype=tf.float32, shape=[None, 32, 32, 3])
y = tf.placeholder(dtype=tf.float32, shape=[None, 10])

x_images = tf.reshape(x, [-1, 32, 32, 3])

h_conv1 = layers.conv2d(x_images, 64, 3, 1, activation_fn=tf.nn.relu)
h_pool1 = layers.max_pool2d(h_conv1, [2, 2], stride=2, padding='SAME')

h_conv2 = layers.conv2d(h_pool1, 64, 3, 1, activation_fn=tf.nn.relu)
h_pool2 = layers.max_pool2d(h_conv2, [2, 2], stride=2, padding='SAME')

h_conv3 = layers.conv2d(h_pool2, 32, 3, 1, activation_fn=tf.nn.relu)
h_pool3 = layers.max_pool2d(h_conv3, [2, 2], stride=2, padding='SAME')

h_conv4 = layers.conv2d(h_pool3, 16, 3, 1, activation_fn=tf.nn.relu)
h_pool4 = layers.max_pool2d(h_conv4, [2, 2], stride=2, padding='SAME')

h_conv5 = layers.conv2d(h_pool4, 10, 3, 1, activation_fn=tf.nn.relu)
y_pool = tf.reshape(h_conv5, shape=[-1, 40])

y_pool = layers.fully_connected(y_pool, 10, activation_fn=None)

cross_entropy = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(labels=y, logits=y_pool))

optimizer = tf.train.AdamOptimizer(learning_rate).minimize(cross_entropy)

使用layers是不是極大的簡(jiǎn)化了網(wǎng)絡(luò)默寫(xiě)的代碼,提升了我們的代碼效率,。

?

來(lái)源:http://www./content-4-233601.html

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多